2 slides equal to one time duration

gorgeous yayuan geng gusunny1 at gmail.com
Fri Nov 1 02:03:05 UTC 2013


Dear  David McFarlane,

I'm totally agree with you that we need to be precise. I just  understand
what you mean and my origianl problem is due to my confusion for the
meaning of all these kinds of time.

I need to work hard to make these name familiar to me.

Thanks.

All my best,

Sally



2013/11/1 David McFarlane <mcfarla9 at msu.edu>

> Glad you found that useful.
>
> Hope I understand your question...  Let's see, we have
>
>     BSlide.Duration = 2500 - ASlide.RT
>
> and since RT = (ASlide.RTTime - ASlide.OnsetTime), that is the same as
>
>     BSlide.Duration = 2500 - (ASlide.RTTime - ASlide.OnsetTime)
>
> which is not all that different from
>
>
>     BSlide.Duration = 2500 - (Clock.Read - ASlide.OnsetTime)
>
> So the difference is slight.  But here's the deal.  The goal here is to
> make BSlide end precisely 2500 ms after the onset of ASlide.  Some small
> time may pass between ASlide.RTTime and the time when BSlide starts, and if
> that happens then if you base BSlide.Duration on ASlide.RTTime then the
> Duration will be a little too long and that will make the full time of
> ASlide + BSlide longer than intended.  Using the Clock.Read in code
> immediately before BSlide should give you a closer estimate of the Duration
> needed for BSlide, but even here, any delay between the computation of
> BSlide.Duration and when BSlide actually starts running will result in
> Duration being just a little too long.  May not be enough to matter, but
> why not be more exact if we can?
>
> So I advise *against* doing things this way just because of the
> complications of all these little delays.  Instead, my main advice of using
> SetNextTargetOnsetTime along with Cumulative timing mode avoids these
> complications, and used properly, can result in precise timing.
>
>
> -----
> David McFarlane
> E-Prime training online:  http://psychology.msu.edu/**
> Workshops_Courses/eprime.aspx<http://psychology.msu.edu/Workshops_Courses/eprime.aspx>
> Twitter:  @EPrimeMaster (https://twitter.com/**EPrimeMaster<https://twitter.com/EPrimeMaster>)
>
> /----
> Stock reminder:  1) I do not work for PST.  2) PST's trained staff take
> any and all questions at https://support.pstnet.com , and they strive to
> respond to all requests in 24-48 hours, so make full use of it.  3) In
> addition, PST offers several instructional videos on their YouTube channel (
> http://www.youtube.com/user/**PSTNET <http://www.youtube.com/user/PSTNET>).  4) If you do get an answer from PST staff, please extend the courtesy
> of posting their reply back here for the sake of others.
> \----
>
>
> At 10/30/2013 11:03 PM Wednesday, =?GB2312?B?vKrP6cjn0uI=?= wrote:
>
>> Dear  David McFarlane,
>>
>>  I have tried your suggestion, it really works and it's quite simple
>> compared with what I performed before as : BSlide.Duration=2500-ASlide.**RT,
>>  and one more question, why you use 2500 - (Clock.Read - ASlide.OnsetTime).
>> Thanks a lot.
>>
>>
>> 2013/10/22 David McFarlane <<mailto:mcfarla9 at msu.edu>mcfa**rla9 at msu.edu<mcfarla9 at msu.edu>
>> >
>>
>> Just for the record, I need to correct a bit of my advice here.  Earlier,
>> I said that using
>>
>>     SetNextTargetOnsetTime ASlide.OnsetTime
>>
>> between ASlide and BSlide would make the total duration from the start of
>> ASlide to the end of BSlide equal the specified Duration of BSlide (in this
>> case, 2500 ms).  But I neglected to say that, for this to work, you must
>> also set BSlide to use Cumulative timing mode.  This works because, in
>> Cumulative timing mode, the TargetOnset time for whatever follows BSlide
>> will be based on the TargetOnsetTime of BSlide (instead of actual
>> OnsetTime), and BSlide.TargetOnsetTime will come from the
>> NextTargetOnsetTime implied in the code above.  I generally like this
>> approach because it eliminates any errors due to delays in starting BSlide.
>>
>> Furthermore, the line of code above makes the total duration of ASlide +
>> BSlide act like Event timing mode (think it through).  If you want that to
>> instead act like Cumulative timing mode, then that line should read
>>
>>     SetNextTargetOnsetTime ASlide.TargetOnsetTime
>>
>> i.e., use .TargetOnsetTime instead of just .OnsetTime.
>>
>>
>> If you stubbornly insist on keeping BSlide set to Event timing mode, then
>> the TargetOnset time for whatever follows BSlide will be based on the
>> actual OnsetTime of BSlide, and you have no recourse but to manipulate the
>> Duration of BSlide.  In that case, your inline code between ASlide and
>> BSlide should look more like
>>
>>     BSlide.Duration = 2500 - (Clock.Read - ASlide.OnsetTime)
>>
>> or if you prefer,
>>
>>     c.SetAttrib "BSlideDuration", 2500 - (Clock.Read - ASlide.OnsetTime)
>>
>> and then use "[BSlideDuration]" as an attribute reference for the
>> Duration of BSlide (see comments on assigning object properties directly in
>> code vs. via attribute reference at <https://groups.google.com/d/**
>> topic/e-prime/dWpfjk-BeLs<https://groups.google.com/d/topic/e-prime/dWpfjk-BeLs>
>> >http**s://groups.google.com/d/topic/**e-prime/dWpfjk-BeLs<https://groups.google.com/d/topic/e-prime/dWpfjk-BeLs>and <
>> https://groups.google.com/d/**topic/e-prime/g1Fv2CGaSeg<https://groups.google.com/d/topic/e-prime/g1Fv2CGaSeg>
>> >http**s://groups.google.com/d/topic/**e-prime/g1Fv2CGaSeg<https://groups.google.com/d/topic/e-prime/g1Fv2CGaSeg>).
>>
>>
>> Manipulating Duration (instead of NextTargetOnsetTime) also means that
>> the actual duration of BSlide (and ASlide + BSlide) will vary depending on
>> any delays in starting BSlide, but maybe that is what you want.
>>
>>
>> -----
>> David McFarlane
>> E-Prime training online: <http://psychology.msu.edu/**
>> Workshops_Courses/eprime.aspx<http://psychology.msu.edu/Workshops_Courses/eprime.aspx>
>> >**http://psychology.msu.edu/**Workshops_Courses/eprime.aspx<http://psychology.msu.edu/Workshops_Courses/eprime.aspx>
>> Twitter:  @EPrimeMaster (<https://twitter.com/**EPrimeMaster<https://twitter.com/EPrimeMaster>
>> >https://twitter.**com/EPrimeMaster <https://twitter.com/EPrimeMaster> )
>>
>> /----
>> Stock reminder:  1) I do not work for PST.  2) PST's trained staff take
>> any and all questions at <https://support.pstnet.com>ht**
>> tps://support.pstnet.com <https://support.pstnet.com> , and they strive
>> to respond to all requests in 24-48 hours, so make full use of it.  3) In
>> addition, PST offers several instructional videos on their YouTube channel
>> (<http://www.youtube.com/user/**PSTNET<http://www.youtube.com/user/PSTNET>
>> >http://www.youtube.com/**user/PSTNET<http://www.youtube.com/user/PSTNET>).  4) If you do get an answer from PST staff, please extend the courtesy
>> of posting their reply back here for the sake of others.
>>
>> \----
>>
>>
>> At 10/14/2013 02:22 PM Monday, David McFarlane wrote:
>> Not sure I follow your description of the problem.  But let's suppose you
>> have two Slides in your Procedure, let's call them ASlide and BSlide.
>>  ASlide takes a response, and the Procedure moves on to present BSlide
>> whenever ASlide gets a response, or 2000 ms, whichever comes first.  And
>> you want the total duration for ASlide & BSlide to be 2500 ms, i.e., BSlide
>> should last for 2500 - (ASlide_actual_duration).
>>
>> There are many ways to skin this cat.  My favorite method goes as
>> follows.  Set the Duration of BSlide to 2500, and in an Inline between
>> ASlide and BSlide, do the following:
>>
>>     SetNextTargetOnsetTime ASlide.OnsetTime
>>
>> That's all!  Understanding how this works takes some deeper understanding
>> of E-Prime timing models & mechanisms, more than I can go into here, but
>> look at the SetNextTargetOnsetTime topic in the E-Basic Help facility.  But
>> in short, with that bit of code, BSlide will use the actual OnsetTime from
>> ASlide in order to compute its own ending time, and so will end at 2500 ms
>> from the OnsetTime of ASlide, whithout you having to do anything more.
>>  Presto!
>>
>> -----
>> David McFarlane
>> E-Prime training online: <http://psychology.msu.edu/**
>> Workshops_Courses/eprime.aspx<http://psychology.msu.edu/Workshops_Courses/eprime.aspx>
>> >**http://psychology.msu.edu/**Workshops_Courses/eprime.aspx<http://psychology.msu.edu/Workshops_Courses/eprime.aspx>
>> Twitter:  @EPrimeMaster (<https://twitter.com/**EPrimeMaster<https://twitter.com/EPrimeMaster>
>> >https://twitter.**com/EPrimeMaster <https://twitter.com/EPrimeMaster> )
>>
>> /----
>> Stock reminder:  1) I do not work for PST.  2) PST's trained staff take
>> any and all questions at <https://support.pstnet.com>ht**
>> tps://support.pstnet.com <https://support.pstnet.com> , and they strive
>> to respond to all requests in 24-48 hours, so make full use of it.  3) In
>> addition, PST offers several instructional videos on their YouTube channel
>> (<http://www.youtube.com/user/**PSTNET<http://www.youtube.com/user/PSTNET>
>> >http://www.youtube.com/**user/PSTNET<http://www.youtube.com/user/PSTNET>).  4) If you do get an answer from PST staff, please extend the courtesy
>> of posting their reply back here for the sake of others.
>>
>> \----
>>
>>
>> At 10/8/2013 10:00 PM Tuesday, Kim Goodyear wrote:
>> I am trying to have two sequential slides that are equal to one time
>> duration of 2500 ms.  The first slide and the second slide are completely
>> identical, except in the second slide the text color changes to red so that
>> the participant can see their selection,  I want the first slide to
>> terminate and then have the second slide come up so that they both equal
>> the same 2500 ms.  Since the response time will vary I don't know how to
>> make both slides equal to the same 2500.  I don't know why, but if the
>> buttons aren't selected right away, the total duration is around 5000, or
>> if there is a delay in the response, the total duration is around 4200.  I
>> am not sure how to fix this issue, any advice would be great.  Here is my
>> inline script:
>>
>> Dim ResetSlide as integer
>> Dim x as integer
>>
>> ResetSlide = StimDisplay.Duration + StimDisplay2.Duration
>> ResetSlide = x
>> x = 2500
>>
>
> --
> You received this message because you are subscribed to the Google Groups
> "E-Prime" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to e-prime+unsubscribe@**googlegroups.com<e-prime%2Bunsubscribe at googlegroups.com>
> .
> To post to this group, send email to e-prime at googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/**
> msgid/e-prime/5272b74d.**2cdd320a.7803.0516SMTPIN_**
> ADDED_MISSING%40gmr-mx.google.**com<https://groups.google.com/d/msgid/e-prime/5272b74d.2cdd320a.7803.0516SMTPIN_ADDED_MISSING%40gmr-mx.google.com>
> .
>
> For more options, visit https://groups.google.com/**groups/opt_out<https://groups.google.com/groups/opt_out>
> .
>

-- 
You received this message because you are subscribed to the Google Groups "E-Prime" group.
To unsubscribe from this group and stop receiving emails from it, send an email to e-prime+unsubscribe at googlegroups.com.
To post to this group, send email to e-prime at googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/e-prime/CAJO0WNYoGjdcw_mVh0w2kwD5FM_3jAMo9Mdj43KVrr3ju%2BX07w%40mail.gmail.com.
For more options, visit https://groups.google.com/groups/opt_out.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listserv.linguistlist.org/pipermail/eprime/attachments/20131101/e55a7ddb/attachment.htm>


More information about the Eprime mailing list