본문으로 건너뛰기

VIZXML

외부 파일 및 외부 파일 내의 특정 노드 등을 연계하여 XML 형식으로 구조를 표현할 수 있는 방법입니다.

정보

기본적인 외부 연계 가능 파일 형식은 VIZ 파일 형식입니다.
MCAD, SPC, BIM 형식 파일도 연계 가능하나 변환기에서 VIZXML → VIZ 변환을 선행한 후 사용하는 것을 권장합니다.


VIZXML 기본 구성 형식

<?xml version="1.0" encoding="UTF-8"?>
<VIZXML>
<Model Name="Root" SkipBrokenLinks="True" >
<Node Name="NODE A" />
<Node Name="NODE B" />
<Node Name="NODE C" />
</Model>
</VIZXML>

VIZXML Assembly

<?xml version="1.0" encoding="UTF-8"?>
<VIZXML>
<Model Name="Root" SkipBrokenLinks="True" >
<Node Name="NODE A" >
<Node Name="NODE A-1" Type="Assembly"/>
<Node Name="NODE A-2" Type="Part" />
<Node Name="NODE A-3" Type="Part" />
</Node>
<Node Name="NODE B" />
<Node Name="NODE C" />
</Model>
</VIZXML>

VIZXML Assembly Part

<VIZXML>

VIZXML 문서는 하나의 <VIZXML> 태그 안에 정의합니다.

<Model>

모델 구조는 하나의 <Model> 태그 안에 정의합니다.

구분설명비고
Name모델 이름Name=""
SkipBrokenLinksVIZZARD에서 오픈 시, 절대 경로에 VIZ 파일이 없는 경우에도 로딩 진행 여부
(False인 경우, VIZZARD에서 파일 선택 다이얼로그가 실행됨.)
SkipBrokenLinks="True"
SkipBrokenLinks="False"
노트
  • 파일 인코딩 형식 : UTF-8
  • 연계되는 파일은 Leaf Node에만 설정하여 사용할 수 있습니다.

VIZ 파일 연계

<?xml version="1.0" encoding="UTF-8"?>
<VIZXML>
<Model Name="Root" SkipBrokenLinks="True" >
<Node Name="NODE A" >
<Node Name="6501TBH302" ExtLinkFile="C:\VIZ\6501TBH302.viz"/>
</Node>
<Node Name="NODE B" >
<Node Name="6501TBH303" ExtLinkFile="C:\VIZ\6501TBH303.viz" />
</Node>
<Node Name="NODE C" >
<Node Name="6501TBH304" ExtLinkFile="C:\VIZ\6501TBH304.viz" />
</Node>
<Node Name="NODE D" >
<Node Name="6501TBH305" ExtLinkFile="C:\VIZ\6501TBH305.viz" />
</Node>
</Model>
</VIZXML>
6501TBH302.viz6501TBH303.viz6501TBH304.viz6501TBH305.viz
6501TBH302.viz6501TBH303.viz6501TBH304.viz6501TBH305.viz

ExtLinkFile

VIZ 파일 내부의 특정 Node 연계 (Node Path 방식)

<?xml version="1.0" encoding="UTF-8"?>
<VIZXML>
<Model Name="Root" SkipBrokenLinks="True" >
<Node Name="6501TBH303" >
<Node Name="/303-TB23A" ExtLinkNode="C:\VIZ\6501TBH303.viz:/ROOT\/BLOCK\/303-TB23A"/>
<Node Name="/303-TB23P" ExtLinkNode="C:\VIZ\6501TBH303.viz:/ROOT\/BLOCK\/303-TB23P"/>
</Node>
<Node Name="6501TBH304" >
<Node Name="/304-TB23A" ExtLinkNode="C:\VIZ\6501TBH304.viz:/ROOT\/BLOCK\/304-TB23A" />
<Node Name="/304-TB23P" ExtLinkNode="C:\VIZ\6501TBH304.viz:/ROOT\/BLOCK\/304-TB23P" />
</Node>
</Model>
</VIZXML>
6501TBH303.viz
/303-TB23A
6501TBH303.viz
/303-TB23P
6501TBH304.viz
/304-TB23A
6501TBH304.viz
/304-TB23P
/303-TB23A/303-TB23P/304-TB23A/304-TB23P

ExtLinkNode

VIZ 파일 내부의 특정 Node 연계 (Node ID 방식)

<?xml version="1.0" encoding="UTF-8"?>
<VIZXML>
<Model Name="Root" SkipBrokenLinks="True" >
<Node Name="6501TBH303" >
<Node Name="/303-TB23A (463)" ExtLinkId="C:\VIZ\6501TBH303.viz:463"/>
<Node Name="/303-TB23P (416)" ExtLinkId="C:\VIZ\6501TBH303.viz:416"/>
</Node>
<Node Name="6501TBH304" >
<Node Name="/304-TB23A (520)" ExtLinkId="C:\VIZ\6501TBH304.viz:520" />
<Node Name="/304-TB23P (459)" ExtLinkId="C:\VIZ\6501TBH304.viz:459" />
</Node>
</Model>
</VIZXML>
6501TBH303.viz
463
6501TBH303.viz
416
6501TBH304.viz
520
6501TBH304.viz
459
463416520459

