C# Class R3.Geometry.H3Models.UHS

ファイルを表示 Open project: roice3/Honeycombs

Public Methods

Method Description
ExtendEdges ( IEnumerable edges ) : IEnumerable

Takes a set of finite edges, and returns a new set of ideal edges which touch the boundary. Duplicate ideal edges are removed (since multiple finite edges can result in the same ideal edge).

FromE ( double eNorm ) : double

Euclidean to UHS norm

Geodesic ( Vector3D v1, Vector3D v2, Vector3D &center, double &radius ) : void
Geodesic ( Vector3D v1, Vector3D v2, Vector3D &center, double &radius, Vector3D &normal, double &angleTot ) : void
GeodesicIdealEndpoints ( Vector3D v1, Vector3D v2, Vector3D &z1, Vector3D &z2 ) : void

Given two points (in the UHS model), find the endpoints of the associated geodesic that lie on the z=0 plane.

GeodesicPoints ( Vector3D v1, Vector3D v2 ) : Vector3D[]

Calculate points along a geodesic segment from v1 to v2.

GeodesicPoints ( Vector3D v1, Vector3D v2, int div ) : Vector3D[]

Calculate points along a geodesic segment from v1 to v2.

IdealCircle ( Sphere s ) : Circle

Given a geodesic sphere, returns it's intersection with the boundary plane.

IdealPoints ( Sphere s, Vector3D &s1, Vector3D &s2, Vector3D &s3 ) : void

Given a geodesic sphere, calculates 3 ideal points of the sphere.

SizeFunc ( Vector3D v, double angularThickness ) : double

A size function for the UHS model. Returns a radius.

ToE ( double hNorm ) : double

Hyperbolic to Euclidean norm The output is a vertical distance from 0,0,0

ToEHorizontal ( double hNorm, double z ) : double

Hyperbolic to Euclidean norml The output is a horizontal distance from 0,0,z

Method Details

ExtendEdges() public static method

Takes a set of finite edges, and returns a new set of ideal edges which touch the boundary. Duplicate ideal edges are removed (since multiple finite edges can result in the same ideal edge).
public static ExtendEdges ( IEnumerable edges ) : IEnumerable
edges IEnumerable
return IEnumerable

FromE() public static method

Euclidean to UHS norm
public static FromE ( double eNorm ) : double
eNorm double
return double

Geodesic() public static method

public static Geodesic ( Vector3D v1, Vector3D v2, Vector3D &center, double &radius ) : void
v1 Vector3D
v2 Vector3D
center Vector3D
radius double
return void

Geodesic() public static method

public static Geodesic ( Vector3D v1, Vector3D v2, Vector3D &center, double &radius, Vector3D &normal, double &angleTot ) : void
v1 Vector3D
v2 Vector3D
center Vector3D
radius double
normal Vector3D
angleTot double
return void

GeodesicIdealEndpoints() public static method

Given two points (in the UHS model), find the endpoints of the associated geodesic that lie on the z=0 plane.
public static GeodesicIdealEndpoints ( Vector3D v1, Vector3D v2, Vector3D &z1, Vector3D &z2 ) : void
v1 Vector3D
v2 Vector3D
z1 Vector3D
z2 Vector3D
return void

GeodesicPoints() public static method

Calculate points along a geodesic segment from v1 to v2.
public static GeodesicPoints ( Vector3D v1, Vector3D v2 ) : Vector3D[]
v1 Vector3D
v2 Vector3D
return Vector3D[]

GeodesicPoints() public static method

Calculate points along a geodesic segment from v1 to v2.
public static GeodesicPoints ( Vector3D v1, Vector3D v2, int div ) : Vector3D[]
v1 Vector3D
v2 Vector3D
div int
return Vector3D[]

IdealCircle() public static method

Given a geodesic sphere, returns it's intersection with the boundary plane.
public static IdealCircle ( Sphere s ) : Circle
s Sphere
return Circle

IdealPoints() public static method

Given a geodesic sphere, calculates 3 ideal points of the sphere.
public static IdealPoints ( Sphere s, Vector3D &s1, Vector3D &s2, Vector3D &s3 ) : void
s Sphere
s1 Vector3D
s2 Vector3D
s3 Vector3D
return void

SizeFunc() public static method

A size function for the UHS model. Returns a radius.
public static SizeFunc ( Vector3D v, double angularThickness ) : double
v Vector3D
angularThickness double
return double

ToE() public static method

Hyperbolic to Euclidean norm The output is a vertical distance from 0,0,0
public static ToE ( double hNorm ) : double
hNorm double
return double

ToEHorizontal() public static method

Hyperbolic to Euclidean norml The output is a horizontal distance from 0,0,z
public static ToEHorizontal ( double hNorm, double z ) : double
hNorm double
z double
return double