FOK!forum / School, Studie en Onderwijs / [Wis] Coördinaten berekenen in een cirkel
Prammenhangervrijdag 23 augustus 2002 @ 18:16
Ik heb voor een javascript (tsja, je blijft GoTter ) een manier nodig om coördinaten te berekenen van een cirkel. Ik licht even toe:

Een aantal punten zijn duidelijk. Stel dat het een cirkel betreft met een diameter van 100 (pixels), dan is het midden natuurlijk 50,50 (vanuit de linkerbovenhoek gemeten), en de rechterzijkant grenst aan 100,50. Dat zijn bekende waarden, en zo zijn er nog een aantal. Maar lang niet alle waarden zijn zo standaard. Neem nou punt A, hoe bereken ik dat in godsnaam?

Zou iemand mij kunnen helpen tot een formule te komen, waarmee ik het aantal graden kan omzetten naar een coördinaat? Bijv. 0 graden, bovenin dus, is 50,50. 45 graden = x,x enz enz.

Hrunvrijdag 23 augustus 2002 @ 18:20
x = cos(phi)
y = sin(phi)
_GdR_vrijdag 23 augustus 2002 @ 18:30
quote:
Op vrijdag 23 augustus 2002 18:20 schreef Hrun het volgende:
x = cos(phi)
y = sin(phi)
IF "you have no answer"
   goToAndStop "then say nothing";
END IF()
Loranvrijdag 23 augustus 2002 @ 18:31
ik denk toch dat je iets meer nodig hebt, bijcvoorbeeld de hoek, dan kan je veel verder komen m.b.v. sin, cos en tan enzo.
Puntenjagervrijdag 23 augustus 2002 @ 18:36
quote:
Op vrijdag 23 augustus 2002 18:30 schreef _GdR_ het volgende:

[..]

IF "you have no answer"
   goToAndStop "then say nothing";
END IF()


Donderop man op, vent!!!
Het antwoord dat gegeven wordt is juist.
FlowDesignvrijdag 23 augustus 2002 @ 18:39
Trek een lijn vanuit het middelpunt door A
Dan moet je weten wat de hoek is tussen die lijn en de horizontale lijn door het middelpunt IN het middelpunt en dan kun je met sin of cos de coördinaten uitreken omdat je weet dat de afstand van het middelpunt naar A 100 is.
Hrunvrijdag 23 augustus 2002 @ 18:39
quote:
Op vrijdag 23 augustus 2002 18:36 schreef Puntenjager het volgende:

[..]

Donderop man op, vent!!!
Het antwoord dat gegeven wordt is juist.


nu ja. het is niet de formule die gevraagd wordt, maar ja, als ik het echt helemaal voor moet kauwen.. dan verdiend hij het niet om dat te weten...
FlowDesignvrijdag 23 augustus 2002 @ 18:41
quote:
Op vrijdag 23 augustus 2002 18:39 schreef Hrun het volgende:

[..]

nu ja. het is niet de formule die gevraagd wordt, maar ja, als ik het echt helemaal voor moet kauwen.. dan verdiend hij het niet om dat te weten...


jij zegt phi. ik denk dat je "pi" bedoelt.

Of begin ik nu af te takelen?

_GdR_vrijdag 23 augustus 2002 @ 18:48
quote:
Op vrijdag 23 augustus 2002 18:36 schreef Puntenjager het volgende:

[..]

Donderop man op, vent!!!
Het antwoord dat gegeven wordt is juist.


'donderop man op, vent.'

jazeker.
die code is fuk.

thumpervrijdag 23 augustus 2002 @ 18:51
quote:
Op vrijdag 23 augustus 2002 18:41 schreef FlowDesign het volgende:

[..]

jij zegt phi. ik denk dat je "pi" bedoelt.

Of begin ik nu af te takelen?


Nee hoor, helemaal gelijk

pi is bij benadering 3.1415, dus de formule wordt

x = a * sin(2 * 3.1415 * t)
y = b * cos(2 * 3.1415 * t)

waarbij t de straal is van de circel

