본문으로 건너뛰기

모델 보이기 / 숨기기, 선택 / 해제

모델을 보이기 / 숨기기 하거나 선택 / 해제하는 방법에 대한 Plugin API 예제입니다.


모델 보이기 / 숨기기

화면에 렌더링된 모델을 보이거나 숨길 수 있습니다.
아래 예제는 로딩된 모델 중 PIPE 모델만 보이도록 처리하는 예제입니다.

// 모델 열린 상태 확인
if (!Connector.IsOpenDocument()) return;

// 화면 갱신 차단
Connector.EnableRender(false);

// ===========================
// 전체 숨기기 / 보이기
// ===========================
// Connector.SetObjectVisibleAction(PluginObjectVisibleAction.HIDE_ALL);
// Connector.SetObjectVisibleAction(PluginObjectVisibleAction.HIDE_DESELECTION);
// Connector.SetObjectVisibleAction(PluginObjectVisibleAction.HIDE_SELECTION);
// Connector.SetObjectVisibleAction(PluginObjectVisibleAction.SHOW_ALL);

Connector.ShowAll(false); // true: 전체 보이기, false: 전체 숨기기

// PIPE 모델 검색
List<NodeVO> items = Connector.FindObject(
"PIPE", // 검색어
true, // 대소문자 구분 안 함
true, // 어셈블리 노드만 검색
false, // 전체 모델
false, // 속성 미포함 검색
false, // 전체 노드 검색
false // 부분 일치
);

// 개별 모델 보이기
foreach (NodeVO item in items)
{
Connector.ShowObject(
item.Index, // Node Index
true // true: 보이기, false: 숨기기
);
}

// 화면 갱신 재개
Connector.EnableRender(true);

모델 선택 / 해제

모델 조작 또는 속성 조회를 위해
API를 사용하여 모델을 선택하거나 해제할 수 있습니다.

아래 예제는 PIPE 모델을 선택하는 예제입니다.

// 모델 열린 상태 확인
if (!Connector.IsOpenDocument()) return;

// 화면 갱신 차단
Connector.EnableRender(false);

// 이전 선택 해제
Connector.DeselectAll();

// ===========================
// 기타 선택 동작
// ===========================
// Connector.SetObjectSelectionAction(PluginObjectSelectionActions.SELECTION_ALL);
// Connector.SetObjectSelectionAction(PluginObjectSelectionActions.REVERSE_SELECTION);
// Connector.SetObjectSelectionAction(PluginObjectSelectionActions.CANCEL_SELECTION);

// PIPE 모델 검색
List<NodeVO> items = Connector.FindObject(
"PIPE",
true,
true,
false,
false,
false,
false
);

// 개별 모델 선택
foreach (NodeVO item in items)
{
if (Connector.IsSelected(item.Index)) continue;

Connector.SetSelected(
item.Index, // Node Index
true, // true: 선택, false: 선택 해제
true // Focus
);
}

// 화면 갱신 재개
Connector.EnableRender(true);

선택 관련 참고 사항

DeselectAll()
: 전체 선택 해제

SelectAll()
: 전체 선택


선택 색상 및 표시 방식

모델이 선택되면 기본적으로 색상이 변경됩니다.
선택 색상을 변경하려면 아래 API를 사용합니다.

선택된 모델을 색상 대신 BBOX(개별 / 전체) 로 표시하려면
SetObjectSelectionMode API를 사용합니다.

  • 관련 메뉴: 홈 → 환경설정 → 개체선택유형

선택 기능 제어

사용자가 임의로 모델을 선택하지 못하도록
선택 기능을 비활성화할 수 있습니다.


투명 모델 선택 방지

모델이 투명 처리된 경우,
해당 모델이 선택되지 않도록 설정할 수 있습니다.