C# 클래스 R3.Geometry.Recurse

파일 보기 프로젝트 열기: roice3/Honeycombs

공개 프로퍼티들

프로퍼티 타입 설명
m_background Vector3D

공개 메소드들

메소드 설명
BranchAlongVerts ( Vector3D starting, Dictionary vertsToEdges, HashSet foundVertices ) : void
CalcCells ( Sphere mirrors, H3 cells ) : H3.Cell[]
CalcCells ( Sphere mirrors, H3 cells, Settings settings ) : H3.Cell[]
CalcCells2 ( Sphere mirrors, H3 cells ) : H3.Cell[]
CalcCells2 ( Sphere mirrors, H3 cells, Settings settings ) : H3.Cell[]
CalcEdges ( Sphere simplex, H3.Cell.Edge edges ) : R3.Math.Edge[]
CalcEdges ( Sphere simplex, H3.Cell.Edge edges, Settings settings ) : R3.Math.Edge[]
CalcEdgesSmart ( Sphere simplex, H3.Cell.Edge edges ) : R3.Math.Edge[]

Attempts to calculate approx 1.3M edges when the threshold is a distance from origin in the ball model. This works for honeycombs with finite cells.

CalcEdgesSmart2 ( Sphere simplex, H3.Cell.Edge edges ) : R3.Math.Edge[]

Attempts to calculate approx 1.3M edges when the threshold is a minimum edge length. This is required for honeycombs with ideal or ultra-ideal cells

GenPolyhedron ( Sphere mirrors, H3 facets, List completedFacets, HashSet completedFacetIds ) : void

This generates a polyhedron using recursion. It needs to be finite (There are not any other breakouts of the recursion, other than all facets having been generated.)

비공개 메소드들

메소드 설명
CellOk ( H3 cell, Settings s ) : bool
DefaultThresh ( ) : double
EdgeOk ( H3.Cell.Edge edge, Settings s ) : bool
ReflectCellsRecursive ( Sphere simplex, H3 cells, Settings settings, List completedCells, HashSet completedCellIds ) : void
ReflectCellsRecursive2 ( Sphere simplex, H3 cells, Settings settings, List completedCells, HashSet completedCellIds ) : void
ReflectEdgesRecursive ( Sphere simplex, H3.Cell.Edge edges, Settings settings, HashSet completedEdges ) : void

메소드 상세

BranchAlongVerts() 공개 정적인 메소드

public static BranchAlongVerts ( Vector3D starting, Dictionary vertsToEdges, HashSet foundVertices ) : void
starting Vector3D
vertsToEdges Dictionary
foundVertices HashSet
리턴 void

CalcCells() 공개 정적인 메소드

public static CalcCells ( Sphere mirrors, H3 cells ) : H3.Cell[]
mirrors Sphere
cells H3
리턴 H3.Cell[]

CalcCells() 공개 정적인 메소드

public static CalcCells ( Sphere mirrors, H3 cells, Settings settings ) : H3.Cell[]
mirrors Sphere
cells H3
settings Settings
리턴 H3.Cell[]

CalcCells2() 공개 정적인 메소드

public static CalcCells2 ( Sphere mirrors, H3 cells ) : H3.Cell[]
mirrors Sphere
cells H3
리턴 H3.Cell[]

CalcCells2() 공개 정적인 메소드

public static CalcCells2 ( Sphere mirrors, H3 cells, Settings settings ) : H3.Cell[]
mirrors Sphere
cells H3
settings Settings
리턴 H3.Cell[]

CalcEdges() 공개 정적인 메소드

public static CalcEdges ( Sphere simplex, H3.Cell.Edge edges ) : R3.Math.Edge[]
simplex Sphere
edges H3.Cell.Edge
리턴 R3.Math.Edge[]

CalcEdges() 공개 정적인 메소드

public static CalcEdges ( Sphere simplex, H3.Cell.Edge edges, Settings settings ) : R3.Math.Edge[]
simplex Sphere
edges H3.Cell.Edge
settings Settings
리턴 R3.Math.Edge[]

CalcEdgesSmart() 공개 정적인 메소드

Attempts to calculate approx 1.3M edges when the threshold is a distance from origin in the ball model. This works for honeycombs with finite cells.
public static CalcEdgesSmart ( Sphere simplex, H3.Cell.Edge edges ) : R3.Math.Edge[]
simplex Sphere
edges H3.Cell.Edge
리턴 R3.Math.Edge[]

CalcEdgesSmart2() 공개 정적인 메소드

Attempts to calculate approx 1.3M edges when the threshold is a minimum edge length. This is required for honeycombs with ideal or ultra-ideal cells
public static CalcEdgesSmart2 ( Sphere simplex, H3.Cell.Edge edges ) : R3.Math.Edge[]
simplex Sphere
edges H3.Cell.Edge
리턴 R3.Math.Edge[]

GenPolyhedron() 공개 정적인 메소드

This generates a polyhedron using recursion. It needs to be finite (There are not any other breakouts of the recursion, other than all facets having been generated.)
public static GenPolyhedron ( Sphere mirrors, H3 facets, List completedFacets, HashSet completedFacetIds ) : void
mirrors Sphere
facets H3
completedFacets List
completedFacetIds HashSet
리턴 void

프로퍼티 상세

m_background 공개적으로 정적으로 프로퍼티

public static Vector3D m_background
리턴 Vector3D