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>

<?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>
VIZXML 문서는 하나의 <VIZXML> 태그 안에 정의합니다.
<Model>
모델 구조는 하나의 <Model> 태그 안에 정의합니다.
| 구분 | 설명 | 비고 |
|---|---|---|
| Name | 모델 이름 | Name="" |
| SkipBrokenLinks | VIZZARD에서 오픈 시, 절대 경로에 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.viz | 6501TBH303.viz | 6501TBH304.viz | 6501TBH305.viz |
|---|---|---|---|
![]() | ![]() | ![]() | ![]() |

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 |
|---|---|---|---|
![]() | ![]() | ![]() | ![]() |

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 |
|---|---|---|---|
![]() | ![]() | ![]() | ![]() |

<Node>
구조정보 표현은 중첩에 의해 포함관계가 표현 가능한 <Node> 태그로 정의합니다.
| 구분 | 설명 | 비고 |
|---|---|---|
| Name | 노드 이름 | Name="" |
| Type | 노드 타입, 생략되면 Assembly | Type="Assembly" Type="Part" |
| ExtLinkFile | 노드에 VIZ 파일을 연결할 경우 사용 | ExtLinkFile="파일 절대경로" |
| ExtLinkNode | 노드에 VIZ 파일의 특정 노드를 노드 경로로 연결할 경우 사용 | ExtLinkNode="파일 절대경로:노드이름\하위노드이름" |
| ExtLinkId | 노드에 VIZ 파일의 특정 노드를 ID로 연결할 경우 사용 | ExtLinkId="파일 절대경로:노드ID" |
| HideAndLock | VIZZARD에서 오픈 시, 개체 숨김상태로 모델을 조회 | HideAndLock="True" HideAndLock="False" |
| UncheckToUnload | VIZZARD에서 오픈 시, 모델 트리에서 체크박스 해제했을 때 모델 언로딩 (메모리에서 모델 제거) | 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로 정의합니다.
| 구분 | 설명 | 비고 |
|---|---|---|
| Red | RGBA Red 0~ 255 | Red="" |
| Green | RGBA Green 0~ 255 | Green="" |
| Blue | RGBA Blue 0~ 255 | Blue="" |
| Alpha | RGBA Alpha 0~ 255 | Alpha="" |







