Huom! Nämä wikisivut ovat osittain vielä työn alla, osa sisällöstä saattaa olla puutteellista. Ongelmakohtien viereen voit jättää kommentin, yliopiston käyttäjät myös pystyvät (ja saavat) muokata sivuja.
Jypelin käyttöohjeet » Kulma
Etäisyyksien lisäksi monesti on oleellista tietää kulma. Vektoreiden käyttäminen vähentää kulmien käyttöä, mutta ei poista sitä kokonaan. Esimerkiksi tankkipelissä on tärkeää tietää, missä kulmassa tykin piippu on, ennen kuin sillä ammutaan.
Kulmia varten on Jypelissä erillinen luokka Angle, joka on riippumaton käytettävästä asteikosta. Sitä käyttämällä ei tarvitse huolehtia, onko kulma asteina, radiaaneina vai jonakin erikoisempana mittayksikkönä kuten tykistössä käytettävinä 6000-jakoisina piiruina.
Kulman luominen
Nollakulman luominen on yksinkertaista:
Angle kulma = Angle.Zero;
Kulman voi luoda myös tunnetusta aste- tai radiaaniluvusta. Seuraavassa esimerkissä luodaan kaksi suoraa kulmaa:
Angle suora1 = Angle.FromDegrees(90);
Angle suora2 = Angle.FromRadians(Math.PI);
Kulman arvo
Kulman numeraalisen arvon saa
double asteina = kulma.Degrees;
double radiaaneina = kulma.Radians;
Palautettu kulma on väliltä -180...180, tai -Pi...Pi.
Laskuoperaatiot
Kulmia voi laskea yhteen, vähentää, kertoa vakioarvolla tai vaihtaa niiden merkkiä.
Angle a = Angle.FromDegrees(90);
Angle b = Angle.FromDegrees(60);
Angle c = a + b;
Angle d = -b;
Angle e = 2 * c - d;
Osaatko sanoa, mitä tulee kulmaksi e?
Vektorien kulmat
Vektorityypillä Vector on myös kulma. Vektorin v
kulma on v.Angle
.
Olioiden kulmat
Myös olioilla, kuten GameObjecteilla ja PhysicsObjecteilla on kulma. Olioiden kulman saa selville niiden Angle
-ominaisuudesta:
Angle olionKulma = olio.Angle;
These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.