Beispiel #1
0
        /// <summary>
        /// Pysäyttää liikkeen akselin suunnassa.
        /// </summary>
        /// <param name="axis">Akseli vektorina (ei väliä pituudella)</param>
        public void StopAxial(Vector axis)
        {
            Acceleration = Acceleration.Project(axis.LeftNormal);
            Velocity     = Velocity.Project(axis.LeftNormal);

            Vector oldForce = new Vector(Body.State.ForceAccumulator.Linear.X, Body.State.ForceAccumulator.Linear.Y);
            Vector newForce = oldForce.Project(axis.LeftNormal);
            double aForce   = Body.State.ForceAccumulator.Angular;

            Body.State.ForceAccumulator = new ALVector2D(aForce, newForce.X, newForce.Y);
        }