[visionegg] Re: mostly grating related...

  • From: Andrew Straw <andrew.straw@xxxxxxxxxxxxxxx>
  • To: visionegg@xxxxxxxxxxxxx
  • Date: Fri, 22 Aug 2003 09:56:45 +0930

Hash: SHA1

Markus Bongard wrote:

Besides that I'm trying to implement two other things: First one is that I like to define the bars by giving a x,y-center which is crossed from a given angle on a given path length. I suppose besides more Python this brings me deep into OpenGL programming, right?

I'm not sure that I understand exactly what you mean, but I'm not sure why you'd need OpenGL programming, probably just a big of trig. Also, one of the big changes for the 0.9.5 release will be use of "anchors" for specifying positions, which should simplify things. (Get the bleeding edge release for a preview, if you're not using that already.)

Second, I like to have flashes - maybe someone has done something in both directions already. (?)

I'm not sure what you mean by this, but all (or most) stimuli have an on parameter, and the Screen class has a bgcolor parameter -- you can produce flashes this way.

In the meantime I have a much simpler labview interface for the tcp/ip controlled grating and started to implement Python in a external labview module. We'll see how this works out. =8) <- I will put up some webpage which can be linked from the visionegg side.

Fantastic. (I recently fixed some bugs in the TCPControllers module for 0.9.5 series -- I don't think they're in the latest "bleeding edge" tarball, but they're certainly in CVS.) You're welcome to add any links to the wiki pages.

Additionally some question: if I display a greating with a constant spatial and temporal frequency several times in a sequence <- the phase display (read the location of the mini- and maxima intensity of the grating) is spatially not always the same.

You're right -- this is by design, although I'm open to suggestions on how to do it better. Here's a bit of background: in order to compute phase of a grating based purely on temporal frequency (in other words, with no initial condition given for phase), some arbitrary initial phase must be picked. This is done just once for each instance of SinGrating2D using an "absolute" time -- not relative to the onset of trials. (This allows a grating to continue moving between trials to, for example, maintain a particular state of adaptation in motion sensitive neurons.) To make the initial phase of the grating the same between grating presentations, you could make a new instance of SinGrating2D each time you needed a new grating with that same starting phase. Alternatively (and more efficiently), you could reset the t0_time_sec_absolute parameter to None, which will cause this value to be set the next time it is drawn. In all cases, the phase_at_t0 parameter controls the initial phase at this "t0". Finally, in 0.9.5, you can set the ignore_time parameter to True and control phase purely with the phase_at_t0 parameter.


The Vision Egg mailing list
Archives: //www.freelists.org/archives/visionegg
Website: http://www.visionegg.org/mailinglist.html

Other related posts: