GoursatTetrahedron() public static method

This calculates the 4 vertices of a general (but finite) Goursat Tetrahedron. Result is in the ball model. The method comes from the dissertation "Hyperbolic polyhedra: volume and scissors congruence", by Yana Zilberberg Mohanty, section 2.4, steps 1-5. A,B,C are the three dihedral angles surrounding a vertex. A_,B_,C_ are the three oppoite dihedral angles.
public static GoursatTetrahedron ( double A, double B, double C, double A_, double B_, double C_ ) : Vector3D[]
A double
B double
C double
A_ double
B_ double
C_ double
return Vector3D[]
示例#1
0
        public void InitializeGoursat()
        {
            //Vector3D[] test = SimplexCalcs.GoursatTetrahedron( 3.5, 3.8, 3.1, 2.2, 2.01, 2.1 );	// Example values from paper.
            //Verts = SimplexCalcs.GoursatTetrahedron( 2, 4, 3, 2, 3, 3 );				// 4,3,3,3
            //Verts = SimplexCalcs.GoursatTetrahedron( 2, 5, 3, 2, 3, 3 );				// 5,3,3,3
            //Verts = SimplexCalcs.GoursatTetrahedron( 2, 4, 3, 2, 4, 3 );				// 4,3,4,3
            //Verts = SimplexCalcs.GoursatTetrahedron( 2, 4, 3, 2, 5, 3 );				// 4,3,5,3
            //Verts = SimplexCalcs.GoursatTetrahedron( 2, 5, 3, 2, 5, 3 );				// 5,3,5,3
            //Verts = SimplexCalcs.GoursatTetrahedron( 3, 5, 3, 2, 2, 2 );				// 5,3^1,1
            //Verts = SimplexCalcs.GoursatTetrahedron( 3, 2, 2, 2, 5, 3 );				// 5,3^1,1 alt (to avoid vertices at origin).

            // Paracompact doesn't work :(
            //Verts = SimplexCalcs.GoursatTetrahedron( 2, 6, 3, 2, 6, 3 );				// 6,3,6,3

            // Regular
            Verts = SimplexCalcs.GoursatTetrahedron(2, 5, 3, 2, 4, 2);                                                          // 5,3,4
            //Verts = SimplexCalcs.GoursatTetrahedron( 2, 4, 3, 2, 5, 2 );						// 4,3,5
            //Verts = SimplexCalcs.GoursatTetrahedron( 2, 5, 3, 2, 5, 2 );						// 5,3,5
            //Verts = SimplexCalcs.GoursatTetrahedron( 2, 5, 2, 2, 5, 3 );						// 5,3,5 (Alt)
            //Verts = SimplexCalcs.GoursatTetrahedron( 2, 3, 5, 2, 3, 2 );						// 3,5,3

            // Spherical doesn't work :(
            //Verts = SimplexCalcs.GoursatTetrahedron( 2, 5, 3, 2, 3, 2 );						// 5,3,3

            Facets = SimplexCalcs.Mirrors(Verts);
        }
示例#2
0
 public void InitializeGoursat(int[] dihedrals)
 {
     Verts  = SimplexCalcs.GoursatTetrahedron(dihedrals[0], dihedrals[1], dihedrals[2], dihedrals[3], dihedrals[4], dihedrals[5]);
     Facets = SimplexCalcs.Mirrors(Verts);
 }