public void CanRoundTripIgesViaStreams() { var disc0 = Modeler.CreateCirclularSheet (center: Vector3.Zero , vNormal: Vector3.UnitZ , vRef: Vector3.UnitX , radius: 2 ); var mStream = new MemoryStream(); disc0.SaveAsIges(stream => { stream.CopyTo(mStream); mStream.Position = 0; }, false); var loadedBody = BodyExtensions.LoadBodiesAsIges(mStream).First(); loadedBody.Should().NotBeNull(); var b0 = disc0.GetBodyBoxTs(); var b1 = loadedBody.GetBodyBoxTs(); b0.P0.X.Should().BeApproximately(b1.P0.X, 1e-5); b0.P0.Y.Should().BeApproximately(b1.P0.Y, 1e-5); b0.P0.Z.Should().BeApproximately(b1.P0.Z, 1e-5); b0.P1.X.Should().BeApproximately(b1.P1.X, 1e-5); b0.P1.Y.Should().BeApproximately(b1.P1.Y, 1e-5); b0.P1.Z.Should().BeApproximately(b1.P1.Z, 1e-5); }
public static float GetBodyMassByActor(this ActorBase actor) { return(BodyExtensions.GetSpaceWanderMass(actor.GetGameModelByActorType())); }