본문으로 건너뛰기

V.1.5.26.928

Major Features​

V.1.5.26.928​

추가​

  • [ObserverManager] (신규)

    • 옵저버(관측 지점) 시야 분석 기능 추가 (vizcore3dx.Observer) — 지정한 위치·방향에서 어느 개체가 보이고 가려지는지 계산
    • 옵저버 배치 : Add(위치·방향 지정) / AddFromCamera(현재 카메라 시점), GetItem / GetIDs / Contains / Delete / Clear, Items / Count
      • ObserverItem (신규 데이터 클래스) : 이름·위치·방향·최대 거리(MaxDistanceMm)·각도 간격(AngularStepDeg)·원뿔 각도(ConeAngleDeg)·표식 크기 등
    • 시야 분석 : AnalyzeAsync (옵션 직접 지정 또는 옵저버 id 지정, 진행률·취소 토큰 오버로드) / CancelAnalyzeAsync
      • SightMapResult (신규 데이터 클래스) : 광선 수·적중 수, 적중점 목록, 가시 노드(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
  • [FindManager]

    • 저장된 검색(Search Set) 추가 — 검색 다이얼로그의 조건(이름·타입·선택 상태·속성·공간 조건)을 이름을 붙여 저장하고 다시 실행
      • AddSearchSet / RemoveSearchSet / GetSearchSet / GetSearchSetNames, 실행 RunSearchSet(이름 또는 항목 지정), 파일 ImportSearchSet / ExportSearchSet
      • SearchSetItem / SearchSetAttributeItem (신규 데이터 클래스), NameMatchMode / ConditionCombine (신규 열거형)
    • 정규식 검색 RegexSearch, 대소문자를 구분하는 QuickSearch(caseSensitive) 오버로드
    • 마지막 검색에 사용된 방식 조회 LastSearchStrategy (SearchStrategy : NameDirect / NameRegex / Bulk)
    • (UI) 검색 다이얼로그에 [조건 저장] / [저장된 검색] 버튼 추가, 속성 탭 Value 셀에 여러 줄을 붙여넣으면 줄마다 조건 행 자동 생성
  • [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
  • [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 (신규)
  • [공통] 열거형 값 추가

    • ViewContextMenuKind : ZONE_SINGLE / PMI_SINGLE — 3D 뷰에서 Zone / PMI 우클릭 시 표시되는 컨텍스트 메뉴 (SetContextMenu / GetContextMenu로 교체 가능)
    • ToolbarKind : Observer, ToolbarItems : OBSERVER_* 11종 / PRIMITIVE_HEMISPHERE / DECAL_ADD_DECAL_ARROW
    • SettingItems.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 / MountingSkippedReasons
    • DisableDepthTest는 첫 표시의 초기값으로만 동작, 이후에는 패널 토글로 정한 사용자 설정 유지
  • [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) — 데칼에 화살표를 붙이는 대신 화살표 자체를 독립 데칼로 생성
  • [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)·생성 옵션 다이얼로그 추가
  • [EnvironmentManager] (신규)

    • 환경 렌더링 공개 API 추가 (vizcore3dx.View.Environment)
    • 하늘 / 지면 / 물 / 바닥 격자 / 그림자 표시 제어, 지면·하늘 프리셋 (EnvironmentGroundPreset / EnvironmentSkyPreset)
    • SetGroundTexture / SetSkyPanorama : 지면 텍스처·하늘 파노라마 지정
  • [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 속성 추가
  • [InputManager]

    • 사용자 정의 입력 바인딩 추가
      • ApplyCustomBindings / GetCustomBindings / ResetCustomBindings / ExportCustomBindings / ImportCustomBindings
      • InputBindingItem (신규 데이터 클래스) : 바인딩별 방향 반전(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 / ApplyStylePreset
      • MeasureStylePreset / 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)·목록 탭·설정 항목 추가
  • [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 : 런타임 대체 폰트 목록 (파일 열기 전 지정 권장)
  • [Object3DManager]

    • 반직선(Ray) 충돌 노드 조회 추가
      • Raycast(Ray3D) / Raycast(Ray3D, List<Node>) / Raycast(Ray3D, List<Node>, RaycastOptions) : 가장 가까운 충돌 1건
      • RaycastAll(...) : 충돌 노드 전부 (가까운 순 정렬)
      • Ray3D / RaycastHit / RaycastOptions (신규 데이터 클래스)
  • [MeasureManager]

    • 반직선 거리 측정 추가
      • AddRayDistance() / AddRayDistance(Ray3D) / AddRayDistance(Ray3D, List<Node>)
    • 축 방향 거리 측정 추가
      • AddDistanceAxialDirection(AxisDistanceDirection, ...) 및 AddDistanceAxialDirectionX/Y/Z/XYZ() 편의 오버로드
      • AxisDistanceDirection (신규 열거형) : X / Y / Z / XYZ
  • [하이라이트]

    • 마우스 오버 자동 강조 속성 추가
      • DecalItem / MeasureItem / NoteItem / SketchItem : IsHighlighted / IsHighlightable
      • ShapeItem : IsHighlightable
      • DecalManager / 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 버전을 이벤트로 통지
  • [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)
  • [ViewManager]

    • 보행 모드(Walk) 추가
      • CameraMode.Walk : 좌드래그 전후진 / 우드래그 시선 회전 / 중드래그 높이 조절 / 마우스 휠 시선 기울기
    • 지점(클릭)/영역 선택 시 픽 대상 필터 추가
      • PointPickingFilter / RegionPickingFilter (PickableObjectFilter)
      • PickableObjectFilter 에 SelectionBox / Pmi 대상 추가
  • [ShapeManager]

    • CreateMeshShape(List<Vertex3D> vertices, List<int> indices, Color color) 오버로드 추가 : 정점·인덱스로 메시 형상 생성

수정 및 개선​

  • [ModelManager]

    • OBJ 내보내기 시 노드별 o/g 그룹 분리 및 이름 폴백 처리 개선
  • [RibbonManager]

    • 리본 메뉴 버그 수정
  • [ViewCubeManager]

    • 뷰큐브 TOP 동작 개선
      • 방향을 90도 단위로 고정하도록 개선
  • [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)
  • [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 (열거형)
  • [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() : 간섭검사 모달리스 다이얼로그 표시 (홈 툴바·리본 홈 탭에 실행 항목 추가)
  • [DecalManager]

    • 데칼(Decal) 상태 변경 이벤트 추가 (vizcore3dx.Decal)
      • OnDecalCreated / OnDecalDeleted / OnDecalSelected / OnDecalDeselected / OnDecalShown / OnDecalHidden / OnDecalMoved / OnDecalRotated / OnDecalImported / OnDecalLoaded / OnDecalClosed
      • OnDecalTextChanged / OnDecalImageChanged : 데칼 텍스트/이미지 변경 이벤트
      • DecalEventHandler / DecalEventArgs (대상 Decals 목록 포함)
    • 데칼 이미지 투명도 지원 (DecalItem.ImageAlpha)
  • [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()
  • [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 필요)
  • [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 / IsHighlighted
      • Quaternion (신규 데이터 클래스) : 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 (신규 열거형)
  • [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에 모델 정보(바운딩박스·메시·노드 수)와 라이선스 인증 정보 표시
  • [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비트)
  • [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

ModuleSummaryCategory
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
FrameManagerSetStyle(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 / LicenseServerPortNew 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
ModelManagerVIZ 파일 열기/추가 — 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
NoteManagerOnNoteTextChanged 이벤트 추가 (노트 텍스트 변경 알림)
노트 스타일 대화상자 버그 수정
마우스 오버 자동 강조 — 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
Object3DManagerGetPickableObjects : 화면 좌표에서 선택 가능 객체 조회 (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
ProjectionManager2D 투영 생성 시 뷰 평행 투영 전환 · 다국어 지원
투영 빈 영역 검출 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
SettingManagerLoad 파일 부재 시 false + FileNotFound, 섹션 없는 파일은 InvalidFileFormatBug Fix
SearchNodeDialog검색 결과 우클릭 컨텍스트 메뉴(모두 선택/보이기/숨기기/비선택 숨기기/삭제/모두 보이기·숨기기/이름 복사) 추가
공간 탭에 단면상자/선택상자 박스 콤보 추가·우클릭 노드검색 연계
창 위치·크기 보정(화면 밖/잘림 방지)·공간 탭 콤보 세로 정렬 보정
종료 시 NullReferenceException 수정
가시성 옵션에 "화면에 그려짐" 항목 추가 (화면에 실제 그려진 노드만 검색)
New Feature
Improvement
Bug Fix
SectionManagerSetCenter(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 / SelectionBoxIsDepthTestEnabled 속성 추가 (깊이 테스트 사용 여부)
모델트리 선택상자 탭 신설(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
SnapshotManagerOnSnapshotNameChanged 이벤트 추가 (스냅샷 이름 변경 알림)
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 ShowAboutDialogNew 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​

RibbonUI_example.png

Figure 2: PMI​

PMI_example.png

Figure 3: Zone​

PMI_example.png PMI_example.png

Figure 4: Input​

PMI_example.png

Figure 5: Environment​

Environment_example1.png Environment_example2.png Environment_example3.png Environment_example4.png

Figure 6: MarkupText​

MarkupText_example.gif

Figure 7: Effect​

Effect_example.gif

Figure 8: Observer​

Observer_example.gif

Figure 9: ArrowDecal​

ArrowDecal_example.png

Figure 10: ModelTree​

ModelTree_example.png