32 using System.Globalization;
67 private double radian;
91 get {
return radian; }
94 radian = (float)value;
105 if ( radian >= -Math.PI / 4 && radian <= Math.PI / 4 )
return Direction.
Right;
106 if ( radian > Math.PI / 4 && radian < 3 * Math.PI / 4 )
return Direction.
Up;
107 if ( radian < -Math.PI / 4 && radian > -3 * Math.PI / 4 )
return Direction.
Down;
117 get {
return Math.Sin( this.
Radians ); }
125 get {
return Math.Cos( this.
Radians ); }
133 get {
return Math.Tan( this.
Radians ); }
139 this.radian = (float)radians;
281 return angle.
Limit();
341 return (
float)(degree * (
System.Math.PI / 180 ));
351 return radian * ( 180 / Math.PI );
362 return Convert.ToInt32(
Degrees );
370 public override bool Equals(
object obj )
374 return Double.Equals( this.
Radians, ( (UnlimitedAngle)obj ).
Radians );
377 else if ( obj is
Angle )
387 return radian.ToString(
System.Globalization.NumberFormatInfo.InvariantInfo );
390 public string ToString( IFormatProvider formatProvider )
392 return radian.ToString( formatProvider );
423 while ( deg < 0 ) deg += 360;
432 #region Arcusfunktiot static bool operator<(UnlimitedAngle a, UnlimitedAngle b)
Vertaa ensimmäisen kulman suuremmuutta toiseen.
static Direction Down
Suunta alas.
static UnlimitedAngle ArcTan(double d)
Palauttaa kulman joka vastaa d:n arcus-tangentti.
static bool operator>=(UnlimitedAngle a, UnlimitedAngle b)
Vertaa ensimmäisen kulman pienemmyyttä/yhtäsuuruutta toiseen.
static Vector FromAngle(Angle angle)
Luo vektorin kulman perusteella yksikköpituudella.
static readonly UnlimitedAngle Infinity
Ääretön kulma.
double Tan
Kulman tangentti.
Direction MainDirection
Kulmaa vastaava pääilmansuunta.
string ToString(IFormatProvider formatProvider)
static UnlimitedAngle operator/(UnlimitedAngle a, double b)
Jakaa kulman reaaliluvulla.
static UnlimitedAngle Sum(UnlimitedAngle a, Angle b)
Laskee yhteen rajoittamattoman ja rajoitetun kulman, palauttaen rajoittamattoman kulman.
override bool Equals(object obj)
Tarkistaa kahden kulman yhtäsuuruuden. Jos parametrinä annetaan jotain muuta kuin kulma...
Suuntakulma (rajoitettu -180 ja 180 asteen välille) asteina ja radiaaneina. Tietoja kulmasta: http://...
static bool operator!=(UnlimitedAngle a, UnlimitedAngle b)
Vertaa kahden kulman erisuuruutta.
double GetPositiveDegrees()
Palauttaa kulman asteina siten, että se on aina positiivinen. Hyödyllinen esimerkiksi ympyrän kaarien...
static Direction Left
Suunta vasemmalle.
static readonly UnlimitedAngle FullAngle
Täysikulma (360 astetta).
static UnlimitedAngle FromDegrees(double degree)
Luo kulman annettujen asteiden mukaan.
double GetPositiveRadians()
Palauttaa kulman radiaaneina siten, että se on aina positiivinen. Hyödyllinen esimerkiksi ympyrän kaa...
static double DegreeToRadian(double degree)
Muuttaa asteet radiaaneiksi.
static UnlimitedAngle Parse(string angleStr)
static UnlimitedAngle operator*(double a, UnlimitedAngle b)
Kertoo kulman reaaliluvulla.
override string ToString()
static UnlimitedAngle Sum(Angle a, UnlimitedAngle b)
Laskee yhteen rajoitetun ja rajoittamattoman kulman, palauttaen rajoittamattoman kulman.
static UnlimitedAngle Parse(string angleStr, IFormatProvider formatProvider)
static Angle FromRadians(double radian)
Luo kulman annettujen radiaanien mukaan.
static double RadianToDegree(double radian)
Muuttaa radiaanit asteiksi.
static bool operator<=(UnlimitedAngle a, UnlimitedAngle b)
Vertaa ensimmäisen kulman suuremmuutta/yhtäsuuruutta toiseen.
override int GetHashCode()
Palauttaa kulmaa yksilöivän luvun, tässä tapauksessa kulman asteluvun.
double Radians
Palauttaa tai asettaa kulman radiaaneina.
static UnlimitedAngle operator-(UnlimitedAngle a, UnlimitedAngle b)
Vähentää jälkimmäisen kulman ensimmäisestä.
static bool operator>(UnlimitedAngle a, UnlimitedAngle b)
Vertaa ensimmäisen kulman pienemmyyttä toiseen.
static readonly UnlimitedAngle Zero
Nollakulma.
double Degrees
Palauttaa tai asettaa kulman asteina.
static bool operator==(UnlimitedAngle a, UnlimitedAngle b)
Vertaa kahden kulman yhtäsuuruutta.
static readonly UnlimitedAngle RightAngle
Suora kulma (90 astetta).
static Direction Right
Suunta oikealle.
static UnlimitedAngle ArcSin(double d)
Palauttaa kulman joka vastaa d:n arcus-sini.
Rajoittamaton kulma (asteina ja radiaaneina). Tietoja kulmasta: http://en.wikipedia.org/wiki/File:Degree-Radian_Conversion.svg
static Direction Up
Suunta ylös.
static UnlimitedAngle FromRadians(double radian)
Luo kulman annettujen radiaanien mukaan.
static UnlimitedAngle ArcCos(double d)
Palauttaa kulman joka vastaa d:n arcuskosini.
static UnlimitedAngle operator+(UnlimitedAngle a, UnlimitedAngle b)
Laskee kaksi kulmaa yhteen.
double Radians
Palauttaa tai asettaa kulman radiaaneina.
Angle Limit()
Palauttaa kulman rajoitettuna välille -180 ja 180 astetta.
static readonly UnlimitedAngle StraightAngle
Oikokulma (180 astetta).