Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C: Viivan kulman laskeminen

punppis [05.09.2007 23:36:36]

#

Pitäs saada SDL:llä tehtyä tollanen kiva pieni nopeusmittari. Nopeusmittari on analooginen (?, non-digitaalinen :D), joten siinä on viisari. Viisari pitäis saada liikkumaan tietyn asteen verran. Ongelma tässä on se kaava :/ Nuo radiaanit ja cossit ja sinit on ihan unohtunut siitä kun ylä-asteella niitä läpi käytiin. Olisko joku niin kiva, että tarjois ees vähintään vinkkiä siihen kaavaan? Oon kattellu noita erilaisia koodivinkkejä, mutta ei niistä mitään selkoo saa meikäläinen :D

Kuva on siis 300x300, joten origo on 150,150. Viivan funktion attribuuteiksi siis tulee 150,150,x,y - mutta mitkä ovat päätepisteet, jos pitäisi saada vaikka 97 astetta kääntymään se viiva?

Antti Laaksonen [05.09.2007 23:44:06]

#

Tuolla on tietoa asiasta:

https://www.ohjelmointiputka.net/oppaat/opas.php?tunnus=mat2#yksikkoympyra

Tarvittavat kaavat ovat:

x = keskix + cos(kulma) * pituus
y = keskiy + sin(kulma) * pituus

Sami [05.09.2007 23:45:16]

#

x = x0 + r * cos(a)
y = y0 + r * sin(a)

x0, y0 = keskipisteen koordinaatit.
r = viivan pituus.
a = kulma (radiaaneina) siten, että 0-kulma osoittaa oikealle ja kulma kiertää vastapäivään.

Edittiä pukkaa: No siinähän ne samat kaavat... ja minuuttia aiemmin :)

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta