Capture the Trig Function from an Option Menu Button
Jim Hurley
jhurley0305 at sbcglobal.net
Mon Dec 10 17:11:47 EST 2012
Thanks Dick. I hadn't thought about using the Value function. Interesting.
Do you have any thoughts on the relative merits of Do vs. Value?
I could also have used
do "put " & tTrigFunction & "(" & tAngle & ") into y"
And Roger, in my code the positive y axis is the usual screen y axis--positive down.
If you want to use the traditional cartesian y-axis--positive up-- change y0 + y to y0 - y
Otherwise you trig curves will all look upside down.
Jim
>> On Dec 10, 2012, at 8:59 AM, Jim Hurley wrote:
>> get "put the " & tTrigFunction & " of " & tAngle & " into y "
>> do it
>>
>>
>
> Hi, Jim and Roger.
>
> If you like more concise code, you can code the above like this:
> put value( tTrigFunction & "(" & tAngle & ")" ) into y
>
> -- Dick
>
>
> Roger,
>
> One caveat. This is a good exampe the caution one must exercise in using the Do.
>
> Instead of:
>
>>> replace "sine" with "sin" in tTrigFunction
>>> replace "cosine" with "cos" in tTrigFunction
>>> replace "tangent" with "tan" in tTrigFunction
>
> Use:
>
>>> replace "cosine" with "cos" in tTrigFunction
>
>>> replace "sine" with "sin" in tTrigFunction
>>> replace "tangent" with "tan" in tTrigFunction
>
> If you replace "sine" with "sin" you also change "cosine" to "cosin" (There is a "sine" in "cosine")
> So reverse the order of these first two.
>
> Jim
>
>
>
>> ------------------------------
>>
>> Message: 3
>> Date: Mon, 10 Dec 2012 09:42:55 -0800
>> From: Roger Guay <irog at mac.com>
>> To: How to use LiveCode <use-livecode at lists.runrev.com>
>> Subject: Re: Capture the Trig Function from an Option Menu Button
>> Message-ID: <2F8EAA01-F970-48E0-AF7A-7733AF7E4FB3 at mac.com>
>> Content-Type: text/plain; CHARSET=US-ASCII
>>
>> This script is amazingly fast! And so are you, having apparently produced it in less than an hour!! My script appears to be slightly slower using a switch/case structure. I'll test it out when I get a moment.
>>
>> Thanks very much,
>> Roger
>>
>>
>> On Dec 10, 2012, at 8:59 AM, Jim Hurley <jhurley0305 at sbcglobal.net> wrote:
>>
>>> It turns out that Do is fast enough. Here is the Do script:
>>> (The script might read a litle better by using "x" in the repeat loop instead of "i".)
>>>
>>> on mouseUp
>>> put the label of btn "myOptionMenu" into tTrigFunction
>>> --It might be necessary to take care in using the following replacements
>>> replace "sine" with "sin" in tTrigFunction
>>> replace "cosine" with "cos" in tTrigFunction
>>> replace "tangent" with "tan" in tTrigFunction
>>> put round(the width of this card/2) into x0
>>> put round(the height of this card/2) into y0
>>> put 50 into Amp--Amplitude of the trig curve
>>> set the points of grc "myCurve" to empty
>>> wait 0 millisec -- Force a screen refresh on the Mac
>>> repeat with i = 1 to 360--maybe with a step of 2 or 4
>>> put i*pi/180 into tAngle
>>> get "put the " & tTrigFunction & " of " & tAngle & " into y "
>>> do it
>>> put round(Amp*y) into y
>>> put i into x
>>> put x+ x0, y+y0 into tPoint
>>> put tPoint & cr after tPoints
>>> --Uncomment the following to see the curve evolve
>>> --set the points of grc "myCurve" to tPoints
>>> --wait 0 millisec
>>> end repeat
>>> set the points of grc "myCurve" to tPoints
>>> end mouseUp
>>> _______________________________________________
>>> use-livecode mailing list
>>> use-livecode at lists.runrev.com
>>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
>>> http://lists.runrev.com/mailman/listinfo/use-livecode
>>
>>
>
More information about the use-livecode
mailing list