a=b : circelvormig.
a!=b : ellipsvormig

Hrunvrijdag 23 augustus 2002 @ 18:59
quote:
Op vrijdag 23 augustus 2002 18:51 schreef thumper het volgende:

[..]

Nee hoor, helemaal gelijk

pi is bij benadering 3.1415, dus de formule wordt

x = a * sin(2 * 3.1415 * t)
y = b * cos(2 * 3.1415 * t)

waarbij t de straal is van de circel

a=b : circelvormig.
a!=b : ellipsvormig


Prammenhangervrijdag 23 augustus 2002 @ 19:52
quote:
Op vrijdag 23 augustus 2002 18:51 schreef thumper het volgende:

[..]

Nee hoor, helemaal gelijk

pi is bij benadering 3.1415, dus de formule wordt

x = a * sin(2 * 3.1415 * t)
y = b * cos(2 * 3.1415 * t)

waarbij t de straal is van de circel

a=b : circelvormig.
a!=b : ellipsvormig


maar de straal van die cirkel verandert niet, dus krijg je een reeks dezelfde uitkomsten
Pietjuhvrijdag 23 augustus 2002 @ 19:58
quote:
Op vrijdag 23 augustus 2002 18:16 schreef Prammenhanger het volgende:
Ik heb voor een javascript (tsja, je blijft GoTter ) een manier nodig om coördinaten te berekenen van een cirkel. Ik licht even toe:

[afbeelding]

Een aantal punten zijn duidelijk. Stel dat het een cirkel betreft met een diameter van 100 (pixels), dan is het midden natuurlijk 50,50 (vanuit de linkerbovenhoek gemeten), en de rechterzijkant grenst aan 100,50. Dat zijn bekende waarden, en zo zijn er nog een aantal. Maar lang niet alle waarden zijn zo standaard. Neem nou punt A, hoe bereken ik dat in godsnaam?

Zou iemand mij kunnen helpen tot een formule te komen, waarmee ik het aantal graden kan omzetten naar een coördinaat? Bijv. 0 graden, bovenin dus, is 50,50. 45 graden = x,x enz enz.


Je 0 graden punt moet niet 50,50 zijn want dan heb je het middelpunt van de cirkel te pakken maar 100,50
Chandlervrijdag 23 augustus 2002 @ 20:08
Hoi! bedankt Prammenhange
Pietjuhvrijdag 23 augustus 2002 @ 20:09
quote:
Op vrijdag 23 augustus 2002 18:41 schreef FlowDesign het volgende:

[..]

jij zegt phi. ik denk dat je "pi" bedoelt.

Of begin ik nu af te takelen?


phi is gewoon de hoek, volgens mij in radialen maar weet niet zeker
Hrunvrijdag 23 augustus 2002 @ 20:26
quote:
Op vrijdag 23 augustus 2002 20:09 schreef Pietjuh het volgende:

[..]

phi is gewoon de hoek, volgens mij in radialen maar weet niet zeker


tuurlijk radialen anders klopt er niets meer van de Taylor reeks.... waar de eigenlijke sinus vandaan komt.
Prammenhangervrijdag 23 augustus 2002 @ 20:46
Okee, de boel werkt nu. Ik bleek op zoek naar de formule

y= wortel(r^2-x^2);

Het resultaat van die formule: http://www.prammenhanger.nl/got/cirkel.html. Thx voor de hulp.

sexbierumvrijdag 23 augustus 2002 @ 22:23
quote:
Op vrijdag 23 augustus 2002 20:46 schreef Prammenhanger het volgende:
Okee, de boel werkt nu. Ik bleek op zoek naar de formule

y= wortel(r^2-x^2);

Het resultaat van die formule: http://www.prammenhanger.nl/got/cirkel.html. Thx voor de hulp.


Da was niet zo moeilijk. Vergelijking van een circel is gewoon x^2 + y^2 = r^2 r=straal. In circelcoordinaten wordt dit: x = r cos(phi)
y = r sin(phi)
en we weten allemaal dat cos^2(phi) + Sin^2(phi) = 1
dusss....