ExtLinkId

<Node>

구조정보 표현은 중첩에 의해 포함관계가 표현 가능한 <Node> 태그로 정의합니다.

구분설명비고
Name노드 이름Name=""
Type노드 타입, 생략되면 AssemblyType="Assembly"
Type="Part"
ExtLinkFile노드에 VIZ 파일을 연결할 경우 사용ExtLinkFile="파일 절대경로"
ExtLinkNode노드에 VIZ 파일의 특정 노드를 노드 경로로 연결할 경우 사용ExtLinkNode="파일 절대경로:노드이름\하위노드이름"
ExtLinkId노드에 VIZ 파일의 특정 노드를 ID로 연결할 경우 사용ExtLinkId="파일 절대경로:노드ID"
HideAndLockVIZZARD에서 오픈 시, 개체 숨김상태로 모델을 조회HideAndLock="True"
HideAndLock="False"
UncheckToUnloadVIZZARD에서 오픈 시, 모델 트리에서 체크박스 해제했을 때 모델 언로딩 (메모리에서 모델 제거)UncheckToUnload="True"
UncheckToUnload="False"
노트
  • <Node> 내에서 ExtLinkFile, ExtLinkNode, ExtLinkId는 세가지 중 한가지만 사용할 수 있습니다.
  • 파일 절대경로와 노드 경로 혹은 노드 ID 사이는 콜론(:)으로 구분합니다.

VIZXML 노드 속성 추가

단일 속성 추가

<?xml version="1.0" encoding="UTF-8"?>
<VIZXML>
<Model Name="Root" >
<Node Name="NODE A" />
<Node Name="NODE B" UdaKey=“Key“ UdaVal="Value" />
</Model>
</VIZXML>

단일 속성 추가는 <Node> 태그에 추가할 수 있는 XML Attribute로 정의합니다.

구분설명비고
UdaKey단일 속성 이름UdaKey=""
UdaVal단일 속성 값UdaVal=""

복수 속성 추가

<?xml version="1.0" encoding="UTF-8"?>
<VIZXML>
<Model Name="Root">
<Node Name="NODE A">
<Node Name="NODE B">
     <UserDefinedAttributes>
     <Param Name="Key001" Value="Value001" />
     <Param Name="Key002" Value="Value002" />
      </UserDefinedAttributes>
   </Node>
</Node>
</Model>
</VIZXML>

<UserDefinedAttributes>

복수 속성은 <Node> 내의 <UserDefinedAttributes> 태그 안에서 정의됩니다.

<Param>

복수 속성 내용 추가는 <UserDefinedAttributes> 태그 하위의 <Param> 태그로 정의됩니다.

구분설명비고
Name복수 속성 이름Name=""
Value복수 속성 값Value=""

VIZXML 노드 위치 수정

<?xml version="1.0" encoding="UTF-8"?>
<VIZXML>
<Model Name="Root" SkipBrokenLinks="True" >
<Node Name="LinkFile A" ExtLinkFile="C:\VIZ\VIZFile001.viz" V1="1" V2="0" V3="0" V4="0" V5="1" V6="0" V7="0" V8="0" V9="1" T1="0" T2="0" T3="0" />
<Node Name="LinkFile B" ExtLinkFile="C:\VIZ\VIZFile002.viz" V1="1" V2="0" V3="0" V4="0" V5="1" V6="0" V7="0" V8="0" V9="1" T1="0" T2="0" T3="0" />
</Model>
</VIZXML>

노드 위치 수정은 <Node> 태그에 추가할 수 있는 XML Attribute로 정의합니다.

구분설명비고
V1 ~ V9노드 회전값V1=""
T1 ~ T3노드 이동값T1=""

VIZXML 노드 색상 수정

<?xml version="1.0" encoding="UTF-8"?>
<VIZXML>
<Model Name="Root" SkipBrokenLinks="True" >
<Node Name="LinkFile A" ExtLinkFile="C:\VIZ\VIZFile001.viz" Red="255" Green="255" Blue="0" Alpha="255" />
<Node Name="LinkFile B" ExtLinkFile="C:\VIZ\VIZFile002.viz" Red="255" Green="0" Blue="0" Alpha="255" />
</Model>
</VIZXML>

노드 색상 수정은 <Node> 태그에 추가할 수 있는 XML Attribute로 정의합니다.

구분설명비고
RedRGBA Red 0~ 255Red=""
GreenRGBA Green 0~ 255Green=""
BlueRGBA Blue 0~ 255Blue=""
AlphaRGBA Alpha 0~ 255Alpha=""