Your debate is pointless since you cannot do computer geometry without numbers,
e.g. cartesian, or polar coordinates, or whatever. Besides, using angles
requires a euclidian space, i.e. a space with an inner product, which is
implemented in general by performing computations on coordinates.
Now, if you have a miracle solution for drawing Bezier curves in LiveCode, I am
convinced (based on previous posts) that many (including me) will be happy to
use it, as it is something that LC *cannot* do easily.
Best regards
François Chaplais
Le 22 juin 2012 à 18:30, Jim Hurley a écrit :
> As LiveCode announcements go, this one is pretty low key. All "Stars" does is
> provide the code for drawing a star.
>
> But there is a lesson for LiveCode to learn from the lowly five-pointed star,
> the one on the US flag.
>
> A star may be viewed in two ways:
>
> 1) Analytical Cartesian Geometry: A collection of 10 connected points (5
> outside points, and 5 inside) in a Cartesian coordinate system.
>
> 2) Euclidian Geometry: A collection of lines and angles without reference to
> place or orientation.
>
> The first is the Cartesian picture where the computation to draw the star is
> executed using algebra, trigonometry, and/or analytic geometry.
>
> The other picture is that of a figure in Euclidean space and the
> construction is carried out geometrically, drawing lines with a given angular
> relation to one another.
>
> LiveCode favors the Cartesian picture employing its analytic tools to
> generate a list of 10 points and presenting the list as a graphic by setting
> the graphic to these points.
>
> Here is how that code might look using those tools to draw a star in a
> Cartesian coordinate system:
>
>> --FIrst, define the angles and lengths in the figure to be drawn
>> put 36 into gamma
>> put 18 into alpha
>> put 200 into L
>> --Next some trig. Not trivial.
>>
>> --Let r1 be the distance from the center of the star to the inner
>> vertices.
>> put L*sine(alpha) /sine(gamma) into r1
>>
>> --Let r2 be the distance from the center to the outer vertices
>> put L*cosine(alpha) + r1 * cosine(gamma) into r2
>>
>> --Start at the top of the star at a polar angle of 90 degrees
>> put 90 into a
>> --Circle around the ten verticies of the star
>> --in increments of 360/10 = 36 degree, the polar angle between vertices.
>> put 36 into da
>> repeat with i = 1 to 10
>> if i mod 2 = 1 then
>> put r2* cosine(a) into x
>> put r2* sine(a) into y
>> put round(x+ x0) into x
>> put round(-y+y0) into y
>> put x,y & cr after tPoints--outer points
>> else
>> put r1* cosine(a) into x
>> put r1* sine(a) into y
>> put round(x+ x0) into x
>> put round(-y+y0) into y
>> put x,y & cr after tPoints--inner points
>> end if
>> add da to a -- next vertex
>> --If you want to see the star form line by line.
>> set the points of grc "Star" to tPoints
>> end repeat
>> --Close the loop
>> put results & line 1 of results into tPoints
>> set the points of grc "Star" to tPoints
>
>
>
> And here is what the loop might look like if the star were expressed as a
> geometrical figure:
>
>> put 2*360/5 into tAngle -- Pretty simple geometry here.
>> put 200 into L
>> repeat with i = 1 to 5
>> forward L
>> right tAngle --at an exterior point
>> forward L
>> left tAngle/2 --at an interior point
>> end repeat
>
>
> (After LC has been taught how to execute "forward", "right", and "left".)
>
> There has been talk for some time of promoting LC in education, even in K-12.
> Great idea.
>
> There has also been talk, more broadly, of rejuvenating the teaching of
> mathematics --See the TED talk by Conrad Wolfram at:
>
>
> http://www.ted.com/talks/lang/en/conrad_wolfram_teaching_kids_real_math_with_computers.htmlConrad
> Wolfram
>
> (Ken Ray will enjoy the stick figures at the end of the talk.)
>
> From Wolfram's talk: "I believe that correctly using computers is the silver
> bullet for making math education work." He cites particularly the use of the
> computer in modeling and simulation. He anticipates scientists (geologist,
> biologists, engineers) programing these simulations.
>
> LiveCode has all the necessary analytical tools for such modeling and
> simulation, but it lacks the geometric tools, specifically Sprite Geometry
> (aka Turtle Graphics.)
>
> For some years I have been promoting (spoken to Kevin on several occasions)
> the addition of Sprite geometry into LC. I believe it would add significantly
> to LC's penetration into the education market. It would allow kids to tackle
> problems that are much too difficult using Cartesian analytical tools, but
> quite straight forward when presented as problems in geometry--witness the
> "Star" above.
>
> It would also allow them easy access to game programming. The loop to set a
> Fox graphic (control) chasing a Rabbit graphic (control) would look like this:
>
>> repeat until the mouseClick
>> tell "hare"
>> --Move Hare in a circle.
>> forward 2
>> left 1
>> put theLocation() into theHareLocation
>> tell "fox"
>> setheading direction(theHareLocation)
>> forward 1
>> end repeat
>
>
> The Fox and Hare and treated as Sprites and Sprite geometry can talk to any
> LC control, a drawing sprite with penDown or not drawing with penUp.
>
> Many are put off by Turtle Graphics. There is a perception that it is just
> for kids. But it goes well beyond simple ways to draw polygons. (See the book
> by Professor Harold Ableson of MIT titled: Turtle Geometry: The Computer as a
> Medium for Exploring Mathematics (Artificial Intelligence, at Amazon:
> http://www.amazon.com/Turtle-Geometry-Mathematics-Artificial-Intelligence/dp/0262510375/ref=sr_1_1?s=books&ie=UTF8&qid=1340373015&sr=1-1&keywords=Turtle+geometry
> . )
>
> TG is also useful in graphically solving trajectory equations (differential
> equations) for the path of a projectile, or the motion of the Earth around
> the Sun. Or the surprising physics behind the rainbow--TG is quite straight
> forward in representing light rays in general, for they are quite simply
> lines that turn through angles.
>
> Sprite geometry is wonderfully suited to doing calculus, differential and
> integral, both in formulating the problems geometrically and in coming up
> with quantitative solutions. As such it is a valuable educational tool.
>
> As a trivial example of the advantage of Geometry over Analytics, I have
> illustrated these two approaches (Euclidian geometry vs. analytic geometry)
> in drawing the star at:
>
> go url "http://jamesphurley.com/RunRev/Stars.livecode"
>
> The scripts there demonstrate the handicap that LiveCode faces in this very
> simple problem in geometry. LC has a problem. The fault, dear Brutus, may lie
> in our stars after all.
>
>
>
> _______________________________________________
> use-livecode mailing list
> [email protected]
> Please visit this url to subscribe, unsubscribe and manage your subscription
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
_______________________________________________
use-livecode mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode