ShdCore.NET Document Help

ShdCore.NET

ShdCore.NET 라이브러리는 VIZ 파일에 포함되어 있는 모델트리, 속성, 미리보기 이미지 데이터를 추출하는 기능을 제공 합니다.

모델 트리 데이터 조회

public void Example() { string path = "C:\\VIZ\\Model.viz"; bool loadAttribute = true; bool loadMeshInfo = true; bool loadBody = false; ShdCore.NET.StructureManager stru = new StructureManager( path /* VIZ 파일 경로 및 파일이름 */ , loadAttribute /* Attribute */ , loadMeshInfo /* 모델 로딩 시, Mesh 정보 포함 여부 */ , loadBody /* 모델 구조에 Body 형식 포함 여부 */ ); string log = string.Format("RESULT - ALL: {0:N0} EA / PART: {1:N0} EA / BODY: {2:N0} EA / Elapsed: {3:N0} Milliseconds / Version: {4}" , stru.NodeCount /* Node Count */ , stru.GetNodeCount(NodeKind.PART) /* Node Count (TYPE :: Part) */ , stru.GetNodeCount(NodeKind.BODY) /* Node Count (TYPE :: Body) */ , stru.ElapsedMilliseconds /* Loading Time */ , stru.FileVersion /* VIZ File Version */ ); List<ShdCore.NET.TreeNode> roots = stru.Roots; for (int i = 0; i < roots.Count; i++) { ShdCore.NET.TreeNode node = roots[i]; string name = node.Name; if(node.Nodes.Count != 0) { // Has Child } } }

모델 Bound Box 데이터 조회

public void Example() { string path = "C:\\VIZ\\Model.viz"; ShdCore.NET.BoundBoxManager boundBox = new BoundBoxManager(path); if (boundBox.ModelBoundBox == null) { MessageBox.Show("BoundBox 정보 없음.", "ShdCore.NET", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } else { float minX = boundBox.ModelBoundBox.Min[0]; float minY = boundBox.ModelBoundBox.Min[1]; float minZ = boundBox.ModelBoundBox.Min[2]; float maxX = boundBox.ModelBoundBox.Max[0]; float maxY = boundBox.ModelBoundBox.Max[1]; float maxZ = boundBox.ModelBoundBox.Max[2]; } }

모델 미리보기 이미지 조회

public void Example() { string path = "C:\\VIZ\\Model.viz"; ShdCore.NET.ThumbnailManager thumbnail = new ThumbnailManager(path); Image img = thumbnail.GetImage(); if (img == null) { MessageBox.Show("Thumbnail 정보 없음.", "ShdCore.NET", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } PictureBox pbThumb = new PictureBox(); pbThumb.Image = img; System.Drawing.Size size = thumbnail.GetSize(); string sizeStr = string.Format("Size : {0}px / {1}px", size.Width, size.Height); }
Last modified: 08 1월 2024