개체 숨김 관리
개체 숨김 관리 Plugin API 예제입니다.
개요
모델 파일에 포함된 일부 개체를 항상 보이지 않는 상태로 유지해야 하는 경우가 있습니다.
예를 들어, 설계 단계에서는 필요하지만 다른 목적(검토, 공유, 시뮬레이션 등)으로 사용할 때는
OBST(Obstruction Volume) 모델을 숨겨야 할 수 있습니다.
개체 숨김 관리 기능을 사용하면 다음과 같은 특징을 가집니다.
- 개체를 숨김 처리하더라도
전체 보이기 / 숨기기 등의 동작에 의해 다시 표시되지 않음 - 한 번 숨김 목록에 추가되면
명시적으로 해제하기 전까지 유지 - 일반적인
Show / HideAPI와 독립적으로 동작
개체 숨김 추가 예제 (OBST 모델)
아래 예제는 (OBST) 문자열을 포함한 모델을 검색하여
개체 숨김 목록에 추가하는 예제입니다.
// 모델 열린 상태 확인
if (!Connector.IsOpenDocument()) return;
// 화면 갱신 차단
Connector.EnableRender(false);
// OBST 모델 검색
List<NodeVO> items = Connector.FindObject(
"(OBST)", // 검색어
true, // 대소문자 구분 안 함
true, // 어셈블리 노드만 검색
false, // 전체 모델
false, // 속성 미포함 검색
false, // 전체 노드 검색
false // 부분 일치
);
// 검색된 모델 Index 수집
List<int> indexList = new List<int>();
foreach (NodeVO item in items)
{
indexList.Add(item.Index);
}
// 개체 숨김 목록에 추가
Connector.AddObjectsHideList(indexList.ToArray());
// 화면 갱신 재개
Connector.EnableRender(true);
개체 숨김 해제 예제
현재 숨김 처리된 개체 목록을 조회한 후
숨김 목록에서 제거하는 예제입니다.
// 개체 숨김 목록 조회
List<NodeVO> items = Connector.GetHidedObjectsStr();
// Index 목록 구성
List<int> indexList = new List<int>();
foreach (NodeVO item in items)
{
indexList.Add(item.Index);
}
// 개체 숨김 목록에서 제거
Connector.RemoveObjectsHideList(indexList.ToArray());
// 화면 갱신
Connector.EnableRender(true);
관련 메뉴
- 홈 → 개체 숨김