public Vector3D Transform( Vector3D v )
{
v.RotateAboutAxis( new Vector3D( 1, 0 ), Math.PI / 2 );
Mobius m = new Mobius();
m.Isometry( Geometry.Hyperbolic, 0, new Complex( 0, 0.6 ) );
v = H3Models.TransformHelper( v, m );
v.RotateAboutAxis( new Vector3D( 1, 0 ), -Math.PI / 2 );
return v;
}
private static void SaveMesh(Mesh mesh, string filename) { System.IO.File.Delete(filename); using (StreamWriter sw = File.AppendText(filename)) { STL.AppendMeshToSTL(mesh, sw); Vector3D aStart = H3Ruled.Transform(new Vector3D(0, 0, -1)); Vector3D aEnd = H3Ruled.Transform(new Vector3D(0, 0, 1)); Mesh m3 = new Mesh(); AddEdge(m3, aStart, aEnd); //STL.AppendMeshToSTL( m3, sw ); } }