본문으로 건너뛰기

GetPrincipalAxis

Overloads​

NameDescription
GetPrincipalAxis(List<int> index)지정한 개체의 주축(Principal Axis) 분석 결과 반환.
Facet 정점의 주성분 분석(PCA)으로 주축 3개를 구하고, Facet 면적 가중 법선으로 지배적인 면 법선(DominantNormal)을 구함.
판(Plate) 형상의 법선 방향, 길이 방향 산출 등에 사용.
GetPrincipalAxis(List<Vertex3D> vertices)지정한 정점 목록의 주축(Principal Axis) 분석 결과 반환 (주성분 분석, PCA).

GetPrincipalAxis(List<int> index)​

public PrincipalAxisItem GetPrincipalAxis(List&lt;int&gt; index)

지정한 개체의 주축(Principal Axis) 분석 결과 반환.
Facet 정점의 주성분 분석(PCA)으로 주축 3개를 구하고, Facet 면적 가중 법선으로 지배적인 면 법선(DominantNormal)을 구함.
판(Plate) 형상의 법선 방향, 길이 방향 산출 등에 사용.

Parameters​

NameTypeDescription
indexList<int>개체 인덱스 목록 (BODY / ASSEMBLY 는 PART 로 변환하여 조회)

Returns​

TypeDescription
PrincipalAxisItem주축 분석 결과. Facet 이 없으면 Edge 정점으로 분석하며, 정점이 3개 미만이면 IsValid = false

Examples​

private void Example()
{
List<int> index = new List<int>() { 8 };

VIZCore3D.NET.Data.PrincipalAxisItem axis = vizcore3d.GeometryUtility.GetPrincipalAxis(index);
if (axis.IsValid == false) return;

VIZCore3D.NET.Data.Vector3D plateNormal = axis.DominantNormal;
VIZCore3D.NET.Data.Vector3D lengthDir = axis.MajorAxis;
}

GetPrincipalAxis(List<Vertex3D> vertices)​

public PrincipalAxisItem GetPrincipalAxis(List&lt;Vertex3D&gt; vertices)

지정한 정점 목록의 주축(Principal Axis) 분석 결과 반환 (주성분 분석, PCA).

Parameters​

NameTypeDescription
verticesList<Vertex3D>정점 목록

Returns​

TypeDescription
PrincipalAxisItem주축 분석 결과. 정점이 3개 미만이면 IsValid = false. DominantNormal 은 MinorAxis 와 같은 방향