public void RelativeToWorldVector() { var pos = new coordinates(2d, -math.PI_DBL / 2d); var v_polar = new double2(-2d, -2d); var expected = new coordinates(2d, math.PI_DBL); var actual = pos.Update(v_polar); Assert.AreEqual(expected.r, actual.r, tolerance); Assert.AreEqual( angle.wrap(expected.theta.radians), angle.wrap(actual.theta.radians), tolerance ); }
public override void Update(GameTime gameTime) { if (crd.isFlight) { float time = (float)gameTime.ElapsedGameTime.Ticks / 100000; EngineSpark(time); crd.Update(time); } for (int particle = 0; particle < particles.Count; particle++) { particles[particle].Update(gameTime); if (particles[particle].Size <= 0 || particles[particle].TTL <= 0 || particles[particle].Position.X <crd.xBoard || particles[particle].Position.Y> crd.yBoard) { particles.RemoveAt(particle); particle--; } } }