/// <summary> /// Laittaa kappaleen kulman värähtelemään edestakaisin. /// </summary> /// <param name="direction">Värähtelyn suunta (1 = myötäpäivään, -1 = vastapäivään)</param> /// <param name="amplitude">Amplitudi eli ääripäiden välinen etäisyys (radiaaneina).</param> /// <param name="frequency">Taajuus, eli kuinka monta jaksoa sekunnissa värähdellään.</param> /// <param name="damping">Vaimennuskerroin. 0 = ei vaimene, mitä suurempi niin sitä nopeammin vaimenee.</param> public void OscillateAngle(double direction, UnlimitedAngle amplitude, double frequency, double damping = 0) { if (oscillators == null) { oscillators = new SynchronousList <Oscillator>(); } oscillators.Add(new AngularOscillator(this, direction, amplitude, frequency, damping)); IsUpdated = true; }
/// <summary> /// Palauttaa vastaavan rajoittamattoman kulman. /// </summary> public UnlimitedAngle Unlimit() { return(UnlimitedAngle.FromRadians(this.radian)); }
/// <summary> /// Laskee yhteen rajoitetun ja rajoittamattoman kulman, palauttaen rajoitetun kulman. /// </summary> /// <param name="a">Rajoitettu kulma</param> /// <param name="b">Rajoittamaton kulma</param> /// <returns>Rajoitettu kulma</returns> public static Angle Sum(Angle a, UnlimitedAngle b) { return(Angle.FromRadians(a.Radians + b.Radians)); }
/// <summary> /// Laskee yhteen rajoittamattoman ja rajoitetun kulman, palauttaen rajoittamattoman kulman. /// </summary> /// <param name="a">Rajoittamaton kulma</param> /// <param name="b">Rajoitettu kulma</param> /// <returns>Rajoittamaton kulma</returns> public static UnlimitedAngle Sum(UnlimitedAngle a, Angle b) { return(FromRadians(a.Radians + b.Radians)); }