V.1.5.26.928
Major Features
V.1.5.26.928
추가
-
[ObserverManager] (신규)
- 옵저버(관측 지점) 시야 분석 기능 추가 (
vizcore3dx.Observer) — 지정한 위치·방향에서 어느 개체가 보이고 가려지는지 계산 - 옵저버 배치 :
Add(위치·방향 지정) /AddFromCamera(현재 카메라 시점),GetItem/GetIDs/Contains/Delete/Clear,Items/CountObserverItem(신규 데이터 클래스) : 이름·위치·방향·최대 거리(MaxDistanceMm)·각도 간격(AngularStepDeg)·원뿔 각도(ConeAngleDeg)·표식 크기 등
- 시야 분석 :
AnalyzeAsync(옵션 직접 지정 또는 옵저버 id 지정, 진행률·취소 토큰 오버로드) /CancelAnalyzeAsyncSightMapResult(신규 데이터 클래스) : 광선 수·적중 수, 적중점 목록, 가시 노드(SightMapNodeHit: 노드별 적중 수·가시율)·비가시 노드 목록- 여러 옵저버의 결과를 합쳐 커버리지를 구하는
Union
- 결과 표시 :
Show/Hide(가시·비가시 색상, 적중점 표시 상한 등Style—ObserverStyle) - 선택·표시 제어 :
SetSelected/SetSelectedOnly/GetSelected,SetVisible, 옵저버 시점으로 카메라 이동MoveCameraTo - 저장·복원 : 파일
Export/Import, 문자열ToJson/FromJson(ObserverImportMode: Append / Replace) - 이벤트 :
OnObserverCreatedEvent/OnObserverDeletedEvent/OnObserverClearedEvent/OnObserverChangedEvent(ObserverChangeReason) /OnObserverSelectedChangedEvent/OnObserverVisibleChangedEvent - (UI) 옵저버 툴바(
ToolbarObserver)·리본 [옵저버] 탭·옵저버 창 패널(TabObserverEnabled, 목록·픽킹 배치·가시율 히트맵·X-Ray 강조)·설정 다이얼로그 [옵저버] 탭 추가
- 옵저버(관측 지점) 시야 분석 기능 추가 (
-
[PrintManager] (신규)
- 3D 화면 인쇄 기능 추가 (
vizcore3dx.Print) Print(인쇄 대화상자 표시 여부 지정) /ShowPreview(미리보기 창)- 머리글·바닥글·날짜·페이지 번호 템플릿 :
Header/Footer/DateText/PageNumber(PrintTextItem(신규 데이터 클래스) : 사용 여부·텍스트·글꼴·색상) - 용지 방향
Orientation(PrintOrientation: Auto / Portrait / Landscape) / 여백Margins - 컨트롤에서 바로 호출하는
PrintView/ShowPrintPreview
- 3D 화면 인쇄 기능 추가 (
-
[FindManager]
- 저장된 검색(Search Set) 추가 — 검색 다이얼로그의 조건(이름·타입·선택 상태·속성·공간 조건)을 이름을 붙여 저장하고 다시 실행
AddSearchSet/RemoveSearchSet/GetSearchSet/GetSearchSetNames, 실행RunSearchSet(이름 또는 항목 지정), 파일ImportSearchSet/ExportSearchSetSearchSetItem/SearchSetAttributeItem(신규 데이터 클래스),NameMatchMode/ConditionCombine(신규 열거형)
- 정규식 검색
RegexSearch, 대소문자를 구분하는QuickSearch(caseSensitive)오버로드 - 마지막 검색에 사용된 방식 조회
LastSearchStrategy(SearchStrategy: NameDirect / NameRegex / Bulk) - (UI) 검색 다이얼로그에 [조건 저장] / [저장된 검색] 버튼 추가, 속성 탭 Value 셀에 여러 줄을 붙여넣으면 줄마다 조건 행 자동 생성
- 저장된 검색(Search Set) 추가 — 검색 다이얼로그의 조건(이름·타입·선택 상태·속성·공간 조건)을 이름을 붙여 저장하고 다시 실행
-
[UDAManager]
- 속성 트리 조회 :
GetTree— 카테고리 > 키 > 값 > 노드 수 구조로 모델 전체 속성을 한 번에 조회 (UdaTreeCategory/UdaTreeKey/UdaTreeValue) - 속성 내보내기 :
ExportTree(확장자에 따라 CSV / JSON / XML) /ExportMatrix(노드 × 속성 표 CSV) - 속성 값 분포 :
GetValueDistribution— 특정 속성의 값별 노드 수·비율 집계 (AttributeDistribution/AttributeValueCount)
- 속성 트리 조회 :
-
[GeometryPropertyManager]
- 메시 기하 집계 :
GetMeshGeometry— 전체 또는 지정 노드의 표면적·부피·질량 중심·삼각형 수 (MeshGeometryResult) - 동일 형상 통계 :
GetShapeStatistics— 같은 형상을 가진 노드를 묶어 종류 수·묶음별 노드 목록 조회 (ShapeStatistics/ShapeGroup) - 기하 지표 순위 :
GetRanking— 크기·부피·표면적·삼각형 수 등 지표 기준 상위 N개 노드 (GeometryRanking/GeometryRankItem,GeometryRankMetric) - 축 방향 분포 :
GetAxisDistribution— 지정 축을 구간으로 나눠 구간별 노드 수 집계 (AxisDistribution/AxisBand)
- 메시 기하 집계 :
-
[ModelTreeManager]
- 이름 필터 :
SetNameFilter(대소문자 구분 옵션) /ClearNameFilter, 상태 조회NameFilter/IsNameFilterEnabled/IsNameFilterCaseSensitive - 정렬 :
SortOrder(ModelTreeSortOrder: Original / NameAscending / NameDescending), 트리 상단 검색바 표시SearchBarVisible - 선택 연동 : 선택한 노드로 트리를 자동 펼침·스크롤하는
SelectionAutoExpandEnabled/SelectionAutoScrollEnabled - 색상 : 배경·텍스트·선택·체크박스·스크롤바 등 역할별 색 지정
GetColor/SetColor/SetColors/ResetColors(ModelTreeColorRole), 테마 일괄 적용ApplyTheme(ModelTreeTheme: Light / Gray / Dark), 리본 테마 추종FollowRibbonTheme - (UI) 모델트리 상단 검색/정렬 툴바, 잠긴 노드 자물쇠 아이콘, 트리 우클릭 메뉴에 노드 관리·파일 내보내기·파일 닫기 추가
- 이름 필터 :
-
[Object3DPrimitiveManager]
- 빈 씬에서 루트 어셈블리 생성 :
AddRootNode - 메시 파일 가져오기 :
AddPrimitiveMeshFromFile— STL(ASCII/Binary) / OBJ / PLY(ASCII) 파일을 노드로 추가 (정점 색상 자동 판정) - 도형 종류 추가 : 반구
AddPrimitiveHemisphere/ 타원체AddPrimitiveSpheroid(Primitives열거형 값 추가 :HEMISPHERE) - (UI) 툴바·리본 반구 생성 버튼, 도형 추가 다이얼로그에 모델 위 위치를 클릭해 좌표를 채우는 위치 선택 버튼 추가
- 빈 씬에서 루트 어셈블리 생성 :
-
[Object3DManager]
- 화면 좌표 선택 객체 조회 :
GetPickableObject— 최상위 1건 조회 및 겹친 객체를 순번(index)으로 순환 조회, 노드 목록GetPickableNodes - 화면 영역 노드 조회 :
FromScreen(x1, y1, x2, y2, fullContainsOnly)— 사각 영역에 걸친/완전히 포함된 노드,FromScreen(fullContainsOnly)전체 화면 기준 - 선택 순서 묶음 조회 :
GetSelectedIndexInSelectedOrderByGroup/GetSelectedNodeInSelectedOrderByGroup— 한 번의 조작으로 함께 선택된 개체를 한 묶음으로 반환
- 화면 좌표 선택 객체 조회 :
-
[ModelManager]
- 노드 기본 특성 부분 로드 :
LoadNodeDefaultProperties(kinds)/(kinds, nodes)— 색상·표면적·부피·부피 중심·삼각형 수 중 필요한 종류만 지정 (NodeDefaultPropertyKind(신규 플래그 열거형)) - 파일 단위 닫기 :
Close(filePath)— 여러 파일을 추가한 상태에서 지정 파일만 닫기 (저장 전 Undo 가능) - 단일 노드 내보내기 :
ExportNode— 지정 노드를 VIZX로 저장 (상위 경로 유지 여부 지정) - OBJ 내보내기 옵션 :
ExportObj(path, option)/(path, nodes, option)— 정점 색상 방식·재질 그룹 단위·노멀·그룹 포함 여부·MTL 경로 지정 (ObjExportOption,ObjVertexColorMode/ObjMaterialGrouping)
- 노드 기본 특성 부분 로드 :
-
[DecalManager]
- 화살표 데칼 추가 — 축·촉·색·굵기를 갖는 화살표를 면 위에 데칼로 생성
AddDecalArrow(길이·위치·법선·위 방향 지정 / 시작점·끝점 지정 오버로드), 대화식AddDecalArrowDialog- 편집·조회 :
SetArrowDecalLength/SetArrowDecalStyle/GetArrowDecalStyle/IsArrowDecal, 기본 스타일DefaultArrowDecalStyle ArrowDecalStyle(신규 데이터 클래스) : 선 색·패턴·굵기, 촉 색·크기·폭 비율, 양쪽 촉 여부, 촉 모양ArrowDecalHeadKind(신규 열거형 : Triangle / OpenV / None / Stealth / Diamond / Oval / Chevron / ChevronRepeat)
- 데칼 목록 문자열 왕복 :
ToJson/FromJson - (UI) 화살표 데칼 전용 다이얼로그(길이·자동 5%/15%·색 견본·촉 모양·미리보기), 데칼 툴바·리본에 화살표 버튼 추가
- 화살표 데칼 추가 — 축·촉·색·굵기를 갖는 화살표를 면 위에 데칼로 생성
-
[ClashManager]
- 결과 리포트 :
ExportResultCsv(결과 표 CSV) /ExportReportHtmlAsync(간섭 위치 캡처 이미지를 내장한 단일 HTML) /StopReportExport - 이동 경로 워크플로 : 이동 테스트 경로 조회
GetTestPaths, 파일 저장·복원ExportTestPaths/ImportTestPaths, 스텝 재생PlayTestPathsAsync/StopTestPathPlayback
- 결과 리포트 :
-
[AnimationManager]
- 프레임 시퀀스 내보내기 :
ExportFrameSequenceAsync— 애니메이션을 지정 fps로 재생하며 프레임을 PNG 파일로 저장, 중단StopFrameSequenceExport
- 프레임 시퀀스 내보내기 :
-
[ProjectionManager]
- 투영 빈 영역 검출 :
FindEmptyRegions— 2D 투영 결과에서 개체가 없는 영역을 면적 내림차순으로 조회 (ProjectionEmptyRegion: 경계 사각형·면적·외곽선)
- 투영 빈 영역 검출 :
-
[ViewManager]
- 무인 캡처 :
RequestRender(렌더 요청) /CaptureRenderImage— 창이 가려져 있어도 렌더 버퍼에서 직접 이미지 캡처 (오버레이 포함 여부 지정) SetSubView(4): 1+3 화면 분할 (주 화면 + 우측 서브뷰 3개)
- 무인 캡처 :
-
[ShapeManager]
- 히트맵 형상 생성 :
CreateHeatmap— 노드 정점마다 스칼라 값을 계산하는 함수를 받아 색상 매핑된 메시 형상 생성 (HeatmapResult: 형상 목록·최소/최대값)
- 히트맵 형상 생성 :
-
[NoteManager]
- 표면 노트 대상점 :
SetTargetPosition— 노트가 가리키는 지점 이동 (OnNoteMoved발생, Undo 가능),NoteItem.TargetPosition조회 - 노트 목록 CSV 내보내기 :
ExportCsv
- 표면 노트 대상점 :
-
[MeasureManager]
- 측정 목록 CSV 내보내기 :
ExportCsv
- 측정 목록 CSV 내보내기 :
-
[PmiManager]
- 소유 노드 기준 조회 :
FromNode(단건 / 다건) — 지정 노드에 속한 PMI 요소 목록,PmiElement.OwnerNode속성 추가 - (UI) PMI 트리에 소유 노드 기준 분류 모드 추가, 컨텍스트 메뉴 "이 노드의 주석만 표시"
- 소유 노드 기준 조회 :
-
[SelectionBoxManager]
- 선택 상자 저장·복원 :
ExportToJson/ImportFromJson(기존 상자 대체 여부 지정) - 집중 모드 :
EnterFocusMode/ExitFocusMode— 지정 상자만 남기고 다른 상자를 숨긴 뒤 상자 밖 모델을 잘라 내부만 표시
- 선택 상자 저장·복원 :
-
[SketchManager]
- 스케치 목록 조회
GetItems, 지정 항목 삭제Delete(items)
- 스케치 목록 조회
-
[RibbonManager]
- 계층 조회 : 항목의 상위 그룹
GetParentGroupName/ 그룹의 상위 탭GetParentTabName/ 항목 크기GetItemSize - 이동 : 그룹을 다른 탭으로
MoveGroup, 항목을 다른 그룹으로MoveItem(위치 index 지정 오버로드)
- 계층 조회 : 항목의 상위 그룹
-
[SnapshotManager] / [SectionManager]
- 목록 문자열 왕복 :
ToJson/FromJson(Note / Measure / Decal에도 동일 제공 — 파일 없이 JSON 문자열로 저장·복원)
- 목록 문자열 왕복 :
-
[VIZCore3DXControl]
- 화면 갱신 차단 범위 :
BeginUpdateScope—using블록 안에서 여러 상태를 바꾸는 동안 화면 갱신을 차단하고 블록을 벗어나면(예외 포함) 자동 해제, 차단 중 여부IsUpdating - 진입점
Observer/Print, 옵저버 툴바ToolbarObserver/ 창 패널 탭TabObserverEnabled
- 화면 갱신 차단 범위 :
-
[공통] 실패 원인 조회 규약
- 파일 I/O·생성·조회가 실패했을 때 예외 대신 사유를 남기는
LastOperationResult(OperationResult(신규 열거형) : NotInitialized / InvalidArgument / ItemNotFound / FileNotFound / InvalidFileFormat / DuplicateName / EngineRejected 등) /LastOperationStatus(OperationStatus: 성공 여부·발생 위치·원본 세부 코드) - 적용 Manager : Animation / Clash / Compare / Decal / Find / Frame / GenericData / Input / Measure / Note / Object3DPrimitive / Observer / Pmi / Print / Projection / Section / SelectionBox / Setting / Shape / Sketch / Snapshot / UDA (Model·Zone은 기존 결과 열거형을 감싼
LastOperationStatus만 추가) - 예외 계층 :
VIZCoreException/VIZCoreNotInitializedException/VIZCoreInvalidArgumentException(신규)
- 파일 I/O·생성·조회가 실패했을 때 예외 대신 사유를 남기는
-
[공통] 열거형 값 추가
ViewContextMenuKind:ZONE_SINGLE/PMI_SINGLE— 3D 뷰에서 Zone / PMI 우클릭 시 표시되는 컨텍스트 메뉴 (SetContextMenu/GetContextMenu로 교체 가능)ToolbarKind:Observer,ToolbarItems:OBSERVER_*11종 /PRIMITIVE_HEMISPHERE/DECAL_ADD_DECAL_ARROWSettingItems.CameraMode: 카메라 궤도 모드 설정 저장
-
[UI]
- 리본 테마(Light / Gray / Dark)를 검색바·창 패널·팝업·다이얼로그 등 UI 전체에 적용, Dark 테마에서 창 제목줄·스크롤바·콤보 목록도 다크로 표시
- Note / Measure / Snapshot 목록에 우클릭 메뉴 추가 (저장 시점 이동·텍스트 수정·가시성·복원·이름 변경·복제·삭제)
- 설정 다이얼로그 [보기] 그룹에 카메라 궤도 모드 콤보 추가, 특수 효과 툴바 위치(상/좌/우) 저장
- Generic 데이터 창 패널에 깊이 검사 토글 버튼 추가 (다시 표시하지 않아도 즉시 전환)
- 리본 녹화 버튼에 녹화 중 상태 표시
수정 및 개선
-
[Object3DManager]
- 노드 래핑 경량화 —
Data.Node객체가 관리 상태를 갖지 않도록 구조를 나눠, 대규모 모델에서 노드 목록을 반환하는 모든 API의 조회 시간과 메모리 사용량 감소 GetNodePathMap속도 개선 (경로 중복 평가 제거)- 노드 속성 컨트롤(NodePropertyControl)이 노드를 선택할 때마다 전체 장면을 조회하던 비용 제거
GetNodes: 이름에 정규식 기호가 있으면 조회되지 않던 문제 수정 (*는 자리표로 해석),subNames가 비어 있으면 상위 결과만 반환, null 인자 가드GetNodesFromUDAKey:isVisible=false기본값이 "숨긴 개체만"으로 동작해 항상 0건이던 것을 "표시 여부 무관"으로 변경GetSelectedIndexInSelectedOrder/GetSelectedNodeInSelectedOrder: 범위 선택도 한 묶음으로 추적 (이전에는 범위 선택이 순서에 반영되지 않음)- 빈 곳을 클릭해 선택을 해제할 때 상위 노드가 선택 상태로 남던 문제 수정
- 드래그 조작 모드(회전/이동/줌)에서 노드 더블클릭 이벤트가 발생하던 문제 수정
- 노드 래핑 경량화 —
-
[FindManager]
- 검색 경로별 결과 불일치 수정 — 바디/면 표시 모델에서 이름 검색이 면 노드를 빠뜨리던 문제, AND 결합에서 전체 일치가 무시되던 문제, 속성 값 부분 일치 이스케이프 누락, 대상 노드 제한 무시, 컬처 의존 대문자 변환(터키어 로캘 실패) 등 — 같은 조건이면 어느 API로 호출해도 같은 결과
- 대량 검색 매칭 병렬화로 속도 개선, 검색 방식 자동 선택 임계값을 코어 수 기준으로 동적 계산
- 검색 다이얼로그와 API가 같은 이름 정규식 빌더를 사용하도록 통합
-
[UDAManager]
GetCategoryNameNodes:fullMatch=false가 정확 일치로 동작하던 것을 이름 부분 일치(대소문자 무시,*/?자리표)로 수정- UDA 값 검색에서 값의
*를 제거하던 것을 자리표로 해석, 값 인자 null 시 예외 제거
-
[GeometryPropertyManager]
GetShapeStatistics노드당 Core 호출 횟수를 줄여 속도 개선
-
[ZoneManager]
GetNodesInZone/FromNode: 공간 경계를 호출당 1회만 계산하도록 개선SetFaceOpacity: 값이 바뀌면OnZoneColorChangedEvent발생
-
[ShapeManager]
Shapes/FromCategory/Clear/Show/DepthTestEnable/Selectable/SetHighlightable및 도형 선택 이벤트가 Zone · Generic 데이터 · Observer가 소유한 형상을 제외하도록 변경 —Shape.Clear()가 Zone·Generic 표시를 지우지 않음 (목록을 인자로 받는 오버로드는 전달한 형상을 그대로 처리)
-
[ModelManager]
CanUndo/CanRedo: 초기화 전 호출 시 예외 대신 false 반환SaveVIZX/SaveAsVIZX: 빈 경로 또는 초기화 전 호출 시 예외 대신 false 반환Close(): 파일 없이 코드로 생성한 엔티티를 닫지 못하던 문제 수정- VIZX 부분 내보내기(
ExportVIZX(file, nodes))의 2GB 배열 상한 제거 - OBJ 내보내기 : mtllib를 OBJ 기준 상대경로로 기록, 실수 서식이 문화권에 따라 달라지지 않도록 수정
-
[Object3DPrimitiveManager]
- 툴바·다이얼로그의 SPHEROID가 실제로는 SphericalCap을 생성하던 문제 수정 (타원체 생성)
AddPrimitive*계열에 무효화된 노드 참조를 전달하면 null을 반환하던 것을ArgumentException으로 변경
-
[AnimationManager]
ImportAnimations: 가져온 애니메이션의 Groups가 비던 문제, 가져오기 중 접근 위반 수정CreateAnimation/DeleteAnimation: null·빈 인자 가드 (LastOperationResult에 InvalidArgument 기록)- 모델을 닫으면 애니메이션 목록 초기화
-
[DecalManager]
- 리더선이 Export / Import 후 복원되지 않던 문제 수정, 모델을 닫은 뒤 죽은 참조 방어
DecalItem.Description: 사용자 텍스트만 읽고 쓰도록 변경 (복원용 내부 토큰은 보존)
-
[NoteManager]
- 텍스트 자동 배치(
FitAndArrangeText계열)의 노트 기준점을TargetPosition으로 변경, 방사형 배치 시 지시선이 교차하던 문제 수정
- 텍스트 자동 배치(
-
[SelectionBoxManager]
SelectionBox.GetObject3DIndex호출 시 KeyNotFound 예외가 발생하던 문제 수정Delete시 Deleted 이벤트가 두 번 발생하던 문제 수정
-
[SnapshotManager]
Select로 복원해도OnSnapshotRestored이벤트가 발생하도록 수정
-
[SectionManager]
- 단면 창 패널 목록이 초기 채움·단면 추가/삭제 이벤트에 갱신되지 않던 문제 수정
-
[SettingManager]
Load(path): 파일이 없으면 false + FileNotFound, 섹션이 없는 파일은 false + InvalidFileFormat (이전에는 true 반환)
-
[PlasticManager] / [XRayManager] / [TransparentManager]
- 선택 색상을 적용하기 전 기존 Custom Color를 보관하고 선택 해제·모드 해제 시 복원
- 모드 전환 시 다른 모드에서 선택한 개체가 유지되고 새 모드의 색상으로 다시 적용 (이전에는 선택이 지워짐)
- 모델을 열지 않은 상태에서
Clear()호출 시 크래시 방어
-
[GenericDataManager]
GenericDataViewOption옵션 추가 :HideDetachedMounting(부재에서 떨어진 취부 라인 생략, 기본 true) /MountingMaxChordDeviation(허용 현 편차),GenericDataViewReport에 생략 수·사유MountingSkipped/MountingSkippedReasonsDisableDepthTest는 첫 표시의 초기값으로만 동작, 이후에는 패널 토글로 정한 사용자 설정 유지
-
[PmiManager]
SelectElements: 요소별 설정을 Core 일괄 호출로 바꿔 대량 선택 속도 개선
-
[ColorManager] / [LockedSelectManager] / [FindManager] / [ModelManager]
- 빈 목록·빈 키워드·파일 수 한도 초과 시 던지던 일반
Exception을VIZCoreException으로 통일 LockedSelectManager.Add/Delete: null 인자 예외를NullReferenceException에서ArgumentNullException으로 변경
- 빈 목록·빈 키워드·파일 수 한도 초과 시 던지던 일반
-
[SketchManager] / [FrameManager]
SetStyle(null)호출 시 예외 대신 무시하고 InvalidArgument 기록
-
[UI]
- 툴바 모드(
RibbonMode=false)에서는RibbonTheme을 Light로 고정 (기존 ToolStrip 툴바는 테마 미지원), 테마 변경 즉시 재적용 - 비활성·읽기전용 컨트롤의 가시성을 3개 테마 모두에서 개선
- 뷰 초기화 실패 안내에 CPU · RAM · 그래픽 어댑터 · 드라이버 · 원격 세션 여부 표시
- 툴바 모드(
-
[ToolbarItems] 주의
OBSERVER_*11개가 열거형 중간에 삽입되어MEASURE_ADD_LINE_LINE_ANGLE/MEASURE_ADD_POINT_LINE_ANGLE/MEASURE_ARRANGE_TEXT/NOTE_ARRANGE_TEXT의 정수값이 변경됨 — 정수값을 직접 저장·비교하는 코드가 있으면 확인 필요
삭제
-
[DecalManager]
- 데칼 지시선 연결 API 제거 :
AddArrow/SetArrow/DeleteArrow/HasArrow,AddDecalDialog의 화살표 옵션 오버로드 3종,DecalArrowHeadSizeType열거형 - 대체 : 화살표 데칼 API (
AddDecalArrow/SetArrowDecalStyle/SetArrowDecalLength,ArrowDecalStyle) — 데칼에 화살표를 붙이는 대신 화살표 자체를 독립 데칼로 생성
- 데칼 지시선 연결 API 제거 :
-
[SectionManager]
ShowSectionLine속성 삭제 (Obsolete 경고 상태였음)- 대체 :
SectionStyle.BoundaryStrokeColor(알파 0이면 숨김) /SettingItems.SectionBoundaryStrokeColor
V.1.4.26.825
추가
-
[EffectManager] (신규)
- 3D 이펙트 시각 효과 시스템 추가 (
vizcore3dx.View.Effect) - 마커(
AddMarker) / 텍스트 라벨(AddTextLabel) / 치수선(AddDimensionLine) / 파티클 이미터(AddParticleEmitter, 프리셋 : 불똥·연기·증기·물방울) / 흐르는 경로선(AddPathLine) / 점군·선군(AddPointCloud/AddLineSet) 등 13개 기능군 - 공통 규약 : 추가 시 id 반환,
Remove*/Clear*, 그룹 지정, 유효 시간(ExpireMs), 상한 조회Capacity - 조회·통지 :
GetEffects(전체/종류/그룹) /EffectCount,OnEffectAddedEvent/OnEffectRemovedEvent(EffectItem/EffectType/EffectRemovalReason) - (UI) 특수 효과 툴바·리본 탭·목록 창 패널(
TabEffectEnabled)·생성 옵션 다이얼로그 추가
- 3D 이펙트 시각 효과 시스템 추가 (
-
[EnvironmentManager] (신규)
- 환경 렌더링 공개 API 추가 (
vizcore3dx.View.Environment) - 하늘 / 지면 / 물 / 바닥 격자 / 그림자 표시 제어, 지면·하늘 프리셋 (
EnvironmentGroundPreset/EnvironmentSkyPreset) SetGroundTexture/SetSkyPanorama: 지면 텍스처·하늘 파노라마 지정
- 환경 렌더링 공개 API 추가 (
-
[GenericDataManager] (신규)
- Generic 데이터 로드·표시·물량 집계 기능 추가 (
vizcore3dx.GenericData) - 로드/조회 :
OpenFile/OpenFiles/OpenFolder/OpenFileDialog/FindCandidateFiles,GetFiles/GetStringData/GetMarkingData/GetBevelData등 - 표시 :
Show/ClearView/FitView, 레이어 제어 (SetLayerVisible/GetLayers),ViewOption - 물량 :
GetQuantity/ExportQuantityCsv - 베벨 표기 :
SetBevelLabel/ClearBevelLabels,ViewOption.ShowBevelLabels,GenericBevelItem.BevelCvba - 이벤트 :
OnGenericDataLoadedEvent/OnGenericDataClearedEvent/OnGenericDataPartSelectedEvent - Generic 데이터 창 패널 및
TabGenericDataEnabled속성 추가
- Generic 데이터 로드·표시·물량 집계 기능 추가 (
-
[InputManager]
- 사용자 정의 입력 바인딩 추가
ApplyCustomBindings/GetCustomBindings/ResetCustomBindings/ExportCustomBindings/ImportCustomBindingsInputBindingItem(신규 데이터 클래스) : 바인딩별 방향 반전(IsDirectionInverted)·감도 배율(SensitivityScale) 포함- 관련 열거형 :
InputBindingLayer/InputGestureType/InputMouseButtons/InputModifierKeys/InputAction/InputBindingSource
- 사용자 정의 프리셋 추가
CurrentCustomPresetName/GetCustomPresetNames/ApplyCustomPreset/CreateCustomPreset/SaveCustomPreset/DeleteCustomPreset/RenameCustomPreset/ExportCustomPreset/ImportCustomPreset
InputPreset열거형 값 추가 :Aveva/Custom- (UI) 설정 다이얼로그 [마우스] 탭 신설, 툴바 조작 프리셋 "사용자 정의" 항목 추가
- 사용자 정의 입력 바인딩 추가
-
[ZoneManager]
- 개체 연계 :
GetNodesInZone(다건 오버로드) /FromPoint/FromNode/SelectNodesInZone/IsolateNodesInZone/FitToZone - 겹침·분할 :
GetOverlaps, 다중 평면Split(id, planes, namePrefix)(ZoneOperationResult.SplitResultEmpty값 추가) - 거리·접점 :
GetMinDistance(idA, idB, out pointA, out pointB)오버로드,GetDirectionalContact(ZoneDirectionalContact(신규 데이터 클래스)) - 뷰 픽킹 :
IsViewPickingEnabled(3D 화면에서 공간 클릭 선택 통지,ZoneEventArgs.FromView),SetViewPickable/GetViewPickable - 표시 :
SetFaceOpacity/GetFaceOpacity(공간별 경계면 불투명도),ZoneStyle.DepthTestEnabled/ZoneStyle.SelectedFaceOpacity
- 개체 연계 :
-
[ModelManager]
- 부분 내보내기 :
ExportVIZX(file, nodes)/ExportVIZ(output, nodes)/ExportFileDialog(nodes)/ExportVIZDialog(nodes)(지정 노드만 담은 파일 생성, 조회 중인 모델은 변경되지 않음) - 내보내기 대상 범위 지정 :
ExportOption(신규 열거형 : ALL / VISIBLE / RENDERED / SELECTED) 오버로드 —ExportVIZX/ExportVIZ/ExportObj/ExportStl - (UI) 내보내기 모델 범위에 "화면에 그려진 개체만" 옵션 추가
- 부분 내보내기 :
-
[GeometryUtilityManager]
- 형상 외곽선 좌표 조회 :
GetFeatureEdges(꺾임 각도 기준 판정) - 배관 중심선 좌표 조회 :
GetPipeCenterlines/GetPipeCenterlinesConnected(이어붙이기)
- 형상 외곽선 좌표 조회 :
-
[Object3DManager]
- 렌더링된 노드 조회 :
GetRenderedNodes/GetRenderedNodes(NodeKind)/GetRenderedNodesIndex/HasRenderedNodes
- 렌더링된 노드 조회 :
-
[ShapeManager]
- 도형 선택 이벤트 :
OnShapeSelectedEvent/OnShapeDeselectedEvent - 현수선 :
ComputeCatenaryPoints/CreateCatenaryShape/CreateCatenaryTubeShape
- 도형 선택 이벤트 :
-
[ViewManager]
- 카메라 변경 이벤트 :
OnCameraUpdatedEvent(뷰·투영 행렬 전달, 구독 시에만 엔진 통지 활성화) - 미니뷰 카메라 수동 동기화 :
MiniView.SyncCamera() - 마크업 텍스트 자동 배치 :
FitAndArrangeText(전체/노트/측정 오버로드) /FitAndArrangeTextInView(노트·측정 텍스트 방사형 자동 배치),SetTextDistance(텍스트 거리 일괄 지정),TextArrangeGap/TextArrangeMargin/TextArrangePadding
- 카메라 변경 이벤트 :
-
[DecalManager]
- 데칼 화살표 연결 :
AddArrow/SetArrow/DeleteArrow/HasArrow(DecalArrowHeadSizeType(신규 열거형)),AddDecalDialog화살표 옵션 오버로드
- 데칼 화살표 연결 :
-
[MeasureManager]
- 점과 두 선을 이용한 각도 측정 :
AddPointLineAngle(텍스트 위치/오프셋 오버로드 포함) - (UI) 측정 툴바에 선/점 기반 각도 2종 및 텍스트 자동 배치 추가
- 점과 두 선을 이용한 각도 측정 :
-
[MeasureManager] / [NoteManager]
- 스타일 프리셋 :
StylePresets/AddStylePreset/RemoveStylePreset/ImportStylePreset/ExportStylePreset/ApplyStylePresetMeasureStylePreset/NoteStylePreset(신규 데이터 클래스) : 지정한 속성만 담는 부분 스타일
- (UI) 노트/측정 스타일 다이얼로그에 프리셋 사이드바 추가 (기본 제공 + 사용자 정의, JSON 가져오기/내보내기)
- 스타일 프리셋 :
-
[RibbonManager]
- 일괄 갱신 :
BeginUpdate/EndUpdate - 탭 제어 :
MoveTab(순서 변경) /SelectTab
- 일괄 갱신 :
-
[VIZCore3DXControl]
- 창 패널 탭 개별 표시 속성 추가 :
TabModelTreeEnabled/TabZoneEnabled/TabNodePropertyEnabled/TabNodeAttributeEnabled/TabAttributeTreeEnabled/TabNodeGroupEnabled/TabProjectionEnabled AttributePanelVisible: 속성 패널 표시 여부LoadSavedSettingOnStartup: 시작 시 저장된 사용자 설정(UserSetting.ini) 적용 여부 (컨트롤 Load 전 지정)- 모델링 컨트롤 :
ModelingControlOrientation/ModelingControlBackground/ModelingControlBackgroundColor(신규 열거형),ModelingControlPosition값 추가(LEFT_SIDE/RIGHT_SIDE/FREE)
- 창 패널 탭 개별 표시 속성 추가 :
-
[ShortcutManager]
- 제공 단축키 확장 : 신규 25종 (기본 미할당, 사용자 배정), [탐색] 그룹 신설
ShortcutFunctions열거형 값 추가 :RENDERING_VISIBLE_WIRE/CONTROL_SELECTION_BOX
-
[UI]
- 검색 다이얼로그 가시성 옵션에 "화면에 그려짐" 항목 추가 (화면에 실제 그려진 노드만 검색)
- 제품 정보 창에 오픈소스 라이선스 탭 추가
- 모델링 컨트롤 : 자석 드래그(프리셋 위치 흡착·자유 배치) / 좌우 세로 배치 / 배경 모드 / 아이콘 개선
수정 및 개선
-
[DecalManager]
- 데칼 이미지 비율 유지 및 크기 자동 조정 다이얼로그 수정
-
[SectionManager]
Show/Enable/Select에 없는 아이디 전달 시 예외가 발생하고 화면이 멈추던 문제 수정 (해당 아이디는 건너뜀)
-
[ModelManager]
- VIZ 변환을 관리 코드로 내재화 — 32비트에서도 VIZ 열기/추가/내보내기 지원, 배포 용량 감소
-
[ShapeItem]
ShapeType이 실제와 다른 종류를 반환하던 문제 수정ShapeType값 추가 :None/LineSegments/Mesh(유효하지 않은 형상은 예외 대신None반환)
-
[SelectionBoxManager]
- 선택 항목 조회(
GetSelectedItems)·픽 조회의 ID 결함 2건 수정
- 선택 항목 조회(
-
[VIZCore3DXControl]
- 모델 열기/닫기 중 화면 잠금이 남던 문제 수정 (배치 중 닫기, 열기 전 잠금 미적용 포함)
- 저장된 설정이 모델 열림 후 렌더 상태와 어긋나던 문제 수정 (모델 열림 시 설정 재반영)
- GPU가 2개 이상인 환경에서 고성능 그래픽 카드를 사용하도록 개선
- 모델링 컨트롤 기본값 변경 : 표시 켜짐·우측·수직·색상 배경
-
[ZoneManager]
- 공간 분석 결과
MaxSphereRadius— 장애물이 없으면 무제한(Infinity) 반환 - 시드 지정/면 선택 모드가 ESC 키로 취소되지 않던 문제 수정
- 시드 지정 Osnap 스냅 범위를 면으로 한정
- 공간 분석 결과
-
[ShortcutManager]
- 단축키 편집 내용이 저장되지 않던 문제 수정
- 컨트롤이 구현한 키(Ctrl+A / Delete 등)를 전역 단축키가 가로채지 않도록 개선
- 뷰 인터랙티브 명령의 ESC 취소가 단축키에 가로채이던 회귀 수정
PROJECTION기본 키(F12) 할당 해제
-
[ToolbarManager]
- 툴바 줄/순서 기본값 정렬(0~9), 리본 탭 순서가 툴바 줄 값을 따르도록 변경
-
[UI]
- 설정 창 단축키 탭 잘림 수정, 측정 옵션 열 겹침 수정
- 리본 폭 축소 시 버튼 텍스트 유지, 원격 세션에서 리본 하단이 잘리던 문제 수정
V.1.3.26.730
추가
-
[ZoneManager] (신규)
- 다면체 공간(Zone) 정의 기능 신규 (
vizcore3dx.Zone) - 공간 생성
Add(ZoneDefinition): 정의 기반 생성 (다건 오버로드 포함)CreateZoneFromPlanes(경계 평면+시드,ZoneClosing) /CreateZoneFromBoundBox/CreateZonesFromBoundBoxes/CreateZoneFromMesh/CreateZoneFromNodes/CreateZoneFromSelectedNodes/CreateZoneFromSelectionBox/CreateZoneFromPendingPlanes/Clone
- 편집 :
AddPlane/SetPlane/DeletePlane/FlipPlane/SetPlaneOffset/Offset/Rebuild/SetSeed/SelectFace/MoveFace, 배치 처리BeginUpdate/EndUpdate - 불리언 연산 :
Union/Subtract/Intersect/Boolean(집합 연산 시 기본적으로 원본 유지), 평면 분할Split - 부가 정보 :
SetDescription/GetDescription,SetTag/GetTag, 마지막 연산 결과LastOperationResult(ZoneOperationResult) - 분석 :
AnalyzeAsync(최소 거리·개방도·마주보는 면 등,ZoneAnalysisOptions/ZoneAnalysisResult),IsIntersecting/GetIntersectionVolume/GetMinDistance/GetFacingFaces - 조회 :
GetItem/GetVolume/GetSurfaceArea/GetBoundBox/GetCenter/ContainsPoint/GetNodesInZone/FromPoint/ExportToShapes등 - 가시성·색상 :
SetVisible/SetSelected/SetColor/SetStyle(ZoneStyle) - 되돌리기 :
Undo/Redo/CanUndo/CanRedo/UndoLimit - 파일 입출력 :
Export/Import/ToJson/FromJson(ZoneImportMode) - 이벤트 :
OnZoneCreatedEvent/OnZoneDeletedEvent/OnZoneGeometryChangedEvent/OnZoneAnalysisCompletedEvent등 10종 - 데이터 :
ZoneItem/ZoneDefinition/ZoneFaceItem/ZonePlaneItem/ZoneFacingFace/ZoneStyle/ZoneAnalysisOptions/ZoneAnalysisResult - 열거형 :
ZoneKind/ZoneBooleanOperation/ZoneClosing/ZoneImportMode/ZoneAnalysisItems/ZoneGeometryChangeReason/ZonePickMode/ZoneOperationResult - 다면체 공간 툴바(
VIZCore3DXControl.ToolbarZone,ToolbarKind.Zone)·목록 탭·설정 항목 추가
- 다면체 공간(Zone) 정의 기능 신규 (
-
[InputManager] (신규)
- 입력 조작 체계 추가 (
vizcore3dx.Input)VIZCore3DXControl.Input: InputManager 진입점
- 조작 프리셋
CurrentPreset/ApplyPreset(InputPreset)/LoadDefault()InputPreset(신규 열거형) :Default/Catia/NX/SolidWorks/Inventor/Navisworks
- 마우스 감도
OrbitSensitivity/PanSensitivity/ZoomDragSensitivity/RollSensitivity/LookSensitivity
- 이동 속도
WalkSpeedRatio/WalkSpeedBoostScale/FlySpeedRatio/FlySpeedBoostScale
- 입력 판정
IsWheelDirectionInverted/ClickDuration/LongPressDuration/ClickToleranceInPixels
- 설정 다이얼로그 "조작" 탭 및 툴바 조작 프리셋 선택 추가
- 입력 조작 체계 추가 (
-
[ViewManager]
- 조작 모드 API 추가
ManipulationMode: 현재 조작 모드 조회/설정GetManipulationModes(): 사용 가능한 조작 모드 이름 목록OnManipulationModeChanged: 조작 모드 변경 이벤트
- 대체 폰트 지정
FallbackFontFamilies: 런타임 대체 폰트 목록 (파일 열기 전 지정 권장)
- 조작 모드 API 추가
-
[Object3DManager]
- 반직선(Ray) 충돌 노드 조회 추가
Raycast(Ray3D)/Raycast(Ray3D, List<Node>)/Raycast(Ray3D, List<Node>, RaycastOptions): 가장 가까운 충돌 1건RaycastAll(...): 충돌 노드 전부 (가까운 순 정렬)Ray3D/RaycastHit/RaycastOptions(신규 데이터 클래스)
- 반직선(Ray) 충돌 노드 조회 추가
-
[MeasureManager]
- 반직선 거리 측정 추가
AddRayDistance()/AddRayDistance(Ray3D)/AddRayDistance(Ray3D, List<Node>)
- 축 방향 거리 측정 추가
AddDistanceAxialDirection(AxisDistanceDirection, ...)및AddDistanceAxialDirectionX/Y/Z/XYZ()편의 오버로드AxisDistanceDirection(신규 열거형) :X/Y/Z/XYZ
- 반직선 거리 측정 추가
-
[하이라이트]
- 마우스 오버 자동 강조 속성 추가
DecalItem/MeasureItem/NoteItem/SketchItem:IsHighlighted/IsHighlightableShapeItem:IsHighlightableDecalManager/MeasureManager/NoteManager/ShapeManager/SketchManager:SetHighlightable(List<>, bool)/SetHighlightable(bool)
- 마우스 오버 자동 강조 속성 추가
-
[VIZCore3DXControl]
- 뷰 초기화 상태 확인/통지 추가
IsViewInitialized: 3D 뷰 초기화 성공 여부OnViewInitializationFailedEvent: 초기화 실패 통지 이벤트 (실패 사유·감지된 OpenGL 버전 전달)ViewInitializationFailReason(신규 열거형) :RenderingEngineInitializeFailed/ControlDisposed
ShowExplodeDialog(): 분해(Explode) 다이얼로그 표시
- 뷰 초기화 상태 확인/통지 추가
-
[ShapeItem]
IsPickingDepthTestEnabled: 선택 판정 렌더링의 깊이 테스트 사용 여부 (가려진 형상도 선택 가능)
-
[RibbonManager]
- 리본 그룹/아이템 조회·설정 메서드 추가
GetGroupItemNames/GetGroupText/SetGroupText/GetItemText/SetItemText/SetItemSize
- 리본 그룹/아이템 조회·설정 메서드 추가
-
[툴바]
- 홈 툴바 : 배경색 프리셋 / 프레임 초기화 / 면 선택 / 픽 필터 / 분해 / 선택 강조 토글
- 단면 툴바 : 캡 채움 / 캡 교차선, 스냅샷 툴바 : 스케치 즉석 스타일
- 설정 "보기" 탭 : 대체 폰트 선택 / 뷰 툴바·뷰큐브 활성화 영속화
-
[다이얼로그 진입점]
- 각 매니저에 다이얼로그 진입점 메서드(
ShowXxxDialog) 정리·추가 (측정/노트/단면/스케치/구조노드/기본도형/비교/라이선스 등)
- 각 매니저에 다이얼로그 진입점 메서드(
수정 및 개선
-
[VIZCore3DXControl]
- 뷰 초기화 실패 시 크래시 대신 안내로 전환 (고객 AccessViolation 근본 수정)
- 실패 사유·감지된 OpenGL 버전을 이벤트로 통지
- 뷰 초기화 실패 시 크래시 대신 안내로 전환 (고객 AccessViolation 근본 수정)
-
[ModelManager]
.viz파일 드래그드롭 열기 지원 (64비트 전용, VIZ→VIZX 변환)
-
[ViewManager]
- 대체 폰트 기본 적용으로 한/중/일 문자가 빈 사각형으로 표시되던 문제 개선
- 뷰 클릭이 차단되던 회귀 수정
- 축 기준 회전(6방향) 기본 각도 45도 적용
-
[PMIManager]
- PMI 결함 6건 수정
-
[AnimationManager]
- 애니메이션 UI 개선
-
[ShortcutManager]
- 포커스 위치와 무관하게 단축키가 동작하도록 개선 (툴바·리본·탭·목록 클릭 후에도 정상 동작)
- 단축키 실행 시점을 키를 뗄 때(KeyUp)에서 누를 때(KeyDown)로 변경 (공개 이벤트
OnVIZCore3DXKeyUp/OnVIZCore3DXKeyDown는 그대로 유지)
삭제
-
[ViewManager]
SetFlightStepDistance(float)/GetFlightStepDistance()제거 (대체:Input.FlySpeedRatio)
-
[VIZCore3DXControl]
Shortcuts속성 setter 제거 (읽기 전용화) — 단축키 비활성화는Shortcuts.Enable = false사용
V.1.3.26.724
추가
-
[AnimationManager]
- 애니메이션 저작 다이얼로그 추가
VIZCore3DXControl.ShowAnimationDialog(): 타임라인 기반 저작 다이얼로그- (그룹/노드 구성 + 6종 액션[이동·회전·연결·와이어·가시성·색상알파] 편집·재생)
- 애니메이션 정의 JSON 내보내기/가져오기 (카메라 트랙 제외)
ExportAnimations(string filePath): 애니메이션 정의를 JSON으로 내보내기ImportAnimations(string filePath)/ImportAnimations(string filePath, out int skippedNodeCount)- JSON에서 애니메이션 가져오기 (재식별 실패로 건너뛴 노드 수 반환 오버로드 포함)
- 애니메이션 저작 다이얼로그 추가
-
[SecurityHelper] (신규)
- 파일 암/복호화 기능 추가
Utility.SecurityHelper(static)EncryptFile(source, password, dest)DecryptFile(source, password, dest)EncryptFile(..., EncryptionFormat format)IsEncryptedFile(path)
EncryptionFormat(신규 열거형) :Legacy(기존 호환) /Strong(강화 포맷 v2)
- 파일 암/복호화 기능 추가
-
[환경 렌더링(Environment)]
- 창 패널에 "환경" 탭 추가 : 바닥 격자 / 지면 텍스처 / 해수면 / 하늘 / 접지 그림자 등 환경 렌더링 요소 제어
VIZCore3DXControl.TabEnvironmentEnabled창 패널 : 환경 탭 표시 여부 (기본true)
- 창 패널에 "환경" 탭 추가 : 바닥 격자 / 지면 텍스처 / 해수면 / 하늘 / 접지 그림자 등 환경 렌더링 요소 제어
-
[ModelManager]
- OBJ 내보내기 재질(.mtl) 출력 옵션 추가
ExportObj(string path, bool exportMaterials)ExportObj(string path, List<Node> nodes, bool exportMaterials)
- OBJ 내보내기 재질(.mtl) 출력 옵션 추가
-
[ViewManager]
- 보행 모드(Walk) 추가
CameraMode.Walk: 좌드래그 전후진 / 우드래그 시선 회전 / 중드래그 높이 조절 / 마우스 휠 시선 기울기
- 지점(클릭)/영역 선택 시 픽 대상 필터 추가
PointPickingFilter/RegionPickingFilter(PickableObjectFilter)PickableObjectFilter에SelectionBox/Pmi대상 추가
- 보행 모드(Walk) 추가
-
[ShapeManager]
CreateMeshShape(List<Vertex3D> vertices, List<int> indices, Color color)오버로드 추가 : 정점·인덱스로 메시 형상 생성
수정 및 개선
-
[ModelManager]
- OBJ 내보내기 시 노드별
o/g그룹 분리 및 이름 폴백 처리 개선
- OBJ 내보내기 시 노드별
-
[RibbonManager]
- 리본 메뉴 버그 수정
-
[ViewCubeManager]
- 뷰큐브 TOP 동작 개선
- 방향을 90도 단위로 고정하도록 개선
- 뷰큐브 TOP 동작 개선
-
[VIZCore3DXControl]
- Dispose 후 재생성 시 발생하던 오류 수정
- Core 해제 상태에서
IsOpen()호출 시 안전하게 처리 - 종료 시 외부 렌더링 해제 과정에서 발생하던 AccessViolation 수정
- 미표시 컨트롤 종료 시 파이널라이저에서 발생하던 AccessViolation 수정
- 초기화 전
SettingsManager.Apply호출로 인한 AccessViolation 방지 - 초기화/대기 오버레이 디자인 변경
V.1.3.26.715
추가
-
[PMIManager] (신규)
- PMI(제품 제조 정보) 기능 신규 추가 (
vizcore3dx.PMI)- PMI 조회 및 표시 제어
- PMI 뷰 탐색 및 순차 이동
- 분류(Category)·유형(Type) 기준 가시성 필터, 요소 조회·선택·통계
- PMI 색상 제어 (덮어쓰기·강조·선택 색상, 분류/요소별 색상 적용·초기화)
- PMI 로드·요소 이벤트 제공
- 데이터:
PmiItem/PmiElement/PmiView, 열거형PmiCategory/PmiType
- 창 패널에 PMI 탭 및 PMI 트리 추가
- 가시성·선택 연동, 뷰 활성화, 색상 덮어쓰기, 뷰 슬라이드쇼·분류 필터·이름 검색·요소 컨텍스트 메뉴
TabPmiEnabled속성 : PMI 탭 표시 여부 (기본true)
- PMI(제품 제조 정보) 기능 신규 추가 (
-
[RibbonManager] (신규)
- 기존 툴바(Toolbar)를 대체할 수 있는 리본(Ribbon) 스타일 UI 추가 (
vizcore3dx.Ribbon)RibbonMode속성 : 리본 UI 사용 여부 (기본 OFF, 기존 툴바와 공존/대체)RibbonTheme속성 /RibbonTheme(신규 열거형) :Light/Gray/Dark- 탭/그룹/아이템 제어 :
GetTabNames/GetGroupNames/GetItemNames,Get/SetTabVisible,Get/SetGroupVisible,Get/SetItemVisible - 사용자 정의 :
AddTab(name, text)/AddGroup(tabName, name, text)/AddButton(groupName, name, text, image, RibbonItemSize, click) - 빠른 실행 도구모음(QAT) :
AddQuickAccessItem/RemoveQuickAccessItem/GetQuickAccessItems/SetQuickAccessItems/ShowQuickAccessDialog - 리본 최소화/펼치기 및 3D 뷰 오버레이 팝업 지원
- 설정 다이얼로그(툴바 탭)에서 리본 UI 사용/테마 설정, 환경설정에 저장/복원
- 공개 구성 타입(
VIZCore3DX.NET.Controls.Ribbon) :RibbonTab/RibbonGroup/RibbonItem/RibbonButton/RibbonDropDownButton/RibbonSeparator,RibbonItemSize(열거형)
- 기존 툴바(Toolbar)를 대체할 수 있는 리본(Ribbon) 스타일 UI 추가 (
-
[NodeLockManager] (신규)
- 노드 잠금 기능 추가 (
vizcore3dx.Object3D.NodeLock)Enable: 잠금 기능 사용 여부 (false설정 시 전체 잠금 해제)Lock()/Lock(List<Node>): 현재 선택 또는 지정 노드 잠금Unlock(List<Node>)/Clear(): 잠금 해제 / 전체 해제List(): 잠긴 노드 목록 조회IsLocked(int entityID, int index): 잠금 여부 확인OnNodeLockChangedEvent: 잠금 상태 변경 이벤트- 잠금 대상 : 잠긴 노드는 다음 3가지 조작에서 보호됨
- 선택 (Selection)
- 가시성 (보이기 / 숨기기)
- 색상 및 투명도 변경
- 모델트리 우클릭 메뉴에 선택 개체 잠금(Part/Body/Face) 및 하위 개체 잠금/해제 추가 (
Enable활성 시 표시) - 설정 다이얼로그에 "노드 잠금 기능 활성화" 체크박스 추가 (환경설정 저장/복원)
- 노드 잠금 기능 추가 (
-
[ClashManager]
- 간섭검사(Clash) 고등 API 추가 (
vizcore3dx.Clash)CreateGroupTest(groupA, groupB, isAssembly, clearance, range, penetration): 두 그룹(A/B) 간섭검사 생성CreateSelectionTest(ClashTest.ClashTestKind kind, group, isAssembly, clearance, range, penetration): 선택 노드 간섭검사 생성CreateMovingTest(fixedGroup, movingGroup, isAssembly, clearance, range, penetration): 이동 간섭검사 생성ApplyTestPath(ClashTest item, int id): 이동검사 경로의 특정 스텝 위치 적용RestoreTestPathPosition(ClashTest item): 이동검사로 변경된 위치 복원FocusResult(int id, ClashTestResultItem resultItem, bool shouldDrawSymbol = true, bool shouldDrawInfo = true): 결과 항목으로 카메라 이동 및 심벌/정보 표시
ShowClashDialog(): 간섭검사 모달리스 다이얼로그 표시 (홈 툴바·리본 홈 탭에 실행 항목 추가)
- 간섭검사(Clash) 고등 API 추가 (
-
[DecalManager]
- 데칼(Decal) 상태 변경 이벤트 추가 (
vizcore3dx.Decal)OnDecalCreated/OnDecalDeleted/OnDecalSelected/OnDecalDeselected/OnDecalShown/OnDecalHidden/OnDecalMoved/OnDecalRotated/OnDecalImported/OnDecalLoaded/OnDecalClosedOnDecalTextChanged/OnDecalImageChanged: 데칼 텍스트/이미지 변경 이벤트DecalEventHandler/DecalEventArgs(대상Decals목록 포함)
- 데칼 이미지 투명도 지원 (
DecalItem.ImageAlpha)
- 데칼(Decal) 상태 변경 이벤트 추가 (
-
[SectionManager]
SetCenter(uint id, Vector3D targetCenter)오버로드 추가 : 단면 중심점을 지정 좌표로 이동
-
[ViewManager]
- 카메라 Orbit / Rotate 기능 추가 (축·각도 또는 카메라 방향 기준 애니메이션 회전)
OrbitCamera(Vector3D axis, float angleDegrees, TimeSpan)/(Vector3D axis, double angleRadians, TimeSpan)/(Vector3D cameraDirection, TimeSpan)RotateCamera(...)동일 3종 오버로드
- 화면 확대/축소(Zoom) 및 드래그 내비게이션 모드 추가
Zoom(int delta)/Zoom(int delta, int x, int y)NavigationDragMode속성 /NavigationDragMode(신규 열거형) :NONE/ROTATE/PAN/ZOOM
- 화면 테두리 Blur / Vignette 효과 기능 추가
BorderBlurEnabled/SetBorderBlur(...)/ClearBorderBlur()BorderVignetteEnabled/SetBorderVignette(...)/ClearBorderVignette()
- 카메라 Orbit / Rotate 기능 추가 (축·각도 또는 카메라 방향 기준 애니메이션 회전)
-
[Object3DManager]
GetPickableObjects(Point point, PickableObjectFilter filter): 뷰의 특정 화면 좌표에서 선택 가능한 객체 목록 조회PickableObject(신규) /PickableObjectType(신규 열거형) /PickableObjectFilter(신규 열거형)
-
[ModelManager]
- VIZ 파일 열기/추가 기능 추가 (VIZ → VIZX 변환 후 처리)
OpenVIZ(string file)/OpenVIZFileDialog(): VIZ 파일 열기 / 열기 대화상자AddVIZ(List<string> files)/AddVIZ(string[] files)/AddVIZFileDialog(): VIZ 파일 추가 / 추가 대화상자- 64비트 프로세스 전용 (실행 폴더에
VIZXMigration.exe·ShdCore.dll필요)
- VIZ 파일 열기/추가 기능 추가 (VIZ → VIZX 변환 후 처리)
-
[GeometryPropertyManager]
- 표면적/부피/부피 중심 조회 기능 추가 (
vizcore3dx.Object3D.GeometryProperty)GetSurfaceArea()/GetSurfaceArea(List<Node>)GetVolume()/GetVolume(List<Node>)GetCenterOfVolume()/GetCenterOfVolume(List<Node>)GetGeometry()/GetGeometry(List<Node>)→GeometryResult(신규) (SurfaceArea/Volume/CenterOfVolume)
- 표면적/부피/부피 중심 조회 기능 추가 (
-
[ShapeManager] / [ShapeItem]
- 형상 생성/제어 기능 확장
- 위치·회전 지정 생성 오버로드 :
CreateCubeShape/CreateCylinderShape/CreateSphereShape/CreatePlaneShape(Vector3D position,Quaternion rotation, 방향(direction)·법선(normal) 오버로드 포함) - Stroked 형상 생성 :
CreateCircleShape/CreateLineSegmentShape/CreateLineSegmentsShape/CreatePolylineShape/CreateRectangleShape/CreateTriangleShape - 노드 기반 생성 :
CreateCubeShape/CreateCylinderShape/CreateSphereShape/CreateBoundingBoxShape(List<Node>) - 위치·회전 설정 :
SetPosition/SetRotation(단일·복수,Quaternion·방향 오버로드) ShapeItem속성 추가 :Position/Rotation/IsFixedScreenSize/ScreenSize/IsHighlightedQuaternion(신규 데이터 클래스) :FromAxisAngle/FromEulerAngles/FromToRotation/LookRotation/Rotate/ 연산자 등
- 위치·회전 지정 생성 오버로드 :
- 형상 생성/제어 기능 확장
-
[SelectionBox]
IsDepthTestEnabled속성 추가 : 선택 박스 깊이 테스트 사용 여부- 모델트리에 "선택상자" 탭 신설 (
SelectionBoxControl) : 카테고리 그룹 목록 ↔ 3D 선택 양방향 동기화TabSelectionBoxEnabled속성 : 선택상자 탭 표시 여부 (기본true)
- 선택상자 전용 툴바 신설
ToolbarSelectionBox속성,ToolbarKind.SelectionBox,ToolbarItems선택상자 항목 11종 추가, 툴바 배치 설정 저장/복원
- 집중 모드(Focus Mode) 추가 : 선택한 선택상자 영역만 보이도록 임시 단면 생성, 해제 시 복원 (툴바 항목으로 제공)
- 색상 다이얼로그 교체, 리본 UI 선택상자 탭 추가
OnSelectionBoxNameChangedEvent이벤트 추가 : 선택상자 이름 변경 알림Add(BoundBox3D boundBox, string title)오버로드 추가 : 제목 지정 생성
-
[SearchNodeDialog]
- 검색 공간 탭에 단면상자/선택상자 박스 선택 콤보 추가
- 단면/선택상자 탭 우클릭 → 해당 박스 영역이 입력된 노드 검색으로 연계
-
[NoteManager]
OnNoteTextChanged이벤트 추가 : 노트 텍스트 변경 알림
-
[SnapshotManager]
OnSnapshotNameChanged이벤트 추가 : 스냅샷 이름 변경 알림
-
[PreSelectManager]
- 사전선택(Pre-Select) 노드 이름 표시 기능 추가
NodeNameVisible속성 /NodeNameTarget속성 /PreSelectionNodeNameTarget(신규 열거형)
- 사전선택(Pre-Select) 노드 이름 표시 기능 추가
-
[LicenseManager]
- 현재 인증된 라이선스 확인 속성 추가
AuthenticationStatus/LicenseFilePath/LicenseServerIp/LicenseServerPort
- 현재 인증된 라이선스 확인 속성 추가
-
[VIZCore3DXControl]
- 모델링 컨트롤(3D 뷰 오버레이) 추가
ModelingControlVisible/ModelingControlSize/ModelingControlPosition/ModelingControlColor속성ModelingControlSize(SMALL/MEDIUM/LARGE) /ModelingControlPosition(6개 코너) /ModelingControlColor(BLACK/GRAY/WHITE) (신규 열거형)- 설정 다이얼로그에 모델링 컨트롤 항목 추가, 환경설정 저장/복원
- 일괄 업데이트 API 추가 :
BeginControlUpdate()/EndControlUpdate() SuppressRedrawUntilInitialized속성 추가 (기본true) : 초기화 완료 전 단색 오버레이로 미완성 렌더/깜빡임 방지- About Dialog에 모델 정보(바운딩박스·메시·노드 수)와 라이선스 인증 정보 표시
- 모델링 컨트롤(3D 뷰 오버레이) 추가
-
[Math/Data]
- 수학·데이터 구조체에 값 동등성 연산자(
==/!=/Equals/GetHashCode) 추가 —Distinct/Contains등 LINQ 지원- 대상 :
BoundBox3D/CircleData/ColorMeshVertex/Facet/Line3D/Matrix3D/Rectangle3D/SizeToAxis/Triangle3D/Vector2/Vector3D/Vertex3D+BoundBox3DEqualityComparer(신규)
- 대상 :
- 수학·데이터 구조체에 값 동등성 연산자(
수정 및 개선
-
[ShapeManager]
- 형상 선 두께를 최대 10까지 지원하도록 확장 (기존 4)
-
[ClashManager]
- 간섭검사 관련 예외(NullReferenceException 등) 방어 강화
-
[ModelManager]
- OBJ 내보내기 시 노드별 이름 기반 그룹(
g)으로 구분하여 저장 (외부 도구에서 개체별 선택 가능) - 모델 열기 대화상자에 VIZ 파일 필터 추가 (선택 시 VIZX로 변환 후 열기, 64비트)
- OBJ 내보내기 시 노드별 이름 기반 그룹(
-
[SearchNodeDialog]
- 검색 결과 목록에 우클릭 컨텍스트 메뉴 추가 (모두 선택 / 보이기 / 숨기기 / 비선택 숨기기 / 삭제 / 모두 보이기·숨기기 / 이름 복사, 아이콘 포함)
- 창이 화면 밖으로 나가거나 잘리던 현상 위치·크기 보정
- 검색 공간 탭 박스 콤보 세로 정렬 보정
- 애플리케이션 종료 시 정리 과정에서 발생하던 NullReferenceException 수정
-
[NodePropertyControl]
- 노드 속성(어트리뷰트) 트리를 펼칠 때 지연 로딩하도록 개선 (대용량 속성 표시 성능 향상)
- NodePropertyControl이 표시되지 않은 상태에서 노드 선택 성능이 저하되던 버그 수정
-
[ProjectionManager]
- 2D 투영 생성 시 뷰를 평행 투영으로 전환하도록 동작 개선 및 다국어 지원 추가
-
[Object3DManager]
- 체크박스 토글 시 뷰/모델트리 깜빡임 제거
-
[SectionManager]
- 단면 Delete 시 NullReferenceException 방어 코드 추가
-
[NoteManager]
- 노트 스타일 대화상자 버그 수정
-
[ToolbarManager]
- 툴바 가시성 버그 수정
-
[VIZCore3DXControl]
- 모델 파일 Drag&Drop 시 Open/Add 동작 보강
- 조작자(Manipulator) 관련 오류 수정
- 컨트롤/코어 종료 시 발생하던 예외 수정 (종료 안정성 개선)
- 설정 적용 성능 개선 (반복 반영·UI 재배치 최소화)
- 리본 해제 시 툴바가 사라지던 문제 수정
- 설정 다이얼로그 UI 재배치
- 설정 다이얼로그 Frame 사용자 정의가 없을 때 발생하던 Exception 수정
Full List
Full List (펼쳐서 보기)
Full List of Issues Covering all Changes in this Release
| Module | Summary | Category |
|---|---|---|
| AnimationManager | 애니메이션 저작 다이얼로그(ShowAnimationDialog) 추가 — 타임라인 기반, 6종 액션(이동·회전·연결·와이어·가시성·색상알파) 편집·재생 애니메이션 정의 JSON 내보내기/가져오기 ExportAnimations / ImportAnimations (카메라 트랙 제외) 애니메이션 UI 개선 프레임 시퀀스(PNG) 내보내기 — ExportFrameSequenceAsync / StopFrameSequenceExport ImportAnimations 가져온 애니메이션 Groups 비움·가져오기 중 접근 위반 수정, CreateAnimation / DeleteAnimation null 인자 가드, 모델 닫기 시 목록 초기화 | New Feature Improvement Bug Fix |
| ClashManager | 간섭검사 고등 API 추가 — CreateGroupTest / CreateSelectionTest / CreateMovingTest / ApplyTestPath / RestoreTestPathPosition / FocusResult 간섭검사 모달리스 다이얼로그(ShowClashDialog) 및 홈 툴바·리본 홈 탭 항목 추가 간섭검사 관련 예외(NRE 등) 방어 강화 결과 리포트 — ExportResultCsv / ExportReportHtmlAsync(캡처 내장 HTML) / StopReportExport 이동경로 워크플로 — GetTestPaths / ExportTestPaths / ImportTestPaths / PlayTestPathsAsync / StopTestPathPlayback | New Feature Bug Fix |
| DecalManager | 데칼 상태 변경 이벤트 추가 — OnDecalCreated / OnDecalDeleted / OnDecalSelected / OnDecalDeselected / OnDecalShown / OnDecalHidden / OnDecalMoved / OnDecalRotated / OnDecalImported / OnDecalLoaded / OnDecalClosed / OnDecalTextChanged / OnDecalImageChanged (DecalEventHandler / DecalEventArgs)데칼 이미지 투명도 지원 (ImageAlpha) 마우스 오버 자동 강조 — DecalItem IsHighlighted / IsHighlightable, SetHighlightable 데칼 화살표 연결 — AddArrow / SetArrow / DeleteArrow / HasArrow (DecalArrowHeadSizeType), AddDecalDialog 화살표 옵션 오버로드데칼 이미지 비율 유지 및 크기 자동 조정 다이얼로그 수정 화살표 데칼 — AddDecalArrow / AddDecalArrowDialog, SetArrowDecalLength / SetArrowDecalStyle / GetArrowDecalStyle / IsArrowDecal, DefaultArrowDecalStyle (ArrowDecalStyle, ArrowDecalHeadKind : Triangle / OpenV / None / Stealth / Diamond / Oval / Chevron / ChevronRepeat) + 전용 다이얼로그·툴바·리본 버튼 JSON 문자열 왕복 ToJson / FromJson 리더선 Export/Import 후 복원, Description은 사용자 텍스트만 읽고 씀 데칼 지시선 연결 API 제거 — AddArrow / SetArrow / DeleteArrow / HasArrow, AddDecalDialog 지시선 옵션 오버로드 3종, DecalArrowHeadSizeType → 화살표 데칼 API로 대체 | New Feature Bug Fix Removed |
| EffectManager (신규) | 3D 이펙트 시각 효과 시스템 신규 (vizcore3dx.View.Effect)마커 AddMarker (MarkerOptions / MarkerIcon) / 텍스트 라벨 AddTextLabel (TextLabelOptions) / 치수선 AddDimensionLine (DimensionLineOptions) 파티클 이미터 AddParticleEmitter (ParticlePreset : 불똥/연기/증기/물방울, ParticleOptions) 흐르는 경로선 AddPathLine (PathLineOptions) / 점군·선군 AddPointCloud / AddLineSet (DataSetOptions, UpdatePointCloud / UpdateLineSet) 가스 구름 AddGasCloud / 유증기 AddVapor / 펄스 구 AddPulseSphere / 다면체 외곽 펄스 AddPulseOutline / 회전 스피너·진행 링 AddSpinner / 지면 투영 링 AddGroundRing / 용접 불꽃 AddWeldingSpark 공통 규약 — 추가 시 id 반환, Remove* / Clear*, 그룹 지정, 유효 시간(ExpireMs), 상한 조회 Capacity (EffectCapacity)조회·통지 — GetEffects(전체/종류/그룹) / EffectCount, OnEffectAddedEvent / OnEffectRemovedEvent (EffectItem / EffectType / EffectRemovalReason) 특수 효과 툴바·리본 탭·목록 창 패널(TabEffectEnabled)·생성 옵션 다이얼로그 추가 | New Feature |
| 환경 렌더링(Environment) | 창 패널에 "환경" 탭 추가 (바닥 격자·지면 텍스처·해수면·하늘·접지 그림자 등 환경 렌더링 요소 제어) TabEnvironmentEnabled 속성으로 탭 표시 제어 환경 렌더링 공개 API 추가 — EnvironmentManager (신규) ( vizcore3dx.View.Environment) : 하늘/지면/물/바닥 격자/그림자 표시 제어, 프리셋 GroundPreset / SkyPreset (EnvironmentGroundPreset / EnvironmentSkyPreset), SetGroundTexture / SetSkyPanorama | New Feature |
| FindManager | 정규식·대소문자 구분 검색 — RegexSearch, QuickSearch(caseSensitive) 오버로드, 마지막 검색 방식 LastSearchStrategy (SearchStrategy) 저장된 검색(Search Set) — GetSearchSetNames / GetSearchSet / AddSearchSet / RemoveSearchSet / RunSearchSet / ImportSearchSet / ExportSearchSet (SearchSetItem / SearchSetAttributeItem, NameMatchMode / ConditionCombine) + 검색 다이얼로그 [조건 저장] / [저장된 검색] 버튼, 속성 탭 Value 셀 여러 줄 붙여넣기 시 조건 행 자동 생성 검색 경로별 결과 불일치 수정(면 노드 누락·AND+전체 일치·속성 값 이스케이프·대상 노드 제한·컬처 의존) — 같은 조건이면 어느 API든 같은 결과 대량 검색 매칭 병렬화로 속도 개선, 빈 키워드 예외를 VIZCoreException으로 통일 | New Feature Improvement Bug Fix |
| FrameManager | SetStyle(null) NRE 대신 무시 + InvalidArgument 기록 | Bug Fix |
| GenericDataManager (신규) | Generic 데이터 로드·표시·물량 집계 기능 신규 (vizcore3dx.GenericData, GenericData 진입점)로드/조회 — OpenFile / OpenFiles / OpenFolder / OpenFileDialog / FindCandidateFiles, GetFiles / GetStringData / GetMarkingData / GetBevelData / GetBevelTextData / GetBevelSymbolData 표시 — Show / ClearView / FitView, 레이어 제어 SetLayerVisible / GetLayers / SetAllLayersVisible, ViewOption 물량 — GetQuantity / ExportQuantityCsv 베벨 표기 — SetBevelLabel / ClearBevelLabels, ViewOption ShowBevelLabels, GenericBevelItem BevelCvba 속성 이벤트 — OnGenericDataLoadedEvent / OnGenericDataClearedEvent / OnGenericDataPartSelectedEvent 데이터 — GenericFileItem / GenericStringItem / GenericContourItem / GenericBevelItem / GenericQuantityReport 등, 열거형 GenericFileKind / GenericDataLayer 등 Generic 데이터 창 패널 및 TabGenericDataEnabled 속성 추가 가시화 개선 — GenericDataViewOption HideDetachedMounting / MountingMaxChordDeviation, GenericDataViewReport MountingSkipped / MountingSkippedReasons (부재에서 떨어진 취부 라인 생략), DisableDepthTest는 첫 표시 초기값으로만 동작 + 패널 깊이 검사 토글 버튼 | New Feature Improvement |
| GeometryPropertyManager | 표면적/부피/부피 중심 조회 기능 추가 — GetSurfaceArea / GetVolume / GetCenterOfVolume / GetGeometry (각 List<Node> 오버로드 포함)GeometryResult 데이터 클래스 신규 (SurfaceArea/Volume/CenterOfVolume) 메시 기하 집계 GetMeshGeometry (MeshGeometryResult : 표면적·부피·질량 중심·삼각형 수) 동일 형상 통계 GetShapeStatistics (ShapeStatistics / ShapeGroup), 노드당 Core 호출 횟수 축소 기하 지표 순위 GetRanking (GeometryRanking / GeometryRankItem, GeometryRankMetric) 축 방향 분포 GetAxisDistribution (AxisDistribution / AxisBand) | New Feature Improvement |
| GeometryUtilityManager | 형상 외곽선 좌표 조회 — GetFeatureEdges (꺾임 각도 기준 판정) 배관 중심선 좌표 조회 — GetPipeCenterlines / GetPipeCenterlinesConnected (이어붙이기) | New Feature |
| InputManager (신규) | 입력 조작 체계 신규 (vizcore3dx.Input, Input 진입점)프리셋 — CurrentPreset / ApplyPreset / LoadDefault (InputPreset : Default/Catia/NX/SolidWorks/Inventor/Navisworks) 감도 — OrbitSensitivity / PanSensitivity / ZoomDragSensitivity / RollSensitivity / LookSensitivity 이동 속도 — WalkSpeedRatio / WalkSpeedBoostScale / FlySpeedRatio / FlySpeedBoostScale 입력 판정 — IsWheelDirectionInverted / ClickDuration / LongPressDuration / ClickToleranceInPixels 설정 "조작" 탭 및 툴바 조작 프리셋 선택 추가 사용자 정의 입력 바인딩 — ApplyCustomBindings / GetCustomBindings / ResetCustomBindings / ExportCustomBindings / ImportCustomBindings (InputBindingItem : 바인딩별 방향 반전·감도 배율, 열거형 InputBindingLayer / InputGestureType / InputMouseButtons / InputModifierKeys / InputAction / InputBindingSource) 사용자 정의 프리셋 — CurrentCustomPresetName / GetCustomPresetNames / ApplyCustomPreset / CreateCustomPreset / SaveCustomPreset / DeleteCustomPreset / RenameCustomPreset / ExportCustomPreset / ImportCustomPreset InputPreset 값 추가 : Aveva / Custom 설정 다이얼로그 [마우스] 탭 신설, 툴바 조작 프리셋 "사용자 정의" 항목 추가 | New Feature |
| LicenseManager | 현재 인증 라이선스 확인 속성 추가 — AuthenticationStatus / LicenseFilePath / LicenseServerIp / LicenseServerPort | New Feature |
| MeasureManager | 반직선(Ray) 거리 측정 — AddRayDistance (Ray3D 기반, 대화식 오버로드 포함) 축 방향 거리 측정 — AddDistanceAxialDirection 및 X / Y / Z / XYZ 편의 오버로드 (AxisDistanceDirection : X/Y/Z/XYZ) 마우스 오버 자동 강조 — MeasureItem IsHighlighted / IsHighlightable, SetHighlightable 스타일 프리셋 — StylePresets / AddStylePreset / RemoveStylePreset / ImportStylePreset / ExportStylePreset / ApplyStylePreset (MeasureStylePreset : 지정한 속성만 담는 부분 스타일) + 스타일 다이얼로그 프리셋 사이드바 점과 두 선을 이용한 각도 측정 — AddPointLineAngle (텍스트 위치/오프셋 오버로드), 측정 툴바 선/점 기반 각도 2종·텍스트 자동 배치 추가 CSV 내보내기 ExportCsv, JSON 문자열 왕복 ToJson / FromJson | New Feature |
| MiniViewManager | 미니뷰 카메라 수동 동기화 — SyncCamera (주 뷰 현재 시점으로 갱신) | New Feature |
| ModelManager | VIZ 파일 열기/추가 — OpenVIZ / OpenVIZFileDialog / AddVIZ / AddVIZFileDialog (64비트 전용, VIZ→VIZX 변환) 암호화 모델 열기/추가 — OpenEncrypted / AddEncrypted, 열기 결과 LastOpenResult(ModelOpenResult) ExportObj 재질(.mtl) 출력 옵션 오버로드 추가 · 노드별 o/g 그룹 분리·이름 폴백 개선모델 열기 대화상자 VIZ 필터 추가(선택 시 변환 후 열기) .viz 파일 드래그드롭 열기 지원(64비트 전용, VIZ→VIZX 변환)부분 내보내기 — ExportVIZX / ExportVIZ / ExportFileDialog / ExportVIZDialog (지정 노드만 담은 파일 생성, 조회 중인 모델 무변) VIZ 변환을 관리 코드로 내재화 — 32비트에서도 VIZ 열기/추가/내보내기 지원, 배포 용량 감소 내보내기 대상 범위 지정 — ExportOption(ALL/VISIBLE/RENDERED/SELECTED) 오버로드 : ExportVIZX / ExportVIZ / ExportObj / ExportStl, 내보내기 모델 범위에 "화면에 그려진 개체만" 옵션 추가 노드 기본 특성 부분 로드 — LoadNodeDefaultProperties(kinds / kinds, nodes) (NodeDefaultPropertyKind) 파일 단위 닫기 Close, 단일 노드 VIZX 내보내기 ExportNode OBJ 내보내기 옵션 — ExportObj(ObjExportOption, ObjVertexColorMode / ObjMaterialGrouping), mtllib 상대경로·문화권 무관 서식 CanUndo / CanRedo 미초기화 시 false 반환, SaveVIZX / SaveAsVIZX 빈 경로 시 false, Close()가 파일 없이 생성된 엔티티를 닫지 못하던 문제 수정, VIZX 부분 내보내기 2GB 상한 제거 | New Feature Improvement Bug Fix |
| ModelTreeManager | 이름 필터 — SetNameFilter / ClearNameFilter / NameFilter / IsNameFilterEnabled / IsNameFilterCaseSensitive, 정렬 SortOrder (ModelTreeSortOrder), 검색바 SearchBarVisible 선택 연동 — SelectionAutoExpandEnabled / SelectionAutoScrollEnabled 색상 팔레트 — GetColor / SetColor / SetColors / ResetColors / ApplyTheme / FollowRibbonTheme (ModelTreeColorRole / ModelTreeTheme) 모델트리 검색/정렬 툴바, 잠긴 노드 아이콘, 트리 메뉴 노드 관리·파일 내보내기·파일 닫기 추가 | New Feature |
| NodeLockManager (신규) | 노드 잠금 Manager 신규 (vizcore3dx.Object3D.NodeLock)Enable / Lock / Unlock / Clear / List / IsLocked OnNodeLockChangedEvent 이벤트 잠긴 노드는 선택·가시성(보이기/숨기기)·색상/투명도 변경 3가지 조작에서 보호 모델트리 우클릭 잠금 메뉴(Part/Body/Face·하위 개체) 및 설정 "노드 잠금 기능 활성화" 체크박스 추가 | New Feature |
| NodePropertyControl / NodeAttributeTreeControl | 어트리뷰트 트리 펼침 시 지연 로딩(대용량 성능 향상) NodePropertyControl 비표시 상태에서 노드 선택 성능 저하 버그 수정 | Improvement Bug Fix |
| NoteManager | OnNoteTextChanged 이벤트 추가 (노트 텍스트 변경 알림) 노트 스타일 대화상자 버그 수정 마우스 오버 자동 강조 — NoteItem IsHighlighted / IsHighlightable, SetHighlightable 스타일 프리셋 — StylePresets / AddStylePreset / RemoveStylePreset / ImportStylePreset / ExportStylePreset / ApplyStylePreset (NoteStylePreset : 지정한 속성만 담는 부분 스타일) + 스타일 다이얼로그 프리셋 사이드바 표면 노트 대상점 SetTargetPosition, NoteItem TargetPosition CSV 내보내기 ExportCsv, JSON 문자열 왕복 ToJson / FromJson 자동 배치 기준점을 TargetPosition으로 변경, 방사형 배치 지시선 교차 제거 | New Feature Improvement Bug Fix |
| Object3DManager | GetPickableObjects : 화면 좌표에서 선택 가능 객체 조회 (PickableObject / PickableObjectType / PickableObjectFilter 신규) 반직선(Ray) 충돌 노드 조회 — Raycast / RaycastAll (Ray3D / RaycastHit / RaycastOptions 신규) 체크박스 토글 시 뷰/모델트리 깜빡임 제거 렌더링된 노드 조회 — GetRenderedNodes / GetRenderedNodesIndex / HasRenderedNodes 노드 래핑 경량화 — Data.Node 크기 축소로 대량 노드 조회 성능 개선(대규모 모델에서 GetChildObject3d 등 노드 목록 조회 시간과 메모리 사용량 감소)화면 좌표 선택 객체 조회 GetPickableObject(최상위 1건 / 겹친 객체 순번) / GetPickableNodes, 화면 영역 노드 조회 FromScreen(x1, y1, x2, y2, fullContainsOnly / fullContainsOnly) 선택 순서 묶음 조회 GetSelectedIndexInSelectedOrderByGroup / GetSelectedNodeInSelectedOrderByGroup, GetSelectedIndexInSelectedOrder / GetSelectedNodeInSelectedOrder는 범위 선택도 한 묶음으로 추적 GetNodePathMap 속도 개선, 노드 속성 컨트롤(NodePropertyControl)이 선택 시 전체 장면을 조회하던 비용 제거 GetNodes 정규식 기호 포함 이름 조회 수정( * 자리표)·subNames 빈 목록 처리·null 가드, GetNodesFromUDAKey isVisible=false 기본값을 "표시 여부 무관"으로 변경빈 곳 클릭 해제 시 상위 노드 선택 잔류·드래그 조작 모드 더블클릭 이벤트 누출 수정 | New Feature Improvement Bug Fix Changed |
| Object3DPrimitiveManager | 루트 노드 생성 AddRootNode, 메시 파일(STL / OBJ / PLY) 가져오기 AddPrimitiveMeshFromFile 반구·타원체 도형 AddPrimitiveHemisphere / AddPrimitiveSpheroid (Primitives HEMISPHERE 값 추가) + 툴바·리본 반구 버튼, 도형 추가 다이얼로그 위치 선택 SPHEROID 툴바·다이얼로그가 SphericalCap을 생성하던 문제 수정, 무효 노드 참조 시 null 대신 ArgumentException | New Feature Bug Fix Changed |
| ObserverManager (신규) | 옵저버 시야(viewshed) 분석 신규 (vizcore3dx.Observer, Observer 진입점)분석 — AnalyzeAsync(옵션/진행률/취소, 옵저버 id) / CancelAnalyzeAsync / Union(커버리지 합집합), 결과 표시 Show / Hide (SightMapResult / SightMapNodeHit) 목록 — Add / AddFromCamera / GetItem / Contains / GetIDs / Delete / Clear / GetOptions, Items / Count (ObserverItem / ObserverOptions) 선택·표시 — SetSelected / SetSelectedOnly / GetSelected / SetVisible / MoveCameraTo / RefreshFigures, 표식 스타일 Style (ObserverStyle) 파일·JSON — Export / Import / ToJson / FromJson (ObserverImportMode) 이벤트 — OnObserverCreatedEvent / OnObserverDeletedEvent / OnObserverClearedEvent / OnObserverChangedEvent / OnObserverSelectedChangedEvent / OnObserverVisibleChangedEvent (ObserverChangeReason) 옵저버 툴바(ToolbarObserver, ToolbarKind Observer)·리본 [옵저버] 탭·옵저버 창 패널(TabObserverEnabled)·설정 [옵저버] 탭 추가 | New Feature |
| PMIManager (신규) | PMI 기능 신규 추가 (vizcore3dx.PMI)조회/표시 — Pmis / FromName / ShowAll 뷰 탐색 — Views / ActiveView / ActiveViewIndex / ActivateView / DeactivateView / NextView / PreviousView 분류·유형 필터 — ShowCategory / ShowType / ShowOnly 조회/선택/통계 — FromCategory / FromType / FindElements / SelectElements / DeselectAll / GetSelectedElements / GetCountByCategory / GetCountByType 색상 — OverrideColor / HighlightColor / SelectionColor / ColorByCategory / ResetColors / SetElementsColor / ResetElementsColor 이벤트 — OnPmiEvent / OnPmiElementEvent 데이터 — PmiItem / PmiElement / PmiElementCustomStyle / PmiView / PmiCategory / PmiType 창 패널에 PMI 탭·트리(가시성·선택·뷰 활성화·색상), 슬라이드쇼·분류필터·이름검색·컨텍스트 메뉴 PMI 결함 6건 수정 소유 노드 기준 PMI 요소 조회 FromNode(단건 / 다건), PmiElement OwnerNode + PMI 트리 소유 노드 분류 모드, "이 노드의 주석만 표시" 메뉴 SelectElements Core 일괄 호출로 성능 개선 | New Feature Improvement Bug Fix |
| PlasticManager / XRayManager / TransparentManager | 선택 색상 적용 전 기존 Custom Color를 보관하고 해제 시 복원, 모드 전환 시 선택 유지, 모델 미오픈 상태 Clear() 크래시 방어 | Improvement Bug Fix |
| PreSelectManager | 사전선택 노드 이름 표시 — NodeNameVisible / NodeNameTarget (PreSelectionNodeNameTarget 신규) | New Feature |
| PrintManager (신규) | 화면 인쇄 신규 (vizcore3dx.Print, Print 진입점)Print / ShowPreview, 머리글·바닥글·날짜·페이지 번호 Header / Footer / DateText / PageNumber (PrintTextItem), Orientation (PrintOrientation) / Margins 컨트롤 편의 메서드 PrintView / ShowPrintPreview | New Feature |
| ProjectionManager | 2D 투영 생성 시 뷰 평행 투영 전환 · 다국어 지원 투영 빈 영역 검출 FindEmptyRegions (ProjectionEmptyRegion) | New Feature Improvement |
| RibbonManager (신규) | 기존 툴바를 대체할 수 있는 리본 UI 및 vizcore3dx.Ribbon 신규RibbonMode / RibbonTheme (RibbonTheme : Light/Gray/Dark) 탭/그룹/아이템 제어 — GetTabNames / SetTabVisible / SetGroupVisible / SetItemVisible 사용자 정의 — AddTab / AddGroup / AddButton QAT — AddQuickAccessItem / GetQuickAccessItems / SetQuickAccessItems / ShowQuickAccessDialog 리본 최소화/펼치기·오버레이 팝업, 설정 저장/복원 공개 타입 RibbonTab / RibbonGroup / RibbonButton / RibbonItemSize 등 그룹/아이템 조회·설정 — GetGroupItemNames / GetGroupText / SetGroupText / GetItemText / SetItemText / SetItemSize 리본 메뉴 버그 수정 일괄 갱신 BeginUpdate / EndUpdate, 탭 제어 MoveTab / SelectTab 리본 폭 축소 시 버튼 텍스트 유지, 원격 세션에서 리본 하단이 잘리던 문제 수정 계층 조회 GetParentGroupName / GetParentTabName / GetItemSize, 이동 MoveGroup / MoveItem 툴바 모드(RibbonMode=false)에서는 RibbonTheme이 Light로 고정, 테마 변경 즉시 재적용, 리본 테마를 검색바·창 패널·다이얼로그 등 UI 전체에 적용(Dark 시 창 제목줄·스크롤바 포함), 녹화 중 상태 표시 | New Feature Improvement Bug Fix Changed |
| SettingsDialog / AboutDialog | 설정 창 단축키 탭 잘림 수정, 측정 옵션 열 겹침 수정 제품 정보 창에 오픈소스 라이선스 탭 추가 | Bug Fix New Feature |
| SettingManager | Load 파일 부재 시 false + FileNotFound, 섹션 없는 파일은 InvalidFileFormat | Bug Fix |
| SearchNodeDialog | 검색 결과 우클릭 컨텍스트 메뉴(모두 선택/보이기/숨기기/비선택 숨기기/삭제/모두 보이기·숨기기/이름 복사) 추가 공간 탭에 단면상자/선택상자 박스 콤보 추가·우클릭 노드검색 연계 창 위치·크기 보정(화면 밖/잘림 방지)·공간 탭 콤보 세로 정렬 보정 종료 시 NullReferenceException 수정 가시성 옵션에 "화면에 그려짐" 항목 추가 (화면에 실제 그려진 노드만 검색) | New Feature Improvement Bug Fix |
| SectionManager | SetCenter(uint, Vector3D) 오버로드 추가 (단면 중심점을 지정 좌표로 이동) 단면 Delete 시 NullReferenceException 방어 코드 추가 Show / Enable / Select에 없는 아이디 전달 시 예외·화면 멈춤 수정 (해당 아이디는 건너뜀) JSON 문자열 왕복 ToJson / FromJson 단면 창 패널 목록 초기 채움·이벤트 갱신 수정 ShowSectionLine 삭제 → SectionStyle BoundaryStrokeColor(알파 0이면 숨김) / SettingItems SectionBoundaryStrokeColor로 대체 | New Feature Bug Fix Removed |
| SecurityHelper (신규) | 파일 암/복호화 — EncryptFile / DecryptFile / IsEncryptedFile, EncryptionFormat 열거형(Legacy/Strong) | New Feature |
| SelectionBoxManager / SelectionBox | IsDepthTestEnabled 속성 추가 (깊이 테스트 사용 여부) 모델트리 선택상자 탭 신설(TabSelectionBoxEnabled, SelectionBoxControl) 선택상자 전용 툴바(ToolbarSelectionBox, ToolbarKind.SelectionBox)·집중 모드·색상 다이얼로그·리본 탭 추가 OnSelectionBoxNameChangedEvent 이벤트 및 Add(BoundBox3D, string) 오버로드(제목 지정 생성) 추가 선택 항목 조회(GetSelectedItems)·픽 조회의 ID 결함 2건 수정 SelectionBoxManager JSON 저장/복원 ExportToJson / ImportFromJson, 집중 모드 EnterFocusMode / ExitFocusMode(다른 상자 숨김 + 상자 밖 모델 절단 표시) SelectionBox GetObject3DIndex KeyNotFound 예외, Delete 시 Deleted 이벤트 2중 발화 수정 | New Feature Bug Fix |
| ShapeManager / ShapeItem | 형상 생성/제어 확장 위치·회전 지정 생성 — CreateCubeShape / CreateCylinderShape / CreateSphereShape / CreatePlaneShape (position·Quaternion rotation, direction·normal 오버로드) Stroked — CreateCircleShape / CreateLineSegmentShape / CreateLineSegmentsShape / CreatePolylineShape / CreateRectangleShape / CreateTriangleShape 노드 기반 — CreateBoundingBoxShape 등 SetPosition / SetRotation ShapeItem 속성 Position / Rotation / IsFixedScreenSize / ScreenSize / IsHighlighted CreateMeshShape(vertices, indices, color) 오버로드 추가 형상 선 두께 최대 10 확장 마우스 오버 자동 강조 — IsHighlightable / SetHighlightable 선택 판정 깊이 테스트 — IsPickingDepthTestEnabled 도형 선택 이벤트 — OnShapeSelectedEvent / OnShapeDeselectedEvent 현수선 — ComputeCatenaryPoints / CreateCatenaryShape / CreateCatenaryTubeShape ShapeType이 실제와 다른 종류를 반환하던 문제 수정, 값 추가(None/LineSegments/Mesh — 유효하지 않으면 예외 대신 None 반환) 스칼라 히트맵 메시 생성 CreateHeatmap (HeatmapResult) Shapes / FromCategory / Clear / Show / DepthTestEnable / Selectable / SetHighlightable 및 선택 이벤트가 Zone·Generic·Observer 소유 형상을 제외( Shape.Clear()가 Zone·Generic 표시를 지우지 않음) | New Feature Improvement Bug Fix Changed |
| ShortcutManager | 포커스 위치와 무관하게 단축키가 동작하도록 개선 (툴바·리본·탭·목록 클릭 후에도 정상 동작) 단축키 실행 시점을 KeyUp(뗄 때)에서 KeyDown(누를 때)으로 변경 (공개 이벤트 OnVIZCore3DXKeyUp / OnVIZCore3DXKeyDown·트리 키 포워딩은 유지)제공 단축키 확장 — 신규 25종(기본 미할당, [탐색] 그룹 신설), ShortcutFunctions 값 추가(RENDERING_VISIBLE_WIRE / CONTROL_SELECTION_BOX) 단축키 편집 내용이 저장되지 않던 문제 수정 컨트롤이 구현한 키(Ctrl+A / Delete 등)를 전역 단축키가 가로채지 않도록 개선, 뷰 인터랙티브 명령 ESC 취소 회귀 수정 PROJECTION 기본 키(F12) 할당 해제 | New Feature Improvement Bug Fix Changed |
| SketchManager / SketchItem | 마우스 오버 자동 강조 — IsHighlighted / IsHighlightable, SetHighlightable 목록 조회·개별 삭제 GetItems / Delete, SetStyle(null) 가드 | New Feature Bug Fix |
| SnapshotManager | OnSnapshotNameChanged 이벤트 추가 (스냅샷 이름 변경 알림) JSON 문자열 왕복 ToJson / FromJson Select로 복원해도 OnSnapshotRestored 이벤트 발생 | New Feature Bug Fix |
| ToolbarManager | 홈 툴바 신규 버튼(배경색 프리셋·프레임 초기화·면 선택·픽 필터·분해·선택 강조 토글)·단면 툴바(캡 채움·캡 교차선)·스냅샷 툴바(스케치 즉석 스타일) 추가 (ToolbarItems 신규 값) 툴바 가시성 버그 수정 툴바 줄/순서 기본값 정렬(0~9), 리본 탭 순서가 툴바 줄 값을 따르도록 변경 ToolbarItems 값 추가 — OBSERVER_* 11종 / PRIMITIVE_HEMISPHERE / DECAL_ADD_DECAL_ARROW, ToolbarKind Observer 주의 OBSERVER_* 11개가 중간 삽입되어 MEASURE_ADD_LINE_LINE_ANGLE / MEASURE_ADD_POINT_LINE_ANGLE / MEASURE_ARRANGE_TEXT / NOTE_ARRANGE_TEXT의 정수값이 변경됨특수 효과 툴바 위치 저장 | New Feature Bug Fix Changed |
| UDAManager | 속성 트리 조회·내보내기 — GetTree / ExportTree(CSV·JSON·XML) / ExportMatrix(노드×속성 CSV) (UdaTreeCategory / UdaTreeKey / UdaTreeValue) 속성 값 분포 집계 GetValueDistribution (AttributeDistribution / AttributeValueCount) GetCategoryNameNodes fullMatch=false가 이름 부분 일치로 동작, UDA 값 검색 * 자리표 해석·null 가드 | New Feature Changed Bug Fix |
| ViewManager | 카메라 OrbitCamera / RotateCamera (축·각도 또는 카메라 방향, TimeSpan) Zoom (화면 중심/좌표 기준) NavigationDragMode (NavigationDragMode : NONE/ROTATE/PAN/ZOOM) 테두리 효과 BorderBlurEnabled / SetBorderBlur / ClearBorderBlur BorderVignetteEnabled / SetBorderVignette / ClearBorderVignette 보행 모드(CameraMode.Walk) 추가 — 좌드래그 전후진·우드래그 시선 회전·중드래그 높이·휠 기울기 지점/영역 선택 픽 필터 PointPickingFilter / RegionPickingFilter 추가 (PickableObjectFilter에 SelectionBox·Pmi 대상 추가) 조작 모드 API — ManipulationMode / GetManipulationModes / OnManipulationModeChanged 대체 폰트 FallbackFontFamilies 지정 (한/중/일 문자 표시 개선) 축 기준 회전(6방향) 기본 각도 45도 적용 SetFlightStepDistance / GetFlightStepDistance 제거 (대체 FlySpeedRatio)카메라 변경 이벤트 OnCameraUpdatedEvent (뷰·투영 행렬 전달, 구독 시에만 엔진 통지 활성화) 마크업 텍스트 자동 배치 — FitAndArrangeText / FitAndArrangeTextInView (노트·측정 텍스트 방사형 자동 배치), SetTextDistance, TextArrangeGap / TextArrangeMargin / TextArrangePadding 무인 캡처용 RequestRender / CaptureRenderImage(렌더 버퍼 직접 캡처) SetSubView(4) : 1+3 화면 분할 ViewContextMenuKind ZONE_SINGLE / PMI_SINGLE 값 추가(3D 뷰 Zone·PMI 우클릭 메뉴) | New Feature Improvement Removed |
| ViewCubeManager | 뷰큐브 TOP 동작 개선(방향을 90도 단위로 고정하도록 개선) | Improvement |
| VIZCore3DXControl | 모델링 컨트롤 — ModelingControlVisible / ModelingControlSize / ModelingControlPosition / ModelingControlColor (ModelingControlSize / ModelingControlPosition / ModelingControlColor 열거형) 일괄 업데이트 BeginControlUpdate / EndControlUpdate SuppressRedrawUntilInitialized (기본 true) About Dialog에 모델 정보·라이선스 인증 정보 표시 모델 파일 Drag&Drop Open/Add 보강 조작자(Manipulator) 관련 오류 및 컨트롤/코어 종료 시 발생하던 예외 수정(종료 안정성 개선) 설정 적용 성능 개선·리본 해제 시 툴바 소실 수정 설정 다이얼로그 UI 재배치 설정 다이얼로그 Frame 미정의 시 Exception 수정 환경 탭 표시 제어 TabEnvironmentEnabled Dispose 후 재생성 오류· IsOpen() 가드·종료 시 외부 렌더링 해제 AVE 수정파이널라이저·초기화 전 SettingsManager.Apply AccessViolation 방지초기화/대기 오버레이 디자인 현대화(모래시계·진행 바) 뷰 초기화 상태 IsViewInitialized / 실패 통지 OnViewInitializationFailedEvent (ViewInitializationFailReason) — 초기화 실패 시 크래시 대신 안내로 전환(고객 AccessViolation 근본 수정) 분해 다이얼로그 ShowExplodeDialog 설정 "보기" 탭 대체 폰트·뷰 툴바·뷰큐브 활성화 영속화 Shortcuts 속성 읽기 전용화(setter 제거; 비활성화는 Shortcuts.Enable = false)창 패널 탭 개별 표시 — TabModelTreeEnabled / TabZoneEnabled / TabNodePropertyEnabled / TabNodeAttributeEnabled / TabAttributeTreeEnabled / TabNodeGroupEnabled / TabProjectionEnabled 속성 패널 표시 AttributePanelVisible, 시작 시 저장 설정 적용 여부 LoadSavedSettingOnStartup 모델링 컨트롤 — ModelingControlOrientation / ModelingControlBackground / ModelingControlBackgroundColor (ModelingControlOrientation / ModelingControlBackground / ModelingControlBackgroundColor 열거형, ModelingControlPosition 값 추가 LEFT_SIDE/RIGHT_SIDE/FREE), 자석 드래그·좌우 세로 배치·배경 모드·아이콘 개선 모델 열기/닫기 중 화면 잠금이 남던 문제 수정 (배치 중 닫기, 열기 전 잠금 미적용 포함) GPU가 2개 이상인 환경에서 고성능 그래픽 카드를 사용하도록 개선 모델링 컨트롤 기본값 변경 (표시 켜짐·우측·수직·색상 배경) 저장된 설정이 모델 열림 후 렌더 상태와 어긋나던 문제 수정 (모델 열림 시 설정 재반영) 화면 갱신 차단 범위 BeginUpdateScope(using 블록 종료 시 자동 해제) / IsUpdating 진입점 Observer / Print, ToolbarObserver / TabObserverEnabled Note / Measure / Snapshot 목록 우클릭 메뉴, 비활성·읽기전용 컨트롤 가시성 개선, 뷰 초기화 실패 안내에 CPU·RAM·그래픽 어댑터 정보 표시, 설정 [보기] 카메라 궤도 모드 콤보(SettingItems CameraMode) | New Feature Improvement Bug Fix Changed |
| ZoneManager (신규) | 다면체 공간(Zone) 정의 기능 신규 (vizcore3dx.Zone, Zone 진입점)생성 — Add (ZoneDefinition 기반, 다건 오버로드) / CreateZoneFromPlanes (경계 평면+시드, ZoneClosing) / CreateZoneFromBoundBox / CreateZonesFromBoundBoxes / CreateZoneFromMesh / CreateZoneFromNodes / CreateZoneFromSelectedNodes / CreateZoneFromSelectionBox / CreateZoneFromPendingPlanes / Clone 편집 — AddPlane / SetPlane / DeletePlane / FlipPlane / SetPlaneOffset / GetPlaneOffset / Offset / Rebuild / SetSeed / GetSeed / SelectFace / ClearFaceSelection / MoveFace / BeginUpdate / EndUpdate 불리언·분할 — Union / Subtract / Intersect / Boolean (ZoneBooleanOperation, 집합 연산 시 기본 원본 유지) / Split 부가 정보 — SetDescription / GetDescription / SetTag / GetTag / LastOperationResult (ZoneOperationResult) 분석 — AnalyzeAsync / CancelAnalyzeAsync / IsIntersecting / GetIntersectionVolume / GetMinDistance / GetFacingFaces / InvalidateObstacleCache / GetObstacleTriangleCount (ZoneAnalysisOptions / ZoneAnalysisResult / ZoneAnalysisItems) 조회 — GetItem / GetItems / Contains / GetIDs / GetKind (ZoneKind) / GetVolume / GetSurfaceArea / GetBoundBox / GetTotalBoundBox / GetCenter / ContainsPoint / GetTriangleMesh / GetMesh / GetPlanes / GetPlaneCount / GetFaces / GetFaceCount / GetNodesInZone / FromPoint / GetDefinitions / ExportToShapes 삭제·이름 — Delete / Clear / SetName / SetNames / GetName 가시성·색상 — SetVisible / GetVisible / SetSelected / SetSelectedOnly / GetSelected / GetSelectedItems / SetFaceColor / SetLineColor / SetColor / GetFaceColor / GetLineColor / SetStyle (ZoneStyle) 되돌리기 — Undo / Redo / CanUndo / CanRedo / UndoLimit / ClearUndo 화면 선택 세션 — PendingPlaneCount / SelectedPendingPlaneIndex / CancelPicking / ClearPendingPlanes / GetPendingPlanes (ZonePickMode) 파일 입출력 — Export / Import / ToJson / FromJson (ZoneImportMode) 상태 — PickMode / IsFaceDragEnabled / SelectedFaceZoneID / SelectedFaceIndex / IsAnalyzing / Items / Count / Style / AnalysisOptions / IsFaceVisible 이벤트 — OnZoneCreatedEvent / OnZoneDeletedEvent / OnZoneClearedEvent / OnZoneNameChangedEvent / OnZoneVisibleChangedEvent / OnZoneSelectedEvent / OnZoneColorChangedEvent / OnZoneGeometryChangedEvent (ZoneGeometryChangeReason) / OnZoneAnalysisCompletedEvent / OnZoneFaceSelectedEvent 데이터 — ZoneItem / ZoneFaceItem / ZonePlaneItem / ZoneFacingFace 다면체 공간 툴바(ToolbarZone, ToolbarKind.Zone)·목록 탭·설정 항목 추가 개체 연계 — GetNodesInZone(다건 오버로드) / FromPoint / FromNode / SelectNodesInZone / IsolateNodesInZone / FitToZone 겹침·분할 — GetOverlaps, 다중 평면 Split (ZoneOperationResult 값 SplitResultEmpty 추가) 거리·접점 — GetMinDistance 최근접 쌍 오버로드, GetDirectionalContact (ZoneDirectionalContact) 뷰 픽킹 — IsViewPickingEnabled (3D 화면 공간 클릭 선택 통지, ZoneEventArgs.FromView), SetViewPickable / GetViewPickable 표시 — SetFaceOpacity / GetFaceOpacity (공간별 경계면 불투명도), ZoneStyle DepthTestEnabled / SelectedFaceOpacity 속성 추가 공간 분석 결과 MaxSphereRadius — 장애물이 없으면 무제한(Infinity) 반환 시드 지정/면 선택 모드 ESC 취소 미동작 수정, 시드 지정 Osnap 스냅 범위를 면으로 한정 GetNodesInZone / FromNode 공간 경계 계산을 호출당 1회로 축소, SetFaceOpacity 값 변경 시 OnZoneColorChangedEvent 발생 | New Feature Improvement Bug Fix |
| 공통 (진단 규약 / 예외) | 실패 원인 조회 LastOperationResult (OperationResult) / LastOperationStatus (OperationStatus)를 21개 Manager에 추가 — Animation / Clash / Compare / Decal / Find / Frame / GenericData / Input / Measure / Note / Object3DPrimitive / Observer / Pmi / Print / Projection / Section / SelectionBox / Setting / Shape / Sketch / Snapshot / UDA (Model·Zone은 LastOperationStatus만) 예외 계층 VIZCoreException / VIZCoreNotInitializedException / VIZCoreInvalidArgumentException — ColorManager / LockedSelectManager / FindManager / ModelManager의 빈 목록·빈 키워드 예외를 VIZCoreException으로 통일, LockedSelectManager Add / Delete null 인자는 ArgumentNullException마크업 JSON 문자열 왕복 ToJson / FromJson — Note / Measure / Section / Snapshot / Decal | New Feature Changed |
| 다이얼로그 진입점 | 각 매니저에 다이얼로그 진입점 메서드 정리·추가 — MeasureManager ShowMeasureStyleDialog, NoteManager ShowNoteStyleDialog, SectionManager ShowSectionDialog, SketchManager ShowSketchTextDialog / ShowSketchStyleDialog, Object3DManager ShowAddStructureNodeDialog, Object3DPrimitiveManager ShowAddPrimitiveDialog, CompareManager ShowNodeCompareDialog, LicenseManager ShowLicenseDialog, VIZCore3DXControl ShowAboutDialog | New Feature |
| Math/Data (BoundBox3D 등) | 값 동등성 연산자(==/!=/Equals/GetHashCode) 추가로 Distinct/Contains 지원 — BoundBox3D·CircleData·ColorMeshVertex·Facet·Line3D·Matrix3D·Rectangle3D·SizeToAxis·Triangle3D·Vector2·Vector3D·Vertex3D + BoundBox3DEqualityComparer 신규 | Improvement |
Resource
Figure 1: RibbonUI & ModelingControl

Figure 2: PMI

Figure 3: Zone

Figure 4: Input

Figure 5: Environment

Figure 6: MarkupText

Figure 7: Effect

Figure 8: Observer

Figure 9: ArrowDecal

Figure 10: ModelTree
