Merge pull request #117 from pattern-x/feature/section
Enable to clip the building with dxf
This commit is contained in:
@ -1,22 +1,24 @@
|
||||
{
|
||||
"files": {
|
||||
"main.css": "./static/css/main.f052ad65.css",
|
||||
"main.js": "./static/js/main.b6487067.js",
|
||||
"static/js/787.cf5efa72.chunk.js": "./static/js/787.cf5efa72.chunk.js",
|
||||
"main.css": "./static/css/main.90df8265.css",
|
||||
"main.js": "./static/js/main.f09baa39.js",
|
||||
"static/js/787.55649ca3.chunk.js": "./static/js/787.55649ca3.chunk.js",
|
||||
"demo/libs/gemini-viewer.esm.min.js": "./demo/libs/gemini-viewer.esm.min.js",
|
||||
"static/media/dwg_background.png": "./static/media/dwg_background.f630e7cda68e19172eec.png",
|
||||
"demo/libs/types/core/viewers/DxfViewer.d.ts": "./demo/libs/types/core/viewers/DxfViewer.d.ts",
|
||||
"demo/libs/types/core/viewers/DxfViewer.temp.d.ts": "./demo/libs/types/core/viewers/DxfViewer.temp.d.ts",
|
||||
"demo/libs/types/core/camera-controls/CameraControls.d.ts": "./demo/libs/types/core/camera-controls/CameraControls.d.ts",
|
||||
"demo/libs/types/core/viewers/DxfViewer.d.ts": "./demo/libs/types/core/viewers/DxfViewer.d.ts",
|
||||
"demo/libs/types/core/dxf/DxfLoader.d.ts": "./demo/libs/types/core/dxf/DxfLoader.d.ts",
|
||||
"demo/libs/types/core/viewers/BimViewer.d.ts": "./demo/libs/types/core/viewers/BimViewer.d.ts",
|
||||
"demo/libs/types/core/viewers/BimViewer.temp.d.ts": "./demo/libs/types/core/viewers/BimViewer.temp.d.ts",
|
||||
"demo/libs/types/core/utils/ObjectUtils.d.ts": "./demo/libs/types/core/utils/ObjectUtils.d.ts",
|
||||
"demo/libs/types/plugins/pdf/PdfLoader.d.ts": "./demo/libs/types/plugins/pdf/PdfLoader.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/DxfParser.d.ts": "./demo/libs/types/core/dxf-parser/DxfParser.d.ts",
|
||||
"demo/libs/types/core/viewers/VRViewer.d.ts": "./demo/libs/types/core/viewers/VRViewer.d.ts",
|
||||
"demo/libs/types/core/viewers/BaseViewer.d.ts": "./demo/libs/types/core/viewers/BaseViewer.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/DxfParser.d.ts": "./demo/libs/types/core/dxf-parser/DxfParser.d.ts",
|
||||
"demo/libs/types/core/viewers/VRViewer.temp.d.ts": "./demo/libs/types/core/viewers/VRViewer.temp.d.ts",
|
||||
"demo/libs/types/core/viewers/BaseViewer.temp.d.ts": "./demo/libs/types/core/viewers/BaseViewer.temp.d.ts",
|
||||
"demo/libs/types/core/Configs.d.ts": "./demo/libs/types/core/Configs.d.ts",
|
||||
"demo/libs/types/core/patches/shaders/shaderLib/gemini_standard.glsl.d.ts": "./demo/libs/types/core/patches/shaders/shaderLib/gemini_standard.glsl.d.ts",
|
||||
"demo/libs/types/plugins/sections/BasePlaneSection.d.ts": "./demo/libs/types/plugins/sections/BasePlaneSection.d.ts",
|
||||
"demo/libs/types/core/patches/shaders/shaderLib/gemini_standard.glsl.d.ts": "./demo/libs/types/core/patches/shaders/shaderLib/gemini_standard.glsl.d.ts",
|
||||
"demo/libs/types/core/helpers/OSnapHelper.d.ts": "./demo/libs/types/core/helpers/OSnapHelper.d.ts",
|
||||
"demo/libs/types/plugins/overview-map/OverviewMapPlugin.d.ts": "./demo/libs/types/plugins/overview-map/OverviewMapPlugin.d.ts",
|
||||
"demo/libs/types/core/utils/Locale.d.ts": "./demo/libs/types/core/utils/Locale.d.ts",
|
||||
@ -26,18 +28,19 @@
|
||||
"demo/libs/types/core/utils/CommonUtils.d.ts": "./demo/libs/types/core/utils/CommonUtils.d.ts",
|
||||
"demo/libs/types/plugins/measure/BaseMeasurement.d.ts": "./demo/libs/types/plugins/measure/BaseMeasurement.d.ts",
|
||||
"demo/libs/types/plugins/measure/MeasurementPlugin.d.ts": "./demo/libs/types/plugins/measure/MeasurementPlugin.d.ts",
|
||||
"demo/libs/types/core/controls/VRControls.d.ts": "./demo/libs/types/core/controls/VRControls.d.ts",
|
||||
"demo/libs/types/plugins/screenshot/ScreenshotPlugin.d.ts": "./demo/libs/types/plugins/screenshot/ScreenshotPlugin.d.ts",
|
||||
"demo/libs/types/core/model/Model2d.d.ts": "./demo/libs/types/core/model/Model2d.d.ts",
|
||||
"demo/libs/types/core/Constants.d.ts": "./demo/libs/types/core/Constants.d.ts",
|
||||
"demo/libs/types/core/input/InputManager.d.ts": "./demo/libs/types/core/input/InputManager.d.ts",
|
||||
"demo/libs/types/core/compare/BaseDxfCompareHelper.d.ts": "./demo/libs/types/core/compare/BaseDxfCompareHelper.d.ts",
|
||||
"demo/libs/types/core/utils/GeometryUtils.d.ts": "./demo/libs/types/core/utils/GeometryUtils.d.ts",
|
||||
"demo/libs/types/plugins/screenshot/ScreenshotPlugin.d.ts": "./demo/libs/types/plugins/screenshot/ScreenshotPlugin.d.ts",
|
||||
"demo/libs/types/plugins/toolbars/Toolbar.d.ts": "./demo/libs/types/plugins/toolbars/Toolbar.d.ts",
|
||||
"demo/libs/types/core/camera-controls/types.d.ts": "./demo/libs/types/core/camera-controls/types.d.ts",
|
||||
"demo/libs/types/plugins/hotpoint/HotpointPlugin.d.ts": "./demo/libs/types/plugins/hotpoint/HotpointPlugin.d.ts",
|
||||
"demo/libs/types/plugins/toolbars/Toolbar.d.ts": "./demo/libs/types/plugins/toolbars/Toolbar.d.ts",
|
||||
"demo/libs/types/core/viewers/VRViewer.d.ts": "./demo/libs/types/core/viewers/VRViewer.d.ts",
|
||||
"demo/libs/types/core/camera-controls/types.d.ts": "./demo/libs/types/core/camera-controls/types.d.ts",
|
||||
"demo/libs/types/core/markup/MarkupManager.d.ts": "./demo/libs/types/core/markup/MarkupManager.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/mleader.d.ts": "./demo/libs/types/core/dxf-parser/entities/mleader.d.ts",
|
||||
"demo/libs/types/core/model/Model2d.d.ts": "./demo/libs/types/core/model/Model2d.d.ts",
|
||||
"demo/libs/types/core/camera/CameraManager.d.ts": "./demo/libs/types/core/camera/CameraManager.d.ts",
|
||||
"demo/libs/types/core/dxf/DxfUtils.d.ts": "./demo/libs/types/core/dxf/DxfUtils.d.ts",
|
||||
"demo/libs/types/core/utils/CoordinateUtils.d.ts": "./demo/libs/types/core/utils/CoordinateUtils.d.ts",
|
||||
"demo/libs/types/core/compare/DxfCompareHelper.d.ts": "./demo/libs/types/core/compare/DxfCompareHelper.d.ts",
|
||||
@ -45,45 +48,49 @@
|
||||
"demo/libs/types/core/dxf-parser/entities/hatch.d.ts": "./demo/libs/types/core/dxf-parser/entities/hatch.d.ts",
|
||||
"demo/libs/types/plugins/sections/AxisPlaneSection.d.ts": "./demo/libs/types/plugins/sections/AxisPlaneSection.d.ts",
|
||||
"demo/libs/types/core/canvas/Drawable.d.ts": "./demo/libs/types/core/canvas/Drawable.d.ts",
|
||||
"demo/libs/types/core/font/FontManager.d.ts": "./demo/libs/types/core/font/FontManager.d.ts",
|
||||
"demo/libs/types/core/viewers/BimViewer.d.ts": "./demo/libs/types/core/viewers/BimViewer.d.ts",
|
||||
"demo/libs/types/core/helpers/LoadingHelper.d.ts": "./demo/libs/types/core/helpers/LoadingHelper.d.ts",
|
||||
"demo/libs/types/core/font/FontManager.d.ts": "./demo/libs/types/core/font/FontManager.d.ts",
|
||||
"demo/libs/types/core/utils/MathUtils.d.ts": "./demo/libs/types/core/utils/MathUtils.d.ts",
|
||||
"demo/libs/types/plugins/sections/BaseSection.d.ts": "./demo/libs/types/plugins/sections/BaseSection.d.ts",
|
||||
"demo/libs/types/core/viewers/ViewerEvent.d.ts": "./demo/libs/types/core/viewers/ViewerEvent.d.ts",
|
||||
"demo/libs/types/plugins/view-cube/ViewCube.d.ts": "./demo/libs/types/plugins/view-cube/ViewCube.d.ts",
|
||||
"demo/libs/types/plugins/sections/BaseSection.d.ts": "./demo/libs/types/plugins/sections/BaseSection.d.ts",
|
||||
"demo/libs/types/core/model/Model3d.d.ts": "./demo/libs/types/core/model/Model3d.d.ts",
|
||||
"demo/libs/types/core/utils/ExportUtils.d.ts": "./demo/libs/types/core/utils/ExportUtils.d.ts",
|
||||
"demo/libs/types/core/viewers/ViewerEvent.d.ts": "./demo/libs/types/core/viewers/ViewerEvent.d.ts",
|
||||
"demo/libs/types/plugins/dat-gui/BimViewerDatGui.d.ts": "./demo/libs/types/plugins/dat-gui/BimViewerDatGui.d.ts",
|
||||
"demo/libs/types/plugins/sections/SectionPlugin.d.ts": "./demo/libs/types/plugins/sections/SectionPlugin.d.ts",
|
||||
"demo/libs/types/plugins/layer-manager/LayerManagerPlugin.d.ts": "./demo/libs/types/plugins/layer-manager/LayerManagerPlugin.d.ts",
|
||||
"demo/libs/types/core/canvas/CanvasRender.d.ts": "./demo/libs/types/core/canvas/CanvasRender.d.ts",
|
||||
"demo/libs/types/plugins/layer-manager/LayerManagerPlugin.d.ts": "./demo/libs/types/plugins/layer-manager/LayerManagerPlugin.d.ts",
|
||||
"demo/libs/types/plugins/skybox/SkyboxPlugin.d.ts": "./demo/libs/types/plugins/skybox/SkyboxPlugin.d.ts",
|
||||
"demo/libs/types/core/pick/PickManager.d.ts": "./demo/libs/types/core/pick/PickManager.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/index.d.ts": "./demo/libs/types/core/dxf-parser/index.d.ts",
|
||||
"demo/libs/types/core/markup/CloudRectWithTextMarkup.d.ts": "./demo/libs/types/core/markup/CloudRectWithTextMarkup.d.ts",
|
||||
"demo/libs/types/core/font/ShxFont.d.ts": "./demo/libs/types/core/font/ShxFont.d.ts",
|
||||
"demo/libs/types/core/webcam/WebCam.d.ts": "./demo/libs/types/core/webcam/WebCam.d.ts",
|
||||
"demo/libs/types/plugins/sections/PickPlaneSection.d.ts": "./demo/libs/types/plugins/sections/PickPlaneSection.d.ts",
|
||||
"demo/libs/types/plugins/view-cube/ViewCubePlugin.d.ts": "./demo/libs/types/plugins/view-cube/ViewCubePlugin.d.ts",
|
||||
"demo/libs/types/core/vr/BaseVRMesh.d.ts": "./demo/libs/types/core/vr/BaseVRMesh.d.ts",
|
||||
"demo/libs/types/core/helpers/BoxSelectHelper.d.ts": "./demo/libs/types/core/helpers/BoxSelectHelper.d.ts",
|
||||
"demo/libs/types/core/utils/MaterialUtils.d.ts": "./demo/libs/types/core/utils/MaterialUtils.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/ParseHelpers.d.ts": "./demo/libs/types/core/dxf-parser/ParseHelpers.d.ts",
|
||||
"demo/libs/types/plugins/view-cube/ViewCubePlugin.d.ts": "./demo/libs/types/plugins/view-cube/ViewCubePlugin.d.ts",
|
||||
"demo/libs/types/core/markup/TextMarkup.d.ts": "./demo/libs/types/core/markup/TextMarkup.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/ParseHelpers.d.ts": "./demo/libs/types/core/dxf-parser/ParseHelpers.d.ts",
|
||||
"demo/libs/types/core/text-texture/TextTexture.d.ts": "./demo/libs/types/core/text-texture/TextTexture.d.ts",
|
||||
"demo/libs/types/export.doc.d.ts": "./demo/libs/types/export.doc.d.ts",
|
||||
"demo/libs/types/plugins/measure/BaseMeasureDrawable.d.ts": "./demo/libs/types/plugins/measure/BaseMeasureDrawable.d.ts",
|
||||
"demo/libs/types/plugins/sections/ViewportSection.d.ts": "./demo/libs/types/plugins/sections/ViewportSection.d.ts",
|
||||
"demo/libs/types/plugins/pdf/PdfLoaderPlugin.d.ts": "./demo/libs/types/plugins/pdf/PdfLoaderPlugin.d.ts",
|
||||
"demo/libs/types/plugins/explode/ExplodePlugin.d.ts": "./demo/libs/types/plugins/explode/ExplodePlugin.d.ts",
|
||||
"demo/libs/types/plugins/measure/BaseMeasureDrawable.d.ts": "./demo/libs/types/plugins/measure/BaseMeasureDrawable.d.ts",
|
||||
"demo/libs/types/plugins/overview-map/TextDrawable.d.ts": "./demo/libs/types/plugins/overview-map/TextDrawable.d.ts",
|
||||
"demo/libs/types/core/vr/VRCube24Faces.d.ts": "./demo/libs/types/core/vr/VRCube24Faces.d.ts",
|
||||
"demo/libs/types/plugins/bottom-bar/BottomBarPlugin.d.ts": "./demo/libs/types/plugins/bottom-bar/BottomBarPlugin.d.ts",
|
||||
"demo/libs/types/core/vr/BaseVRMesh.d.ts": "./demo/libs/types/core/vr/BaseVRMesh.d.ts",
|
||||
"demo/libs/types/export.doc.d.ts": "./demo/libs/types/export.doc.d.ts",
|
||||
"demo/libs/types/plugins/axis-gizmo/AxisGizmoPlugin.d.ts": "./demo/libs/types/plugins/axis-gizmo/AxisGizmoPlugin.d.ts",
|
||||
"demo/libs/types/plugins/ground-shaow/GroundShadowPlugin.d.ts": "./demo/libs/types/plugins/ground-shaow/GroundShadowPlugin.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/viewport.d.ts": "./demo/libs/types/core/dxf-parser/entities/viewport.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/geomtry.d.ts": "./demo/libs/types/core/dxf-parser/entities/geomtry.d.ts",
|
||||
"demo/libs/types/core/effect/EffectManager.d.ts": "./demo/libs/types/core/effect/EffectManager.d.ts",
|
||||
"demo/libs/types/plugins/explode/ObjectExploder.d.ts": "./demo/libs/types/plugins/explode/ObjectExploder.d.ts",
|
||||
"demo/libs/types/plugins/sections/SectionGizmo.d.ts": "./demo/libs/types/plugins/sections/SectionGizmo.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/geomtry.d.ts": "./demo/libs/types/core/dxf-parser/entities/geomtry.d.ts",
|
||||
"demo/libs/types/core/geometry-offset/Offset.d.ts": "./demo/libs/types/core/geometry-offset/Offset.d.ts",
|
||||
"demo/libs/types/core/vr/VRCube24Faces.d.ts": "./demo/libs/types/core/vr/VRCube24Faces.d.ts",
|
||||
"demo/libs/types/plugins/sections/SectionGizmo.d.ts": "./demo/libs/types/plugins/sections/SectionGizmo.d.ts",
|
||||
"demo/libs/types/plugins/sections/ObjectsBoxSection.d.ts": "./demo/libs/types/plugins/sections/ObjectsBoxSection.d.ts",
|
||||
"demo/libs/types/plugins/nav-cube/NavCubePlugin.d.ts": "./demo/libs/types/plugins/nav-cube/NavCubePlugin.d.ts",
|
||||
"demo/libs/types/plugins/overview-map/ImageDrawable.d.ts": "./demo/libs/types/plugins/overview-map/ImageDrawable.d.ts",
|
||||
@ -91,178 +98,188 @@
|
||||
"demo/libs/types/plugins/ground-grid/GroundGridPlugin.d.ts": "./demo/libs/types/plugins/ground-grid/GroundGridPlugin.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/table.d.ts": "./demo/libs/types/core/dxf-parser/entities/table.d.ts",
|
||||
"demo/libs/types/core/font/BaseFont.d.ts": "./demo/libs/types/core/font/BaseFont.d.ts",
|
||||
"demo/libs/types/core/scene/SceneManager.d.ts": "./demo/libs/types/core/scene/SceneManager.d.ts",
|
||||
"demo/libs/types/core/helpers/ControlsHelper.d.ts": "./demo/libs/types/core/helpers/ControlsHelper.d.ts",
|
||||
"demo/libs/types/core/camera-controls/EventDispatcher.d.ts": "./demo/libs/types/core/camera-controls/EventDispatcher.d.ts",
|
||||
"demo/libs/types/plugins/measure/AreaMeasurement.d.ts": "./demo/libs/types/plugins/measure/AreaMeasurement.d.ts",
|
||||
"demo/libs/types/plugins/sections/BaseBoxSection.d.ts": "./demo/libs/types/plugins/sections/BaseBoxSection.d.ts",
|
||||
"demo/libs/types/core/font/shx/util/BitConverter.d.ts": "./demo/libs/types/core/font/shx/util/BitConverter.d.ts",
|
||||
"demo/libs/types/core/markup/BaseMarkup.d.ts": "./demo/libs/types/core/markup/BaseMarkup.d.ts",
|
||||
"demo/libs/types/plugins/sections/BaseBoxSection.d.ts": "./demo/libs/types/plugins/sections/BaseBoxSection.d.ts",
|
||||
"demo/libs/types/plugins/toolbars/DxfViewerToolbarPlugin.d.ts": "./demo/libs/types/plugins/toolbars/DxfViewerToolbarPlugin.d.ts",
|
||||
"demo/libs/types/core/indexeddb/BaseTable.d.ts": "./demo/libs/types/core/indexeddb/BaseTable.d.ts",
|
||||
"demo/libs/types/core/dxf/dxfom-mtext.d.ts": "./demo/libs/types/core/dxf/dxfom-mtext.d.ts",
|
||||
"demo/libs/types/core/controls/CameraControlsEx.d.ts": "./demo/libs/types/core/controls/CameraControlsEx.d.ts",
|
||||
"demo/libs/types/core/utils/SceneUtils.d.ts": "./demo/libs/types/core/utils/SceneUtils.d.ts",
|
||||
"demo/libs/types/core/dxf/dxfom-mtext.d.ts": "./demo/libs/types/core/dxf/dxfom-mtext.d.ts",
|
||||
"demo/libs/types/plugins/measure/DistanceMeasurement.d.ts": "./demo/libs/types/plugins/measure/DistanceMeasurement.d.ts",
|
||||
"demo/libs/types/core/dxf/DxfObject.d.ts": "./demo/libs/types/core/dxf/DxfObject.d.ts",
|
||||
"demo/libs/types/plugins/measure/DistanceMeasurement.d.ts": "./demo/libs/types/plugins/measure/DistanceMeasurement.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/DxfTextReader.d.ts": "./demo/libs/types/core/dxf-parser/DxfTextReader.d.ts",
|
||||
"demo/libs/types/core/canvas/DrawableList.d.ts": "./demo/libs/types/core/canvas/DrawableList.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/image.d.ts": "./demo/libs/types/core/dxf-parser/entities/image.d.ts",
|
||||
"demo/libs/types/core/model/Constants.d.ts": "./demo/libs/types/core/model/Constants.d.ts",
|
||||
"demo/libs/types/plugins/local-model-uploader/LocalModelUploader.d.ts": "./demo/libs/types/plugins/local-model-uploader/LocalModelUploader.d.ts",
|
||||
"demo/libs/types/core/markup/LeaderLineMarkup.d.ts": "./demo/libs/types/core/markup/LeaderLineMarkup.d.ts",
|
||||
"demo/libs/types/components/progress-bar/ProgressBar.d.ts": "./demo/libs/types/components/progress-bar/ProgressBar.d.ts",
|
||||
"demo/libs/types/core/markup/LeaderLineMarkup.d.ts": "./demo/libs/types/core/markup/LeaderLineMarkup.d.ts",
|
||||
"demo/libs/types/core/helpers/MobileTouchHelperDrawable.d.ts": "./demo/libs/types/core/helpers/MobileTouchHelperDrawable.d.ts",
|
||||
"demo/libs/types/core/camera-controls/utils/math-utils.d.ts": "./demo/libs/types/core/camera-controls/utils/math-utils.d.ts",
|
||||
"demo/libs/types/core/utils/Event.d.ts": "./demo/libs/types/core/utils/Event.d.ts",
|
||||
"demo/libs/types/core/helpers/PickMarkupHelper.d.ts": "./demo/libs/types/core/helpers/PickMarkupHelper.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/objects/common.d.ts": "./demo/libs/types/core/dxf-parser/objects/common.d.ts",
|
||||
"demo/libs/types/core/camera-controls/utils/math-utils.d.ts": "./demo/libs/types/core/camera-controls/utils/math-utils.d.ts",
|
||||
"demo/libs/types/components/settings/ProjectSettingsDef.d.ts": "./demo/libs/types/components/settings/ProjectSettingsDef.d.ts",
|
||||
"demo/libs/types/core/helpers/PickMarkupHelper.d.ts": "./demo/libs/types/core/helpers/PickMarkupHelper.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/attdef.d.ts": "./demo/libs/types/core/dxf-parser/entities/attdef.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/attrib.d.ts": "./demo/libs/types/core/dxf-parser/entities/attrib.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/objects/common.d.ts": "./demo/libs/types/core/dxf-parser/objects/common.d.ts",
|
||||
"demo/libs/types/core/indexeddb/FontDataTable.d.ts": "./demo/libs/types/core/indexeddb/FontDataTable.d.ts",
|
||||
"demo/libs/types/plugins/pdf/PdfLoaderPlugin.d.ts": "./demo/libs/types/plugins/pdf/PdfLoaderPlugin.d.ts",
|
||||
"demo/libs/types/plugins/sections/SectionPlaneMesh.d.ts": "./demo/libs/types/plugins/sections/SectionPlaneMesh.d.ts",
|
||||
"demo/libs/types/core/shp-js/ShpThree.d.ts": "./demo/libs/types/core/shp-js/ShpThree.d.ts",
|
||||
"demo/libs/types/plugins/context-menu/Constants.d.ts": "./demo/libs/types/plugins/context-menu/Constants.d.ts",
|
||||
"demo/libs/types/core/shp-js/ShpThree.d.ts": "./demo/libs/types/core/shp-js/ShpThree.d.ts",
|
||||
"demo/libs/types/core/utils/index.d.ts": "./demo/libs/types/core/utils/index.d.ts",
|
||||
"demo/libs/types/plugins/toolbars/BimViewerToolbarPlugin.d.ts": "./demo/libs/types/plugins/toolbars/BimViewerToolbarPlugin.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/objects/spatialfilter.d.ts": "./demo/libs/types/core/dxf-parser/objects/spatialfilter.d.ts",
|
||||
"demo/libs/types/plugins/context-menu/ContextMenuPlugin.d.ts": "./demo/libs/types/plugins/context-menu/ContextMenuPlugin.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/objects/spatialfilter.d.ts": "./demo/libs/types/core/dxf-parser/objects/spatialfilter.d.ts",
|
||||
"demo/libs/types/core/viewers/Plugin.d.ts": "./demo/libs/types/core/viewers/Plugin.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/objects/layout.d.ts": "./demo/libs/types/core/dxf-parser/objects/layout.d.ts",
|
||||
"demo/libs/types/core/components/ProgressBar.d.ts": "./demo/libs/types/core/components/ProgressBar.d.ts",
|
||||
"demo/libs/types/plugins/measure/AngleMeasurement.d.ts": "./demo/libs/types/plugins/measure/AngleMeasurement.d.ts",
|
||||
"demo/libs/types/plugins/measure/CoordinateMeasurement.d.ts": "./demo/libs/types/plugins/measure/CoordinateMeasurement.d.ts",
|
||||
"demo/libs/types/plugins/sections/GlobalPlaneSection.d.ts": "./demo/libs/types/plugins/sections/GlobalPlaneSection.d.ts",
|
||||
"demo/libs/types/plugins/measure/CoordinateMeasurement.d.ts": "./demo/libs/types/plugins/measure/CoordinateMeasurement.d.ts",
|
||||
"demo/libs/types/core/canvas/Constants.d.ts": "./demo/libs/types/core/canvas/Constants.d.ts",
|
||||
"demo/libs/types/core/font/shx/TextShape.d.ts": "./demo/libs/types/core/font/shx/TextShape.d.ts",
|
||||
"demo/libs/types/core/utils/Viewer3DUtils.d.ts": "./demo/libs/types/core/utils/Viewer3DUtils.d.ts",
|
||||
"demo/libs/types/core/font/shx/TextShape.d.ts": "./demo/libs/types/core/font/shx/TextShape.d.ts",
|
||||
"demo/libs/types/plugins/overview-map/OverviewMapDrawable.d.ts": "./demo/libs/types/plugins/overview-map/OverviewMapDrawable.d.ts",
|
||||
"demo/libs/types/core/indexeddb/IndexedDbManager.d.ts": "./demo/libs/types/core/indexeddb/IndexedDbManager.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/polyline.d.ts": "./demo/libs/types/core/dxf-parser/entities/polyline.d.ts",
|
||||
"demo/libs/types/components/dxf-layout-bar/DxfLayoutBar.d.ts": "./demo/libs/types/components/dxf-layout-bar/DxfLayoutBar.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/polyline.d.ts": "./demo/libs/types/core/dxf-parser/entities/polyline.d.ts",
|
||||
"demo/libs/types/core/helpers/InstantiateHelper.d.ts": "./demo/libs/types/core/helpers/InstantiateHelper.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/objects/imagedef.d.ts": "./demo/libs/types/core/dxf-parser/objects/imagedef.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/spline.d.ts": "./demo/libs/types/core/dxf-parser/entities/spline.d.ts",
|
||||
"demo/libs/types/core/helpers/InstantiateHelper.d.ts": "./demo/libs/types/core/helpers/InstantiateHelper.d.ts",
|
||||
"demo/libs/types/components/pop-panel/AxisSectionPopPanel.d.ts": "./demo/libs/types/components/pop-panel/AxisSectionPopPanel.d.ts",
|
||||
"demo/libs/types/plugins/sections/ObjectsPlaneSection.d.ts": "./demo/libs/types/plugins/sections/ObjectsPlaneSection.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/dimension.d.ts": "./demo/libs/types/core/dxf-parser/entities/dimension.d.ts",
|
||||
"demo/libs/types/plugins/measure/AngleMeasureDrawable.d.ts": "./demo/libs/types/plugins/measure/AngleMeasureDrawable.d.ts",
|
||||
"demo/libs/types/core/helpers/ZoomToRectHelper.d.ts": "./demo/libs/types/core/helpers/ZoomToRectHelper.d.ts",
|
||||
"demo/libs/types/plugins/measure/AreaMeasureDrawable.d.ts": "./demo/libs/types/plugins/measure/AreaMeasureDrawable.d.ts",
|
||||
"demo/libs/types/components/pop-panel/AxisSectionPopPanel.d.ts": "./demo/libs/types/components/pop-panel/AxisSectionPopPanel.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/lwpolyline.d.ts": "./demo/libs/types/core/dxf-parser/entities/lwpolyline.d.ts",
|
||||
"demo/libs/types/core/components/Container.d.ts": "./demo/libs/types/core/components/Container.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/leader.d.ts": "./demo/libs/types/core/dxf-parser/entities/leader.d.ts",
|
||||
"demo/libs/types/components/pop-panel/PickSectionPopPanel.d.ts": "./demo/libs/types/components/pop-panel/PickSectionPopPanel.d.ts",
|
||||
"demo/libs/types/plugins/measure/AngleMeasureDrawable.d.ts": "./demo/libs/types/plugins/measure/AngleMeasureDrawable.d.ts",
|
||||
"demo/libs/types/plugins/measure/AreaMeasureDrawable.d.ts": "./demo/libs/types/plugins/measure/AreaMeasureDrawable.d.ts",
|
||||
"demo/libs/types/core/helpers/BinaryReader.d.ts": "./demo/libs/types/core/helpers/BinaryReader.d.ts",
|
||||
"demo/libs/types/plugins/overview-map/LineDrawable.d.ts": "./demo/libs/types/plugins/overview-map/LineDrawable.d.ts",
|
||||
"demo/libs/types/components/pop-panel/PickSectionPopPanel.d.ts": "./demo/libs/types/components/pop-panel/PickSectionPopPanel.d.ts",
|
||||
"demo/libs/types/core/helpers/ZoomToRectHelper.d.ts": "./demo/libs/types/core/helpers/ZoomToRectHelper.d.ts",
|
||||
"demo/libs/types/plugins/measure/DistanceMeasureDrawable.d.ts": "./demo/libs/types/plugins/measure/DistanceMeasureDrawable.d.ts",
|
||||
"index.html": "./index.html",
|
||||
"demo/libs/types/core/utils/ColorUtils.d.ts": "./demo/libs/types/core/utils/ColorUtils.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/vertex.d.ts": "./demo/libs/types/core/dxf-parser/entities/vertex.d.ts",
|
||||
"demo/libs/types/core/font/shx/ShxParser.d.ts": "./demo/libs/types/core/font/shx/ShxParser.d.ts",
|
||||
"demo/libs/types/plugins/local-model-uploader/LocalDxfUploader.d.ts": "./demo/libs/types/plugins/local-model-uploader/LocalDxfUploader.d.ts",
|
||||
"demo/libs/types/core/dxf/dxfom-text.d.ts": "./demo/libs/types/core/dxf/dxfom-text.d.ts",
|
||||
"demo/libs/types/core/utils/EdgeUtils.d.ts": "./demo/libs/types/core/utils/EdgeUtils.d.ts",
|
||||
"demo/libs/types/core/indexeddb/ImageDataTable.d.ts": "./demo/libs/types/core/indexeddb/ImageDataTable.d.ts",
|
||||
"demo/libs/types/core/geometry-offset/Edge.d.ts": "./demo/libs/types/core/geometry-offset/Edge.d.ts",
|
||||
"index.html": "./index.html",
|
||||
"demo/libs/types/core/utils/EdgeUtils.d.ts": "./demo/libs/types/core/utils/EdgeUtils.d.ts",
|
||||
"demo/libs/types/plugins/index.d.ts": "./demo/libs/types/plugins/index.d.ts",
|
||||
"demo/libs/types/core/utils/SectionUtils.d.ts": "./demo/libs/types/core/utils/SectionUtils.d.ts",
|
||||
"demo/libs/types/plugins/stats/StatsPlugin.d.ts": "./demo/libs/types/plugins/stats/StatsPlugin.d.ts",
|
||||
"demo/libs/types/core/indexeddb/DxfDataTable.d.ts": "./demo/libs/types/core/indexeddb/DxfDataTable.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/insert.d.ts": "./demo/libs/types/core/dxf-parser/entities/insert.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/ole2frame.d.ts": "./demo/libs/types/core/dxf-parser/entities/ole2frame.d.ts",
|
||||
"demo/libs/types/core/indexeddb/DxfDataTable.d.ts": "./demo/libs/types/core/indexeddb/DxfDataTable.d.ts",
|
||||
"demo/libs/types/core/utils/SectionUtils.d.ts": "./demo/libs/types/core/utils/SectionUtils.d.ts",
|
||||
"demo/libs/types/components/tool-tip/Tooltip.d.ts": "./demo/libs/types/components/tool-tip/Tooltip.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/objects/dictionary.d.ts": "./demo/libs/types/core/dxf-parser/objects/dictionary.d.ts",
|
||||
"demo/libs/types/core/utils/UnitConversionUtils.d.ts": "./demo/libs/types/core/utils/UnitConversionUtils.d.ts",
|
||||
"demo/libs/types/core/helpers/RafHelper.d.ts": "./demo/libs/types/core/helpers/RafHelper.d.ts",
|
||||
"demo/libs/types/core/font/MeshFont.d.ts": "./demo/libs/types/core/font/MeshFont.d.ts",
|
||||
"demo/libs/types/core/utils/CSS2DObjectUtils.d.ts": "./demo/libs/types/core/utils/CSS2DObjectUtils.d.ts",
|
||||
"demo/libs/types/core/compare/CompareDrawable.d.ts": "./demo/libs/types/core/compare/CompareDrawable.d.ts",
|
||||
"demo/libs/types/core/utils/UnitConversionUtils.d.ts": "./demo/libs/types/core/utils/UnitConversionUtils.d.ts",
|
||||
"demo/libs/types/core/utils/CSS2DObjectUtils.d.ts": "./demo/libs/types/core/utils/CSS2DObjectUtils.d.ts",
|
||||
"demo/libs/types/core/helpers/MeshBvhHelper.d.ts": "./demo/libs/types/core/helpers/MeshBvhHelper.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/mtext.d.ts": "./demo/libs/types/core/dxf-parser/entities/mtext.d.ts",
|
||||
"demo/libs/types/core/undo-redo/UndoRedoManager.d.ts": "./demo/libs/types/core/undo-redo/UndoRedoManager.d.ts",
|
||||
"demo/libs/types/core/markup/ArrowMarkup.d.ts": "./demo/libs/types/core/markup/ArrowMarkup.d.ts",
|
||||
"demo/libs/types/core/utils/TextureUtils.d.ts": "./demo/libs/types/core/utils/TextureUtils.d.ts",
|
||||
"demo/libs/types/core/undo-redo/UndoRedoManager.d.ts": "./demo/libs/types/core/undo-redo/UndoRedoManager.d.ts",
|
||||
"demo/libs/types/core/index.d.ts": "./demo/libs/types/core/index.d.ts",
|
||||
"demo/libs/types/core/materials/GeminiStandardMaterial.d.ts": "./demo/libs/types/core/materials/GeminiStandardMaterial.d.ts",
|
||||
"demo/libs/types/plugins/toolbars/MarkupToolbar.d.ts": "./demo/libs/types/plugins/toolbars/MarkupToolbar.d.ts",
|
||||
"demo/libs/types/core/vr/VRCube.d.ts": "./demo/libs/types/core/vr/VRCube.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/text.d.ts": "./demo/libs/types/core/dxf-parser/entities/text.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/arc.d.ts": "./demo/libs/types/core/dxf-parser/entities/arc.d.ts",
|
||||
"demo/libs/types/core/patches/shaders/shaderChunk/outline_bc_pars_fragment.glsl.d.ts": "./demo/libs/types/core/patches/shaders/shaderChunk/outline_bc_pars_fragment.glsl.d.ts",
|
||||
"demo/libs/types/core/workers/GenerateMeshBvhWorker.d.ts": "./demo/libs/types/core/workers/GenerateMeshBvhWorker.d.ts",
|
||||
"demo/libs/types/plugins/axis-gizmo/CoordinateAxes.d.ts": "./demo/libs/types/plugins/axis-gizmo/CoordinateAxes.d.ts",
|
||||
"demo/libs/types/core/utils/SVGObjectUtils.d.ts": "./demo/libs/types/core/utils/SVGObjectUtils.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/ellipse.d.ts": "./demo/libs/types/core/dxf-parser/entities/ellipse.d.ts",
|
||||
"demo/libs/types/core/markup/Constants.d.ts": "./demo/libs/types/core/markup/Constants.d.ts",
|
||||
"demo/libs/types/core/patches/shaders/shaderChunk/outline_bc_pars_fragment.glsl.d.ts": "./demo/libs/types/core/patches/shaders/shaderChunk/outline_bc_pars_fragment.glsl.d.ts",
|
||||
"demo/libs/types/core/markup/CircleMarkup.d.ts": "./demo/libs/types/core/markup/CircleMarkup.d.ts",
|
||||
"demo/libs/types/core/utils/DeviceUtils.d.ts": "./demo/libs/types/core/utils/DeviceUtils.d.ts",
|
||||
"demo/libs/types/plugins/measure/CoordinateMeasureDrawable.d.ts": "./demo/libs/types/plugins/measure/CoordinateMeasureDrawable.d.ts",
|
||||
"demo/libs/types/plugins/skybox/GradientColorSkybox.d.ts": "./demo/libs/types/plugins/skybox/GradientColorSkybox.d.ts",
|
||||
"demo/libs/types/core/markup/CloudLineMarkup.d.ts": "./demo/libs/types/core/markup/CloudLineMarkup.d.ts",
|
||||
"demo/libs/types/plugins/skybox/GradientColorSkybox.d.ts": "./demo/libs/types/plugins/skybox/GradientColorSkybox.d.ts",
|
||||
"demo/libs/types/core/markup/EllipseMarkup.d.ts": "./demo/libs/types/core/markup/EllipseMarkup.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/objects/sortentstable.d.ts": "./demo/libs/types/core/dxf-parser/objects/sortentstable.d.ts",
|
||||
"demo/libs/types/core/markup/PolylineMarkup.d.ts": "./demo/libs/types/core/markup/PolylineMarkup.d.ts",
|
||||
"demo/libs/types/core/Units.d.ts": "./demo/libs/types/core/Units.d.ts",
|
||||
"demo/libs/types/core/vr/VRCube.d.ts": "./demo/libs/types/core/vr/VRCube.d.ts",
|
||||
"demo/libs/types/core/markup/PolylineMarkup.d.ts": "./demo/libs/types/core/markup/PolylineMarkup.d.ts",
|
||||
"demo/libs/types/core/vr/ImageManager.d.ts": "./demo/libs/types/core/vr/ImageManager.d.ts",
|
||||
"demo/libs/types/core/markup/CloudRectMarkup.d.ts": "./demo/libs/types/core/markup/CloudRectMarkup.d.ts",
|
||||
"demo/libs/types/core/helpers/ObjectPixelSizeHelper.d.ts": "./demo/libs/types/core/helpers/ObjectPixelSizeHelper.d.ts",
|
||||
"demo/libs/types/core/controls/PlanControl.d.ts": "./demo/libs/types/core/controls/PlanControl.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/objects/xrecord.d.ts": "./demo/libs/types/core/dxf-parser/objects/xrecord.d.ts",
|
||||
"demo/libs/types/core/dxf/HatchPatternShaders.d.ts": "./demo/libs/types/core/dxf/HatchPatternShaders.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/circle.d.ts": "./demo/libs/types/core/dxf-parser/entities/circle.d.ts",
|
||||
"demo/libs/types/core/dxf/LinePatternShaders.d.ts": "./demo/libs/types/core/dxf/LinePatternShaders.d.ts",
|
||||
"demo/libs/types/core/utils/SimplifyUtils.d.ts": "./demo/libs/types/core/utils/SimplifyUtils.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/circle.d.ts": "./demo/libs/types/core/dxf-parser/entities/circle.d.ts",
|
||||
"demo/libs/types/core/model/Model.d.ts": "./demo/libs/types/core/model/Model.d.ts",
|
||||
"demo/libs/types/core/dxf/LinePatternShaders.d.ts": "./demo/libs/types/core/dxf/LinePatternShaders.d.ts",
|
||||
"demo/libs/types/core/compare/DxfCompareMarkupManager.d.ts": "./demo/libs/types/core/compare/DxfCompareMarkupManager.d.ts",
|
||||
"demo/libs/types/core/markup/RectMarkup.d.ts": "./demo/libs/types/core/markup/RectMarkup.d.ts",
|
||||
"demo/libs/types/core/model/Model.d.ts": "./demo/libs/types/core/model/Model.d.ts",
|
||||
"demo/libs/types/core/helpers/index.d.ts": "./demo/libs/types/core/helpers/index.d.ts",
|
||||
"demo/libs/types/core/markup/XMarkup.d.ts": "./demo/libs/types/core/markup/XMarkup.d.ts",
|
||||
"demo/libs/types/core/markup/index.d.ts": "./demo/libs/types/core/markup/index.d.ts",
|
||||
"demo/libs/types/core/indexeddb/AnnotationTable.d.ts": "./demo/libs/types/core/indexeddb/AnnotationTable.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/3dface.d.ts": "./demo/libs/types/core/dxf-parser/entities/3dface.d.ts",
|
||||
"demo/libs/types/components/pop-panel/PopPanel.d.ts": "./demo/libs/types/components/pop-panel/PopPanel.d.ts",
|
||||
"demo/libs/types/core/indexeddb/ViewpointTable.d.ts": "./demo/libs/types/core/indexeddb/ViewpointTable.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/3dface.d.ts": "./demo/libs/types/core/dxf-parser/entities/3dface.d.ts",
|
||||
"demo/libs/types/core/controls/VRControl.d.ts": "./demo/libs/types/core/controls/VRControl.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/DxfBinaryReader.d.ts": "./demo/libs/types/core/dxf-parser/DxfBinaryReader.d.ts",
|
||||
"demo/libs/types/core/controls/OrbitControl.d.ts": "./demo/libs/types/core/controls/OrbitControl.d.ts",
|
||||
"demo/libs/types/core/vr/VRSphere.d.ts": "./demo/libs/types/core/vr/VRSphere.d.ts",
|
||||
"demo/libs/types/core/undo-redo/UpdateMarkupCommand.d.ts": "./demo/libs/types/core/undo-redo/UpdateMarkupCommand.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/AutoCadColorIndex.d.ts": "./demo/libs/types/core/dxf-parser/AutoCadColorIndex.d.ts",
|
||||
"demo/libs/types/core/patches/shaders/shaderChunk/outine_bc_vertex.glsl.d.ts": "./demo/libs/types/core/patches/shaders/shaderChunk/outine_bc_vertex.glsl.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/point.d.ts": "./demo/libs/types/core/dxf-parser/entities/point.d.ts",
|
||||
"demo/libs/types/plugins/sections/Section.constants.d.ts": "./demo/libs/types/plugins/sections/Section.constants.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/point.d.ts": "./demo/libs/types/core/dxf-parser/entities/point.d.ts",
|
||||
"demo/libs/types/core/helpers/index.d.ts": "./demo/libs/types/core/helpers/index.d.ts",
|
||||
"demo/libs/types/core/patches/shaders/shaderChunk/outine_bc_vertex.glsl.d.ts": "./demo/libs/types/core/patches/shaders/shaderChunk/outine_bc_vertex.glsl.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/region.d.ts": "./demo/libs/types/core/dxf-parser/entities/region.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/solid.d.ts": "./demo/libs/types/core/dxf-parser/entities/solid.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/xline.d.ts": "./demo/libs/types/core/dxf-parser/entities/xline.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/line.d.ts": "./demo/libs/types/core/dxf-parser/entities/line.d.ts",
|
||||
"demo/libs/types/core/shp-js/SHPLoader.d.ts": "./demo/libs/types/core/shp-js/SHPLoader.d.ts",
|
||||
"demo/libs/types/core/dxf/bspline.d.ts": "./demo/libs/types/core/dxf/bspline.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/line.d.ts": "./demo/libs/types/core/dxf-parser/entities/line.d.ts",
|
||||
"demo/libs/types/plugins/nav-cube/NavCube.d.ts": "./demo/libs/types/plugins/nav-cube/NavCube.d.ts",
|
||||
"demo/libs/types/core/markup/DotMarkup.d.ts": "./demo/libs/types/core/markup/DotMarkup.d.ts",
|
||||
"demo/libs/types/core/dxf/bspline.d.ts": "./demo/libs/types/core/dxf/bspline.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/ray.d.ts": "./demo/libs/types/core/dxf-parser/entities/ray.d.ts",
|
||||
"demo/libs/types/core/markup/DotMarkup.d.ts": "./demo/libs/types/core/markup/DotMarkup.d.ts",
|
||||
"demo/libs/types/core/undo-redo/RemoveMarkupCommand.d.ts": "./demo/libs/types/core/undo-redo/RemoveMarkupCommand.d.ts",
|
||||
"demo/libs/types/core/undo-redo/AddMarkupCommand.d.ts": "./demo/libs/types/core/undo-redo/AddMarkupCommand.d.ts",
|
||||
"demo/libs/types/core/dxf/DxfConstants.d.ts": "./demo/libs/types/core/dxf/DxfConstants.d.ts",
|
||||
"demo/libs/types/core/dxf/index.d.ts": "./demo/libs/types/core/dxf/index.d.ts",
|
||||
"demo/libs/types/core/undo-redo/RemoveMeasurementCommand.d.ts": "./demo/libs/types/core/undo-redo/RemoveMeasurementCommand.d.ts",
|
||||
"demo/libs/types/core/undo-redo/AddMeasurementCommand.d.ts": "./demo/libs/types/core/undo-redo/AddMeasurementCommand.d.ts",
|
||||
"demo/libs/types/plugins/local-model-uploader/LocalImageUploader.d.ts": "./demo/libs/types/plugins/local-model-uploader/LocalImageUploader.d.ts",
|
||||
"demo/libs/types/core/vr/VRSphere.d.ts": "./demo/libs/types/core/vr/VRSphere.d.ts",
|
||||
"demo/libs/types/core/undo-redo/AddMeasurementCommand.d.ts": "./demo/libs/types/core/undo-redo/AddMeasurementCommand.d.ts",
|
||||
"demo/libs/types/core/components/Spinner.d.ts": "./demo/libs/types/core/components/Spinner.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/DxfBaseReader.d.ts": "./demo/libs/types/core/dxf-parser/DxfBaseReader.d.ts",
|
||||
"demo/libs/types/core/shp-js/BitView.d.ts": "./demo/libs/types/core/shp-js/BitView.d.ts",
|
||||
"demo/libs/types/core/dxf-parser/entities/seqend.d.ts": "./demo/libs/types/core/dxf-parser/entities/seqend.d.ts",
|
||||
"demo/libs/types/core/patches/shaders/shaderChunk/outline_bc_fragment.glsl.d.ts": "./demo/libs/types/core/patches/shaders/shaderChunk/outline_bc_fragment.glsl.d.ts",
|
||||
"demo/libs/types/core/font/shx/gbk/index.d.ts": "./demo/libs/types/core/font/shx/gbk/index.d.ts",
|
||||
"demo/libs/types/core/undo-redo/index.d.ts": "./demo/libs/types/core/undo-redo/index.d.ts",
|
||||
"demo/libs/types/core/font/shx/gbk/index.d.ts": "./demo/libs/types/core/font/shx/gbk/index.d.ts",
|
||||
"demo/libs/types/plugins/local-model-uploader/IUploader.d.ts": "./demo/libs/types/plugins/local-model-uploader/IUploader.d.ts",
|
||||
"demo/libs/types/core/utils/PolygonUtils.d.ts": "./demo/libs/types/core/utils/PolygonUtils.d.ts",
|
||||
"demo/libs/types/core/viewers/index.d.ts": "./demo/libs/types/core/viewers/index.d.ts",
|
||||
"demo/libs/types/index.d.ts": "./demo/libs/types/index.d.ts",
|
||||
"demo/libs/types/plugins/toolbars/Toolbar.config.d.ts": "./demo/libs/types/plugins/toolbars/Toolbar.config.d.ts",
|
||||
"demo/libs/types/core/controls/Control.d.ts": "./demo/libs/types/core/controls/Control.d.ts",
|
||||
"demo/libs/types/core/indexeddb/index.d.ts": "./demo/libs/types/core/indexeddb/index.d.ts",
|
||||
"demo/libs/types/core/utils/LogUtils.d.ts": "./demo/libs/types/core/utils/LogUtils.d.ts",
|
||||
"demo/libs/types/plugins/toolbars/index.d.ts": "./demo/libs/types/plugins/toolbars/index.d.ts",
|
||||
"demo/libs/types/core/utils/FpsUtils.d.ts": "./demo/libs/types/core/utils/FpsUtils.d.ts",
|
||||
"demo/libs/types/core/shp-js/Shp.d.ts": "./demo/libs/types/core/shp-js/Shp.d.ts",
|
||||
"demo/libs/types/core/viewers/index.d.ts": "./demo/libs/types/core/viewers/index.d.ts",
|
||||
"demo/libs/types/core/font/shx/Shx.constants.d.ts": "./demo/libs/types/core/font/shx/Shx.constants.d.ts",
|
||||
"demo/libs/types/plugins/toolbars/index.d.ts": "./demo/libs/types/plugins/toolbars/index.d.ts",
|
||||
"demo/libs/types/core/camera-controls/utils/notSupportedInOrthographicCamera.d.ts": "./demo/libs/types/core/camera-controls/utils/notSupportedInOrthographicCamera.d.ts",
|
||||
"demo/libs/types/core/indexeddb/index.d.ts": "./demo/libs/types/core/indexeddb/index.d.ts",
|
||||
"demo/libs/types/core/camera-controls/utils/extractClientCoordFromEvent.d.ts": "./demo/libs/types/core/camera-controls/utils/extractClientCoordFromEvent.d.ts",
|
||||
"demo/libs/types/core/utils/CancelablePromise.d.ts": "./demo/libs/types/core/utils/CancelablePromise.d.ts",
|
||||
"demo/libs/types/core/camera-controls/utils/extractClientCoordFromEvent.d.ts": "./demo/libs/types/core/camera-controls/utils/extractClientCoordFromEvent.d.ts",
|
||||
"demo/libs/types/core/VersionManager.d.ts": "./demo/libs/types/core/VersionManager.d.ts",
|
||||
"demo/libs/types/core/viewers/Constants.d.ts": "./demo/libs/types/core/viewers/Constants.d.ts",
|
||||
"demo/libs/types/plugins/overview-map/index.d.ts": "./demo/libs/types/plugins/overview-map/index.d.ts",
|
||||
"demo/libs/types/plugins/sections/index.d.ts": "./demo/libs/types/plugins/sections/index.d.ts",
|
||||
"demo/libs/types/core/patches/shaders/shaderChunk/outline_bc_pars_vertex.glsl.d.ts": "./demo/libs/types/core/patches/shaders/shaderChunk/outline_bc_pars_vertex.glsl.d.ts",
|
||||
@ -270,22 +287,23 @@
|
||||
"demo/libs/types/core/compare/index.d.ts": "./demo/libs/types/core/compare/index.d.ts",
|
||||
"demo/libs/types/core/patches/index.d.ts": "./demo/libs/types/core/patches/index.d.ts",
|
||||
"demo/libs/types/core/canvas/index.d.ts": "./demo/libs/types/core/canvas/index.d.ts",
|
||||
"demo/libs/types/core/controls/index.d.ts": "./demo/libs/types/core/controls/index.d.ts",
|
||||
"demo/libs/types/core/vr/index.d.ts": "./demo/libs/types/core/vr/index.d.ts",
|
||||
"demo/libs/types/core/utils/DecimalPrecisionUtils.d.ts": "./demo/libs/types/core/utils/DecimalPrecisionUtils.d.ts",
|
||||
"demo/libs/types/plugins/local-model-uploader/index.d.ts": "./demo/libs/types/plugins/local-model-uploader/index.d.ts",
|
||||
"demo/libs/types/plugins/measure/index.d.ts": "./demo/libs/types/plugins/measure/index.d.ts",
|
||||
"demo/libs/types/core/model/index.d.ts": "./demo/libs/types/core/model/index.d.ts",
|
||||
"demo/libs/types/core/shp-js/index.d.ts": "./demo/libs/types/core/shp-js/index.d.ts",
|
||||
"demo/libs/types/plugins/context-menu/ContextMenu.config.d.ts": "./demo/libs/types/plugins/context-menu/ContextMenu.config.d.ts",
|
||||
"demo/libs/types/components/pop-panel/index.d.ts": "./demo/libs/types/components/pop-panel/index.d.ts",
|
||||
"demo/libs/types/plugins/context-menu/ContextMenu.config.d.ts": "./demo/libs/types/plugins/context-menu/ContextMenu.config.d.ts",
|
||||
"demo/libs/types/plugins/context-menu/index.d.ts": "./demo/libs/types/plugins/context-menu/index.d.ts",
|
||||
"demo/libs/types/core/components/index.d.ts": "./demo/libs/types/core/components/index.d.ts",
|
||||
"demo/libs/types/core/dxf/round10.d.ts": "./demo/libs/types/core/dxf/round10.d.ts",
|
||||
"demo/libs/types/core/camera-controls/index.d.ts": "./demo/libs/types/core/camera-controls/index.d.ts",
|
||||
"demo/libs/types/core/patches/Constants.d.ts": "./demo/libs/types/core/patches/Constants.d.ts",
|
||||
"demo/libs/types/core/font/shx/ExtraLettersTemplate.d.ts": "./demo/libs/types/core/font/shx/ExtraLettersTemplate.d.ts",
|
||||
"demo/libs/types/core/input/index.d.ts": "./demo/libs/types/core/input/index.d.ts",
|
||||
"demo/libs/types/core/camera-controls/Constants.d.ts": "./demo/libs/types/core/camera-controls/Constants.d.ts",
|
||||
"demo/libs/types/core/controls/index.d.ts": "./demo/libs/types/core/controls/index.d.ts",
|
||||
"demo/libs/types/core/input/index.d.ts": "./demo/libs/types/core/input/index.d.ts",
|
||||
"demo/libs/types/plugins/pdf/index.d.ts": "./demo/libs/types/plugins/pdf/index.d.ts",
|
||||
"demo/libs/types/core/patches/shaders/ShaderChunk.d.ts": "./demo/libs/types/core/patches/shaders/ShaderChunk.d.ts",
|
||||
"demo/libs/types/fetch-polyfill.d.ts": "./demo/libs/types/fetch-polyfill.d.ts",
|
||||
@ -306,24 +324,28 @@
|
||||
"demo/libs/types/plugins/dat-gui/index.d.ts": "./demo/libs/types/plugins/dat-gui/index.d.ts",
|
||||
"demo/libs/types/plugins/hotpoint/index.d.ts": "./demo/libs/types/plugins/hotpoint/index.d.ts",
|
||||
"demo/libs/types/plugins/view-cube/index.d.ts": "./demo/libs/types/plugins/view-cube/index.d.ts",
|
||||
"demo/libs/types/core/camera/index.d.ts": "./demo/libs/types/core/camera/index.d.ts",
|
||||
"demo/libs/types/core/effect/index.d.ts": "./demo/libs/types/core/effect/index.d.ts",
|
||||
"demo/libs/types/core/font/shx/index.d.ts": "./demo/libs/types/core/font/shx/index.d.ts",
|
||||
"demo/libs/types/plugins/explode/index.d.ts": "./demo/libs/types/plugins/explode/index.d.ts",
|
||||
"demo/libs/types/plugins/nav-cube/index.d.ts": "./demo/libs/types/plugins/nav-cube/index.d.ts",
|
||||
"demo/libs/types/components/dxf-layout-bar/index.d.ts": "./demo/libs/types/components/dxf-layout-bar/index.d.ts",
|
||||
"demo/libs/types/core/scene/index.d.ts": "./demo/libs/types/core/scene/index.d.ts",
|
||||
"demo/libs/types/plugins/skybox/index.d.ts": "./demo/libs/types/plugins/skybox/index.d.ts",
|
||||
"demo/libs/types/components/progress-bar/index.d.ts": "./demo/libs/types/components/progress-bar/index.d.ts",
|
||||
"demo/libs/types/core/font/index.d.ts": "./demo/libs/types/core/font/index.d.ts",
|
||||
"demo/libs/types/core/pick/index.d.ts": "./demo/libs/types/core/pick/index.d.ts",
|
||||
"demo/libs/types/plugins/stats/index.d.ts": "./demo/libs/types/plugins/stats/index.d.ts",
|
||||
"demo/libs/types/components/tool-tip/index.d.ts": "./demo/libs/types/components/tool-tip/index.d.ts",
|
||||
"demo/libs/types/core/geometry-offset/index.d.ts": "./demo/libs/types/core/geometry-offset/index.d.ts",
|
||||
"demo/libs/types/core/webcam/index.d.ts": "./demo/libs/types/core/webcam/index.d.ts",
|
||||
"demo/libs/types/core/workers/CreateMeshBvh.worker.d.ts": "./demo/libs/types/core/workers/CreateMeshBvh.worker.d.ts",
|
||||
"main.f052ad65.css.map": "./static/css/main.f052ad65.css.map",
|
||||
"main.b6487067.js.map": "./static/js/main.b6487067.js.map",
|
||||
"787.cf5efa72.chunk.js.map": "./static/js/787.cf5efa72.chunk.js.map"
|
||||
"main.90df8265.css.map": "./static/css/main.90df8265.css.map",
|
||||
"main.f09baa39.js.map": "./static/js/main.f09baa39.js.map",
|
||||
"787.55649ca3.chunk.js.map": "./static/js/787.55649ca3.chunk.js.map"
|
||||
},
|
||||
"entrypoints": [
|
||||
"static/css/main.f052ad65.css",
|
||||
"static/js/main.b6487067.js"
|
||||
"static/css/main.90df8265.css",
|
||||
"static/js/main.f09baa39.js"
|
||||
]
|
||||
}
|
||||
2
demo/libs/gemini-viewer.esm.min.js
vendored
2
demo/libs/gemini-viewer.esm.min.js
vendored
File diff suppressed because one or more lines are too long
@ -1,26 +1,26 @@
|
||||
import type { DxfViewer } from "../../core/viewers";
|
||||
export declare class DxfLayoutBar {
|
||||
protected readonly viewer: DxfViewer;
|
||||
private element?;
|
||||
private content?;
|
||||
private itemList;
|
||||
constructor(viewer: DxfViewer);
|
||||
init(): void;
|
||||
private handleMouseWheel;
|
||||
private createItem;
|
||||
destroy(): void;
|
||||
show(): void;
|
||||
hide(): void;
|
||||
}
|
||||
export declare class ModelLayoutSwitchItem {
|
||||
protected readonly viewer: DxfViewer;
|
||||
private eventBus;
|
||||
element: HTMLElement;
|
||||
resetActivate?: () => void;
|
||||
active: boolean;
|
||||
constructor(viewer: DxfViewer, name: string);
|
||||
private createItem;
|
||||
setActive(active: boolean): void;
|
||||
resetActive(): void;
|
||||
destroy(): void;
|
||||
}
|
||||
import type { DxfViewer } from "../../core/viewers";
|
||||
export declare class DxfLayoutBar {
|
||||
protected readonly viewer: DxfViewer;
|
||||
private element?;
|
||||
private content?;
|
||||
private itemList;
|
||||
constructor(viewer: DxfViewer);
|
||||
init(): void;
|
||||
private handleMouseWheel;
|
||||
private createItem;
|
||||
destroy(): void;
|
||||
show(): void;
|
||||
hide(): void;
|
||||
}
|
||||
export declare class ModelLayoutSwitchItem {
|
||||
protected readonly viewer: DxfViewer;
|
||||
private eventBus;
|
||||
element: HTMLElement;
|
||||
resetActivate?: () => void;
|
||||
active: boolean;
|
||||
constructor(viewer: DxfViewer, name: string);
|
||||
private createItem;
|
||||
setActive(active: boolean): void;
|
||||
resetActive(): void;
|
||||
destroy(): void;
|
||||
}
|
||||
|
||||
@ -1 +1 @@
|
||||
export * from "./DxfLayoutBar";
|
||||
export * from "./DxfLayoutBar";
|
||||
|
||||
@ -1,18 +1,18 @@
|
||||
import { PopPanel } from "./PopPanel";
|
||||
import type { BaseViewer } from "../../core/viewers/BaseViewer";
|
||||
import { AxisPlaneSection } from "../../plugins/sections/AxisPlaneSection";
|
||||
export declare class AxisSectionPopPanel extends PopPanel {
|
||||
protected axis: string;
|
||||
protected activeItem?: string;
|
||||
protected groupSelectNode?: HTMLElement;
|
||||
protected activeSelectNode?: HTMLElement;
|
||||
protected isVisible: boolean;
|
||||
protected section: AxisPlaneSection;
|
||||
constructor(viewer: BaseViewer);
|
||||
keydown: (e: KeyboardEvent) => void;
|
||||
destroy(): void;
|
||||
createGroupSelectLayout(): void;
|
||||
addGroupSelectItems(): void;
|
||||
createActiveSelectLayout(): void;
|
||||
addActiveItems(): void;
|
||||
}
|
||||
import { PopPanel } from "./PopPanel";
|
||||
import type { BaseViewer } from "../../core/viewers/BaseViewer";
|
||||
import { AxisPlaneSection } from "../../plugins/sections/AxisPlaneSection";
|
||||
export declare class AxisSectionPopPanel extends PopPanel {
|
||||
protected axis: string;
|
||||
protected activeItem?: string;
|
||||
protected groupSelectNode?: HTMLElement;
|
||||
protected activeSelectNode?: HTMLElement;
|
||||
protected isVisible: boolean;
|
||||
protected section: AxisPlaneSection;
|
||||
constructor(viewer: BaseViewer);
|
||||
keydown: (e: KeyboardEvent) => void;
|
||||
destroy(): void;
|
||||
createGroupSelectLayout(): void;
|
||||
addGroupSelectItems(): void;
|
||||
createActiveSelectLayout(): void;
|
||||
addActiveItems(): void;
|
||||
}
|
||||
|
||||
@ -1,18 +1,18 @@
|
||||
import { PopPanel } from "./PopPanel";
|
||||
import type { BaseViewer } from "../../core/viewers/BaseViewer";
|
||||
import type { PickPlaneSection } from "../../plugins/sections/PickPlaneSection";
|
||||
export declare class PickSectionPopPanel extends PopPanel {
|
||||
protected activeSelectNode?: Element;
|
||||
protected isVisible: boolean;
|
||||
protected enabled: boolean;
|
||||
protected visibleNode?: HTMLElement;
|
||||
protected resetNode?: HTMLElement;
|
||||
protected section: PickPlaneSection;
|
||||
constructor(viewer: BaseViewer);
|
||||
keydown: (e: KeyboardEvent) => void;
|
||||
destroy(): void;
|
||||
createActiveSelectLayout(): void;
|
||||
addActiveItems(): void;
|
||||
enable(): void;
|
||||
disable(): void;
|
||||
}
|
||||
import { PopPanel } from "./PopPanel";
|
||||
import type { BaseViewer } from "../../core/viewers/BaseViewer";
|
||||
import { PickPlaneSection } from "../../plugins/sections";
|
||||
export declare class PickSectionPopPanel extends PopPanel {
|
||||
protected activeSelectNode?: Element;
|
||||
protected isVisible: boolean;
|
||||
protected enabled: boolean;
|
||||
protected visibleNode?: HTMLElement;
|
||||
protected resetNode?: HTMLElement;
|
||||
protected section: PickPlaneSection;
|
||||
constructor(viewer: BaseViewer);
|
||||
keydown: (e: KeyboardEvent) => void;
|
||||
destroy(): void;
|
||||
createActiveSelectLayout(): void;
|
||||
addActiveItems(): void;
|
||||
enable(): void;
|
||||
disable(): void;
|
||||
}
|
||||
|
||||
@ -1,14 +1,14 @@
|
||||
export declare class PopPanel {
|
||||
private readonly container;
|
||||
private element;
|
||||
header: HTMLElement;
|
||||
body: HTMLElement;
|
||||
private isFollowing;
|
||||
private diffX;
|
||||
private diffY;
|
||||
constructor(id: string, content: string | HTMLElement, container?: HTMLElement);
|
||||
start: (event: MouseEvent) => void;
|
||||
stop: () => void;
|
||||
follow: (event: MouseEvent) => void;
|
||||
destroy(): void;
|
||||
}
|
||||
export declare class PopPanel {
|
||||
private readonly container;
|
||||
private element;
|
||||
header: HTMLElement;
|
||||
body: HTMLElement;
|
||||
private isFollowing;
|
||||
private diffX;
|
||||
private diffY;
|
||||
constructor(id: string, content: string | HTMLElement, container?: HTMLElement);
|
||||
start: (event: MouseEvent) => void;
|
||||
stop: () => void;
|
||||
follow: (event: MouseEvent) => void;
|
||||
destroy(): void;
|
||||
}
|
||||
|
||||
@ -1,3 +1,3 @@
|
||||
export * from "./PopPanel";
|
||||
export * from "./AxisSectionPopPanel";
|
||||
export * from "./PickSectionPopPanel";
|
||||
export * from "./PopPanel";
|
||||
export * from "./AxisSectionPopPanel";
|
||||
export * from "./PickSectionPopPanel";
|
||||
|
||||
@ -1,34 +1,34 @@
|
||||
export interface ProgressItem {
|
||||
id: string;
|
||||
div: HTMLDivElement;
|
||||
}
|
||||
export declare class ProgressBar {
|
||||
private element;
|
||||
private progresseItems;
|
||||
constructor(parentElement: HTMLElement);
|
||||
setVisible(visible: boolean): void;
|
||||
/**
|
||||
* Adds a progress item
|
||||
* @param progressItemId
|
||||
* @param message Initial message
|
||||
* @param progress number between 0-100
|
||||
*/
|
||||
addProgressItem(progressItemId: string, message?: string): void;
|
||||
/**
|
||||
* Updates a progress item
|
||||
* @param progressItemId
|
||||
* @param message
|
||||
* @param progress number between 0-100
|
||||
*/
|
||||
updateProgress(progressItemId: string, message?: string, progress?: number): void;
|
||||
/**
|
||||
* Removes a progress item
|
||||
* @param progressItemId
|
||||
*/
|
||||
removeProgressItem(progressItemId: string): void;
|
||||
/**
|
||||
* Removes a progress item after some time
|
||||
* @param progressItemId
|
||||
*/
|
||||
delayRemoveProgressItem(progressItemId: string, delayInMs?: number): void;
|
||||
}
|
||||
export interface ProgressItem {
|
||||
id: string;
|
||||
div: HTMLDivElement;
|
||||
}
|
||||
export declare class ProgressBar {
|
||||
private element;
|
||||
private progresseItems;
|
||||
constructor(parentElement: HTMLElement);
|
||||
setVisible(visible: boolean): void;
|
||||
/**
|
||||
* Adds a progress item
|
||||
* @param progressItemId
|
||||
* @param message Initial message
|
||||
* @param progress number between 0-100
|
||||
*/
|
||||
addProgressItem(progressItemId: string, message?: string): void;
|
||||
/**
|
||||
* Updates a progress item
|
||||
* @param progressItemId
|
||||
* @param message
|
||||
* @param progress number between 0-100
|
||||
*/
|
||||
updateProgress(progressItemId: string, message?: string, progress?: number): void;
|
||||
/**
|
||||
* Removes a progress item
|
||||
* @param progressItemId
|
||||
*/
|
||||
removeProgressItem(progressItemId: string): void;
|
||||
/**
|
||||
* Removes a progress item after some time
|
||||
* @param progressItemId
|
||||
*/
|
||||
delayRemoveProgressItem(progressItemId: string, delayInMs?: number): void;
|
||||
}
|
||||
|
||||
@ -1 +1 @@
|
||||
export * from "./ProgressBar";
|
||||
export * from "./ProgressBar";
|
||||
|
||||
@ -1,44 +1,44 @@
|
||||
/**
|
||||
* Perspective and Orthographic camera share the same settings
|
||||
* @internal
|
||||
*/
|
||||
export interface CameraSettings {
|
||||
near: number;
|
||||
far: number;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface MouseSetting {
|
||||
sensitivity: number;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface KeyboardSetting {
|
||||
sensitivity: number;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface Settings {
|
||||
unit: string;
|
||||
decimalPrecision: number;
|
||||
camera: CameraSettings;
|
||||
mouse: MouseSetting;
|
||||
keyboard: KeyboardSetting;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const defaultSettings: Settings;
|
||||
export declare const cameraNearRange: number[];
|
||||
export declare const cameraFarRange: number[];
|
||||
export declare const unitRange: {
|
||||
[key: string]: string;
|
||||
};
|
||||
export declare const sensitivityRange: number[];
|
||||
export declare const decimalPrecisionRange: {
|
||||
[key: string]: number;
|
||||
};
|
||||
export declare const settingStoreKeyName = "THREE_RENDER_SETTING";
|
||||
/**
|
||||
* Perspective and Orthographic camera share the same settings
|
||||
* @internal
|
||||
*/
|
||||
export interface CameraSettings {
|
||||
near: number;
|
||||
far: number;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface MouseSetting {
|
||||
sensitivity: number;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface KeyboardSetting {
|
||||
sensitivity: number;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface Settings {
|
||||
unit: string;
|
||||
decimalPrecision: number;
|
||||
camera: CameraSettings;
|
||||
mouse: MouseSetting;
|
||||
keyboard: KeyboardSetting;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const defaultSettings: Settings;
|
||||
export declare const cameraNearRange: number[];
|
||||
export declare const cameraFarRange: number[];
|
||||
export declare const unitRange: {
|
||||
[key: string]: string;
|
||||
};
|
||||
export declare const sensitivityRange: number[];
|
||||
export declare const decimalPrecisionRange: {
|
||||
[key: string]: number;
|
||||
};
|
||||
export declare const settingStoreKeyName = "THREE_RENDER_SETTING";
|
||||
|
||||
@ -1 +1 @@
|
||||
export * from "./ProjectSettingsDef";
|
||||
export * from "./ProjectSettingsDef";
|
||||
|
||||
40
demo/libs/types/components/tool-tip/Tooltip.d.ts
vendored
40
demo/libs/types/components/tool-tip/Tooltip.d.ts
vendored
@ -1,20 +1,20 @@
|
||||
interface TooltipConfig {
|
||||
showOnCreate?: boolean;
|
||||
followPointer?: boolean;
|
||||
parentNode?: HTMLElement;
|
||||
target?: HTMLElement;
|
||||
}
|
||||
export declare class Tooltip {
|
||||
private node;
|
||||
private parentNode;
|
||||
private target;
|
||||
private childNode;
|
||||
constructor(id: string, content?: string | HTMLElement | null, cfg?: TooltipConfig);
|
||||
setContent(content: string | HTMLElement): void;
|
||||
updateChildContent(content: string | HTMLElement): void;
|
||||
follow: (event: MouseEvent) => void;
|
||||
show: () => false | void;
|
||||
hide: () => false | void;
|
||||
destroy: () => void;
|
||||
}
|
||||
export {};
|
||||
interface TooltipConfig {
|
||||
showOnCreate?: boolean;
|
||||
followPointer?: boolean;
|
||||
parentNode?: HTMLElement;
|
||||
target?: HTMLElement;
|
||||
}
|
||||
export declare class Tooltip {
|
||||
private node;
|
||||
private parentNode;
|
||||
private target;
|
||||
private childNode;
|
||||
constructor(id: string, content?: string | HTMLElement | null, cfg?: TooltipConfig);
|
||||
setContent(content: string | HTMLElement): void;
|
||||
updateChildContent(content: string | HTMLElement): void;
|
||||
follow: (event: MouseEvent) => void;
|
||||
show: () => false | void;
|
||||
hide: () => false | void;
|
||||
destroy: () => void;
|
||||
}
|
||||
export {};
|
||||
|
||||
@ -1 +1 @@
|
||||
export * from "./Tooltip";
|
||||
export * from "./Tooltip";
|
||||
|
||||
557
demo/libs/types/core/Configs.d.ts
vendored
557
demo/libs/types/core/Configs.d.ts
vendored
@ -1,276 +1,281 @@
|
||||
/**
|
||||
* Camera config
|
||||
*/
|
||||
export interface CameraConfig {
|
||||
/**
|
||||
* The camera location
|
||||
*/
|
||||
eye: number[];
|
||||
/**
|
||||
* The location that the camera looks to
|
||||
*/
|
||||
look: number[];
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
up?: number[];
|
||||
/**
|
||||
* The camera's near clip plane
|
||||
*/
|
||||
near?: number;
|
||||
/**
|
||||
* The camera's far clip plane
|
||||
*/
|
||||
far?: number;
|
||||
}
|
||||
/**
|
||||
* Model config
|
||||
*/
|
||||
export interface ModelConfig {
|
||||
/**
|
||||
* Unique id of the model
|
||||
*/
|
||||
modelId?: string;
|
||||
/**
|
||||
* Model name
|
||||
*/
|
||||
name?: string;
|
||||
/**
|
||||
* Source url of the model
|
||||
*/
|
||||
src: string;
|
||||
/**
|
||||
* Used to distinguish format, because it may be hard to know the format by src!
|
||||
* @internal
|
||||
*/
|
||||
fileFormat?: string;
|
||||
/**
|
||||
* File encoding, can be used by dxf. Common encoding include "UTF-8", "gb2312", etc.
|
||||
* @internal
|
||||
*/
|
||||
encoding?: string;
|
||||
/**
|
||||
* A float array of length 16, definds model's position, rotation and scale
|
||||
*/
|
||||
matrix?: number[];
|
||||
/**
|
||||
* If we want to merge meshes/lines/points with the same material
|
||||
* @internal
|
||||
* @default false
|
||||
*/
|
||||
merge?: boolean;
|
||||
/**
|
||||
* If we want to generate and show edges/outlines to the modle.
|
||||
* It is useful for BimViewer.
|
||||
* @internal
|
||||
*/
|
||||
edges?: boolean;
|
||||
/**
|
||||
* If this model is visible by default.
|
||||
* @internal
|
||||
*/
|
||||
visible?: boolean;
|
||||
}
|
||||
/**
|
||||
* Dxf model config
|
||||
*/
|
||||
export interface DxfModelConfig extends ModelConfig {
|
||||
/**
|
||||
* If to ignore anything of paper space.
|
||||
* There are some scenarios to ignore paper space by default, includes:
|
||||
* - Dxf overlay, aka, loading more than one dxf files into a viewer. We'll only load model space for the first file.
|
||||
* - Dxf compare. Since we'll only compare model space, it won't load paper space at all.
|
||||
*
|
||||
* This option is useful when user want to explicitly ignore paper space.
|
||||
* @default false
|
||||
*/
|
||||
ignorePaperSpace?: boolean;
|
||||
/**
|
||||
* Applies this color to everything in this model.
|
||||
* This allows user to show a drawing with a pure color (black, white, etc.).
|
||||
* Color value is between 0 and 1, e.g., [1, 0, 0] means 'red'.
|
||||
*/
|
||||
overrideColor?: number[];
|
||||
}
|
||||
/**
|
||||
* Common viewer config
|
||||
*/
|
||||
export interface BaseViewerConfig {
|
||||
/**
|
||||
* @description canvas id to contain the viewer.
|
||||
*/
|
||||
containerId: string;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
language?: "cn" | "en";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
logLevel?: "debug" | "info" | "warn" | "error" | "silent";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
enableSpinner?: boolean;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
enableProgressBar?: boolean;
|
||||
/**
|
||||
* @description just for react native
|
||||
* @internal
|
||||
*/
|
||||
context?: WebGLRenderingContext | WebGL2RenderingContext;
|
||||
/**
|
||||
* @description just for react native
|
||||
* @internal
|
||||
*/
|
||||
context2d?: CanvasRenderingContext2D;
|
||||
}
|
||||
/**
|
||||
* This wrappers most config for BimViewer
|
||||
*/
|
||||
export interface BimViewerConfig extends BaseViewerConfig {
|
||||
/**
|
||||
* If user can select an entity by mouse click
|
||||
* @internal
|
||||
* @default true
|
||||
*/
|
||||
enableSelection?: boolean;
|
||||
/**
|
||||
* Default is `meters`
|
||||
* @internal
|
||||
*/
|
||||
units?: string;
|
||||
/**
|
||||
* Sets the default locale
|
||||
* @internal
|
||||
*/
|
||||
locale?: "cn" | "en";
|
||||
}
|
||||
/**
|
||||
* This wrappers most config for DxfViewer
|
||||
*/
|
||||
export interface DxfViewerConfig extends BaseViewerConfig {
|
||||
/**
|
||||
* Enables layout bar so we can switch to other layouts.
|
||||
* The default layout bar is an example UI of the viewer, since plenty of APIs are exposed,
|
||||
* you are recommended to create your own layout bar with customized style, location, etc.
|
||||
*/
|
||||
enableLayoutBar?: boolean;
|
||||
/**
|
||||
* If to cache model into indexeddb (or maybe local storage in future).
|
||||
* If enabled, it will get model data from cache the next time model is loaded.
|
||||
* @internal
|
||||
* @default true
|
||||
*/
|
||||
enableLocalCache?: boolean;
|
||||
/**
|
||||
* If user can select an entity by mouse click
|
||||
* @internal
|
||||
* @default false
|
||||
*/
|
||||
enableSelection?: boolean;
|
||||
}
|
||||
/**
|
||||
* Dxf compare config.
|
||||
*/
|
||||
export interface DxfCompareConfig {
|
||||
/**
|
||||
* Enables to compare properties (color, linetype, line width, etc.)
|
||||
*/
|
||||
enableDetailComparision: boolean;
|
||||
}
|
||||
/**
|
||||
* This wrappers most config for VRViewer
|
||||
*/
|
||||
export interface VRViewerConfig extends BaseViewerConfig {
|
||||
autoRotateSpeed?: number;
|
||||
}
|
||||
/**
|
||||
* VR Viewpoint's hotpoint, which can be a user defined html element.
|
||||
* A hotpoint can be clicked, then caller can do their own operation,
|
||||
* e.g. open a description panel, jump to another viewpoint, etc.
|
||||
*/
|
||||
export interface Hotpoint {
|
||||
hotpointId: string;
|
||||
anchorPosition: number[];
|
||||
visible?: boolean;
|
||||
html: string;
|
||||
}
|
||||
/**
|
||||
* A VRViewpointPlan contains 1 or more panor
|
||||
* A viewpoint may contain more than one plans
|
||||
*/
|
||||
export interface Panorama {
|
||||
id: string;
|
||||
/**
|
||||
* 1, 6 or 24 image urls in order of right, left, up, down, front, back.
|
||||
* When there is 1 image, caller should also put it into array!
|
||||
*/
|
||||
images: string[];
|
||||
/**
|
||||
* 6 image urls in order of right, left, up, down, front, back
|
||||
*/
|
||||
thumbnails?: string[];
|
||||
}
|
||||
export interface VRViewpoint {
|
||||
/**
|
||||
* @deprecated moved to VRViewpointPlan
|
||||
*/
|
||||
imageOrImages?: string | string[];
|
||||
/**
|
||||
* @deprecated moved to VRViewpointPlan
|
||||
*/
|
||||
thumbnailImages?: string[];
|
||||
panoramas: Panorama[];
|
||||
id: string;
|
||||
name?: string;
|
||||
position?: number[];
|
||||
initialDirection?: number[];
|
||||
hotpoints?: Hotpoint[];
|
||||
}
|
||||
/**
|
||||
* A default BimViewerConfig as a template, which enables most plugins.
|
||||
* @internal
|
||||
*/
|
||||
export declare const DEFAULT_BIM_VIEWER_CONFIG: BimViewerConfig;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface IsolateObjectsParam {
|
||||
id: string;
|
||||
modelId: string;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface IsolateObjectsParams {
|
||||
familyInstanceIds: IsolateObjectsParam[];
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface ScreenshotConfig {
|
||||
type: string;
|
||||
quality: number;
|
||||
includeOverlay: boolean;
|
||||
}
|
||||
/**
|
||||
* Icon class.
|
||||
* Used by toolbar and bottom bar icons, etc.
|
||||
*/
|
||||
export interface IconClass {
|
||||
/**
|
||||
* The default icon.
|
||||
*/
|
||||
default: string;
|
||||
/**
|
||||
* The icon when item is actived.
|
||||
*/
|
||||
active?: string;
|
||||
/**
|
||||
* The icon font class name.
|
||||
*/
|
||||
iconFont?: string;
|
||||
}
|
||||
/**
|
||||
* Camera config
|
||||
*/
|
||||
export interface CameraConfig {
|
||||
/**
|
||||
* The camera location
|
||||
*/
|
||||
eye: number[];
|
||||
/**
|
||||
* The location that the camera looks to
|
||||
*/
|
||||
look: number[];
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
up?: number[];
|
||||
/**
|
||||
* The camera zoom
|
||||
*/
|
||||
zoom?: number;
|
||||
/**
|
||||
* The camera's near clip plane
|
||||
*/
|
||||
near?: number;
|
||||
/**
|
||||
* The camera's far clip plane
|
||||
*/
|
||||
far?: number;
|
||||
}
|
||||
/**
|
||||
* Model config
|
||||
*/
|
||||
export interface ModelConfig {
|
||||
/**
|
||||
* Unique id of the model
|
||||
*/
|
||||
modelId?: string;
|
||||
/**
|
||||
* Model name
|
||||
*/
|
||||
name?: string;
|
||||
/**
|
||||
* Source url of the model
|
||||
*/
|
||||
src: string;
|
||||
/**
|
||||
* Used to distinguish format, because it may be hard to know the format by src!
|
||||
* @internal
|
||||
*/
|
||||
fileFormat?: string;
|
||||
/**
|
||||
* File encoding, can be used by dxf. Common encoding include "UTF-8", "gb2312", etc.
|
||||
* @internal
|
||||
*/
|
||||
encoding?: string;
|
||||
/**
|
||||
* A float array of length 16, definds model's position, rotation and scale
|
||||
*/
|
||||
matrix?: number[];
|
||||
/**
|
||||
* If we want to merge meshes/lines/points with the same material
|
||||
* @internal
|
||||
* @default false
|
||||
*/
|
||||
merge?: boolean;
|
||||
/**
|
||||
* If we want to generate and show edges/outlines to the modle.
|
||||
* It is useful for BimViewer.
|
||||
* @internal
|
||||
*/
|
||||
edges?: boolean;
|
||||
/**
|
||||
* If this model is visible by default.
|
||||
* @internal
|
||||
*/
|
||||
visible?: boolean;
|
||||
}
|
||||
/**
|
||||
* Dxf model config
|
||||
*/
|
||||
export interface DxfModelConfig extends ModelConfig {
|
||||
/**
|
||||
* If to ignore anything of paper space.
|
||||
* There are some scenarios to ignore paper space by default, includes:
|
||||
* - Dxf overlay, aka, loading more than one dxf files into a viewer. We'll only load model space for the first file.
|
||||
* - Dxf compare. Since we'll only compare model space, it won't load paper space at all.
|
||||
*
|
||||
* This option is useful when user want to explicitly ignore paper space.
|
||||
* @default false
|
||||
*/
|
||||
ignorePaperSpace?: boolean;
|
||||
/**
|
||||
* Applies this color to everything in this model.
|
||||
* This allows user to show a drawing with a pure color (black, white, etc.).
|
||||
* Color value is between 0 and 1, e.g., [1, 0, 0] means 'red'.
|
||||
*/
|
||||
overrideColor?: number[];
|
||||
}
|
||||
/**
|
||||
* Common viewer config
|
||||
*/
|
||||
export interface BaseViewerConfig {
|
||||
/**
|
||||
* @description canvas id to contain the viewer.
|
||||
*/
|
||||
containerId: string;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
language?: "cn" | "en";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
logLevel?: "debug" | "info" | "warn" | "error" | "silent";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
enableSpinner?: boolean;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
enableProgressBar?: boolean;
|
||||
/**
|
||||
* @description just for react native
|
||||
* @internal
|
||||
*/
|
||||
context?: WebGLRenderingContext | WebGL2RenderingContext;
|
||||
/**
|
||||
* @description just for react native
|
||||
* @internal
|
||||
*/
|
||||
context2d?: CanvasRenderingContext2D;
|
||||
}
|
||||
/**
|
||||
* This wrappers most config for BimViewer
|
||||
*/
|
||||
export interface BimViewerConfig extends BaseViewerConfig {
|
||||
/**
|
||||
* If user can select an entity by mouse click
|
||||
* @internal
|
||||
* @default true
|
||||
*/
|
||||
enableSelection?: boolean;
|
||||
/**
|
||||
* Default is `meters`
|
||||
* @internal
|
||||
*/
|
||||
units?: string;
|
||||
/**
|
||||
* Sets the default locale
|
||||
* @internal
|
||||
*/
|
||||
locale?: "cn" | "en";
|
||||
}
|
||||
/**
|
||||
* This wrappers most config for DxfViewer
|
||||
*/
|
||||
export interface DxfViewerConfig extends BaseViewerConfig {
|
||||
/**
|
||||
* Enables layout bar so we can switch to other layouts.
|
||||
* The default layout bar is an example UI of the viewer, since plenty of APIs are exposed,
|
||||
* you are recommended to create your own layout bar with customized style, location, etc.
|
||||
*/
|
||||
enableLayoutBar?: boolean;
|
||||
/**
|
||||
* If to cache model into indexeddb (or maybe local storage in future).
|
||||
* If enabled, it will get model data from cache the next time model is loaded.
|
||||
* @internal
|
||||
* @default true
|
||||
*/
|
||||
enableLocalCache?: boolean;
|
||||
/**
|
||||
* If user can select an entity by mouse click
|
||||
* @internal
|
||||
* @default false
|
||||
*/
|
||||
enableSelection?: boolean;
|
||||
}
|
||||
/**
|
||||
* Dxf compare config.
|
||||
*/
|
||||
export interface DxfCompareConfig {
|
||||
/**
|
||||
* Enables to compare properties (color, linetype, line width, etc.)
|
||||
*/
|
||||
enableDetailComparision: boolean;
|
||||
}
|
||||
/**
|
||||
* This wrappers most config for VRViewer
|
||||
*/
|
||||
export interface VRViewerConfig extends BaseViewerConfig {
|
||||
autoRotateSpeed?: number;
|
||||
enableCache?: boolean;
|
||||
}
|
||||
/**
|
||||
* VR Viewpoint's hotpoint, which can be a user defined html element.
|
||||
* A hotpoint can be clicked, then caller can do their own operation,
|
||||
* e.g. open a description panel, jump to another viewpoint, etc.
|
||||
*/
|
||||
export interface Hotpoint {
|
||||
hotpointId: string;
|
||||
anchorPosition: number[];
|
||||
visible?: boolean;
|
||||
html: string;
|
||||
}
|
||||
/**
|
||||
* A VRViewpointPlan contains 1 or more panor
|
||||
* A viewpoint may contain more than one plans
|
||||
*/
|
||||
export interface Panorama {
|
||||
id: string;
|
||||
/**
|
||||
* 1, 6 or 24 image urls in order of right, left, up, down, front, back.
|
||||
* When there is 1 image, caller should also put it into array!
|
||||
*/
|
||||
images: string[];
|
||||
/**
|
||||
* 6 image urls in order of right, left, up, down, front, back
|
||||
*/
|
||||
thumbnails?: string[];
|
||||
}
|
||||
export interface VRViewpoint {
|
||||
/**
|
||||
* @deprecated moved to VRViewpointPlan
|
||||
*/
|
||||
imageOrImages?: string | string[];
|
||||
/**
|
||||
* @deprecated moved to VRViewpointPlan
|
||||
*/
|
||||
thumbnailImages?: string[];
|
||||
panoramas: Panorama[];
|
||||
id: string;
|
||||
name?: string;
|
||||
position?: number[];
|
||||
initialDirection?: number[];
|
||||
hotpoints?: Hotpoint[];
|
||||
}
|
||||
/**
|
||||
* A default BimViewerConfig as a template, which enables most plugins.
|
||||
* @internal
|
||||
*/
|
||||
export declare const DEFAULT_BIM_VIEWER_CONFIG: BimViewerConfig;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface IsolateObjectsParam {
|
||||
id: string;
|
||||
modelId: string;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface IsolateObjectsParams {
|
||||
familyInstanceIds: IsolateObjectsParam[];
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface ScreenshotConfig {
|
||||
type: string;
|
||||
quality: number;
|
||||
includeOverlay: boolean;
|
||||
}
|
||||
/**
|
||||
* Icon class.
|
||||
* Used by toolbar and bottom bar icons, etc.
|
||||
*/
|
||||
export interface IconClass {
|
||||
/**
|
||||
* The default icon.
|
||||
*/
|
||||
default: string;
|
||||
/**
|
||||
* The icon when item is actived.
|
||||
*/
|
||||
active?: string;
|
||||
/**
|
||||
* The icon font class name.
|
||||
*/
|
||||
iconFont?: string;
|
||||
}
|
||||
|
||||
328
demo/libs/types/core/Constants.d.ts
vendored
328
demo/libs/types/core/Constants.d.ts
vendored
@ -1,164 +1,164 @@
|
||||
/**
|
||||
* To improve performance, we can set object.matrixAutoUpdate = false for static or rarely moving objects and
|
||||
* manually call object.updateMatrix() whenever their position/rotation/quaternion/scale are updated.
|
||||
* Add a constrant here, so developer can change it here easily for debugging.
|
||||
* @internal
|
||||
*/
|
||||
export declare const matrixAutoUpdate = false;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const sceneAutoUpdate = false;
|
||||
/**
|
||||
* These concept can be complex: hitable, snapable, selectable, visible
|
||||
* Mesh Y Y Y Y
|
||||
* text in DxfViewer Y N Y Y
|
||||
* ground plan Y Y N Y
|
||||
* outline N Y N Y
|
||||
* OSnap auxiliary object N Y N N
|
||||
*
|
||||
* So, we must handle them properly. We'll try to put them into different layers.
|
||||
*
|
||||
* For each created object with geometry and material, the default layer is set to enableAll.
|
||||
* If the object is only displayed, it is not necessary to call enableAll. For example, some auxiliary display objects.
|
||||
* For objects that cannot be hitable, snapable, selectable, etc., call ObjectUtils.disableLayerChannels to exclude the corresponding channel.
|
||||
* @example
|
||||
* ``` typescript
|
||||
* this.groundPlane.layers.enableAll();
|
||||
* ObjectUtils.disableLayerChannels(this.groundPlane, [layerForSelectableObjects]);
|
||||
* ```
|
||||
*/
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const layerForHitableObjects = 10;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const layerForSnapableObjects = 11;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const layerForSelectableObjects = 12;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const ICON_FONT_CLASS = "gemini-viewer-iconfont";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const KEYDOWN_EVENT = "keydown";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const KEYUP_EVENT = "keyup";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const MOUSEMOVE_EVENT = "mousemove";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const MOUSEUP_EVENT = "mouseup";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const MOUSEDOWN_EVENT = "mousedown";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const ESC_KEY = "Escape";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const ENTER_KEY = "Enter";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const AXIS_SECTION_PLANE_ID = "axis-section-plane";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const AXIS_SECTION_PLANE_CONTROL_ID = "axis-section-plane-control";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const SECTION_PLANE_ID = "section-plane";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const SECTION_PLANE_CONTROL_ID = "section-plane-control";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const SECTION_BOX_ID = "section-box";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const SECTION_PLANE_NAME = "plane-section-boxface";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const GROUND_PLANE_RENDER_ORDER = -1000;
|
||||
/**
|
||||
* @internal
|
||||
* Angle threshold at which two plane normals are parallel. Used to calculate edges.
|
||||
*/
|
||||
export declare const ANGLE_THRESHOLD_FOR_EDGE = 10;
|
||||
/**
|
||||
* Section type
|
||||
*/
|
||||
export declare enum SectionType {
|
||||
ObjectsBoxSection = "ObjectsBoxSection",
|
||||
PickPlaneSection = "PickPlaneSection",
|
||||
AxisPlaneSection = "AxisPlaneSection"
|
||||
}
|
||||
/**
|
||||
* Screenshot mode.
|
||||
*/
|
||||
export declare enum ScreenshotMode {
|
||||
/**
|
||||
* Take screenshot of the whole canvas.
|
||||
*/
|
||||
Default = "Default",
|
||||
/**
|
||||
* Take screenshot by box selecting an area.
|
||||
*/
|
||||
BoxSelection = "BoxSelection",
|
||||
/**
|
||||
* Take screenshot by picking a markup.
|
||||
*/
|
||||
PickMarkup = "PickMarkup"
|
||||
}
|
||||
export interface Vector2 {
|
||||
x: number;
|
||||
y: number;
|
||||
}
|
||||
export interface Vector3 {
|
||||
x: number;
|
||||
y: number;
|
||||
z: number;
|
||||
}
|
||||
export declare type Box = [number, number, number, number, number, number];
|
||||
export declare type Mat4 = [
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number
|
||||
] | Float32Array;
|
||||
export interface Box2 {
|
||||
min: Vector2;
|
||||
max: Vector2;
|
||||
}
|
||||
/**
|
||||
* To improve performance, we can set object.matrixAutoUpdate = false for static or rarely moving objects and
|
||||
* manually call object.updateMatrix() whenever their position/rotation/quaternion/scale are updated.
|
||||
* Add a constrant here, so developer can change it here easily for debugging.
|
||||
* @internal
|
||||
*/
|
||||
export declare const matrixAutoUpdate = false;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const sceneAutoUpdate = false;
|
||||
/**
|
||||
* These concept can be complex: hitable, snapable, selectable, visible
|
||||
* Mesh Y Y Y Y
|
||||
* text in DxfViewer Y N Y Y
|
||||
* ground plan Y Y N Y
|
||||
* outline N Y N Y
|
||||
* OSnap auxiliary object N Y N N
|
||||
*
|
||||
* So, we must handle them properly. We'll try to put them into different layers.
|
||||
*
|
||||
* For each created object with geometry and material, the default layer is set to enableAll.
|
||||
* If the object is only displayed, it is not necessary to call enableAll. For example, some auxiliary display objects.
|
||||
* For objects that cannot be hitable, snapable, selectable, etc., call ObjectUtils.disableLayerChannels to exclude the corresponding channel.
|
||||
* @example
|
||||
* ``` typescript
|
||||
* this.groundPlane.layers.enableAll();
|
||||
* ObjectUtils.disableLayerChannels(this.groundPlane, [layerForSelectableObjects]);
|
||||
* ```
|
||||
*/
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const layerForHitableObjects = 10;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const layerForSnapableObjects = 11;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const layerForSelectableObjects = 12;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const ICON_FONT_CLASS = "gemini-viewer-iconfont";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const KEYDOWN_EVENT = "keydown";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const KEYUP_EVENT = "keyup";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const MOUSEMOVE_EVENT = "mousemove";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const MOUSEUP_EVENT = "mouseup";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const MOUSEDOWN_EVENT = "mousedown";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const ESC_KEY = "Escape";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const ENTER_KEY = "Enter";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const AXIS_SECTION_PLANE_ID = "axis-section-plane";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const AXIS_SECTION_PLANE_CONTROL_ID = "axis-section-plane-control";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const SECTION_PLANE_ID = "section-plane";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const SECTION_PLANE_CONTROL_ID = "section-plane-control";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const SECTION_BOX_ID = "section-box";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const SECTION_PLANE_NAME = "plane-section-boxface";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const GROUND_PLANE_RENDER_ORDER = -1000;
|
||||
/**
|
||||
* @internal
|
||||
* Angle threshold at which two plane normals are parallel. Used to calculate edges.
|
||||
*/
|
||||
export declare const ANGLE_THRESHOLD_FOR_EDGE = 10;
|
||||
/**
|
||||
* Section type
|
||||
*/
|
||||
export declare enum SectionType {
|
||||
ObjectsBoxSection = "ObjectsBoxSection",
|
||||
PickPlaneSection = "PickPlaneSection",
|
||||
AxisPlaneSection = "AxisPlaneSection"
|
||||
}
|
||||
/**
|
||||
* Screenshot mode.
|
||||
*/
|
||||
export declare enum ScreenshotMode {
|
||||
/**
|
||||
* Take screenshot of the whole canvas.
|
||||
*/
|
||||
Default = "Default",
|
||||
/**
|
||||
* Take screenshot by box selecting an area.
|
||||
*/
|
||||
BoxSelection = "BoxSelection",
|
||||
/**
|
||||
* Take screenshot by picking a markup.
|
||||
*/
|
||||
PickMarkup = "PickMarkup"
|
||||
}
|
||||
export interface Vector2 {
|
||||
x: number;
|
||||
y: number;
|
||||
}
|
||||
export interface Vector3 {
|
||||
x: number;
|
||||
y: number;
|
||||
z: number;
|
||||
}
|
||||
export declare type Box = [number, number, number, number, number, number];
|
||||
export declare type Mat4 = [
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number,
|
||||
number
|
||||
] | Float32Array;
|
||||
export interface Box2 {
|
||||
min: Vector2;
|
||||
max: Vector2;
|
||||
}
|
||||
|
||||
32
demo/libs/types/core/Units.d.ts
vendored
32
demo/libs/types/core/Units.d.ts
vendored
@ -1,16 +1,16 @@
|
||||
/**
|
||||
* Units are defined the same order as to Dxf format
|
||||
*/
|
||||
export declare enum Units {
|
||||
Unitless = "Unitless",
|
||||
Inches = "Inches",
|
||||
Feet = "Feet",
|
||||
Millimeters = "Millimeters",
|
||||
Centimeters = "Centimeters",
|
||||
Meters = "Meters"
|
||||
}
|
||||
/**
|
||||
* Gets the unit scale when converting to meter
|
||||
*/
|
||||
export declare const unitScaleToMeter: (srcUnit: Units) => number;
|
||||
export declare const unitScaleConversion: (srcUnit: Units, destUnit: Units) => number;
|
||||
/**
|
||||
* Units are defined the same order as to Dxf format
|
||||
*/
|
||||
export declare enum Units {
|
||||
Unitless = "Unitless",
|
||||
Inches = "Inches",
|
||||
Feet = "Feet",
|
||||
Millimeters = "Millimeters",
|
||||
Centimeters = "Centimeters",
|
||||
Meters = "Meters"
|
||||
}
|
||||
/**
|
||||
* Gets the unit scale when converting to meter
|
||||
*/
|
||||
export declare const unitScaleToMeter: (srcUnit: Units) => number;
|
||||
export declare const unitScaleConversion: (srcUnit: Units, destUnit: Units) => number;
|
||||
|
||||
6
demo/libs/types/core/VersionManager.d.ts
vendored
6
demo/libs/types/core/VersionManager.d.ts
vendored
@ -1,3 +1,3 @@
|
||||
export declare const getVersionFromLocalStorage: () => string | null;
|
||||
export declare const setVersionToLocalStorage: () => void;
|
||||
export declare const checkIsNewVersion: () => boolean;
|
||||
export declare const getVersionFromLocalStorage: () => string | null;
|
||||
export declare const setVersionToLocalStorage: () => void;
|
||||
export declare const checkIsNewVersion: () => boolean;
|
||||
|
||||
1546
demo/libs/types/core/camera-controls/CameraControls.d.ts
vendored
1546
demo/libs/types/core/camera-controls/CameraControls.d.ts
vendored
File diff suppressed because it is too large
Load Diff
@ -1,2 +1,2 @@
|
||||
export declare const PI_2: number;
|
||||
export declare const PI_HALF: number;
|
||||
export declare const PI_2: number;
|
||||
export declare const PI_HALF: number;
|
||||
|
||||
@ -1,41 +1,41 @@
|
||||
export declare type Listener = (event?: DispatcherEvent) => void;
|
||||
export interface DispatcherEvent {
|
||||
type: string;
|
||||
[key: string]: any;
|
||||
}
|
||||
export declare class EventDispatcher {
|
||||
private _listeners;
|
||||
/**
|
||||
* Adds the specified event listener.
|
||||
* @param type event name
|
||||
* @param listener handler function
|
||||
* @category Methods
|
||||
*/
|
||||
addEventListener(type: string, listener: Listener): void;
|
||||
/**
|
||||
* Presence of the specified event listener.
|
||||
* @param type event name
|
||||
* @param listener handler function
|
||||
* @category Methods
|
||||
*/
|
||||
hasEventListener(type: string, listener: Listener): boolean;
|
||||
/**
|
||||
* Removes the specified event listener
|
||||
* @param type event name
|
||||
* @param listener handler function
|
||||
* @category Methods
|
||||
*/
|
||||
removeEventListener(type: string, listener: Listener): void;
|
||||
/**
|
||||
* Removes all event listeners
|
||||
* @param type event name
|
||||
* @category Methods
|
||||
*/
|
||||
removeAllEventListeners(type?: string): void;
|
||||
/**
|
||||
* Fire an event type.
|
||||
* @param event DispatcherEvent
|
||||
* @category Methods
|
||||
*/
|
||||
dispatchEvent(event: DispatcherEvent): void;
|
||||
}
|
||||
export declare type Listener = (event?: DispatcherEvent) => void;
|
||||
export interface DispatcherEvent {
|
||||
type: string;
|
||||
[key: string]: any;
|
||||
}
|
||||
export declare class EventDispatcher {
|
||||
private _listeners;
|
||||
/**
|
||||
* Adds the specified event listener.
|
||||
* @param type event name
|
||||
* @param listener handler function
|
||||
* @category Methods
|
||||
*/
|
||||
addEventListener(type: string, listener: Listener): void;
|
||||
/**
|
||||
* Presence of the specified event listener.
|
||||
* @param type event name
|
||||
* @param listener handler function
|
||||
* @category Methods
|
||||
*/
|
||||
hasEventListener(type: string, listener: Listener): boolean;
|
||||
/**
|
||||
* Removes the specified event listener
|
||||
* @param type event name
|
||||
* @param listener handler function
|
||||
* @category Methods
|
||||
*/
|
||||
removeEventListener(type: string, listener: Listener): void;
|
||||
/**
|
||||
* Removes all event listeners
|
||||
* @param type event name
|
||||
* @category Methods
|
||||
*/
|
||||
removeAllEventListeners(type?: string): void;
|
||||
/**
|
||||
* Fire an event type.
|
||||
* @param event DispatcherEvent
|
||||
* @category Methods
|
||||
*/
|
||||
dispatchEvent(event: DispatcherEvent): void;
|
||||
}
|
||||
|
||||
@ -1,2 +1,2 @@
|
||||
import { CameraControls } from './CameraControls';
|
||||
export default CameraControls;
|
||||
import { CameraControls } from './CameraControls';
|
||||
export default CameraControls;
|
||||
|
||||
224
demo/libs/types/core/camera-controls/types.d.ts
vendored
224
demo/libs/types/core/camera-controls/types.d.ts
vendored
@ -1,112 +1,112 @@
|
||||
import type * as _THREE from 'three';
|
||||
export interface THREESubset {
|
||||
Vector2: typeof _THREE.Vector2;
|
||||
Vector3: typeof _THREE.Vector3;
|
||||
Vector4: typeof _THREE.Vector4;
|
||||
Quaternion: typeof _THREE.Quaternion;
|
||||
Matrix4: typeof _THREE.Matrix4;
|
||||
Spherical: typeof _THREE.Spherical;
|
||||
Box3: typeof _THREE.Box3;
|
||||
Sphere: typeof _THREE.Sphere;
|
||||
Raycaster: typeof _THREE.Raycaster;
|
||||
[key: string]: any;
|
||||
}
|
||||
export declare type Ref = {
|
||||
value: number;
|
||||
};
|
||||
export declare const MOUSE_BUTTON: {
|
||||
readonly LEFT: 1;
|
||||
readonly RIGHT: 2;
|
||||
readonly MIDDLE: 4;
|
||||
};
|
||||
export declare type MOUSE_BUTTON = typeof MOUSE_BUTTON[keyof typeof MOUSE_BUTTON];
|
||||
export declare const ACTION: Readonly<{
|
||||
readonly NONE: 0;
|
||||
readonly ROTATE: 1;
|
||||
readonly TRUCK: 2;
|
||||
readonly OFFSET: 4;
|
||||
readonly DOLLY: 8;
|
||||
readonly ZOOM: 16;
|
||||
readonly TOUCH_ROTATE: 32;
|
||||
readonly TOUCH_TRUCK: 64;
|
||||
readonly TOUCH_OFFSET: 128;
|
||||
readonly TOUCH_DOLLY: 256;
|
||||
readonly TOUCH_ZOOM: 512;
|
||||
readonly TOUCH_DOLLY_TRUCK: 1024;
|
||||
readonly TOUCH_DOLLY_OFFSET: 2048;
|
||||
readonly TOUCH_DOLLY_ROTATE: 4096;
|
||||
readonly TOUCH_ZOOM_TRUCK: 8192;
|
||||
readonly TOUCH_ZOOM_OFFSET: 16384;
|
||||
readonly TOUCH_ZOOM_ROTATE: 32768;
|
||||
}>;
|
||||
export declare type ACTION = number;
|
||||
export interface PointerInput {
|
||||
pointerId: number;
|
||||
clientX: number;
|
||||
clientY: number;
|
||||
deltaX: number;
|
||||
deltaY: number;
|
||||
mouseButton: MOUSE_BUTTON | null;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare type mouseButtonAction = typeof ACTION.ROTATE | typeof ACTION.TRUCK | typeof ACTION.OFFSET | typeof ACTION.DOLLY | typeof ACTION.ZOOM | typeof ACTION.NONE;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare type mouseWheelAction = typeof ACTION.ROTATE | typeof ACTION.TRUCK | typeof ACTION.OFFSET | typeof ACTION.DOLLY | typeof ACTION.ZOOM | typeof ACTION.NONE;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare type singleTouchAction = typeof ACTION.TOUCH_ROTATE | typeof ACTION.TOUCH_TRUCK | typeof ACTION.TOUCH_OFFSET | typeof ACTION.DOLLY | typeof ACTION.ZOOM | typeof ACTION.NONE;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare type multiTouchAction = typeof ACTION.TOUCH_DOLLY_ROTATE | typeof ACTION.TOUCH_DOLLY_TRUCK | typeof ACTION.TOUCH_DOLLY_OFFSET | typeof ACTION.TOUCH_ZOOM_ROTATE | typeof ACTION.TOUCH_ZOOM_TRUCK | typeof ACTION.TOUCH_ZOOM_OFFSET | typeof ACTION.TOUCH_DOLLY | typeof ACTION.TOUCH_ZOOM | typeof ACTION.TOUCH_ROTATE | typeof ACTION.TOUCH_TRUCK | typeof ACTION.TOUCH_OFFSET | typeof ACTION.NONE;
|
||||
export interface MouseButtons {
|
||||
left: mouseButtonAction;
|
||||
middle: mouseButtonAction;
|
||||
right: mouseButtonAction;
|
||||
wheel: mouseWheelAction;
|
||||
}
|
||||
export interface Touches {
|
||||
one: singleTouchAction;
|
||||
two: multiTouchAction;
|
||||
three: multiTouchAction;
|
||||
}
|
||||
export interface FitToOptions {
|
||||
cover: boolean;
|
||||
paddingLeft: number;
|
||||
paddingRight: number;
|
||||
paddingBottom: number;
|
||||
paddingTop: number;
|
||||
}
|
||||
export interface CameraControlsEventMap {
|
||||
update: {
|
||||
type: 'update';
|
||||
};
|
||||
wake: {
|
||||
type: 'wake';
|
||||
};
|
||||
rest: {
|
||||
type: 'rest';
|
||||
};
|
||||
sleep: {
|
||||
type: 'sleep';
|
||||
};
|
||||
transitionstart: {
|
||||
type: 'transitionstart';
|
||||
};
|
||||
controlstart: {
|
||||
type: 'controlstart';
|
||||
};
|
||||
control: {
|
||||
type: 'control';
|
||||
};
|
||||
controlend: {
|
||||
type: 'controlend';
|
||||
};
|
||||
}
|
||||
export declare function isPerspectiveCamera(camera: _THREE.Camera): camera is _THREE.PerspectiveCamera;
|
||||
export declare function isOrthographicCamera(camera: _THREE.Camera): camera is _THREE.OrthographicCamera;
|
||||
import type * as _THREE from 'three';
|
||||
export interface THREESubset {
|
||||
Vector2: typeof _THREE.Vector2;
|
||||
Vector3: typeof _THREE.Vector3;
|
||||
Vector4: typeof _THREE.Vector4;
|
||||
Quaternion: typeof _THREE.Quaternion;
|
||||
Matrix4: typeof _THREE.Matrix4;
|
||||
Spherical: typeof _THREE.Spherical;
|
||||
Box3: typeof _THREE.Box3;
|
||||
Sphere: typeof _THREE.Sphere;
|
||||
Raycaster: typeof _THREE.Raycaster;
|
||||
[key: string]: any;
|
||||
}
|
||||
export declare type Ref = {
|
||||
value: number;
|
||||
};
|
||||
export declare const MOUSE_BUTTON: {
|
||||
readonly LEFT: 1;
|
||||
readonly RIGHT: 2;
|
||||
readonly MIDDLE: 4;
|
||||
};
|
||||
export declare type MOUSE_BUTTON = typeof MOUSE_BUTTON[keyof typeof MOUSE_BUTTON];
|
||||
export declare const ACTION: Readonly<{
|
||||
readonly NONE: 0;
|
||||
readonly ROTATE: 1;
|
||||
readonly TRUCK: 2;
|
||||
readonly OFFSET: 4;
|
||||
readonly DOLLY: 8;
|
||||
readonly ZOOM: 16;
|
||||
readonly TOUCH_ROTATE: 32;
|
||||
readonly TOUCH_TRUCK: 64;
|
||||
readonly TOUCH_OFFSET: 128;
|
||||
readonly TOUCH_DOLLY: 256;
|
||||
readonly TOUCH_ZOOM: 512;
|
||||
readonly TOUCH_DOLLY_TRUCK: 1024;
|
||||
readonly TOUCH_DOLLY_OFFSET: 2048;
|
||||
readonly TOUCH_DOLLY_ROTATE: 4096;
|
||||
readonly TOUCH_ZOOM_TRUCK: 8192;
|
||||
readonly TOUCH_ZOOM_OFFSET: 16384;
|
||||
readonly TOUCH_ZOOM_ROTATE: 32768;
|
||||
}>;
|
||||
export declare type ACTION = number;
|
||||
export interface PointerInput {
|
||||
pointerId: number;
|
||||
clientX: number;
|
||||
clientY: number;
|
||||
deltaX: number;
|
||||
deltaY: number;
|
||||
mouseButton: MOUSE_BUTTON | null;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare type mouseButtonAction = typeof ACTION.ROTATE | typeof ACTION.TRUCK | typeof ACTION.OFFSET | typeof ACTION.DOLLY | typeof ACTION.ZOOM | typeof ACTION.NONE;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare type mouseWheelAction = typeof ACTION.ROTATE | typeof ACTION.TRUCK | typeof ACTION.OFFSET | typeof ACTION.DOLLY | typeof ACTION.ZOOM | typeof ACTION.NONE;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare type singleTouchAction = typeof ACTION.TOUCH_ROTATE | typeof ACTION.TOUCH_TRUCK | typeof ACTION.TOUCH_OFFSET | typeof ACTION.DOLLY | typeof ACTION.ZOOM | typeof ACTION.NONE;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare type multiTouchAction = typeof ACTION.TOUCH_DOLLY_ROTATE | typeof ACTION.TOUCH_DOLLY_TRUCK | typeof ACTION.TOUCH_DOLLY_OFFSET | typeof ACTION.TOUCH_ZOOM_ROTATE | typeof ACTION.TOUCH_ZOOM_TRUCK | typeof ACTION.TOUCH_ZOOM_OFFSET | typeof ACTION.TOUCH_DOLLY | typeof ACTION.TOUCH_ZOOM | typeof ACTION.TOUCH_ROTATE | typeof ACTION.TOUCH_TRUCK | typeof ACTION.TOUCH_OFFSET | typeof ACTION.NONE;
|
||||
export interface MouseButtons {
|
||||
left: mouseButtonAction;
|
||||
middle: mouseButtonAction;
|
||||
right: mouseButtonAction;
|
||||
wheel: mouseWheelAction;
|
||||
}
|
||||
export interface Touches {
|
||||
one: singleTouchAction;
|
||||
two: multiTouchAction;
|
||||
three: multiTouchAction;
|
||||
}
|
||||
export interface FitToOptions {
|
||||
cover: boolean;
|
||||
paddingLeft: number;
|
||||
paddingRight: number;
|
||||
paddingBottom: number;
|
||||
paddingTop: number;
|
||||
}
|
||||
export interface CameraControlsEventMap {
|
||||
update: {
|
||||
type: 'update';
|
||||
};
|
||||
wake: {
|
||||
type: 'wake';
|
||||
};
|
||||
rest: {
|
||||
type: 'rest';
|
||||
};
|
||||
sleep: {
|
||||
type: 'sleep';
|
||||
};
|
||||
transitionstart: {
|
||||
type: 'transitionstart';
|
||||
};
|
||||
controlstart: {
|
||||
type: 'controlstart';
|
||||
};
|
||||
control: {
|
||||
type: 'control';
|
||||
};
|
||||
controlend: {
|
||||
type: 'controlend';
|
||||
};
|
||||
}
|
||||
export declare function isPerspectiveCamera(camera: _THREE.Camera): camera is _THREE.PerspectiveCamera;
|
||||
export declare function isOrthographicCamera(camera: _THREE.Camera): camera is _THREE.OrthographicCamera;
|
||||
|
||||
@ -1,3 +1,3 @@
|
||||
import type * as _THREE from 'three';
|
||||
import type { PointerInput } from '../types';
|
||||
export declare function extractClientCoordFromEvent(pointers: PointerInput[], out: _THREE.Vector2): void;
|
||||
import type * as _THREE from 'three';
|
||||
import type { PointerInput } from '../types';
|
||||
export declare function extractClientCoordFromEvent(pointers: PointerInput[], out: _THREE.Vector2): void;
|
||||
|
||||
@ -1,11 +1,11 @@
|
||||
import type * as _THREE from 'three';
|
||||
import type { Ref } from '../types';
|
||||
export declare const DEG2RAD: number;
|
||||
export declare function clamp(value: number, min: number, max: number): number;
|
||||
export declare function approxZero(number: number, error?: number): boolean;
|
||||
export declare function approxEquals(a: number, b: number, error?: number): boolean;
|
||||
export declare function roundToStep(value: number, step: number): number;
|
||||
export declare function infinityToMaxNumber(value: number): number;
|
||||
export declare function maxNumberToInfinity(value: number): number;
|
||||
export declare function smoothDamp(current: number, target: number, currentVelocityRef: Ref, smoothTime: number, maxSpeed: number | undefined, deltaTime: number): number;
|
||||
export declare function smoothDampVec3(current: _THREE.Vector3, target: _THREE.Vector3, currentVelocityRef: _THREE.Vector3, smoothTime: number, maxSpeed: number | undefined, deltaTime: number, out: _THREE.Vector3): _THREE.Vector3;
|
||||
import type * as _THREE from 'three';
|
||||
import type { Ref } from '../types';
|
||||
export declare const DEG2RAD: number;
|
||||
export declare function clamp(value: number, min: number, max: number): number;
|
||||
export declare function approxZero(number: number, error?: number): boolean;
|
||||
export declare function approxEquals(a: number, b: number, error?: number): boolean;
|
||||
export declare function roundToStep(value: number, step: number): number;
|
||||
export declare function infinityToMaxNumber(value: number): number;
|
||||
export declare function maxNumberToInfinity(value: number): number;
|
||||
export declare function smoothDamp(current: number, target: number, currentVelocityRef: Ref, smoothTime: number, maxSpeed: number | undefined, deltaTime: number): number;
|
||||
export declare function smoothDampVec3(current: _THREE.Vector3, target: _THREE.Vector3, currentVelocityRef: _THREE.Vector3, smoothTime: number, maxSpeed: number | undefined, deltaTime: number, out: _THREE.Vector3): _THREE.Vector3;
|
||||
|
||||
@ -1,2 +1,2 @@
|
||||
import * as _THREE from 'three';
|
||||
export declare function notSupportedInOrthographicCamera(camera: _THREE.OrthographicCamera | _THREE.PerspectiveCamera, message: string): camera is _THREE.OrthographicCamera;
|
||||
import * as _THREE from 'three';
|
||||
export declare function notSupportedInOrthographicCamera(camera: _THREE.OrthographicCamera | _THREE.PerspectiveCamera, message: string): camera is _THREE.OrthographicCamera;
|
||||
|
||||
78
demo/libs/types/core/camera/CameraManager.d.ts
vendored
Normal file
78
demo/libs/types/core/camera/CameraManager.d.ts
vendored
Normal file
@ -0,0 +1,78 @@
|
||||
import * as THREE from "three";
|
||||
import { CameraConfig } from "../../core/Configs";
|
||||
import CameraControls from "../../core/camera-controls";
|
||||
import { Control, NavigationModes } from "../../core/controls/Control";
|
||||
import { type BaseViewer } from "../../core/viewers/BaseViewer";
|
||||
export declare enum CameraProjections {
|
||||
Perspective = 0,
|
||||
Orthographic = 1
|
||||
}
|
||||
export declare type CameraInfo = CameraConfig;
|
||||
export declare class CameraManager {
|
||||
viewer: BaseViewer;
|
||||
readonly perspectiveCamera: THREE.PerspectiveCamera;
|
||||
readonly orthographicCamera: THREE.OrthographicCamera;
|
||||
activeCamera: THREE.PerspectiveCamera | THREE.OrthographicCamera;
|
||||
readonly cameraControls: CameraControls;
|
||||
private previousDistance;
|
||||
private previousAzimuthRotateSpeed;
|
||||
private previousPolarRotateSpeed;
|
||||
private previousDollySpeed;
|
||||
private previousTruckSpeed;
|
||||
private previousMouseLeft;
|
||||
protected enableKeyDown: boolean;
|
||||
navMode: Record<string, Control>;
|
||||
currentNavMode: Control;
|
||||
currentProjection: CameraProjections;
|
||||
protected anchor: HTMLElement;
|
||||
constructor(viewer: BaseViewer);
|
||||
get viewerContainer(): HTMLElement;
|
||||
get inputManager(): import("../../core/input/InputManager").InputManager;
|
||||
private createAnchor;
|
||||
protected setAnchorPosition(x: number, y: number): void;
|
||||
setOrbitPointVisible(visible: boolean): void;
|
||||
private setOrthoCameraAspect;
|
||||
private setupCameras;
|
||||
private setCameraPositionAndTarget;
|
||||
private setupControls;
|
||||
private onKeyDown;
|
||||
private onChange;
|
||||
setOrthoCamera(): void;
|
||||
private getDims;
|
||||
private setupOrthoCamera;
|
||||
private setPerspectiveCamera;
|
||||
update(delta: number): boolean;
|
||||
updateAspect(): void;
|
||||
get camera(): THREE.PerspectiveCamera | THREE.OrthographicCamera;
|
||||
enableKeyControl(enable: boolean): void;
|
||||
getTarget(): THREE.Vector3;
|
||||
getPosition(): THREE.Vector3;
|
||||
adjustCameraByBbox(bbox: THREE.Box3): void;
|
||||
enableControl(active: boolean): void;
|
||||
enableRotate(enable: boolean): void;
|
||||
enableZoom(enable: boolean): void;
|
||||
enablePan(enable: boolean): void;
|
||||
enableMouseLeft(enable: boolean): void;
|
||||
setCameraPosition(position: THREE.Vector3): void;
|
||||
setCameraTarget(target: THREE.Vector3): void;
|
||||
flyTo(position: THREE.Vector3, lookAt: THREE.Vector3): void;
|
||||
flyToPosition(x: number, y: number, z: number): void;
|
||||
flyToBox(box: THREE.Box3): void;
|
||||
fitToSphere(box: THREE.Object3D | THREE.Sphere): void;
|
||||
flyToObject(object: THREE.Object3D): void;
|
||||
getDistanceToFitSphere(radius: number): number;
|
||||
setNavigationMode(mode: NavigationModes): void;
|
||||
setProjection(projection: CameraProjections): void;
|
||||
setOrbitPoint(point: THREE.Vector3): void;
|
||||
getCameraDirection(): THREE.Vector3;
|
||||
getCameraInfo(): {
|
||||
near: number;
|
||||
far: number;
|
||||
zoom: number;
|
||||
eye: THREE.Vector3Tuple;
|
||||
up: THREE.Vector3Tuple;
|
||||
look: THREE.Vector3Tuple;
|
||||
};
|
||||
setCameraInfo(cameraInfo: CameraInfo): void;
|
||||
destroy(): void;
|
||||
}
|
||||
1
demo/libs/types/core/camera/index.d.ts
vendored
Normal file
1
demo/libs/types/core/camera/index.d.ts
vendored
Normal file
@ -0,0 +1 @@
|
||||
export * from "./CameraManager";
|
||||
105
demo/libs/types/core/canvas/CanvasRender.d.ts
vendored
105
demo/libs/types/core/canvas/CanvasRender.d.ts
vendored
@ -1,52 +1,53 @@
|
||||
import * as THREE from "three";
|
||||
import { DrawableData } from "./Constants";
|
||||
import { Drawable } from "./Drawable";
|
||||
import type { DrawableList } from "./DrawableList";
|
||||
import { Event } from "../../core/utils";
|
||||
import type { BimViewer, DxfViewer } from "../../core/viewers";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare type constructorReturnType<T> = new (...arg: any) => T;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare class CanvasRender extends Event {
|
||||
private viewer;
|
||||
private drawableLists;
|
||||
private canvas?;
|
||||
context?: CanvasRenderingContext2D;
|
||||
private frustum;
|
||||
private projScreenMatrix;
|
||||
static _registerDrawableClass(drawable: constructorReturnType<Drawable>): void;
|
||||
static createDrawable(data: DrawableData): Drawable<Record<string, unknown>>;
|
||||
constructor(viewer: BimViewer | DxfViewer);
|
||||
get is3d(): boolean;
|
||||
get container(): HTMLElement;
|
||||
get camera(): THREE.Camera;
|
||||
get raycaster(): THREE.Raycaster;
|
||||
private init;
|
||||
private initCanvas;
|
||||
private toHighDpr;
|
||||
clearCanvas(): void;
|
||||
addDrawableList(drawableList: DrawableList): void;
|
||||
render(): void;
|
||||
setSize(width: number, height: number): void;
|
||||
getSortedDrawables(onlyVisible?: boolean): Drawable<Record<string, unknown>>[];
|
||||
getDrawablesByPosition(p: THREE.Vector3, raycaster?: THREE.Raycaster): Drawable[];
|
||||
getDrawableById(id: string): Drawable<Record<string, unknown>> | undefined;
|
||||
measureTextLength(text: string, font: string): number;
|
||||
/**
|
||||
*
|
||||
* @param option
|
||||
* @returns
|
||||
* @deprecated
|
||||
*/
|
||||
screenshot(option?: {
|
||||
type: string;
|
||||
quality: number;
|
||||
}): Promise<string | undefined>;
|
||||
getImage(filter: (drawable: Drawable) => boolean): Promise<HTMLImageElement>;
|
||||
getCanvas(): HTMLCanvasElement | undefined;
|
||||
destroy(): void;
|
||||
}
|
||||
import * as THREE from "three";
|
||||
import { DrawableData } from "./Constants";
|
||||
import { Drawable } from "./Drawable";
|
||||
import type { DrawableList } from "./DrawableList";
|
||||
import { Event } from "../../core/utils";
|
||||
import type { BaseViewer } from "../../core/viewers";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare type constructorReturnType<T> = new (...arg: any) => T;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare class CanvasRender extends Event {
|
||||
private viewer;
|
||||
private drawableLists;
|
||||
private canvas?;
|
||||
context?: CanvasRenderingContext2D;
|
||||
private frustum;
|
||||
private projScreenMatrix;
|
||||
static _registerDrawableClass(drawable: constructorReturnType<Drawable>): void;
|
||||
static createDrawable(data: DrawableData): Drawable<Record<string, unknown>>;
|
||||
constructor(viewer: BaseViewer);
|
||||
get is3d(): boolean;
|
||||
get container(): HTMLElement;
|
||||
get camera(): THREE.Camera;
|
||||
get raycaster(): THREE.Raycaster;
|
||||
private init;
|
||||
private initCanvas;
|
||||
private toHighDpr;
|
||||
clearCanvas(): void;
|
||||
addDrawableList(drawableList: DrawableList): void;
|
||||
render(): void;
|
||||
setSize(width: number, height: number): void;
|
||||
getSortedDrawables(onlyVisible?: boolean): Drawable<Record<string, unknown>>[];
|
||||
getDrawablesByDrawableListAndPosition(drawList: DrawableList, p: THREE.Vector3): Drawable<Record<string, unknown>> | undefined;
|
||||
getDrawablesByPosition(p: THREE.Vector3): Drawable[];
|
||||
getDrawableById(id: string): Drawable<Record<string, unknown>> | undefined;
|
||||
measureTextLength(text: string, font: string): number;
|
||||
/**
|
||||
*
|
||||
* @param option
|
||||
* @returns
|
||||
* @deprecated
|
||||
*/
|
||||
screenshot(option?: {
|
||||
type: string;
|
||||
quality: number;
|
||||
}): Promise<string | undefined>;
|
||||
getImage(filter: (drawable: Drawable) => boolean): Promise<HTMLImageElement>;
|
||||
getCanvas(): HTMLCanvasElement | undefined;
|
||||
destroy(): void;
|
||||
}
|
||||
|
||||
56
demo/libs/types/core/canvas/Constants.d.ts
vendored
56
demo/libs/types/core/canvas/Constants.d.ts
vendored
@ -1,28 +1,28 @@
|
||||
/**
|
||||
* Drawable data, including measurement data, markup data, etc.
|
||||
*/
|
||||
export interface DrawableData {
|
||||
/**
|
||||
* id is used by business logic to manage(find, update, delete, etc.) drawables
|
||||
*/
|
||||
id: string;
|
||||
/**
|
||||
* Two dimension float array stores 2d or 3d points.
|
||||
* e.g., You can use "[[1, 1], [2.5, 3]]" to represent a distance measurement result,
|
||||
* "[1, 1]" is the first point, and "[2.5, 3]" is the second point.
|
||||
*/
|
||||
points: number[][];
|
||||
lineWidth?: number;
|
||||
/**
|
||||
* Line color is number array. e.g: [r, g, b, a]
|
||||
*/
|
||||
lineColor?: number[];
|
||||
/**
|
||||
* Fill color is number array. e.g: [r, g, b, a]
|
||||
*/
|
||||
fillColor?: number[];
|
||||
/**
|
||||
* Drawable dta type
|
||||
*/
|
||||
type: string;
|
||||
}
|
||||
/**
|
||||
* Drawable data, including measurement data, markup data, etc.
|
||||
*/
|
||||
export interface DrawableData {
|
||||
/**
|
||||
* id is used by business logic to manage(find, update, delete, etc.) drawables
|
||||
*/
|
||||
id: string;
|
||||
/**
|
||||
* Two dimension float array stores 2d or 3d points.
|
||||
* e.g., You can use "[[1, 1], [2.5, 3]]" to represent a distance measurement result,
|
||||
* "[1, 1]" is the first point, and "[2.5, 3]" is the second point.
|
||||
*/
|
||||
points: number[][];
|
||||
lineWidth?: number;
|
||||
/**
|
||||
* Line color is number array. e.g: [r, g, b, a]
|
||||
*/
|
||||
lineColor?: number[];
|
||||
/**
|
||||
* Fill color is number array. e.g: [r, g, b, a]
|
||||
*/
|
||||
fillColor?: number[];
|
||||
/**
|
||||
* Drawable dta type
|
||||
*/
|
||||
type: string;
|
||||
}
|
||||
|
||||
174
demo/libs/types/core/canvas/Drawable.d.ts
vendored
174
demo/libs/types/core/canvas/Drawable.d.ts
vendored
@ -1,87 +1,87 @@
|
||||
import * as THREE from "three";
|
||||
import { DrawableData } from "./Constants";
|
||||
import { Event } from "../../core/utils";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare abstract class Drawable<DrawableEvents extends Record<string, unknown> = Record<string, unknown>> extends Event<DrawableEvents> {
|
||||
protected readonly DEFAULT_LINE_WIDTH = 1;
|
||||
protected readonly DEFAULT_STROKE_STYLE: number[];
|
||||
protected readonly DEFAULT_FILL_STYLE: number[];
|
||||
id: string;
|
||||
protected lineWidth: number;
|
||||
protected lineColor: number[];
|
||||
protected fillColor: number[];
|
||||
x: number;
|
||||
y: number;
|
||||
width: number;
|
||||
height: number;
|
||||
protected points: THREE.Vector3[];
|
||||
userData: Record<any, any>;
|
||||
protected tolerance: number;
|
||||
visible: boolean;
|
||||
selected: boolean;
|
||||
/**
|
||||
* render order, the bigger number is on the top
|
||||
*/
|
||||
renderOrder: number;
|
||||
needsFrustumCulled: boolean;
|
||||
protected editPointSize: number;
|
||||
protected editPointFillColor: string;
|
||||
protected editPointStrokeColor: string;
|
||||
protected matrix: THREE.Matrix4;
|
||||
protected ctx?: CanvasRenderingContext2D;
|
||||
constructor(id?: string);
|
||||
setTolerance(t: number): void;
|
||||
render(ctx: CanvasRenderingContext2D, camera: THREE.Camera): void;
|
||||
getData(): DrawableData;
|
||||
setData(data: DrawableData): void;
|
||||
getVertexes(): THREE.Vector3[];
|
||||
setLineWidth(lineWidth?: number): void;
|
||||
setLineColor(color?: number[]): void;
|
||||
setFillColor(color?: number[]): void;
|
||||
isSelected(): boolean;
|
||||
getCenter(): THREE.Vector3;
|
||||
transToScreenCoord(vector: THREE.Vector3, camera: THREE.Camera): THREE.Vector2;
|
||||
/**
|
||||
*
|
||||
* @param ctx
|
||||
* @param camera
|
||||
* @describe just for debug bounds
|
||||
*/
|
||||
private drawBounds;
|
||||
/**
|
||||
*
|
||||
* @param ctx
|
||||
* @param camera
|
||||
* @describe just for debug
|
||||
*/
|
||||
private drawCenter;
|
||||
/**
|
||||
*
|
||||
* @param p is world position
|
||||
* @param raycaster just for 3d intersect
|
||||
* @returns boolean
|
||||
* @describe is point interact drawable, use to select drawable, the same as threejs object raycast
|
||||
*/
|
||||
abstract isPointInPath(p: THREE.Vector3, raycaster?: THREE.Raycaster): boolean;
|
||||
getBounds(): THREE.Box3;
|
||||
/**
|
||||
*
|
||||
* @param ctx
|
||||
* @param camera
|
||||
* @describe abstract draw method
|
||||
*/
|
||||
abstract draw(ctx: CanvasRenderingContext2D, camera: THREE.Camera): void;
|
||||
/**
|
||||
*
|
||||
* @param ctx
|
||||
* @param camera
|
||||
* @describe abstract drawSelect method
|
||||
*/
|
||||
abstract drawSelect(ctx: CanvasRenderingContext2D, camera: THREE.Camera): void;
|
||||
/**
|
||||
* @describe class type for serialize
|
||||
*/
|
||||
abstract getClassType(): string;
|
||||
}
|
||||
import * as THREE from "three";
|
||||
import { DrawableData } from "./Constants";
|
||||
import { Event } from "../../core/utils";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare abstract class Drawable<DrawableEvents extends Record<string, unknown> = Record<string, unknown>> extends Event<DrawableEvents> {
|
||||
protected readonly DEFAULT_LINE_WIDTH = 1;
|
||||
protected readonly DEFAULT_STROKE_STYLE: number[];
|
||||
protected readonly DEFAULT_FILL_STYLE: number[];
|
||||
id: string;
|
||||
protected lineWidth: number;
|
||||
protected lineColor: number[];
|
||||
protected fillColor: number[];
|
||||
x: number;
|
||||
y: number;
|
||||
width: number;
|
||||
height: number;
|
||||
protected points: THREE.Vector3[];
|
||||
userData: Record<any, any>;
|
||||
protected tolerance: number;
|
||||
visible: boolean;
|
||||
selected: boolean;
|
||||
/**
|
||||
* render order, the bigger number is on the top
|
||||
*/
|
||||
renderOrder: number;
|
||||
needsFrustumCulled: boolean;
|
||||
protected editPointSize: number;
|
||||
protected editPointFillColor: string;
|
||||
protected editPointStrokeColor: string;
|
||||
protected matrix: THREE.Matrix4;
|
||||
protected ctx?: CanvasRenderingContext2D;
|
||||
constructor(id?: string);
|
||||
setTolerance(t: number): void;
|
||||
render(ctx: CanvasRenderingContext2D, camera: THREE.Camera): void;
|
||||
getData(): DrawableData;
|
||||
setData(data: DrawableData): void;
|
||||
getVertexes(): THREE.Vector3[];
|
||||
setLineWidth(lineWidth?: number): void;
|
||||
setLineColor(color?: number[]): void;
|
||||
setFillColor(color?: number[]): void;
|
||||
isSelected(): boolean;
|
||||
getCenter(): THREE.Vector3;
|
||||
transToScreenCoord(vector: THREE.Vector3, camera: THREE.Camera): THREE.Vector2;
|
||||
/**
|
||||
*
|
||||
* @param ctx
|
||||
* @param camera
|
||||
* @describe just for debug bounds
|
||||
*/
|
||||
private drawBounds;
|
||||
/**
|
||||
*
|
||||
* @param ctx
|
||||
* @param camera
|
||||
* @describe just for debug
|
||||
*/
|
||||
private drawCenter;
|
||||
/**
|
||||
*
|
||||
* @param p is world position
|
||||
* @param raycaster just for 3d intersect
|
||||
* @returns boolean
|
||||
* @describe is point interact drawable, use to select drawable, the same as threejs object raycast
|
||||
*/
|
||||
abstract isPointInPath(p: THREE.Vector3, raycaster?: THREE.Raycaster): boolean;
|
||||
getBounds(): THREE.Box3;
|
||||
/**
|
||||
*
|
||||
* @param ctx
|
||||
* @param camera
|
||||
* @describe abstract draw method
|
||||
*/
|
||||
abstract draw(ctx: CanvasRenderingContext2D, camera: THREE.Camera): void;
|
||||
/**
|
||||
*
|
||||
* @param ctx
|
||||
* @param camera
|
||||
* @describe abstract drawSelect method
|
||||
*/
|
||||
abstract drawSelect(ctx: CanvasRenderingContext2D, camera: THREE.Camera): void;
|
||||
/**
|
||||
* @describe class type for serialize
|
||||
*/
|
||||
abstract getClassType(): string;
|
||||
}
|
||||
|
||||
54
demo/libs/types/core/canvas/DrawableList.d.ts
vendored
54
demo/libs/types/core/canvas/DrawableList.d.ts
vendored
@ -1,27 +1,27 @@
|
||||
import { DrawableData } from "./Constants";
|
||||
import { Drawable } from "./Drawable";
|
||||
import { Event } from "../../core/utils";
|
||||
declare type DrawableListEvents = {
|
||||
addDrawable: DrawableData;
|
||||
updateDrawable: DrawableData;
|
||||
removeDrawable: DrawableData;
|
||||
};
|
||||
/**
|
||||
* A group of Drawlables for a certain category
|
||||
* @internal
|
||||
*/
|
||||
export declare class DrawableList extends Event<DrawableListEvents> {
|
||||
private category;
|
||||
private drawableMap;
|
||||
constructor(category: string);
|
||||
addDrawable(drawable: Drawable): void;
|
||||
updateDrawable(drawable: Drawable, newData: DrawableData): void;
|
||||
removeDrawable(drawable: Drawable): void;
|
||||
getDrawableById(id: string): Drawable<Record<string, unknown>> | undefined;
|
||||
clear(): void;
|
||||
getDrawables(): Map<string, Drawable<Record<string, unknown>>>;
|
||||
getDrawableDatas(): DrawableData[];
|
||||
setDrawableDatas(drawableDatas: DrawableData[]): void;
|
||||
getDrawableByPosition(p: THREE.Vector3, raycaster?: THREE.Raycaster): Drawable<Record<string, unknown>> | undefined;
|
||||
}
|
||||
export {};
|
||||
import { DrawableData } from "./Constants";
|
||||
import { Drawable } from "./Drawable";
|
||||
import { Event } from "../../core/utils";
|
||||
declare type DrawableListEvents = {
|
||||
addDrawable: DrawableData;
|
||||
updateDrawable: DrawableData;
|
||||
removeDrawable: DrawableData;
|
||||
};
|
||||
/**
|
||||
* A group of Drawlables for a certain category
|
||||
* @internal
|
||||
*/
|
||||
export declare class DrawableList extends Event<DrawableListEvents> {
|
||||
private category;
|
||||
private drawableMap;
|
||||
constructor(category: string);
|
||||
addDrawable(drawable: Drawable): void;
|
||||
updateDrawable(drawable: Drawable, newData: DrawableData): void;
|
||||
removeDrawable(drawable: Drawable): void;
|
||||
getDrawableById(id: string): Drawable<Record<string, unknown>> | undefined;
|
||||
clear(): void;
|
||||
getDrawables(): Map<string, Drawable<Record<string, unknown>>>;
|
||||
getDrawableDatas(): DrawableData[];
|
||||
setDrawableDatas(drawableDatas: DrawableData[]): void;
|
||||
getDrawableByPosition(p: THREE.Vector3, raycaster?: THREE.Raycaster): Drawable<Record<string, unknown>> | undefined;
|
||||
}
|
||||
export {};
|
||||
|
||||
8
demo/libs/types/core/canvas/index.d.ts
vendored
8
demo/libs/types/core/canvas/index.d.ts
vendored
@ -1,4 +1,4 @@
|
||||
export * from "./CanvasRender";
|
||||
export * from "./DrawableList";
|
||||
export * from "./Drawable";
|
||||
export * from "./Constants";
|
||||
export * from "./CanvasRender";
|
||||
export * from "./DrawableList";
|
||||
export * from "./Drawable";
|
||||
export * from "./Constants";
|
||||
|
||||
@ -1,104 +1,104 @@
|
||||
import * as THREE from "three";
|
||||
import { ProgressBar } from "../../components/progress-bar";
|
||||
import { DxfCompareConfig, DxfModelConfig, DxfViewerConfig } from "../../core/Configs";
|
||||
import { DxfChange, DxfLoader } from "../../core/dxf";
|
||||
import { FontManager } from "../../core/font";
|
||||
import { DxfViewer } from "../../core/viewers/DxfViewer";
|
||||
/**
|
||||
* Dxf compare helper with one viewport.
|
||||
* @example
|
||||
* ``` html
|
||||
* <div id="app">
|
||||
* <div id="myCanvas" style="width: 100%; height: 100%; display: inline-block;"></div>
|
||||
* </div>
|
||||
* ```
|
||||
* ``` typescript
|
||||
* const viewerCfg = { containerId: "myCanvas" };
|
||||
* const modelCfg1 = { modelId: "id_1", src: "http://www.abc.com/sample1.dxf" };
|
||||
* const modelCfg2 = { modelId: "id_2", src: "http://www.abc.com/sample2.dxf" };
|
||||
* const fontFiles = ["http://www.abc.com/hztxt.shx", "http://www.abc.com/simplex.shx"];
|
||||
*
|
||||
* const compareHelper = new BaseDxfCompareHelper(viewerCfg);
|
||||
* await compareHelper.setFont(fontFiles);
|
||||
* await compareHelper.compare(modelCfg1, modelCfg2);
|
||||
* ```
|
||||
*/
|
||||
export declare class BaseDxfCompareHelper {
|
||||
/**
|
||||
* DxfViewer of DxfCompareHelper.
|
||||
*/
|
||||
viewer: DxfViewer;
|
||||
protected fontManager?: FontManager;
|
||||
protected loader: DxfLoader;
|
||||
protected loadingManager?: THREE.LoadingManager;
|
||||
protected changes?: Record<string, DxfChange>;
|
||||
protected container: HTMLElement;
|
||||
protected spinner?: HTMLDivElement;
|
||||
protected jobCount: number;
|
||||
protected loadingProgressBar?: ProgressBar;
|
||||
constructor(viewerCfg: DxfViewerConfig);
|
||||
protected initSpinner(): void;
|
||||
/**
|
||||
* @description {en} Sets font.
|
||||
* This needs to be called before loading a dxf, it won't affect any loaded text.
|
||||
* It accepts shx or typeface formats. For typeface, it only support passing in 1 font file in the array for now.
|
||||
* @description {zh} 设置字体。
|
||||
* 需要在加载dxf之前调用,不会影响已加载的文字。
|
||||
* 支持shx或typeface格式。对于typeface,目前只支持传入1个字体文件。
|
||||
* @param urls
|
||||
* - {en} font file urls.
|
||||
* - {zh} 字体文件链接。
|
||||
* @example
|
||||
* ```typescript
|
||||
* compareHelper.setFont(["https://example.com/xxx.shx"]);
|
||||
* ```
|
||||
*/
|
||||
setFont(urls: string[]): Promise<void>;
|
||||
/**
|
||||
* Compares two dxf files. Note that:
|
||||
* - It only compares model spaces.
|
||||
* - It shouldn't load anything else before and after compare.
|
||||
* @param modelCfg1 The first dxf to be compared
|
||||
* @param modelCfg2 The second dxf to be compared
|
||||
* @param onProgress loading progress
|
||||
*/
|
||||
compare(modelCfg1: DxfModelConfig, modelCfg2: DxfModelConfig, compareCfg?: DxfCompareConfig, onProgress?: (event: ProgressEvent) => void): Promise<void>;
|
||||
/**
|
||||
* @description {en} Gets compare changes.
|
||||
* @description {zh} 获取对比变动.
|
||||
* @returns
|
||||
* - {en} Compare changes.
|
||||
* - {zh} 对比变动列表。
|
||||
* @example
|
||||
* ``` typescript
|
||||
* const changes = compareHelper.getChanges();
|
||||
* console.log(changes);
|
||||
* ```
|
||||
*/
|
||||
getChanges(): Record<number, DxfChange> | undefined;
|
||||
/**
|
||||
* @description {en} Zooms to a compare change.
|
||||
* @description {zh} 聚焦到图纸的一处变动。
|
||||
* @param changeId
|
||||
* - {en} Change id, which is an incremental integer starts from 1.
|
||||
* - {zh} 变动id,该id是从数字1开始自增的整数。
|
||||
* @example
|
||||
* ``` typescript
|
||||
* const changeId = 1;
|
||||
* compareHelper.zoomToChange(changeId);
|
||||
* ```
|
||||
*/
|
||||
zoomToChange(changeId: number): void;
|
||||
/**
|
||||
* Sets spinner visibility
|
||||
*/
|
||||
protected setSpinnerVisibility(visible: boolean): void;
|
||||
/**
|
||||
* Increases job count, and show spinner accordingly
|
||||
*/
|
||||
protected increaseJobCount(): void;
|
||||
/**
|
||||
* Decreases job count, and hide spinner accordingly
|
||||
*/
|
||||
protected decreaseJobCount(): void;
|
||||
}
|
||||
import * as THREE from "three";
|
||||
import { ProgressBar } from "../../components/progress-bar";
|
||||
import { DxfCompareConfig, DxfModelConfig, DxfViewerConfig } from "../../core/Configs";
|
||||
import { DxfChange, DxfLoader } from "../../core/dxf";
|
||||
import { FontManager } from "../../core/font";
|
||||
import { DxfViewer } from "../../core/viewers/DxfViewer";
|
||||
/**
|
||||
* Dxf compare helper with one viewport.
|
||||
* @example
|
||||
* ``` html
|
||||
* <div id="app">
|
||||
* <div id="myCanvas" style="width: 100%; height: 100%; display: inline-block;"></div>
|
||||
* </div>
|
||||
* ```
|
||||
* ``` typescript
|
||||
* const viewerCfg = { containerId: "myCanvas" };
|
||||
* const modelCfg1 = { modelId: "id_1", src: "http://www.abc.com/sample1.dxf" };
|
||||
* const modelCfg2 = { modelId: "id_2", src: "http://www.abc.com/sample2.dxf" };
|
||||
* const fontFiles = ["http://www.abc.com/hztxt.shx", "http://www.abc.com/simplex.shx"];
|
||||
*
|
||||
* const compareHelper = new BaseDxfCompareHelper(viewerCfg);
|
||||
* await compareHelper.setFont(fontFiles);
|
||||
* await compareHelper.compare(modelCfg1, modelCfg2);
|
||||
* ```
|
||||
*/
|
||||
export declare class BaseDxfCompareHelper {
|
||||
/**
|
||||
* DxfViewer of DxfCompareHelper.
|
||||
*/
|
||||
viewer: DxfViewer;
|
||||
protected fontManager?: FontManager;
|
||||
protected loader: DxfLoader;
|
||||
protected loadingManager?: THREE.LoadingManager;
|
||||
protected changes?: Record<string, DxfChange>;
|
||||
protected container: HTMLElement;
|
||||
protected spinner?: HTMLDivElement;
|
||||
protected jobCount: number;
|
||||
protected loadingProgressBar?: ProgressBar;
|
||||
constructor(viewerCfg: DxfViewerConfig);
|
||||
protected initSpinner(): void;
|
||||
/**
|
||||
* @description {en} Sets font.
|
||||
* This needs to be called before loading a dxf, it won't affect any loaded text.
|
||||
* It accepts shx or typeface formats. For typeface, it only support passing in 1 font file in the array for now.
|
||||
* @description {zh} 设置字体。
|
||||
* 需要在加载dxf之前调用,不会影响已加载的文字。
|
||||
* 支持shx或typeface格式。对于typeface,目前只支持传入1个字体文件。
|
||||
* @param urls
|
||||
* - {en} font file urls.
|
||||
* - {zh} 字体文件链接。
|
||||
* @example
|
||||
* ```typescript
|
||||
* compareHelper.setFont(["https://example.com/xxx.shx"]);
|
||||
* ```
|
||||
*/
|
||||
setFont(urls: string[]): Promise<void>;
|
||||
/**
|
||||
* Compares two dxf files. Note that:
|
||||
* - It only compares model spaces.
|
||||
* - It shouldn't load anything else before and after compare.
|
||||
* @param modelCfg1 The first dxf to be compared
|
||||
* @param modelCfg2 The second dxf to be compared
|
||||
* @param onProgress loading progress
|
||||
*/
|
||||
compare(modelCfg1: DxfModelConfig, modelCfg2: DxfModelConfig, compareCfg?: DxfCompareConfig, onProgress?: (event: ProgressEvent) => void): Promise<void>;
|
||||
/**
|
||||
* @description {en} Gets compare changes.
|
||||
* @description {zh} 获取对比变动.
|
||||
* @returns
|
||||
* - {en} Compare changes.
|
||||
* - {zh} 对比变动列表。
|
||||
* @example
|
||||
* ``` typescript
|
||||
* const changes = compareHelper.getChanges();
|
||||
* console.log(changes);
|
||||
* ```
|
||||
*/
|
||||
getChanges(): Record<number, DxfChange> | undefined;
|
||||
/**
|
||||
* @description {en} Zooms to a compare change.
|
||||
* @description {zh} 聚焦到图纸的一处变动。
|
||||
* @param changeId
|
||||
* - {en} Change id, which is an incremental integer starts from 1.
|
||||
* - {zh} 变动id,该id是从数字1开始自增的整数。
|
||||
* @example
|
||||
* ``` typescript
|
||||
* const changeId = 1;
|
||||
* compareHelper.zoomToChange(changeId);
|
||||
* ```
|
||||
*/
|
||||
zoomToChange(changeId: number): void;
|
||||
/**
|
||||
* Sets spinner visibility
|
||||
*/
|
||||
protected setSpinnerVisibility(visible: boolean): void;
|
||||
/**
|
||||
* Increases job count, and show spinner accordingly
|
||||
*/
|
||||
protected increaseJobCount(): void;
|
||||
/**
|
||||
* Decreases job count, and hide spinner accordingly
|
||||
*/
|
||||
protected decreaseJobCount(): void;
|
||||
}
|
||||
|
||||
@ -1,17 +1,17 @@
|
||||
import * as THREE from "three";
|
||||
import { Drawable } from "../../core/canvas";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare class CompareDrawable extends Drawable {
|
||||
boxes: THREE.Box3[];
|
||||
lineSegments: THREE.Vector3[][];
|
||||
constructor(id: string, boxes: THREE.Box3[]);
|
||||
private calculateCloudLineSegments;
|
||||
draw(ctx: CanvasRenderingContext2D, camera: THREE.Camera): void;
|
||||
private drawBox;
|
||||
drawSelect(ctx: CanvasRenderingContext2D, camera: THREE.Camera): void;
|
||||
isPointInPath(p: THREE.Vector3): boolean;
|
||||
getBounds(): THREE.Box3;
|
||||
getClassType(): string;
|
||||
}
|
||||
import * as THREE from "three";
|
||||
import { Drawable } from "../../core/canvas";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare class CompareDrawable extends Drawable {
|
||||
boxes: THREE.Box3[];
|
||||
lineSegments: THREE.Vector3[][];
|
||||
constructor(id: string, boxes: THREE.Box3[]);
|
||||
private calculateCloudLineSegments;
|
||||
draw(ctx: CanvasRenderingContext2D, camera: THREE.Camera): void;
|
||||
private drawBox;
|
||||
drawSelect(ctx: CanvasRenderingContext2D, camera: THREE.Camera): void;
|
||||
isPointInPath(p: THREE.Vector3): boolean;
|
||||
getBounds(): THREE.Box3;
|
||||
getClassType(): string;
|
||||
}
|
||||
|
||||
138
demo/libs/types/core/compare/DxfCompareHelper.d.ts
vendored
138
demo/libs/types/core/compare/DxfCompareHelper.d.ts
vendored
@ -1,69 +1,69 @@
|
||||
import { BaseDxfCompareHelper } from "./BaseDxfCompareHelper";
|
||||
import { DxfCompareConfig, DxfModelConfig, DxfViewerConfig } from "../../core/Configs";
|
||||
import { DxfViewer } from "../../core/viewers/DxfViewer";
|
||||
/**
|
||||
* Dxf compare helper with two viewports.
|
||||
* @example
|
||||
* ``` html
|
||||
* <div id="app">
|
||||
* <div id="myCanvas1" style="width: 50%; height: 100%; display: inline-block;"></div>
|
||||
* <div id="myCanvas2" style="width: 50%; height: 100%; display: inline-block; padding-left: 1px;"></div>
|
||||
* </div>
|
||||
* ```
|
||||
* ``` typescript
|
||||
* const viewerCfg1 = { containerId: "myCanvas1" };
|
||||
* const viewerCfg2 = { containerId: "myCanvas2" };
|
||||
* const modelCfg1 = { modelId: "id_1", src: "http://www.abc.com/sample1.dxf" };
|
||||
* const modelCfg2 = { modelId: "id_2", src: "http://www.abc.com/sample2.dxf" };
|
||||
* const fontFiles = ["http://www.abc.com/hztxt.shx", "http://www.abc.com/simplex.shx"];
|
||||
*
|
||||
* const compareHelper = new DxfCompareHelper(viewerCfg1, viewerCfg2);
|
||||
* await compareHelper.setFont(fontFiles);
|
||||
* await compareHelper.compare(modelCfg1, modelCfg2);
|
||||
* compareHelper.enableSyncCamera(true);
|
||||
* ```
|
||||
*/
|
||||
export declare class DxfCompareHelper extends BaseDxfCompareHelper {
|
||||
/**
|
||||
* The second DxfViewer of DxfCompareHelper.
|
||||
*/
|
||||
viewer2: DxfViewer;
|
||||
/**
|
||||
* Enables to synchronize camera position when another camera is moved.
|
||||
*/
|
||||
protected syncCamera: boolean;
|
||||
constructor(viewerCfg1: DxfViewerConfig, viewerCfg2: DxfViewerConfig);
|
||||
protected initSyncCameraEvent(): void;
|
||||
/**
|
||||
* @description {en} Enables to synchronize camera position when another camera is moved.
|
||||
* @description {zh} 设置开启或关闭同步相机视角。
|
||||
* @example
|
||||
* ```typescript
|
||||
* compareHelper.enableSyncCamera(true);
|
||||
* ```
|
||||
*/
|
||||
enableSyncCamera(enable: boolean): void;
|
||||
private syncCameraControls;
|
||||
/**
|
||||
* Compares two dxf files. Note that:
|
||||
* - It only compares model spaces.
|
||||
* - It shouldn't load anything else before and after compare.
|
||||
* @param modelCfg1 The first dxf to be compared
|
||||
* @param modelCfg2 The second dxf to be compared
|
||||
* @param onProgress loading progress
|
||||
*/
|
||||
compare(modelCfg1: DxfModelConfig, modelCfg2: DxfModelConfig, compareCfg?: DxfCompareConfig, onProgress?: (event: ProgressEvent) => void): Promise<void>;
|
||||
/**
|
||||
* @description {en} Zooms to a compare change.
|
||||
* @description {zh} 聚焦到图纸的一处变动。
|
||||
* @param changeId
|
||||
* - {en} Change id, which is an incremental integer starts from 1.
|
||||
* - {zh} 变动id,该id是从数字1开始自增的整数。
|
||||
* @example
|
||||
* ``` typescript
|
||||
* const changeId = 1;
|
||||
* compareHelper.zoomToChange(changeId);
|
||||
* ```
|
||||
*/
|
||||
zoomToChange(changeId: number): void;
|
||||
}
|
||||
import { BaseDxfCompareHelper } from "./BaseDxfCompareHelper";
|
||||
import { DxfCompareConfig, DxfModelConfig, DxfViewerConfig } from "../../core/Configs";
|
||||
import { DxfViewer } from "../../core/viewers/DxfViewer";
|
||||
/**
|
||||
* Dxf compare helper with two viewports.
|
||||
* @example
|
||||
* ``` html
|
||||
* <div id="app">
|
||||
* <div id="myCanvas1" style="width: 50%; height: 100%; display: inline-block;"></div>
|
||||
* <div id="myCanvas2" style="width: 50%; height: 100%; display: inline-block; padding-left: 1px;"></div>
|
||||
* </div>
|
||||
* ```
|
||||
* ``` typescript
|
||||
* const viewerCfg1 = { containerId: "myCanvas1" };
|
||||
* const viewerCfg2 = { containerId: "myCanvas2" };
|
||||
* const modelCfg1 = { modelId: "id_1", src: "http://www.abc.com/sample1.dxf" };
|
||||
* const modelCfg2 = { modelId: "id_2", src: "http://www.abc.com/sample2.dxf" };
|
||||
* const fontFiles = ["http://www.abc.com/hztxt.shx", "http://www.abc.com/simplex.shx"];
|
||||
*
|
||||
* const compareHelper = new DxfCompareHelper(viewerCfg1, viewerCfg2);
|
||||
* await compareHelper.setFont(fontFiles);
|
||||
* await compareHelper.compare(modelCfg1, modelCfg2);
|
||||
* compareHelper.enableSyncCamera(true);
|
||||
* ```
|
||||
*/
|
||||
export declare class DxfCompareHelper extends BaseDxfCompareHelper {
|
||||
/**
|
||||
* The second DxfViewer of DxfCompareHelper.
|
||||
*/
|
||||
viewer2: DxfViewer;
|
||||
/**
|
||||
* Enables to synchronize camera position when another camera is moved.
|
||||
*/
|
||||
protected syncCamera: boolean;
|
||||
constructor(viewerCfg1: DxfViewerConfig, viewerCfg2: DxfViewerConfig);
|
||||
protected initSyncCameraEvent(): void;
|
||||
/**
|
||||
* @description {en} Enables to synchronize camera position when another camera is moved.
|
||||
* @description {zh} 设置开启或关闭同步相机视角。
|
||||
* @example
|
||||
* ```typescript
|
||||
* compareHelper.enableSyncCamera(true);
|
||||
* ```
|
||||
*/
|
||||
enableSyncCamera(enable: boolean): void;
|
||||
private syncCameraControls;
|
||||
/**
|
||||
* Compares two dxf files. Note that:
|
||||
* - It only compares model spaces.
|
||||
* - It shouldn't load anything else before and after compare.
|
||||
* @param modelCfg1 The first dxf to be compared
|
||||
* @param modelCfg2 The second dxf to be compared
|
||||
* @param onProgress loading progress
|
||||
*/
|
||||
compare(modelCfg1: DxfModelConfig, modelCfg2: DxfModelConfig, compareCfg?: DxfCompareConfig, onProgress?: (event: ProgressEvent) => void): Promise<void>;
|
||||
/**
|
||||
* @description {en} Zooms to a compare change.
|
||||
* @description {zh} 聚焦到图纸的一处变动。
|
||||
* @param changeId
|
||||
* - {en} Change id, which is an incremental integer starts from 1.
|
||||
* - {zh} 变动id,该id是从数字1开始自增的整数。
|
||||
* @example
|
||||
* ``` typescript
|
||||
* const changeId = 1;
|
||||
* compareHelper.zoomToChange(changeId);
|
||||
* ```
|
||||
*/
|
||||
zoomToChange(changeId: number): void;
|
||||
}
|
||||
|
||||
@ -1,11 +1,11 @@
|
||||
import type { DxfViewer } from "../viewers";
|
||||
import { DxfChange } from "../../core/dxf";
|
||||
import { Event } from "../../core/utils";
|
||||
export declare class DxfCompareMarkupManager extends Event {
|
||||
private viewer;
|
||||
private overlayRender?;
|
||||
private drawableList;
|
||||
constructor(viewer: DxfViewer);
|
||||
drawCompareDrawable(changes: Record<string, DxfChange>): void;
|
||||
setCompareDrawableVisible(visilbe: boolean): void;
|
||||
}
|
||||
import type { DxfViewer } from "../viewers";
|
||||
import { DxfChange } from "../../core/dxf";
|
||||
import { Event } from "../../core/utils";
|
||||
export declare class DxfCompareMarkupManager extends Event {
|
||||
private viewer;
|
||||
private overlayRender?;
|
||||
private drawableList;
|
||||
constructor(viewer: DxfViewer);
|
||||
drawCompareDrawable(changes: Record<string, DxfChange>): void;
|
||||
setCompareDrawableVisible(visilbe: boolean): void;
|
||||
}
|
||||
|
||||
8
demo/libs/types/core/compare/index.d.ts
vendored
8
demo/libs/types/core/compare/index.d.ts
vendored
@ -1,4 +1,4 @@
|
||||
export * from "./CompareDrawable";
|
||||
export * from "./DxfCompareMarkupManager";
|
||||
export * from "./DxfCompareHelper";
|
||||
export * from "./BaseDxfCompareHelper";
|
||||
export * from "./CompareDrawable";
|
||||
export * from "./DxfCompareMarkupManager";
|
||||
export * from "./DxfCompareHelper";
|
||||
export * from "./BaseDxfCompareHelper";
|
||||
|
||||
21
demo/libs/types/core/components/Container.d.ts
vendored
Normal file
21
demo/libs/types/core/components/Container.d.ts
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
export declare class Container {
|
||||
width: number;
|
||||
height: number;
|
||||
container: HTMLDivElement;
|
||||
viewerContainer?: HTMLDivElement;
|
||||
widgetContainer?: HTMLDivElement;
|
||||
constructor(containerId: string);
|
||||
/**
|
||||
* Creates a viewerContainer under the container that user passed in.
|
||||
* There are some benefits to create a new one. e.g., its style won't affect
|
||||
* the container div user passed in.
|
||||
*/
|
||||
private initViewerContainer;
|
||||
/**
|
||||
*
|
||||
* @description Create a div for ui widget, if widget need position, just relative container, maybe remove later.
|
||||
*/
|
||||
private initWidgetContainer;
|
||||
get needResize(): boolean;
|
||||
destroy(): void;
|
||||
}
|
||||
21
demo/libs/types/core/components/ProgressBar.d.ts
vendored
Normal file
21
demo/libs/types/core/components/ProgressBar.d.ts
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
import type { Container } from "./Container";
|
||||
export interface ProgressItem {
|
||||
div: HTMLDivElement;
|
||||
onProgress?: (event: ProgressEvent) => void;
|
||||
}
|
||||
export declare class ProgressBar {
|
||||
private element;
|
||||
private progressItems;
|
||||
private replaceReg;
|
||||
constructor(container: Container);
|
||||
addProgressItem(id: string, message?: string, onProgress?: (event: ProgressEvent) => void): void;
|
||||
removeProgressItem(id: string): void;
|
||||
updateProgressBar(id: string, progress: number | ProgressEvent, min?: number, max?: number): void;
|
||||
setVisible(visible: boolean): void;
|
||||
/**
|
||||
* Removes a progress item after some time
|
||||
* @param progressItemId
|
||||
*/
|
||||
delayRemoveProgressItem(progressItemId: string, delayInMs?: number): void;
|
||||
destroy(): void;
|
||||
}
|
||||
13
demo/libs/types/core/components/Spinner.d.ts
vendored
Normal file
13
demo/libs/types/core/components/Spinner.d.ts
vendored
Normal file
@ -0,0 +1,13 @@
|
||||
import type { Container } from "./Container";
|
||||
export declare class Spinner {
|
||||
private element;
|
||||
jobCount: number;
|
||||
constructor(container: Container);
|
||||
/**
|
||||
* Sets spinner visibility
|
||||
*/
|
||||
private setSpinnerVisibility;
|
||||
increaseJobCount(): void;
|
||||
decreaseJobCount(): void;
|
||||
destroy(): void;
|
||||
}
|
||||
3
demo/libs/types/core/components/index.d.ts
vendored
Normal file
3
demo/libs/types/core/components/index.d.ts
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
export * from "./Spinner";
|
||||
export * from "./Container";
|
||||
export * from "./ProgressBar";
|
||||
@ -1,34 +1,34 @@
|
||||
import * as THREE from "three";
|
||||
import { CameraControls } from "../camera-controls/CameraControls";
|
||||
export declare class CameraControlsEx extends CameraControls {
|
||||
minZoom: number;
|
||||
draggingSmoothTime: number;
|
||||
private dollySpeedBackup;
|
||||
private azimuthRotateSpeedBackup;
|
||||
private polarRotateSpeedBackup;
|
||||
private truckSpeedBackup;
|
||||
private domElementKeyEvents?;
|
||||
keyTruckSpeed: number;
|
||||
keys: {
|
||||
left: string;
|
||||
up: string;
|
||||
right: string;
|
||||
bottom: string;
|
||||
};
|
||||
constructor(object: THREE.PerspectiveCamera | THREE.OrthographicCamera, domElement?: HTMLElement);
|
||||
get enableZoom(): boolean;
|
||||
set enableZoom(value: boolean);
|
||||
get enableRotate(): boolean;
|
||||
set enableRotate(value: boolean);
|
||||
get enableTruck(): boolean;
|
||||
set enableTruck(value: boolean);
|
||||
private onKeyDown;
|
||||
private onKeyUp;
|
||||
listenToKeyEvents(): void;
|
||||
stopListenToKeyEvents(): void;
|
||||
/**
|
||||
* Dispose the OrbitControls instance itself, remove all eventListeners.
|
||||
* @category Methods
|
||||
*/
|
||||
dispose(): void;
|
||||
}
|
||||
import * as THREE from "three";
|
||||
import { CameraControls } from "../camera-controls/CameraControls";
|
||||
export declare class CameraControlsEx extends CameraControls {
|
||||
minZoom: number;
|
||||
draggingSmoothTime: number;
|
||||
private dollySpeedBackup;
|
||||
private azimuthRotateSpeedBackup;
|
||||
private polarRotateSpeedBackup;
|
||||
private truckSpeedBackup;
|
||||
private domElementKeyEvents?;
|
||||
keyTruckSpeed: number;
|
||||
keys: {
|
||||
left: string;
|
||||
up: string;
|
||||
right: string;
|
||||
bottom: string;
|
||||
};
|
||||
constructor(object: THREE.PerspectiveCamera | THREE.OrthographicCamera, domElement?: HTMLElement);
|
||||
get enableZoom(): boolean;
|
||||
set enableZoom(value: boolean);
|
||||
get enableRotate(): boolean;
|
||||
set enableRotate(value: boolean);
|
||||
get enableTruck(): boolean;
|
||||
set enableTruck(value: boolean);
|
||||
private onKeyDown;
|
||||
private onKeyUp;
|
||||
listenToKeyEvents(): void;
|
||||
stopListenToKeyEvents(): void;
|
||||
/**
|
||||
* Dispose the OrbitControls instance itself, remove all eventListeners.
|
||||
* @category Methods
|
||||
*/
|
||||
dispose(): void;
|
||||
}
|
||||
|
||||
11
demo/libs/types/core/controls/Control.d.ts
vendored
Normal file
11
demo/libs/types/core/controls/Control.d.ts
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
export declare enum NavigationModes {
|
||||
Orbit = 0,
|
||||
FirstPerson = 1,
|
||||
Plan = 2,
|
||||
VR = 3
|
||||
}
|
||||
export interface Control {
|
||||
mode: NavigationModes;
|
||||
setupControl(): void;
|
||||
adjustCameraByBbox(bbox: THREE.Box3): void;
|
||||
}
|
||||
10
demo/libs/types/core/controls/OrbitControl.d.ts
vendored
Normal file
10
demo/libs/types/core/controls/OrbitControl.d.ts
vendored
Normal file
@ -0,0 +1,10 @@
|
||||
import * as THREE from "three";
|
||||
import { Control, NavigationModes } from "./Control";
|
||||
import type { CameraManager } from "../../core/camera/CameraManager";
|
||||
export declare class OrbitControl implements Control {
|
||||
readonly mode = NavigationModes.Orbit;
|
||||
private cameraManager;
|
||||
constructor(cameraManager: CameraManager);
|
||||
setupControl(): void;
|
||||
adjustCameraByBbox(box: THREE.Box3): void;
|
||||
}
|
||||
14
demo/libs/types/core/controls/PlanControl.d.ts
vendored
Normal file
14
demo/libs/types/core/controls/PlanControl.d.ts
vendored
Normal file
@ -0,0 +1,14 @@
|
||||
import * as THREE from "three";
|
||||
import { Control, NavigationModes } from "./Control";
|
||||
import type { CameraManager } from "../../core/camera";
|
||||
/**
|
||||
*
|
||||
* @description control for 2d. dxf,pdf etc.
|
||||
*/
|
||||
export declare class PlanControl implements Control {
|
||||
readonly mode = NavigationModes.Plan;
|
||||
private cameraManager;
|
||||
constructor(cameraManager: CameraManager);
|
||||
setupControl(): void;
|
||||
adjustCameraByBbox(box: THREE.Box3): void;
|
||||
}
|
||||
10
demo/libs/types/core/controls/VRControl.d.ts
vendored
Normal file
10
demo/libs/types/core/controls/VRControl.d.ts
vendored
Normal file
@ -0,0 +1,10 @@
|
||||
import * as THREE from "three";
|
||||
import { Control, NavigationModes } from "./Control";
|
||||
import type { CameraManager } from "../../core/camera/CameraManager";
|
||||
export declare class VRControl implements Control {
|
||||
readonly mode = NavigationModes.FirstPerson;
|
||||
private cameraManager;
|
||||
constructor(cameraManager: CameraManager);
|
||||
setupControl(): void;
|
||||
adjustCameraByBbox(box: THREE.Box3): void;
|
||||
}
|
||||
131
demo/libs/types/core/controls/VRControls.d.ts
vendored
131
demo/libs/types/core/controls/VRControls.d.ts
vendored
@ -1,131 +0,0 @@
|
||||
import { EventDispatcher, PerspectiveCamera, Vector3 } from "three";
|
||||
import type { ControlsHelper } from "../../core/helpers";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare enum STATE {
|
||||
NONE = -1,
|
||||
ROTATE = 0,
|
||||
DOLLY = 1,
|
||||
PAN = 2,
|
||||
TOUCH_ROTATE = 3,
|
||||
TOUCH_DOLLY = 4
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare enum Keys {
|
||||
LEFT = "ArrowLeft",
|
||||
UP = "ArrowUp",
|
||||
RIGHT = "ArrowRight",
|
||||
BOTTOM = "ArrowDown"
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare class VRControls extends EventDispatcher {
|
||||
object: PerspectiveCamera;
|
||||
domElement: HTMLCanvasElement;
|
||||
isVRMode: boolean;
|
||||
enabled: boolean;
|
||||
target: Vector3;
|
||||
enableZoom: boolean;
|
||||
enablePan: boolean;
|
||||
enableRotate: boolean;
|
||||
state: STATE;
|
||||
rotateSpeed: number;
|
||||
zoomSpeed: number;
|
||||
panSpeed: number;
|
||||
scale: number;
|
||||
minZoom: number;
|
||||
maxZoom: number;
|
||||
screenSpacePanning: boolean;
|
||||
autoRotate: boolean;
|
||||
controlsHelper?: ControlsHelper;
|
||||
autoRotateSpeed: number;
|
||||
enableDamping: boolean;
|
||||
dampingFactor: number;
|
||||
minAzimuthAngle: number;
|
||||
maxAzimuthAngle: number;
|
||||
minPolarAngle: number;
|
||||
maxPolarAngle: number;
|
||||
minDistance: number;
|
||||
maxDistance: number;
|
||||
keyPanSpeed: number;
|
||||
minFov: number;
|
||||
maxFov: number;
|
||||
private zoomChanged;
|
||||
private panOffset;
|
||||
private pointerPositions;
|
||||
private rotateStart;
|
||||
private rotateEnd;
|
||||
private rotateDelta;
|
||||
private dollyStart;
|
||||
private dollyEnd;
|
||||
private dollyDelta;
|
||||
private panStart;
|
||||
private panEnd;
|
||||
private panDelta;
|
||||
private pointers;
|
||||
private spherical;
|
||||
private sphericalDelta;
|
||||
private domElementKeyEvents?;
|
||||
private quat;
|
||||
constructor(object: PerspectiveCamera, domElement: HTMLCanvasElement, isVRMode?: boolean);
|
||||
dispose(): void;
|
||||
update: () => boolean;
|
||||
private addPointer;
|
||||
private removePointer;
|
||||
private onContextMenu;
|
||||
/**
|
||||
*
|
||||
* Get the distance between two points
|
||||
* @param {number[]} p1
|
||||
* @param {number[]} p2
|
||||
* @return {*}
|
||||
* @memberof VRControls
|
||||
*/
|
||||
getDist(p1: number[], p2: number[]): number;
|
||||
private trackPointer;
|
||||
/**************************PointerDown Event*************************/
|
||||
private onTouchStart;
|
||||
private onMouseDown;
|
||||
private onPointerDown;
|
||||
/**************************PointerMove Event*************************/
|
||||
private onTouchMove;
|
||||
private onMouseMove;
|
||||
private onPointerMove;
|
||||
/**************************PointerUp Event*************************/
|
||||
handlerTouchEnd(event: PointerEvent): void;
|
||||
private onPointerUp;
|
||||
private onPointerCancel;
|
||||
handleMouseWheel(event: WheelEvent): void;
|
||||
private onMouseWheel;
|
||||
/**************************Ponter down event handling*************************/
|
||||
handleMouseDownRotate(event: PointerEvent): void;
|
||||
handleMouseDownDolly(event: PointerEvent): void;
|
||||
handleMouseDownPan(event: PointerEvent): void;
|
||||
handleTouchStartRotate(): void;
|
||||
handleTouchStartDolly(pointers: PointerEvent[]): void;
|
||||
/**************************Mouse move rotate event handling*************************/
|
||||
private updateRotate;
|
||||
handleMouseMoveRotate(event: PointerEvent): void;
|
||||
/**************************Mouse move zoom event handling*************************/
|
||||
private dollyOut;
|
||||
private dollyIn;
|
||||
handleMouseMoveDolly(event: PointerEvent): void;
|
||||
/**************************Mouse move pan event handling*************************/
|
||||
private pan;
|
||||
private panLeft;
|
||||
private panUp;
|
||||
handleMouseMovePan(event: PointerEvent): void;
|
||||
/**************************One-finger or Two-finger rotate event handling*************************/
|
||||
private getSecondPointerPosition;
|
||||
handleTouchMoveRotate(event: PointerEvent): void;
|
||||
/**************************Two-finger zoom event handling*************************/
|
||||
private updateFov;
|
||||
handleTouchMoveDolly(event: PointerEvent): void;
|
||||
private handleKeyDown;
|
||||
private onKeyDown;
|
||||
listenToKeyEvents(domElement: HTMLElement): void;
|
||||
}
|
||||
6
demo/libs/types/core/controls/index.d.ts
vendored
6
demo/libs/types/core/controls/index.d.ts
vendored
@ -1,2 +1,4 @@
|
||||
export * from "./VRControls";
|
||||
export * from "./CameraControlsEx";
|
||||
export * from "./Control";
|
||||
export * from "./OrbitControl";
|
||||
export * from "./PlanControl";
|
||||
export * from "./VRControl";
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
/**
|
||||
* AutoCad files sometimes use an indexed color value between 1 and 255 inclusive.
|
||||
* Each value corresponds to a color. index 1 is red, that is 16711680 or 0xFF0000.
|
||||
* index 0 and 256, while included in this array, are actually reserved for inheritance
|
||||
* values in AutoCad so they should not be used for index color lookups.
|
||||
*/
|
||||
declare const _default: number[];
|
||||
export default _default;
|
||||
/**
|
||||
* AutoCad files sometimes use an indexed color value between 1 and 255 inclusive.
|
||||
* Each value corresponds to a color. index 1 is red, that is 16711680 or 0xFF0000.
|
||||
* index 0 and 256, while included in this array, are actually reserved for inheritance
|
||||
* values in AutoCad so they should not be used for index color lookups.
|
||||
*/
|
||||
declare const _default: number[];
|
||||
export default _default;
|
||||
|
||||
@ -1,12 +1,12 @@
|
||||
export interface IGroup {
|
||||
code: number;
|
||||
value: number | string | boolean;
|
||||
}
|
||||
export declare abstract class DxfBaseReader {
|
||||
protected pointer: number;
|
||||
protected eof: boolean;
|
||||
lastReadGroup: IGroup | undefined;
|
||||
abstract next(): IGroup;
|
||||
abstract hasNext(): boolean;
|
||||
abstract isEOF(): boolean;
|
||||
}
|
||||
export interface IGroup {
|
||||
code: number;
|
||||
value: number | string | boolean;
|
||||
}
|
||||
export declare abstract class DxfBaseReader {
|
||||
protected pointer: number;
|
||||
protected eof: boolean;
|
||||
lastReadGroup: IGroup | undefined;
|
||||
abstract next(): IGroup;
|
||||
abstract hasNext(): boolean;
|
||||
abstract isEOF(): boolean;
|
||||
}
|
||||
|
||||
@ -1,14 +1,14 @@
|
||||
import { DxfBaseReader, IGroup } from "./DxfBaseReader";
|
||||
export default class DxfBinaryReader extends DxfBaseReader {
|
||||
private reader;
|
||||
private decoder;
|
||||
private int8Array;
|
||||
private caches;
|
||||
constructor(data: ArrayBuffer);
|
||||
next(): IGroup;
|
||||
hasNext(): boolean;
|
||||
isEOF(): boolean;
|
||||
private parseGroupValue;
|
||||
private readNullTerminatedString;
|
||||
private ReadBinaryData;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "./DxfBaseReader";
|
||||
export default class DxfBinaryReader extends DxfBaseReader {
|
||||
private reader;
|
||||
private decoder;
|
||||
private int8Array;
|
||||
private caches;
|
||||
constructor(data: ArrayBuffer);
|
||||
next(): IGroup;
|
||||
hasNext(): boolean;
|
||||
isEOF(): boolean;
|
||||
private parseGroupValue;
|
||||
private readNullTerminatedString;
|
||||
private ReadBinaryData;
|
||||
}
|
||||
|
||||
654
demo/libs/types/core/dxf-parser/DxfParser.d.ts
vendored
654
demo/libs/types/core/dxf-parser/DxfParser.d.ts
vendored
@ -1,327 +1,327 @@
|
||||
/// <reference types="node" />
|
||||
import { Readable } from "stream";
|
||||
import IGeometry, { IEntity, IPoint } from "./entities/geomtry";
|
||||
import { IObject, IObjectParser } from "./objects/common";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare enum BlockTypeFlags {
|
||||
None = 0,
|
||||
AnonymousBlock = 1,
|
||||
NonConstantAttributeDefinitions = 2,
|
||||
XRef = 4,
|
||||
XRefOverlay = 8,
|
||||
ExternallyDependent = 16,
|
||||
ResolvedExternalReference = 32,
|
||||
DefinitionExternalReference = 64
|
||||
}
|
||||
/**
|
||||
* Definition of a block. Which contains entities, name, handle, etc.
|
||||
* @internal
|
||||
*/
|
||||
export interface IBlock {
|
||||
entities: IEntity[];
|
||||
ownerHandle: string;
|
||||
xrefPath: string;
|
||||
name: string;
|
||||
name2: string;
|
||||
handle: string;
|
||||
layer: string;
|
||||
position: IPoint;
|
||||
paperSpace: boolean;
|
||||
blockType: BlockTypeFlags;
|
||||
description?: string;
|
||||
}
|
||||
/**
|
||||
* Definition of a viewport.
|
||||
* @internal
|
||||
*/
|
||||
export interface IViewport {
|
||||
name: string;
|
||||
lowerLeftCorner: IPoint;
|
||||
upperRightCorner: IPoint;
|
||||
center: IPoint;
|
||||
snapBasePoint: IPoint;
|
||||
snapSpacing: IPoint;
|
||||
gridSpacing: IPoint;
|
||||
viewDirectionFromTarget: IPoint;
|
||||
viewTarget: IPoint;
|
||||
aspectRatio: number;
|
||||
lensLength: number;
|
||||
frontClippingPlane: string | number | boolean;
|
||||
backClippingPlane: string | number | boolean;
|
||||
viewHeight: number;
|
||||
snapRotationAngle: number;
|
||||
viewTwistAngle: number;
|
||||
orthographicType: string;
|
||||
ucsOrigin: IPoint;
|
||||
ucsXAxis: IPoint;
|
||||
ucsYAxis: IPoint;
|
||||
renderMode: string;
|
||||
defaultLightingType: string;
|
||||
defaultLightingOn: string;
|
||||
ownerHandle: string;
|
||||
ambientColor: number;
|
||||
}
|
||||
/**
|
||||
* Viewport table definition.
|
||||
* @internal
|
||||
*/
|
||||
export interface IViewportTableDefinition {
|
||||
tableRecordsProperty: "viewports";
|
||||
tableName: "viewport";
|
||||
dxfSymbolName: "VPORT";
|
||||
parseTableRecords(): IViewport[];
|
||||
}
|
||||
/**
|
||||
* Line type.
|
||||
* @internal
|
||||
*/
|
||||
export interface ILineType {
|
||||
name: string;
|
||||
description: string;
|
||||
pattern: number[];
|
||||
patternLength: number;
|
||||
}
|
||||
/**
|
||||
* Line type table definition.
|
||||
* @internal
|
||||
*/
|
||||
export interface ILineTypeTableDefinition {
|
||||
tableRecordsProperty: "lineTypes";
|
||||
tableName: "lineType";
|
||||
dxfSymbolName: "LTYPE";
|
||||
parseTableRecords(): Record<string, ILineType>;
|
||||
}
|
||||
/**
|
||||
* Definition of a layer.
|
||||
*/
|
||||
export interface ILayer {
|
||||
/**
|
||||
* Unique layer name with the dxf/dwg file.
|
||||
*/
|
||||
name: string;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
handle: string;
|
||||
visible: boolean;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
colorIndex: number;
|
||||
/**
|
||||
* color in decimal
|
||||
*/
|
||||
color: number;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
frozen: boolean;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
flag: number;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
lineType: string;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
lineweight: 0 | 5 | 9 | 13 | 15 | 18 | 20 | 25 | 30 | 35 | 40 | 50 | 53 | 60 | 70 | 80 | 90 | 100 | 106 | 120 | 140 | 158 | 200 | 211 | -3 | -2 | -1;
|
||||
}
|
||||
/**
|
||||
* Layer table definition.
|
||||
* @internal
|
||||
*/
|
||||
export interface ILayerTableDefinition {
|
||||
tableRecordsProperty: "layers";
|
||||
tableName: "layer";
|
||||
dxfSymbolName: "LAYER";
|
||||
parseTableRecords(): Record<string, ILayer>;
|
||||
}
|
||||
/**
|
||||
* BlockRecord
|
||||
* @internal
|
||||
*/
|
||||
export interface IBlockRecord {
|
||||
handle: string;
|
||||
ownerHandle: string;
|
||||
blockName: string;
|
||||
layoutHandle: string;
|
||||
blockInsertUnits: number;
|
||||
blockExplodability: number;
|
||||
blockScalability: number;
|
||||
bitmap?: string;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface IBlockRecordTableDefinition {
|
||||
tableRecordsProperty: "blockRecords";
|
||||
tableName: "blockRecord";
|
||||
dxfSymbolName: "BLOCK_RECORD";
|
||||
parseTableRecords(): Record<string, IBlockRecord>;
|
||||
}
|
||||
/**
|
||||
* Definition of a style.
|
||||
* @internal
|
||||
*/
|
||||
export interface IStyle {
|
||||
handle: string;
|
||||
ownerHandle: string;
|
||||
styleName: string;
|
||||
priorTextHeight: number;
|
||||
textHeight: number;
|
||||
xScale: number;
|
||||
rotation: number;
|
||||
mirrorType: number;
|
||||
fontFile: string;
|
||||
bigFontFile: string;
|
||||
}
|
||||
/**
|
||||
* Style table definition.
|
||||
* @internal
|
||||
*/
|
||||
export interface IStyleTableDefinition {
|
||||
tableRecordsProperty: "styles";
|
||||
tableName: "style";
|
||||
dxfSymbolName: "STYLE";
|
||||
parseTableRecords(): Record<string, IStyle>;
|
||||
}
|
||||
/**
|
||||
* Dim style.
|
||||
* @internal
|
||||
*/
|
||||
export interface IDimStyle {
|
||||
styleName: string;
|
||||
DIMSCALE: number;
|
||||
DIMASZ: number;
|
||||
DIMEXO: string;
|
||||
DIMEXE: string;
|
||||
DIMSE1: string;
|
||||
DIMSE2: string;
|
||||
DIMTAD: string;
|
||||
DIMTXT: string;
|
||||
DIMGAP: number;
|
||||
DIMCLRD: number;
|
||||
DIMCLRT: number;
|
||||
DIMLFAC: number;
|
||||
DIMDEC: string;
|
||||
DIMLDRBLK: string;
|
||||
}
|
||||
/**
|
||||
* Dim style table definition
|
||||
* @internal
|
||||
*/
|
||||
export interface IDimStyleTableDefinition {
|
||||
tableRecordsProperty: "dimStyles";
|
||||
tableName: "dimStyle";
|
||||
dxfSymbolName: "DIMSTYLE";
|
||||
parseTableRecords(): Record<string, IDimStyle>;
|
||||
}
|
||||
/**
|
||||
* Table definitions.
|
||||
* @internal
|
||||
*/
|
||||
export interface ITableDefinitions {
|
||||
VPORT: IViewportTableDefinition;
|
||||
LTYPE: ILineTypeTableDefinition;
|
||||
LAYER: ILayerTableDefinition;
|
||||
BLOCK_RECORD: IBlockRecordTableDefinition;
|
||||
STYLE: IStyleTableDefinition;
|
||||
DIMSTYLE: IDimStyleTableDefinition;
|
||||
}
|
||||
/**
|
||||
* Base table
|
||||
* @internal
|
||||
*/
|
||||
export interface IBaseTable {
|
||||
handle: string;
|
||||
ownerHandle: string;
|
||||
}
|
||||
/**
|
||||
* Viewport table
|
||||
* @internal
|
||||
*/
|
||||
export interface IViewportTable extends IBaseTable {
|
||||
viewports: IViewport[];
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface ILayerTypesTable extends IBaseTable {
|
||||
lineTypes: Record<string, ILineType>;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface ILayersTable extends IBaseTable {
|
||||
layers: Record<string, ILayer>;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface IStylesTable extends IBaseTable {
|
||||
styles: Record<string, IStyle>;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface IDimStyleTable extends IBaseTable {
|
||||
dimStyles: Record<string, IDimStyle>;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface IBlockRecordsTable extends IBaseTable {
|
||||
blockRecords: Record<string, IBlockRecord>;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface ITables {
|
||||
viewport: IViewportTable;
|
||||
lineType: ILayerTypesTable;
|
||||
layer: ILayersTable;
|
||||
blockRecord: IBlockRecordsTable;
|
||||
style: IStylesTable;
|
||||
dimStyle: IDimStyleTable;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare type ITable = IViewportTable | ILayerTypesTable | ILayersTable | IBlockRecordsTable | IStylesTable | IDimStyleTable;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface IDxf {
|
||||
header: Record<string, IPoint | number>;
|
||||
entities: IEntity[];
|
||||
blocks: Record<string, IBlock>;
|
||||
tables: ITables;
|
||||
objects: Record<string, IObject[]>;
|
||||
}
|
||||
export default class DxfParser {
|
||||
private encoding?;
|
||||
private _entityHandlers;
|
||||
private _objectHandlers;
|
||||
private _layoutBlocks;
|
||||
private unhandledSections;
|
||||
private unhandledObjects;
|
||||
private unhandledEntities;
|
||||
private unsupportedLineTypes;
|
||||
constructor(encoding?: string);
|
||||
parse(source: string | ArrayBuffer): IDxf;
|
||||
registerEntityHandler(handlerType: new () => IGeometry): void;
|
||||
registerObjectHandler(handlerType: new () => IObjectParser): void;
|
||||
parseSync(source: string | ArrayBuffer): IDxf;
|
||||
parseStream(stream: Readable): Promise<IDxf>;
|
||||
private _parse;
|
||||
/**
|
||||
* Splits a string to string array by line separator, "\r\n", "\r", "\n", etc.
|
||||
* We do this instead of using "String.prototype.split(/\r\n|\r|\n/g)", because it is extreamly slow!
|
||||
*/
|
||||
private splitByLineSeparator;
|
||||
}
|
||||
/// <reference types="node" />
|
||||
import { Readable } from "stream";
|
||||
import IGeometry, { IEntity, IPoint } from "./entities/geomtry";
|
||||
import { IObject, IObjectParser } from "./objects/common";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare enum BlockTypeFlags {
|
||||
None = 0,
|
||||
AnonymousBlock = 1,
|
||||
NonConstantAttributeDefinitions = 2,
|
||||
XRef = 4,
|
||||
XRefOverlay = 8,
|
||||
ExternallyDependent = 16,
|
||||
ResolvedExternalReference = 32,
|
||||
DefinitionExternalReference = 64
|
||||
}
|
||||
/**
|
||||
* Definition of a block. Which contains entities, name, handle, etc.
|
||||
* @internal
|
||||
*/
|
||||
export interface IBlock {
|
||||
entities: IEntity[];
|
||||
ownerHandle: string;
|
||||
xrefPath: string;
|
||||
name: string;
|
||||
name2: string;
|
||||
handle: string;
|
||||
layer: string;
|
||||
position: IPoint;
|
||||
paperSpace: boolean;
|
||||
blockType: BlockTypeFlags;
|
||||
description?: string;
|
||||
}
|
||||
/**
|
||||
* Definition of a viewport.
|
||||
* @internal
|
||||
*/
|
||||
export interface IViewport {
|
||||
name: string;
|
||||
lowerLeftCorner: IPoint;
|
||||
upperRightCorner: IPoint;
|
||||
center: IPoint;
|
||||
snapBasePoint: IPoint;
|
||||
snapSpacing: IPoint;
|
||||
gridSpacing: IPoint;
|
||||
viewDirectionFromTarget: IPoint;
|
||||
viewTarget: IPoint;
|
||||
aspectRatio: number;
|
||||
lensLength: number;
|
||||
frontClippingPlane: string | number | boolean;
|
||||
backClippingPlane: string | number | boolean;
|
||||
viewHeight: number;
|
||||
snapRotationAngle: number;
|
||||
viewTwistAngle: number;
|
||||
orthographicType: string;
|
||||
ucsOrigin: IPoint;
|
||||
ucsXAxis: IPoint;
|
||||
ucsYAxis: IPoint;
|
||||
renderMode: string;
|
||||
defaultLightingType: string;
|
||||
defaultLightingOn: string;
|
||||
ownerHandle: string;
|
||||
ambientColor: number;
|
||||
}
|
||||
/**
|
||||
* Viewport table definition.
|
||||
* @internal
|
||||
*/
|
||||
export interface IViewportTableDefinition {
|
||||
tableRecordsProperty: "viewports";
|
||||
tableName: "viewport";
|
||||
dxfSymbolName: "VPORT";
|
||||
parseTableRecords(): IViewport[];
|
||||
}
|
||||
/**
|
||||
* Line type.
|
||||
* @internal
|
||||
*/
|
||||
export interface ILineType {
|
||||
name: string;
|
||||
description: string;
|
||||
pattern: number[];
|
||||
patternLength: number;
|
||||
}
|
||||
/**
|
||||
* Line type table definition.
|
||||
* @internal
|
||||
*/
|
||||
export interface ILineTypeTableDefinition {
|
||||
tableRecordsProperty: "lineTypes";
|
||||
tableName: "lineType";
|
||||
dxfSymbolName: "LTYPE";
|
||||
parseTableRecords(): Record<string, ILineType>;
|
||||
}
|
||||
/**
|
||||
* Definition of a layer.
|
||||
*/
|
||||
export interface ILayer {
|
||||
/**
|
||||
* Unique layer name with the dxf/dwg file.
|
||||
*/
|
||||
name: string;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
handle: string;
|
||||
visible: boolean;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
colorIndex: number;
|
||||
/**
|
||||
* color in decimal
|
||||
*/
|
||||
color: number;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
frozen: boolean;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
flag: number;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
lineType: string;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
lineweight: 0 | 5 | 9 | 13 | 15 | 18 | 20 | 25 | 30 | 35 | 40 | 50 | 53 | 60 | 70 | 80 | 90 | 100 | 106 | 120 | 140 | 158 | 200 | 211 | -3 | -2 | -1;
|
||||
}
|
||||
/**
|
||||
* Layer table definition.
|
||||
* @internal
|
||||
*/
|
||||
export interface ILayerTableDefinition {
|
||||
tableRecordsProperty: "layers";
|
||||
tableName: "layer";
|
||||
dxfSymbolName: "LAYER";
|
||||
parseTableRecords(): Record<string, ILayer>;
|
||||
}
|
||||
/**
|
||||
* BlockRecord
|
||||
* @internal
|
||||
*/
|
||||
export interface IBlockRecord {
|
||||
handle: string;
|
||||
ownerHandle: string;
|
||||
blockName: string;
|
||||
layoutHandle: string;
|
||||
blockInsertUnits: number;
|
||||
blockExplodability: number;
|
||||
blockScalability: number;
|
||||
bitmap?: string;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface IBlockRecordTableDefinition {
|
||||
tableRecordsProperty: "blockRecords";
|
||||
tableName: "blockRecord";
|
||||
dxfSymbolName: "BLOCK_RECORD";
|
||||
parseTableRecords(): Record<string, IBlockRecord>;
|
||||
}
|
||||
/**
|
||||
* Definition of a style.
|
||||
* @internal
|
||||
*/
|
||||
export interface IStyle {
|
||||
handle: string;
|
||||
ownerHandle: string;
|
||||
styleName: string;
|
||||
priorTextHeight: number;
|
||||
textHeight: number;
|
||||
xScale: number;
|
||||
rotation: number;
|
||||
mirrorType: number;
|
||||
fontFile: string;
|
||||
bigFontFile: string;
|
||||
}
|
||||
/**
|
||||
* Style table definition.
|
||||
* @internal
|
||||
*/
|
||||
export interface IStyleTableDefinition {
|
||||
tableRecordsProperty: "styles";
|
||||
tableName: "style";
|
||||
dxfSymbolName: "STYLE";
|
||||
parseTableRecords(): Record<string, IStyle>;
|
||||
}
|
||||
/**
|
||||
* Dim style.
|
||||
* @internal
|
||||
*/
|
||||
export interface IDimStyle {
|
||||
styleName: string;
|
||||
DIMSCALE: number;
|
||||
DIMASZ: number;
|
||||
DIMEXO: string;
|
||||
DIMEXE: string;
|
||||
DIMSE1: string;
|
||||
DIMSE2: string;
|
||||
DIMTAD: string;
|
||||
DIMTXT: string;
|
||||
DIMGAP: number;
|
||||
DIMCLRD: number;
|
||||
DIMCLRT: number;
|
||||
DIMLFAC: number;
|
||||
DIMDEC: string;
|
||||
DIMLDRBLK: string;
|
||||
}
|
||||
/**
|
||||
* Dim style table definition
|
||||
* @internal
|
||||
*/
|
||||
export interface IDimStyleTableDefinition {
|
||||
tableRecordsProperty: "dimStyles";
|
||||
tableName: "dimStyle";
|
||||
dxfSymbolName: "DIMSTYLE";
|
||||
parseTableRecords(): Record<string, IDimStyle>;
|
||||
}
|
||||
/**
|
||||
* Table definitions.
|
||||
* @internal
|
||||
*/
|
||||
export interface ITableDefinitions {
|
||||
VPORT: IViewportTableDefinition;
|
||||
LTYPE: ILineTypeTableDefinition;
|
||||
LAYER: ILayerTableDefinition;
|
||||
BLOCK_RECORD: IBlockRecordTableDefinition;
|
||||
STYLE: IStyleTableDefinition;
|
||||
DIMSTYLE: IDimStyleTableDefinition;
|
||||
}
|
||||
/**
|
||||
* Base table
|
||||
* @internal
|
||||
*/
|
||||
export interface IBaseTable {
|
||||
handle: string;
|
||||
ownerHandle: string;
|
||||
}
|
||||
/**
|
||||
* Viewport table
|
||||
* @internal
|
||||
*/
|
||||
export interface IViewportTable extends IBaseTable {
|
||||
viewports: IViewport[];
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface ILayerTypesTable extends IBaseTable {
|
||||
lineTypes: Record<string, ILineType>;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface ILayersTable extends IBaseTable {
|
||||
layers: Record<string, ILayer>;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface IStylesTable extends IBaseTable {
|
||||
styles: Record<string, IStyle>;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface IDimStyleTable extends IBaseTable {
|
||||
dimStyles: Record<string, IDimStyle>;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface IBlockRecordsTable extends IBaseTable {
|
||||
blockRecords: Record<string, IBlockRecord>;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface ITables {
|
||||
viewport: IViewportTable;
|
||||
lineType: ILayerTypesTable;
|
||||
layer: ILayersTable;
|
||||
blockRecord: IBlockRecordsTable;
|
||||
style: IStylesTable;
|
||||
dimStyle: IDimStyleTable;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare type ITable = IViewportTable | ILayerTypesTable | ILayersTable | IBlockRecordsTable | IStylesTable | IDimStyleTable;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface IDxf {
|
||||
header: Record<string, IPoint | number>;
|
||||
entities: IEntity[];
|
||||
blocks: Record<string, IBlock>;
|
||||
tables: ITables;
|
||||
objects: Record<string, IObject[]>;
|
||||
}
|
||||
export default class DxfParser {
|
||||
private encoding?;
|
||||
private _entityHandlers;
|
||||
private _objectHandlers;
|
||||
private _layoutBlocks;
|
||||
private unhandledSections;
|
||||
private unhandledObjects;
|
||||
private unhandledEntities;
|
||||
private unsupportedLineTypes;
|
||||
constructor(encoding?: string);
|
||||
parse(source: string | ArrayBuffer): IDxf;
|
||||
registerEntityHandler(handlerType: new () => IGeometry): void;
|
||||
registerObjectHandler(handlerType: new () => IObjectParser): void;
|
||||
parseSync(source: string | ArrayBuffer): IDxf;
|
||||
parseStream(stream: Readable): Promise<IDxf>;
|
||||
private _parse;
|
||||
/**
|
||||
* Splits a string to string array by line separator, "\r\n", "\r", "\n", etc.
|
||||
* We do this instead of using "String.prototype.split(/\r\n|\r|\n/g)", because it is extreamly slow!
|
||||
*/
|
||||
private splitByLineSeparator;
|
||||
}
|
||||
|
||||
@ -1,31 +1,31 @@
|
||||
import { IGroup, DxfBaseReader } from './DxfBaseReader';
|
||||
/**
|
||||
*
|
||||
* Based off the AutoCad 2012 DXF Reference
|
||||
* http://images.autodesk.com/adsk/files/autocad_2012_pdf_dxf-reference_enu.pdf
|
||||
*
|
||||
* Reads through an array representing lines of a dxf file. Takes an array and
|
||||
* provides an easy interface to extract group code and value pairs.
|
||||
* @param data - an array where each element represents a line in the dxf file
|
||||
* @constructor
|
||||
*/
|
||||
export default class DxfTextRender extends DxfBaseReader {
|
||||
private data;
|
||||
constructor(data: string[]);
|
||||
/**
|
||||
* Gets the next group (code, value) from the array. A group is two consecutive elements
|
||||
* in the array. The first is the code, the second is the value.
|
||||
* @returns {{code: Number}|*}
|
||||
*/
|
||||
next(): IGroup;
|
||||
/**
|
||||
* Returns true if there is another code/value pair (2 elements in the array).
|
||||
* @returns {boolean}
|
||||
*/
|
||||
hasNext(): boolean;
|
||||
/**
|
||||
* Returns true if the scanner is at the end of the array
|
||||
* @returns {boolean}
|
||||
*/
|
||||
isEOF(): boolean;
|
||||
}
|
||||
import { IGroup, DxfBaseReader } from './DxfBaseReader';
|
||||
/**
|
||||
*
|
||||
* Based off the AutoCad 2012 DXF Reference
|
||||
* http://images.autodesk.com/adsk/files/autocad_2012_pdf_dxf-reference_enu.pdf
|
||||
*
|
||||
* Reads through an array representing lines of a dxf file. Takes an array and
|
||||
* provides an easy interface to extract group code and value pairs.
|
||||
* @param data - an array where each element represents a line in the dxf file
|
||||
* @constructor
|
||||
*/
|
||||
export default class DxfTextRender extends DxfBaseReader {
|
||||
private data;
|
||||
constructor(data: string[]);
|
||||
/**
|
||||
* Gets the next group (code, value) from the array. A group is two consecutive elements
|
||||
* in the array. The first is the code, the second is the value.
|
||||
* @returns {{code: Number}|*}
|
||||
*/
|
||||
next(): IGroup;
|
||||
/**
|
||||
* Returns true if there is another code/value pair (2 elements in the array).
|
||||
* @returns {boolean}
|
||||
*/
|
||||
hasNext(): boolean;
|
||||
/**
|
||||
* Returns true if the scanner is at the end of the array
|
||||
* @returns {boolean}
|
||||
*/
|
||||
isEOF(): boolean;
|
||||
}
|
||||
|
||||
@ -1,36 +1,36 @@
|
||||
import { DxfBaseReader, IGroup } from "./DxfBaseReader";
|
||||
import { IEntity, IPoint } from "./entities/geomtry";
|
||||
import { IObject } from "./objects/common";
|
||||
export declare const originalTypes: string[];
|
||||
/**
|
||||
* Returns the truecolor value of the given AutoCad color index value
|
||||
* @return {Number} truecolor value as a number
|
||||
*/
|
||||
export declare function getAcadColor(index: number): number;
|
||||
/**
|
||||
* Parses the 2D or 3D coordinate, vector, or point. When complete,
|
||||
* the scanner remains on the last group of the coordinate.
|
||||
* @param {*} scanner
|
||||
*/
|
||||
export declare function parsePoint(scanner: DxfBaseReader): IPoint;
|
||||
/**
|
||||
* Parses 16 numbers as an array. When complete,
|
||||
* the scanner remains on the last group of the value.
|
||||
* @param {*} scanner
|
||||
* @param {*} groupCode
|
||||
*/
|
||||
export declare function parseMatrix(scanner: DxfBaseReader, groupCode: number): number[];
|
||||
/**
|
||||
* Attempts to parse codes common to all entities. Returns true if the group
|
||||
* was handled by this function.
|
||||
* @param {*} entity - the entity currently being parsed
|
||||
* @param {*} curr - the current group being parsed
|
||||
*/
|
||||
export declare function checkCommonEntityProperties(entity: IEntity, curr: IGroup): boolean;
|
||||
/**
|
||||
* Attempts to parse codes common to all objects. Returns true if the group
|
||||
* was handled by this function.
|
||||
* @param {*} object - the object currently being parsed
|
||||
* @param {*} curr - the current group being parsed
|
||||
*/
|
||||
export declare function checkCommonObjectProperties(object: IObject, curr: IGroup): boolean;
|
||||
import { DxfBaseReader, IGroup } from "./DxfBaseReader";
|
||||
import { IEntity, IPoint } from "./entities/geomtry";
|
||||
import { IObject } from "./objects/common";
|
||||
export declare const originalTypes: string[];
|
||||
/**
|
||||
* Returns the truecolor value of the given AutoCad color index value
|
||||
* @return {Number} truecolor value as a number
|
||||
*/
|
||||
export declare function getAcadColor(index: number): number;
|
||||
/**
|
||||
* Parses the 2D or 3D coordinate, vector, or point. When complete,
|
||||
* the scanner remains on the last group of the coordinate.
|
||||
* @param {*} scanner
|
||||
*/
|
||||
export declare function parsePoint(scanner: DxfBaseReader): IPoint;
|
||||
/**
|
||||
* Parses 16 numbers as an array. When complete,
|
||||
* the scanner remains on the last group of the value.
|
||||
* @param {*} scanner
|
||||
* @param {*} groupCode
|
||||
*/
|
||||
export declare function parseMatrix(scanner: DxfBaseReader, groupCode: number): number[];
|
||||
/**
|
||||
* Attempts to parse codes common to all entities. Returns true if the group
|
||||
* was handled by this function.
|
||||
* @param {*} entity - the entity currently being parsed
|
||||
* @param {*} curr - the current group being parsed
|
||||
*/
|
||||
export declare function checkCommonEntityProperties(entity: IEntity, curr: IGroup): boolean;
|
||||
/**
|
||||
* Attempts to parse codes common to all objects. Returns true if the group
|
||||
* was handled by this function.
|
||||
* @param {*} object - the object currently being parsed
|
||||
* @param {*} curr - the current group being parsed
|
||||
*/
|
||||
export declare function checkCommonObjectProperties(object: IObject, curr: IGroup): boolean;
|
||||
|
||||
@ -1,11 +1,11 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface I3DfaceEntity extends IEntity {
|
||||
shape: boolean;
|
||||
hasContinuousLinetypePattern: boolean;
|
||||
vertices: IPoint[];
|
||||
}
|
||||
export default class ThreeDface implements IGeometry {
|
||||
ForEntityName: "3DFACE";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): I3DfaceEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface I3DfaceEntity extends IEntity {
|
||||
shape: boolean;
|
||||
hasContinuousLinetypePattern: boolean;
|
||||
vertices: IPoint[];
|
||||
}
|
||||
export default class ThreeDface implements IGeometry {
|
||||
ForEntityName: "3DFACE";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): I3DfaceEntity;
|
||||
}
|
||||
|
||||
@ -1,16 +1,16 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface IArcEntity extends IEntity {
|
||||
center: IPoint;
|
||||
radius: number;
|
||||
startAngle: number;
|
||||
endAngle: number;
|
||||
angleLength: number;
|
||||
extrusionDirectionX: number;
|
||||
extrusionDirectionY: number;
|
||||
extrusionDirectionZ: number;
|
||||
}
|
||||
export default class Arc implements IGeometry {
|
||||
ForEntityName: "ARC";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IArcEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface IArcEntity extends IEntity {
|
||||
center: IPoint;
|
||||
radius: number;
|
||||
startAngle: number;
|
||||
endAngle: number;
|
||||
angleLength: number;
|
||||
extrusionDirectionX: number;
|
||||
extrusionDirectionY: number;
|
||||
extrusionDirectionZ: number;
|
||||
}
|
||||
export default class Arc implements IGeometry {
|
||||
ForEntityName: "ARC";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IArcEntity;
|
||||
}
|
||||
|
||||
@ -1,31 +1,31 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface IAttdefEntity extends IEntity {
|
||||
xScale: number;
|
||||
textStyle: "STANDARD" | string;
|
||||
text: string;
|
||||
tag: string;
|
||||
prompt: string;
|
||||
startPoint: IPoint;
|
||||
endPoint: IPoint;
|
||||
thickness: number;
|
||||
textHeight: number;
|
||||
rotation: number;
|
||||
obliqueAngle: number;
|
||||
invisible: boolean;
|
||||
constant: boolean;
|
||||
verificationRequired: boolean;
|
||||
preset: boolean;
|
||||
backwards: boolean;
|
||||
mirrored: boolean;
|
||||
horizontalJustification: number;
|
||||
fieldLength: number;
|
||||
verticalJustification: number;
|
||||
extrusionDirectionX: number;
|
||||
extrusionDirectionY: number;
|
||||
extrusionDirectionZ: number;
|
||||
}
|
||||
export default class Attdef implements IGeometry {
|
||||
ForEntityName: "ATTDEF";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IAttdefEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface IAttdefEntity extends IEntity {
|
||||
xScale: number;
|
||||
textStyle: "STANDARD" | string;
|
||||
text: string;
|
||||
tag: string;
|
||||
prompt: string;
|
||||
startPoint: IPoint;
|
||||
endPoint: IPoint;
|
||||
thickness: number;
|
||||
textHeight: number;
|
||||
rotation: number;
|
||||
obliqueAngle: number;
|
||||
invisible: boolean;
|
||||
constant: boolean;
|
||||
verificationRequired: boolean;
|
||||
preset: boolean;
|
||||
backwards: boolean;
|
||||
mirrored: boolean;
|
||||
horizontalJustification: number;
|
||||
fieldLength: number;
|
||||
verticalJustification: number;
|
||||
extrusionDirectionX: number;
|
||||
extrusionDirectionY: number;
|
||||
extrusionDirectionZ: number;
|
||||
}
|
||||
export default class Attdef implements IGeometry {
|
||||
ForEntityName: "ATTDEF";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IAttdefEntity;
|
||||
}
|
||||
|
||||
@ -1,31 +1,31 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface IAttribEntity extends IEntity {
|
||||
xScale: number;
|
||||
textStyle: "STANDARD" | string;
|
||||
text: string;
|
||||
tag: string;
|
||||
prompt: string;
|
||||
startPoint: IPoint;
|
||||
endPoint: IPoint;
|
||||
thickness: number;
|
||||
textHeight: number;
|
||||
rotation: number;
|
||||
obliqueAngle: number;
|
||||
invisible: boolean;
|
||||
constant: boolean;
|
||||
verificationRequired: boolean;
|
||||
preset: boolean;
|
||||
backwards: boolean;
|
||||
mirrored: boolean;
|
||||
horizontalJustification: number;
|
||||
fieldLength: number;
|
||||
verticalJustification: number;
|
||||
extrusionDirectionX: number;
|
||||
extrusionDirectionY: number;
|
||||
extrusionDirectionZ: number;
|
||||
}
|
||||
export default class Attrib implements IGeometry {
|
||||
ForEntityName: "ATTRIB";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IAttribEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface IAttribEntity extends IEntity {
|
||||
xScale: number;
|
||||
textStyle: "STANDARD" | string;
|
||||
text: string;
|
||||
tag: string;
|
||||
prompt: string;
|
||||
startPoint: IPoint;
|
||||
endPoint: IPoint;
|
||||
thickness: number;
|
||||
textHeight: number;
|
||||
rotation: number;
|
||||
obliqueAngle: number;
|
||||
invisible: boolean;
|
||||
constant: boolean;
|
||||
verificationRequired: boolean;
|
||||
preset: boolean;
|
||||
backwards: boolean;
|
||||
mirrored: boolean;
|
||||
horizontalJustification: number;
|
||||
fieldLength: number;
|
||||
verticalJustification: number;
|
||||
extrusionDirectionX: number;
|
||||
extrusionDirectionY: number;
|
||||
extrusionDirectionZ: number;
|
||||
}
|
||||
export default class Attrib implements IGeometry {
|
||||
ForEntityName: "ATTRIB";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IAttribEntity;
|
||||
}
|
||||
|
||||
@ -1,13 +1,13 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface ICircleEntity extends IEntity {
|
||||
center: IPoint;
|
||||
radius: number;
|
||||
startAngle: number;
|
||||
endAngle: number;
|
||||
angleLength: number;
|
||||
}
|
||||
export default class Circle implements IGeometry {
|
||||
ForEntityName: "CIRCLE";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): ICircleEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface ICircleEntity extends IEntity {
|
||||
center: IPoint;
|
||||
radius: number;
|
||||
startAngle: number;
|
||||
endAngle: number;
|
||||
angleLength: number;
|
||||
}
|
||||
export default class Circle implements IGeometry {
|
||||
ForEntityName: "CIRCLE";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): ICircleEntity;
|
||||
}
|
||||
|
||||
@ -1,22 +1,22 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface IDimensionEntity extends IEntity {
|
||||
block: string;
|
||||
dimStyleName: string;
|
||||
anchorPoint: IPoint;
|
||||
middleOfText: IPoint;
|
||||
insertionPoint: IPoint;
|
||||
linearOrAngularPoint1: IPoint;
|
||||
linearOrAngularPoint2: IPoint;
|
||||
diameterOrRadiusPoint: IPoint;
|
||||
arcPoint: IPoint;
|
||||
dimensionType: number;
|
||||
attachmentPoint: number;
|
||||
actualMeasurement: number;
|
||||
text: string;
|
||||
angle: number;
|
||||
}
|
||||
export default class Dimension implements IGeometry {
|
||||
ForEntityName: "DIMENSION";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IDimensionEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface IDimensionEntity extends IEntity {
|
||||
block: string;
|
||||
dimStyleName: string;
|
||||
anchorPoint: IPoint;
|
||||
middleOfText: IPoint;
|
||||
insertionPoint: IPoint;
|
||||
linearOrAngularPoint1: IPoint;
|
||||
linearOrAngularPoint2: IPoint;
|
||||
diameterOrRadiusPoint: IPoint;
|
||||
arcPoint: IPoint;
|
||||
dimensionType: number;
|
||||
attachmentPoint: number;
|
||||
actualMeasurement: number;
|
||||
text: string;
|
||||
angle: number;
|
||||
}
|
||||
export default class Dimension implements IGeometry {
|
||||
ForEntityName: "DIMENSION";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IDimensionEntity;
|
||||
}
|
||||
|
||||
@ -1,15 +1,15 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface IEllipseEntity extends IEntity {
|
||||
center: IPoint;
|
||||
majorAxisEndPoint: IPoint;
|
||||
axisRatio: number;
|
||||
startAngle: number;
|
||||
endAngle: number;
|
||||
name: string;
|
||||
extrusionDirection: IPoint;
|
||||
}
|
||||
export default class Ellipse implements IGeometry {
|
||||
ForEntityName: "ELLIPSE";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IEllipseEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface IEllipseEntity extends IEntity {
|
||||
center: IPoint;
|
||||
majorAxisEndPoint: IPoint;
|
||||
axisRatio: number;
|
||||
startAngle: number;
|
||||
endAngle: number;
|
||||
name: string;
|
||||
extrusionDirection: IPoint;
|
||||
}
|
||||
export default class Ellipse implements IGeometry {
|
||||
ForEntityName: "ELLIPSE";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IEllipseEntity;
|
||||
}
|
||||
|
||||
@ -1,40 +1,40 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface IPoint {
|
||||
x: number;
|
||||
y: number;
|
||||
z?: number;
|
||||
bulge?: number;
|
||||
}
|
||||
export interface IEntity {
|
||||
lineType: string;
|
||||
layer: string;
|
||||
lineTypeScale: number;
|
||||
visible: boolean;
|
||||
colorIndex: number;
|
||||
color: number;
|
||||
isTrueColor: boolean;
|
||||
inPaperSpace: boolean;
|
||||
layoutName: string;
|
||||
ownerHandle: string;
|
||||
materialObjectHandle: number;
|
||||
lineweight: 0 | 5 | 9 | 13 | 15 | 18 | 20 | 25 | 30 | 35 | 40 | 50 | 53 | 60 | 70 | 80 | 90 | 100 | 106 | 120 | 140 | 158 | 200 | 211 | -3 | -2 | -1;
|
||||
extendedData?: {
|
||||
customStrings?: string[];
|
||||
applicationName?: string;
|
||||
originalHandle?: string;
|
||||
originalType?: string;
|
||||
outlines?: number[][][];
|
||||
};
|
||||
type: string;
|
||||
handle: string;
|
||||
blockPosition?: IPoint;
|
||||
attributesFollow?: boolean;
|
||||
}
|
||||
export declare type EntityName = "POINT" | "3DFACE" | "ARC" | "ATTDEF" | "ATTRIB" | "CIRCLE" | "DIMENSION" | "MULTILEADER" | "ELLIPSE" | "HATCH" | "IMAGE" | "INSERT" | "LEADER" | "LINE" | "LWPOLYLINE" | "MTEXT" | "OLE2FRAME" | "POLYLINE" | "REGION" | "RAY" | "SEQEND" | "SOLID" | "SPLINE" | "ACAD_TABLE" | "TEXT" | "VERTEX" | "VIEWPORT" | "XLINE";
|
||||
export default interface IGeometry {
|
||||
ForEntityName: EntityName;
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface IPoint {
|
||||
x: number;
|
||||
y: number;
|
||||
z?: number;
|
||||
bulge?: number;
|
||||
}
|
||||
export interface IEntity {
|
||||
lineType: string;
|
||||
layer: string;
|
||||
lineTypeScale: number;
|
||||
visible: boolean;
|
||||
colorIndex: number;
|
||||
color: number;
|
||||
isTrueColor: boolean;
|
||||
inPaperSpace: boolean;
|
||||
layoutName: string;
|
||||
ownerHandle: string;
|
||||
materialObjectHandle: number;
|
||||
lineweight: 0 | 5 | 9 | 13 | 15 | 18 | 20 | 25 | 30 | 35 | 40 | 50 | 53 | 60 | 70 | 80 | 90 | 100 | 106 | 120 | 140 | 158 | 200 | 211 | -3 | -2 | -1;
|
||||
extendedData?: {
|
||||
customStrings?: string[];
|
||||
applicationName?: string;
|
||||
originalHandle?: string;
|
||||
originalType?: string;
|
||||
outlines?: number[][][];
|
||||
};
|
||||
type: string;
|
||||
handle: string;
|
||||
blockPosition?: IPoint;
|
||||
attributesFollow?: boolean;
|
||||
}
|
||||
export declare type EntityName = "POINT" | "3DFACE" | "ARC" | "ATTDEF" | "ATTRIB" | "CIRCLE" | "DIMENSION" | "MULTILEADER" | "ELLIPSE" | "HATCH" | "IMAGE" | "INSERT" | "LEADER" | "LINE" | "LWPOLYLINE" | "MTEXT" | "OLE2FRAME" | "POLYLINE" | "REGION" | "RAY" | "SEQEND" | "SOLID" | "SPLINE" | "ACAD_TABLE" | "TEXT" | "VERTEX" | "VIEWPORT" | "XLINE";
|
||||
export default interface IGeometry {
|
||||
ForEntityName: EntityName;
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IEntity;
|
||||
}
|
||||
|
||||
216
demo/libs/types/core/dxf-parser/entities/hatch.d.ts
vendored
216
demo/libs/types/core/dxf-parser/entities/hatch.d.ts
vendored
@ -1,108 +1,108 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export declare enum HatchBoundaryPathTypeFlag {
|
||||
Default = 0,
|
||||
External = 1,
|
||||
Polyline = 2,
|
||||
Derived = 4,
|
||||
Textbox = 8,
|
||||
Outermost = 16,
|
||||
MaxFlags = 31
|
||||
}
|
||||
export declare enum HatchEdgeType {
|
||||
Polyline = 0,
|
||||
Line = 1,
|
||||
Arc = 2,
|
||||
Ellipse = 3,
|
||||
Spline = 4
|
||||
}
|
||||
export declare abstract class HatchEdge {
|
||||
readonly type: HatchEdgeType;
|
||||
startPoint: IPoint;
|
||||
endPoint: IPoint;
|
||||
constructor(type: HatchEdgeType);
|
||||
}
|
||||
export declare class HatchPolyline extends HatchEdge {
|
||||
points: IPoint[];
|
||||
isClosed: boolean;
|
||||
constructor();
|
||||
}
|
||||
export declare class HatchLine extends HatchEdge {
|
||||
constructor();
|
||||
}
|
||||
export declare class HatchArc extends HatchEdge {
|
||||
center: IPoint;
|
||||
radius: number;
|
||||
startAngle: number;
|
||||
endAngle: number;
|
||||
bCounterclockwise: boolean;
|
||||
constructor();
|
||||
}
|
||||
export declare class HatchEllipse extends HatchEdge {
|
||||
center: IPoint;
|
||||
majorAxisEndPoint: IPoint;
|
||||
minorRatio: number;
|
||||
startAngle: number;
|
||||
endAngle: number;
|
||||
bCounterclockwise: boolean;
|
||||
constructor();
|
||||
}
|
||||
export declare class HatchSpline extends HatchEdge {
|
||||
controlPoints: IPoint[];
|
||||
numControlPoints: number;
|
||||
knotValues: number[];
|
||||
numKnots: number;
|
||||
bPeriodic: boolean;
|
||||
bRational: boolean;
|
||||
degreeOfSplineCurve: number;
|
||||
constructor();
|
||||
}
|
||||
export interface IHatchBoundaryPath {
|
||||
edges: HatchEdge[];
|
||||
pathTypeFlag: HatchBoundaryPathTypeFlag;
|
||||
}
|
||||
export declare enum HatchStyle {
|
||||
Normal = 0,
|
||||
Outer = 1,
|
||||
Ignore = 2
|
||||
}
|
||||
export declare enum HatchType {
|
||||
UserDefined = 0,
|
||||
Predefined = 1,
|
||||
Custom = 2
|
||||
}
|
||||
export interface IHatchPatternLine {
|
||||
angle: number;
|
||||
origin: IPoint;
|
||||
delta: IPoint;
|
||||
dashPattern: number[];
|
||||
}
|
||||
export interface IHatchEntity extends IEntity {
|
||||
elevationX: number;
|
||||
elevationY: number;
|
||||
elevationZ: number;
|
||||
pixelSize: number;
|
||||
associativity: boolean;
|
||||
annotatedBoundary: boolean;
|
||||
boundaryPathsCount: number;
|
||||
boundaryPaths: IHatchBoundaryPath[];
|
||||
seedPointsCount: number;
|
||||
extrusionDirectionX: number;
|
||||
extrusionDirectionY: number;
|
||||
extrusionDirectionZ: number;
|
||||
patternName: string;
|
||||
solidFill: boolean;
|
||||
patternFillColor: number;
|
||||
style: HatchStyle;
|
||||
patternType: HatchType;
|
||||
patternAngle: number;
|
||||
patternScale: number;
|
||||
patternLines?: IHatchPatternLine[];
|
||||
isGradientColor?: boolean;
|
||||
gradientColorCount?: number;
|
||||
gradientColors?: number[];
|
||||
}
|
||||
export default class Hatch implements IGeometry {
|
||||
readonly ForEntityName = "HATCH";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IHatchEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export declare enum HatchBoundaryPathTypeFlag {
|
||||
Default = 0,
|
||||
External = 1,
|
||||
Polyline = 2,
|
||||
Derived = 4,
|
||||
Textbox = 8,
|
||||
Outermost = 16,
|
||||
MaxFlags = 31
|
||||
}
|
||||
export declare enum HatchEdgeType {
|
||||
Polyline = 0,
|
||||
Line = 1,
|
||||
Arc = 2,
|
||||
Ellipse = 3,
|
||||
Spline = 4
|
||||
}
|
||||
export declare abstract class HatchEdge {
|
||||
readonly type: HatchEdgeType;
|
||||
startPoint: IPoint;
|
||||
endPoint: IPoint;
|
||||
constructor(type: HatchEdgeType);
|
||||
}
|
||||
export declare class HatchPolyline extends HatchEdge {
|
||||
points: IPoint[];
|
||||
isClosed: boolean;
|
||||
constructor();
|
||||
}
|
||||
export declare class HatchLine extends HatchEdge {
|
||||
constructor();
|
||||
}
|
||||
export declare class HatchArc extends HatchEdge {
|
||||
center: IPoint;
|
||||
radius: number;
|
||||
startAngle: number;
|
||||
endAngle: number;
|
||||
bCounterclockwise: boolean;
|
||||
constructor();
|
||||
}
|
||||
export declare class HatchEllipse extends HatchEdge {
|
||||
center: IPoint;
|
||||
majorAxisEndPoint: IPoint;
|
||||
minorRatio: number;
|
||||
startAngle: number;
|
||||
endAngle: number;
|
||||
bCounterclockwise: boolean;
|
||||
constructor();
|
||||
}
|
||||
export declare class HatchSpline extends HatchEdge {
|
||||
controlPoints: IPoint[];
|
||||
numControlPoints: number;
|
||||
knotValues: number[];
|
||||
numKnots: number;
|
||||
bPeriodic: boolean;
|
||||
bRational: boolean;
|
||||
degreeOfSplineCurve: number;
|
||||
constructor();
|
||||
}
|
||||
export interface IHatchBoundaryPath {
|
||||
edges: HatchEdge[];
|
||||
pathTypeFlag: HatchBoundaryPathTypeFlag;
|
||||
}
|
||||
export declare enum HatchStyle {
|
||||
Normal = 0,
|
||||
Outer = 1,
|
||||
Ignore = 2
|
||||
}
|
||||
export declare enum HatchType {
|
||||
UserDefined = 0,
|
||||
Predefined = 1,
|
||||
Custom = 2
|
||||
}
|
||||
export interface IHatchPatternLine {
|
||||
angle: number;
|
||||
origin: IPoint;
|
||||
delta: IPoint;
|
||||
dashPattern: number[];
|
||||
}
|
||||
export interface IHatchEntity extends IEntity {
|
||||
elevationX: number;
|
||||
elevationY: number;
|
||||
elevationZ: number;
|
||||
pixelSize: number;
|
||||
associativity: boolean;
|
||||
annotatedBoundary: boolean;
|
||||
boundaryPathsCount: number;
|
||||
boundaryPaths: IHatchBoundaryPath[];
|
||||
seedPointsCount: number;
|
||||
extrusionDirectionX: number;
|
||||
extrusionDirectionY: number;
|
||||
extrusionDirectionZ: number;
|
||||
patternName: string;
|
||||
solidFill: boolean;
|
||||
patternFillColor: number;
|
||||
style: HatchStyle;
|
||||
patternType: HatchType;
|
||||
patternAngle: number;
|
||||
patternScale: number;
|
||||
patternLines?: IHatchPatternLine[];
|
||||
isGradientColor?: boolean;
|
||||
gradientColorCount?: number;
|
||||
gradientColors?: number[];
|
||||
}
|
||||
export default class Hatch implements IGeometry {
|
||||
readonly ForEntityName = "HATCH";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IHatchEntity;
|
||||
}
|
||||
|
||||
@ -1,37 +1,37 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export declare enum ImageFlags {
|
||||
ShowImage = 1,
|
||||
ShowImageWhenNotAlignedWithScreen = 2,
|
||||
UseClippingBoundary = 4,
|
||||
TransparencyIsOn = 8
|
||||
}
|
||||
export declare enum ImageClippingBoundaryType {
|
||||
Rectangular = 1,
|
||||
Polygonal = 2
|
||||
}
|
||||
export declare enum ImageClipMode {
|
||||
Outside = 0,
|
||||
Inside = 1
|
||||
}
|
||||
export interface IImageEntity extends IEntity {
|
||||
position: IPoint;
|
||||
uPixel: IPoint;
|
||||
vPixel: IPoint;
|
||||
imageSize: IPoint;
|
||||
imageDefHandle: string;
|
||||
flags: ImageFlags;
|
||||
clipping: number;
|
||||
brightness: number;
|
||||
contrast: number;
|
||||
fade: number;
|
||||
imageDefReactorHandle: string;
|
||||
clippingBoundaryType: ImageClippingBoundaryType;
|
||||
countBoundaryPoints: number;
|
||||
clippingBoundaryPath: IPoint[];
|
||||
clipMode: ImageClipMode;
|
||||
}
|
||||
export default class Image implements IGeometry {
|
||||
ForEntityName: "IMAGE";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IImageEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export declare enum ImageFlags {
|
||||
ShowImage = 1,
|
||||
ShowImageWhenNotAlignedWithScreen = 2,
|
||||
UseClippingBoundary = 4,
|
||||
TransparencyIsOn = 8
|
||||
}
|
||||
export declare enum ImageClippingBoundaryType {
|
||||
Rectangular = 1,
|
||||
Polygonal = 2
|
||||
}
|
||||
export declare enum ImageClipMode {
|
||||
Outside = 0,
|
||||
Inside = 1
|
||||
}
|
||||
export interface IImageEntity extends IEntity {
|
||||
position: IPoint;
|
||||
uPixel: IPoint;
|
||||
vPixel: IPoint;
|
||||
imageSize: IPoint;
|
||||
imageDefHandle: string;
|
||||
flags: ImageFlags;
|
||||
clipping: number;
|
||||
brightness: number;
|
||||
contrast: number;
|
||||
fade: number;
|
||||
imageDefReactorHandle: string;
|
||||
clippingBoundaryType: ImageClippingBoundaryType;
|
||||
countBoundaryPoints: number;
|
||||
clippingBoundaryPath: IPoint[];
|
||||
clipMode: ImageClipMode;
|
||||
}
|
||||
export default class Image implements IGeometry {
|
||||
ForEntityName: "IMAGE";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IImageEntity;
|
||||
}
|
||||
|
||||
@ -1,20 +1,20 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface IInsertEntity extends IEntity {
|
||||
block: string;
|
||||
attributesFollow: boolean;
|
||||
xScale: number;
|
||||
yScale: number;
|
||||
zScale: number;
|
||||
position: IPoint;
|
||||
rotation: number;
|
||||
columnCount: number;
|
||||
rowCount: number;
|
||||
columnSpacing: number;
|
||||
rowSpacing: number;
|
||||
extrusionDirection: IPoint;
|
||||
}
|
||||
export default class Insert implements IGeometry {
|
||||
ForEntityName: "INSERT";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IInsertEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface IInsertEntity extends IEntity {
|
||||
block: string;
|
||||
attributesFollow: boolean;
|
||||
xScale: number;
|
||||
yScale: number;
|
||||
zScale: number;
|
||||
position: IPoint;
|
||||
rotation: number;
|
||||
columnCount: number;
|
||||
rowCount: number;
|
||||
columnSpacing: number;
|
||||
rowSpacing: number;
|
||||
extrusionDirection: IPoint;
|
||||
}
|
||||
export default class Insert implements IGeometry {
|
||||
ForEntityName: "INSERT";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IInsertEntity;
|
||||
}
|
||||
|
||||
@ -1,23 +1,23 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface ILeaderEntity extends IEntity {
|
||||
dimensionStyle: string;
|
||||
position: IPoint;
|
||||
textHeight: number;
|
||||
textWidth: number;
|
||||
rotation: number;
|
||||
arrowFlag: number;
|
||||
pathType: number;
|
||||
arrowHeight: number;
|
||||
arrowHeadScale: number;
|
||||
creationFlag: number;
|
||||
direction: number;
|
||||
hasHookline: boolean;
|
||||
block: string;
|
||||
arrowHeadBlockHandle: string;
|
||||
vertices: IPoint[];
|
||||
}
|
||||
export default class Leader implements IGeometry {
|
||||
ForEntityName: "LEADER";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): ILeaderEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface ILeaderEntity extends IEntity {
|
||||
dimensionStyle: string;
|
||||
position: IPoint;
|
||||
textHeight: number;
|
||||
textWidth: number;
|
||||
rotation: number;
|
||||
arrowFlag: number;
|
||||
pathType: number;
|
||||
arrowHeight: number;
|
||||
arrowHeadScale: number;
|
||||
creationFlag: number;
|
||||
direction: number;
|
||||
hasHookline: boolean;
|
||||
block: string;
|
||||
arrowHeadBlockHandle: string;
|
||||
vertices: IPoint[];
|
||||
}
|
||||
export default class Leader implements IGeometry {
|
||||
ForEntityName: "LEADER";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): ILeaderEntity;
|
||||
}
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from './geomtry';
|
||||
export interface ILineEntity extends IEntity {
|
||||
vertices: IPoint[];
|
||||
extrusionDirection: IPoint;
|
||||
}
|
||||
export default class Line implements IGeometry {
|
||||
ForEntityName: "LINE";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): ILineEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from './geomtry';
|
||||
export interface ILineEntity extends IEntity {
|
||||
vertices: IPoint[];
|
||||
extrusionDirection: IPoint;
|
||||
}
|
||||
export default class Line implements IGeometry {
|
||||
ForEntityName: "LINE";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): ILineEntity;
|
||||
}
|
||||
|
||||
@ -1,21 +1,21 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface IVertex extends IPoint {
|
||||
startWidth?: number;
|
||||
endWidth?: number;
|
||||
}
|
||||
export interface ILwpolylineEntity extends IEntity {
|
||||
vertices: IVertex[];
|
||||
elevation?: number;
|
||||
thickness?: number;
|
||||
shape: boolean;
|
||||
hasContinuousLinetypePattern: boolean;
|
||||
constantWidth?: number;
|
||||
extrusionDirectionX?: number;
|
||||
extrusionDirectionY?: number;
|
||||
extrusionDirectionZ?: number;
|
||||
}
|
||||
export default class Lwpolyline implements IGeometry {
|
||||
ForEntityName: "LWPOLYLINE";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): ILwpolylineEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface IVertex extends IPoint {
|
||||
startWidth?: number;
|
||||
endWidth?: number;
|
||||
}
|
||||
export interface ILwpolylineEntity extends IEntity {
|
||||
vertices: IVertex[];
|
||||
elevation?: number;
|
||||
thickness?: number;
|
||||
shape: boolean;
|
||||
hasContinuousLinetypePattern: boolean;
|
||||
constantWidth?: number;
|
||||
extrusionDirectionX?: number;
|
||||
extrusionDirectionY?: number;
|
||||
extrusionDirectionZ?: number;
|
||||
}
|
||||
export default class Lwpolyline implements IGeometry {
|
||||
ForEntityName: "LWPOLYLINE";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): ILwpolylineEntity;
|
||||
}
|
||||
|
||||
@ -1,101 +1,101 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface ILeaderEntity extends IEntity {
|
||||
leaderStyleId: number;
|
||||
leaderLineType: number;
|
||||
leaderLineColor: number;
|
||||
leaderLineTypeId: number;
|
||||
leaderLineWeight: number;
|
||||
enableLanding: boolean;
|
||||
enableDogLeg: boolean;
|
||||
doglegLength: number;
|
||||
arrowHeadId: number;
|
||||
arrowHeadSize: number;
|
||||
contentType: number;
|
||||
textStyleId: number;
|
||||
textLeftAttachmentType: number;
|
||||
textRightAttachmentType: number;
|
||||
textAngleType: number;
|
||||
textAlignmentType: number;
|
||||
textColor: number;
|
||||
enableFrameText: boolean;
|
||||
blockContentId: number;
|
||||
blockContentColor: number;
|
||||
blockContentScale: IPoint;
|
||||
blockContentRotation: number;
|
||||
blockContentConnectionType: number;
|
||||
enableAnotationScale: boolean;
|
||||
arrowHeadIndex: number;
|
||||
blockAttributeId: number;
|
||||
blockAttributeIndex: number;
|
||||
blockAttributeWidth: number;
|
||||
blockAttributeTextString: string;
|
||||
textDirectionNegative: boolean;
|
||||
textAlignInIPE: number;
|
||||
textAttachmentPoint: number;
|
||||
textAttachmentDirectionMText: number;
|
||||
textAttachmentDirectionBottom: number;
|
||||
textAttachmentDirectionTop: number;
|
||||
contextData: IMLeaderContextData;
|
||||
}
|
||||
export interface IMLeaderContextData {
|
||||
contentScale: number;
|
||||
contentBasePosition: IPoint;
|
||||
textHeight: number;
|
||||
arrowHeadSize: number;
|
||||
landingGap: number;
|
||||
hasMText: boolean;
|
||||
defaultTextContents: string;
|
||||
textNormalDirection: IPoint;
|
||||
textLocation: IPoint;
|
||||
textDirection: IPoint;
|
||||
textRotation: number;
|
||||
textWidth: number;
|
||||
textLineSpacingFactor: number;
|
||||
textLineSpacingStyle: number;
|
||||
textColor: number;
|
||||
textAttachment: number;
|
||||
textFlowDirection: number;
|
||||
textBackgroundColor: number;
|
||||
textBackgroundScaleFactor: number;
|
||||
textBackgroundTransparency: number;
|
||||
textBackgroundColorOn: boolean;
|
||||
textBackgroundFillOn: boolean;
|
||||
textColumnType: number;
|
||||
textUseAutoHeight: boolean;
|
||||
textColumnWidth: number;
|
||||
textColumnGutterWidth: number;
|
||||
textColumnFlowReversed: boolean;
|
||||
textColumnHeight: number;
|
||||
textUseWordBreak: boolean;
|
||||
hasBlock: boolean;
|
||||
blockContentId: number;
|
||||
blockContentNormalDirection: IPoint;
|
||||
blockContentPosition: IPoint;
|
||||
blockContentScale: number;
|
||||
blockContentRotation: number;
|
||||
blockContentColor: number;
|
||||
blockTransformationMatrix: number[];
|
||||
planeOriginPoint: IPoint;
|
||||
planeXAxisDirection: IPoint;
|
||||
planeYAxisDirection: IPoint;
|
||||
planeNormalReversed: boolean;
|
||||
leaders: IMLeaderLeader[];
|
||||
}
|
||||
export interface IMLeaderLeader {
|
||||
hasSetLastLeaderLinePoint: boolean;
|
||||
hasSetDoglegVector: boolean;
|
||||
lastLeaderLinePoint: IPoint;
|
||||
doglegVector: IPoint;
|
||||
leaderBranchIndex: number;
|
||||
doglegLength: number;
|
||||
leaderLines: IMLeaderLine[];
|
||||
}
|
||||
export interface IMLeaderLine {
|
||||
vertices: IPoint[][];
|
||||
leaderLineIndex: number;
|
||||
}
|
||||
export default class MLeader implements IGeometry {
|
||||
ForEntityName: "MULTILEADER";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): ILeaderEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface ILeaderEntity extends IEntity {
|
||||
leaderStyleId: number;
|
||||
leaderLineType: number;
|
||||
leaderLineColor: number;
|
||||
leaderLineTypeId: number;
|
||||
leaderLineWeight: number;
|
||||
enableLanding: boolean;
|
||||
enableDogLeg: boolean;
|
||||
doglegLength: number;
|
||||
arrowHeadId: number;
|
||||
arrowHeadSize: number;
|
||||
contentType: number;
|
||||
textStyleId: number;
|
||||
textLeftAttachmentType: number;
|
||||
textRightAttachmentType: number;
|
||||
textAngleType: number;
|
||||
textAlignmentType: number;
|
||||
textColor: number;
|
||||
enableFrameText: boolean;
|
||||
blockContentId: number;
|
||||
blockContentColor: number;
|
||||
blockContentScale: IPoint;
|
||||
blockContentRotation: number;
|
||||
blockContentConnectionType: number;
|
||||
enableAnotationScale: boolean;
|
||||
arrowHeadIndex: number;
|
||||
blockAttributeId: number;
|
||||
blockAttributeIndex: number;
|
||||
blockAttributeWidth: number;
|
||||
blockAttributeTextString: string;
|
||||
textDirectionNegative: boolean;
|
||||
textAlignInIPE: number;
|
||||
textAttachmentPoint: number;
|
||||
textAttachmentDirectionMText: number;
|
||||
textAttachmentDirectionBottom: number;
|
||||
textAttachmentDirectionTop: number;
|
||||
contextData: IMLeaderContextData;
|
||||
}
|
||||
export interface IMLeaderContextData {
|
||||
contentScale: number;
|
||||
contentBasePosition: IPoint;
|
||||
textHeight: number;
|
||||
arrowHeadSize: number;
|
||||
landingGap: number;
|
||||
hasMText: boolean;
|
||||
defaultTextContents: string;
|
||||
textNormalDirection: IPoint;
|
||||
textLocation: IPoint;
|
||||
textDirection: IPoint;
|
||||
textRotation: number;
|
||||
textWidth: number;
|
||||
textLineSpacingFactor: number;
|
||||
textLineSpacingStyle: number;
|
||||
textColor: number;
|
||||
textAttachment: number;
|
||||
textFlowDirection: number;
|
||||
textBackgroundColor: number;
|
||||
textBackgroundScaleFactor: number;
|
||||
textBackgroundTransparency: number;
|
||||
textBackgroundColorOn: boolean;
|
||||
textBackgroundFillOn: boolean;
|
||||
textColumnType: number;
|
||||
textUseAutoHeight: boolean;
|
||||
textColumnWidth: number;
|
||||
textColumnGutterWidth: number;
|
||||
textColumnFlowReversed: boolean;
|
||||
textColumnHeight: number;
|
||||
textUseWordBreak: boolean;
|
||||
hasBlock: boolean;
|
||||
blockContentId: number;
|
||||
blockContentNormalDirection: IPoint;
|
||||
blockContentPosition: IPoint;
|
||||
blockContentScale: number;
|
||||
blockContentRotation: number;
|
||||
blockContentColor: number;
|
||||
blockTransformationMatrix: number[];
|
||||
planeOriginPoint: IPoint;
|
||||
planeXAxisDirection: IPoint;
|
||||
planeYAxisDirection: IPoint;
|
||||
planeNormalReversed: boolean;
|
||||
leaders: IMLeaderLeader[];
|
||||
}
|
||||
export interface IMLeaderLeader {
|
||||
hasSetLastLeaderLinePoint: boolean;
|
||||
hasSetDoglegVector: boolean;
|
||||
lastLeaderLinePoint: IPoint;
|
||||
doglegVector: IPoint;
|
||||
leaderBranchIndex: number;
|
||||
doglegLength: number;
|
||||
leaderLines: IMLeaderLine[];
|
||||
}
|
||||
export interface IMLeaderLine {
|
||||
vertices: IPoint[][];
|
||||
leaderLineIndex: number;
|
||||
}
|
||||
export default class MLeader implements IGeometry {
|
||||
ForEntityName: "MULTILEADER";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): ILeaderEntity;
|
||||
}
|
||||
|
||||
@ -1,18 +1,18 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface IMtextEntity extends IEntity {
|
||||
text: string;
|
||||
position: IPoint;
|
||||
directionVector?: IPoint;
|
||||
height: number;
|
||||
width: number;
|
||||
rotation?: number;
|
||||
attachmentPoint: number;
|
||||
drawingDirection: number;
|
||||
textStyle?: string;
|
||||
lineSpaceFactor?: number;
|
||||
}
|
||||
export default class Mtext implements IGeometry {
|
||||
ForEntityName: "MTEXT";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IMtextEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface IMtextEntity extends IEntity {
|
||||
text: string;
|
||||
position: IPoint;
|
||||
directionVector?: IPoint;
|
||||
height: number;
|
||||
width: number;
|
||||
rotation?: number;
|
||||
attachmentPoint: number;
|
||||
drawingDirection: number;
|
||||
textStyle?: string;
|
||||
lineSpaceFactor?: number;
|
||||
}
|
||||
export default class Mtext implements IGeometry {
|
||||
ForEntityName: "MTEXT";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IMtextEntity;
|
||||
}
|
||||
|
||||
@ -1,20 +1,20 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity } from "./geomtry";
|
||||
export interface IOleEntity extends IEntity {
|
||||
documentType: string;
|
||||
version: number;
|
||||
leftUpX: number;
|
||||
leftUpY: number;
|
||||
leftUpZ: number;
|
||||
rightDownX: number;
|
||||
rightDownY: number;
|
||||
rightDownZ: number;
|
||||
type: string;
|
||||
tileModeDescriptor: number;
|
||||
binaryData: string;
|
||||
lengthOfBinaryData: number;
|
||||
}
|
||||
export default class Ole implements IGeometry {
|
||||
readonly ForEntityName = "OLE2FRAME";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IOleEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity } from "./geomtry";
|
||||
export interface IOleEntity extends IEntity {
|
||||
documentType: string;
|
||||
version: number;
|
||||
leftUpX: number;
|
||||
leftUpY: number;
|
||||
leftUpZ: number;
|
||||
rightDownX: number;
|
||||
rightDownY: number;
|
||||
rightDownZ: number;
|
||||
type: string;
|
||||
tileModeDescriptor: number;
|
||||
binaryData: string;
|
||||
lengthOfBinaryData: number;
|
||||
}
|
||||
export default class Ole implements IGeometry {
|
||||
readonly ForEntityName = "OLE2FRAME";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IOleEntity;
|
||||
}
|
||||
|
||||
@ -1,11 +1,11 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from './geomtry';
|
||||
export interface IPointEntity extends IEntity {
|
||||
position: IPoint;
|
||||
thickness: number;
|
||||
extrusionDirection: IPoint;
|
||||
}
|
||||
export default class Point implements IGeometry {
|
||||
ForEntityName: "POINT";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IPointEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from './geomtry';
|
||||
export interface IPointEntity extends IEntity {
|
||||
position: IPoint;
|
||||
thickness: number;
|
||||
extrusionDirection: IPoint;
|
||||
}
|
||||
export default class Point implements IGeometry {
|
||||
ForEntityName: "POINT";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IPointEntity;
|
||||
}
|
||||
|
||||
@ -1,20 +1,20 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
import { IVertexEntity } from "./vertex";
|
||||
export interface IPolylineEntity extends IEntity {
|
||||
vertices: IVertexEntity[];
|
||||
thickness: number;
|
||||
shape: boolean;
|
||||
includesCurveFitVertices: boolean;
|
||||
includesSplineFitVertices: boolean;
|
||||
is3dPolyline: boolean;
|
||||
is3dPolygonMesh: boolean;
|
||||
is3dPolygonMeshClosed: boolean;
|
||||
isPolyfaceMesh: boolean;
|
||||
hasContinuousLinetypePattern: boolean;
|
||||
extrusionDirection: IPoint;
|
||||
}
|
||||
export default class Polyline implements IGeometry {
|
||||
ForEntityName: "POLYLINE";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IPolylineEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
import { IVertexEntity } from "./vertex";
|
||||
export interface IPolylineEntity extends IEntity {
|
||||
vertices: IVertexEntity[];
|
||||
thickness: number;
|
||||
shape: boolean;
|
||||
includesCurveFitVertices: boolean;
|
||||
includesSplineFitVertices: boolean;
|
||||
is3dPolyline: boolean;
|
||||
is3dPolygonMesh: boolean;
|
||||
is3dPolygonMeshClosed: boolean;
|
||||
isPolyfaceMesh: boolean;
|
||||
hasContinuousLinetypePattern: boolean;
|
||||
extrusionDirection: IPoint;
|
||||
}
|
||||
export default class Polyline implements IGeometry {
|
||||
ForEntityName: "POLYLINE";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IPolylineEntity;
|
||||
}
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from './geomtry';
|
||||
export interface IRayEntity extends IEntity {
|
||||
vertices: IPoint[];
|
||||
directionVector: IPoint;
|
||||
}
|
||||
export default class Ray implements IGeometry {
|
||||
ForEntityName: "RAY";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IRayEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from './geomtry';
|
||||
export interface IRayEntity extends IEntity {
|
||||
vertices: IPoint[];
|
||||
directionVector: IPoint;
|
||||
}
|
||||
export default class Ray implements IGeometry {
|
||||
ForEntityName: "RAY";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IRayEntity;
|
||||
}
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity } from "./geomtry";
|
||||
export interface IRegionEntity extends IEntity {
|
||||
modelerVersion?: number;
|
||||
proprietaryData?: string;
|
||||
}
|
||||
export default class Region implements IGeometry {
|
||||
ForEntityName: "REGION";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IRegionEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity } from "./geomtry";
|
||||
export interface IRegionEntity extends IEntity {
|
||||
modelerVersion?: number;
|
||||
proprietaryData?: string;
|
||||
}
|
||||
export default class Region implements IGeometry {
|
||||
ForEntityName: "REGION";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IRegionEntity;
|
||||
}
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity } from './geomtry';
|
||||
export interface ISeqendEntity extends IEntity {
|
||||
}
|
||||
export default class Seqend implements IGeometry {
|
||||
ForEntityName: "SEQEND";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): ISeqendEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity } from './geomtry';
|
||||
export interface ISeqendEntity extends IEntity {
|
||||
}
|
||||
export default class Seqend implements IGeometry {
|
||||
ForEntityName: "SEQEND";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): ISeqendEntity;
|
||||
}
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface ISolidEntity extends IEntity {
|
||||
points: IPoint[];
|
||||
extrusionDirection: IPoint;
|
||||
}
|
||||
export default class Solid implements IGeometry {
|
||||
ForEntityName: "SOLID";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): ISolidEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface ISolidEntity extends IEntity {
|
||||
points: IPoint[];
|
||||
extrusionDirection: IPoint;
|
||||
}
|
||||
export default class Solid implements IGeometry {
|
||||
ForEntityName: "SOLID";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): ISolidEntity;
|
||||
}
|
||||
|
||||
@ -1,23 +1,23 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface ISplineEntity extends IEntity {
|
||||
controlPoints?: IPoint[];
|
||||
fitPoints?: IPoint[];
|
||||
startTangent: IPoint;
|
||||
endTangent: IPoint;
|
||||
knotValues: number[];
|
||||
closed: boolean;
|
||||
periodic: boolean;
|
||||
rational: boolean;
|
||||
planar: boolean;
|
||||
linear: boolean;
|
||||
degreeOfSplineCurve: number;
|
||||
numberOfKnots: number;
|
||||
numberOfControlPoints: number;
|
||||
numberOfFitPoints: number;
|
||||
normalVector: IPoint;
|
||||
}
|
||||
export default class Spline implements IGeometry {
|
||||
ForEntityName: "SPLINE";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): ISplineEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface ISplineEntity extends IEntity {
|
||||
controlPoints?: IPoint[];
|
||||
fitPoints?: IPoint[];
|
||||
startTangent: IPoint;
|
||||
endTangent: IPoint;
|
||||
knotValues: number[];
|
||||
closed: boolean;
|
||||
periodic: boolean;
|
||||
rational: boolean;
|
||||
planar: boolean;
|
||||
linear: boolean;
|
||||
degreeOfSplineCurve: number;
|
||||
numberOfKnots: number;
|
||||
numberOfControlPoints: number;
|
||||
numberOfFitPoints: number;
|
||||
normalVector: IPoint;
|
||||
}
|
||||
export default class Spline implements IGeometry {
|
||||
ForEntityName: "SPLINE";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): ISplineEntity;
|
||||
}
|
||||
|
||||
@ -1,42 +1,42 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
import { IMtextEntity } from "./mtext";
|
||||
export interface ITableEntity extends IEntity {
|
||||
version: number;
|
||||
startPoint: IPoint;
|
||||
directionVector: IPoint;
|
||||
tableValue: number;
|
||||
rowCount: number;
|
||||
columnCount: number;
|
||||
overrideFlag?: number;
|
||||
borderColorOverrideFlag?: number;
|
||||
borderLineWeightOverrideFlag?: number;
|
||||
borderVisibilityOverrideFlag?: number;
|
||||
rowHeightArr: number[];
|
||||
columnWidthArr: number[];
|
||||
tableStyleId?: string;
|
||||
blockRecordHandle?: string;
|
||||
cells: TableCell[];
|
||||
}
|
||||
export interface TableCell extends IMtextEntity {
|
||||
cellType: number;
|
||||
flagValue?: number;
|
||||
mergedValue?: number;
|
||||
autoFit?: number;
|
||||
borderWidth?: number;
|
||||
borderHeight?: number;
|
||||
overrideFlag?: number;
|
||||
virtualEdgeFlag?: number;
|
||||
fieldObjetId?: string;
|
||||
blockTableRecordId?: string;
|
||||
blockScale?: number;
|
||||
blockAttrNum?: number;
|
||||
attrDefineId?: string[];
|
||||
attrText?: string;
|
||||
textHeight: number;
|
||||
extendedCellFlags?: number;
|
||||
}
|
||||
export default class Table implements IGeometry {
|
||||
ForEntityName: "ACAD_TABLE";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): ITableEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
import { IMtextEntity } from "./mtext";
|
||||
export interface ITableEntity extends IEntity {
|
||||
version: number;
|
||||
startPoint: IPoint;
|
||||
directionVector: IPoint;
|
||||
tableValue: number;
|
||||
rowCount: number;
|
||||
columnCount: number;
|
||||
overrideFlag?: number;
|
||||
borderColorOverrideFlag?: number;
|
||||
borderLineWeightOverrideFlag?: number;
|
||||
borderVisibilityOverrideFlag?: number;
|
||||
rowHeightArr: number[];
|
||||
columnWidthArr: number[];
|
||||
tableStyleId?: string;
|
||||
blockRecordHandle?: string;
|
||||
cells: TableCell[];
|
||||
}
|
||||
export interface TableCell extends IMtextEntity {
|
||||
cellType: number;
|
||||
flagValue?: number;
|
||||
mergedValue?: number;
|
||||
autoFit?: number;
|
||||
borderWidth?: number;
|
||||
borderHeight?: number;
|
||||
overrideFlag?: number;
|
||||
virtualEdgeFlag?: number;
|
||||
fieldObjetId?: string;
|
||||
blockTableRecordId?: string;
|
||||
blockScale?: number;
|
||||
blockAttrNum?: number;
|
||||
attrDefineId?: string[];
|
||||
attrText?: string;
|
||||
textHeight: number;
|
||||
extendedCellFlags?: number;
|
||||
}
|
||||
export default class Table implements IGeometry {
|
||||
ForEntityName: "ACAD_TABLE";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): ITableEntity;
|
||||
}
|
||||
|
||||
@ -1,18 +1,18 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface ITextEntity extends IEntity {
|
||||
startPoint: IPoint;
|
||||
endPoint: IPoint;
|
||||
textHeight: number;
|
||||
xScale: number;
|
||||
rotation: number;
|
||||
text: string;
|
||||
textStyle: string;
|
||||
mirrored: number;
|
||||
halign: number;
|
||||
valign: number;
|
||||
}
|
||||
export default class Text implements IGeometry {
|
||||
ForEntityName: "TEXT";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): ITextEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface ITextEntity extends IEntity {
|
||||
startPoint: IPoint;
|
||||
endPoint: IPoint;
|
||||
textHeight: number;
|
||||
xScale: number;
|
||||
rotation: number;
|
||||
text: string;
|
||||
textStyle: string;
|
||||
mirrored: number;
|
||||
halign: number;
|
||||
valign: number;
|
||||
}
|
||||
export default class Text implements IGeometry {
|
||||
ForEntityName: "TEXT";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): ITextEntity;
|
||||
}
|
||||
|
||||
@ -1,20 +1,20 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from './geomtry';
|
||||
export interface IVertexEntity extends IEntity, IPoint {
|
||||
bulge: number;
|
||||
curveFittingVertex: boolean;
|
||||
curveFitTangent: boolean;
|
||||
splineVertex: boolean;
|
||||
splineControlPoint: boolean;
|
||||
threeDPolylineVertex: boolean;
|
||||
threeDPolylineMesh: boolean;
|
||||
polyfaceMeshVertex: boolean;
|
||||
faceA: number;
|
||||
faceB: number;
|
||||
faceC: number;
|
||||
faceD: number;
|
||||
}
|
||||
export default class Vertex implements IGeometry {
|
||||
ForEntityName: "VERTEX";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IVertexEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from './geomtry';
|
||||
export interface IVertexEntity extends IEntity, IPoint {
|
||||
bulge: number;
|
||||
curveFittingVertex: boolean;
|
||||
curveFitTangent: boolean;
|
||||
splineVertex: boolean;
|
||||
splineControlPoint: boolean;
|
||||
threeDPolylineVertex: boolean;
|
||||
threeDPolylineMesh: boolean;
|
||||
polyfaceMeshVertex: boolean;
|
||||
faceA: number;
|
||||
faceB: number;
|
||||
faceC: number;
|
||||
faceD: number;
|
||||
}
|
||||
export default class Vertex implements IGeometry {
|
||||
ForEntityName: "VERTEX";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IVertexEntity;
|
||||
}
|
||||
|
||||
@ -1,46 +1,46 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface IViewportEntity extends IEntity {
|
||||
centerPoint: IPoint;
|
||||
width_paperSpace: number;
|
||||
height_paperSpace: number;
|
||||
viewportStatus: number;
|
||||
viewportId: string;
|
||||
centerPoint_dcs: IPoint;
|
||||
snapBasePoint_dcs: IPoint;
|
||||
snapSpacing_dcs: IPoint;
|
||||
gridSpacing_dcs: IPoint;
|
||||
viewDirection: IPoint;
|
||||
viewTarget: IPoint;
|
||||
perspectiveLens: number;
|
||||
frontClippingPlaneZ: number;
|
||||
backClippingPlaneZ: number;
|
||||
viewHeight: number;
|
||||
snapAngle: number;
|
||||
viewTwistAngle: number;
|
||||
circleZoomPercent: number;
|
||||
frozenLayerHandles: string[];
|
||||
viewportStatusFlags: number;
|
||||
viewportClippingBoundaryhandleId: string;
|
||||
plotStyleSheetName: string;
|
||||
renderMode: number;
|
||||
viewportFlag_ucs: number;
|
||||
ucsIcon: string;
|
||||
ucsOrigin: IPoint;
|
||||
ucsXAxis: IPoint;
|
||||
ucsYAxis: IPoint;
|
||||
ucsTableRecordHandle: string;
|
||||
baseUcsTableRecordHandle: string;
|
||||
orthographicType: number;
|
||||
elevation: number;
|
||||
shadePlotMode: number;
|
||||
frequency: number;
|
||||
lightingFlag: number;
|
||||
lightingType: number;
|
||||
viewBrightness: number;
|
||||
viewContrast: number;
|
||||
}
|
||||
export default class Viewport implements IGeometry {
|
||||
ForEntityName: "VIEWPORT";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IViewportEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from "./geomtry";
|
||||
export interface IViewportEntity extends IEntity {
|
||||
centerPoint: IPoint;
|
||||
width_paperSpace: number;
|
||||
height_paperSpace: number;
|
||||
viewportStatus: number;
|
||||
viewportId: string;
|
||||
centerPoint_dcs: IPoint;
|
||||
snapBasePoint_dcs: IPoint;
|
||||
snapSpacing_dcs: IPoint;
|
||||
gridSpacing_dcs: IPoint;
|
||||
viewDirection: IPoint;
|
||||
viewTarget: IPoint;
|
||||
perspectiveLens: number;
|
||||
frontClippingPlaneZ: number;
|
||||
backClippingPlaneZ: number;
|
||||
viewHeight: number;
|
||||
snapAngle: number;
|
||||
viewTwistAngle: number;
|
||||
circleZoomPercent: number;
|
||||
frozenLayerHandles: string[];
|
||||
viewportStatusFlags: number;
|
||||
viewportClippingBoundaryhandleId: string;
|
||||
plotStyleSheetName: string;
|
||||
renderMode: number;
|
||||
viewportFlag_ucs: number;
|
||||
ucsIcon: string;
|
||||
ucsOrigin: IPoint;
|
||||
ucsXAxis: IPoint;
|
||||
ucsYAxis: IPoint;
|
||||
ucsTableRecordHandle: string;
|
||||
baseUcsTableRecordHandle: string;
|
||||
orthographicType: number;
|
||||
elevation: number;
|
||||
shadePlotMode: number;
|
||||
frequency: number;
|
||||
lightingFlag: number;
|
||||
lightingType: number;
|
||||
viewBrightness: number;
|
||||
viewContrast: number;
|
||||
}
|
||||
export default class Viewport implements IGeometry {
|
||||
ForEntityName: "VIEWPORT";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IViewportEntity;
|
||||
}
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from './geomtry';
|
||||
export interface IXLineEntity extends IEntity {
|
||||
vertices: IPoint[];
|
||||
directionVector: IPoint;
|
||||
}
|
||||
export default class XLine implements IGeometry {
|
||||
ForEntityName: "XLINE";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IXLineEntity;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import IGeometry, { IEntity, IPoint } from './geomtry';
|
||||
export interface IXLineEntity extends IEntity {
|
||||
vertices: IPoint[];
|
||||
directionVector: IPoint;
|
||||
}
|
||||
export default class XLine implements IGeometry {
|
||||
ForEntityName: "XLINE";
|
||||
parseEntity(scanner: DxfBaseReader, curr: IGroup): IXLineEntity;
|
||||
}
|
||||
|
||||
54
demo/libs/types/core/dxf-parser/index.d.ts
vendored
54
demo/libs/types/core/dxf-parser/index.d.ts
vendored
@ -1,27 +1,27 @@
|
||||
export { default, default as DxfParser } from "./DxfParser";
|
||||
export type { IDxf, IBlock, ILayerTypesTable, ILayersTable, ITables, IViewportTable, IBaseTable, ILayer, ILayerTableDefinition, ILineType, ILineTypeTableDefinition, ITable, ITableDefinitions, IViewport, IViewportTableDefinition, } from "./DxfParser";
|
||||
export type { IEntity, IPoint } from "./entities/geomtry";
|
||||
export type { I3DfaceEntity } from "./entities/3dface";
|
||||
export type { IArcEntity } from "./entities/arc";
|
||||
export type { IAttdefEntity } from "./entities/attdef";
|
||||
export type { ICircleEntity } from "./entities/circle";
|
||||
export type { IDimensionEntity } from "./entities/dimension";
|
||||
export type { ILeaderEntity } from "./entities/mleader";
|
||||
export type { IEllipseEntity } from "./entities/ellipse";
|
||||
export type { IHatchEntity } from "./entities/hatch";
|
||||
export type { IInsertEntity } from "./entities/insert";
|
||||
export type { ILineEntity } from "./entities/line";
|
||||
export type { ILwpolylineEntity } from "./entities/lwpolyline";
|
||||
export type { IMtextEntity } from "./entities/mtext";
|
||||
export type { IPointEntity } from "./entities/point";
|
||||
export type { IPolylineEntity } from "./entities/polyline";
|
||||
export type { ISolidEntity } from "./entities/solid";
|
||||
export type { ISplineEntity } from "./entities/spline";
|
||||
export type { ITextEntity } from "./entities/text";
|
||||
export type { ITableEntity, TableCell } from "./entities/table";
|
||||
export type { IVertexEntity } from "./entities/vertex";
|
||||
export type { IViewportEntity } from "./entities/viewport";
|
||||
export type { IObject } from "./objects/common";
|
||||
export type { IImageDefObject } from "./objects/imagedef";
|
||||
export type { ILayoutObject } from "./objects/layout";
|
||||
export type { ISortEntsObject, ISortEntsTableObject } from "./objects/sortentstable";
|
||||
export { default, default as DxfParser } from "./DxfParser";
|
||||
export type { IDxf, IBlock, ILayerTypesTable, ILayersTable, ITables, IViewportTable, IBaseTable, ILayer, ILayerTableDefinition, ILineType, ILineTypeTableDefinition, ITable, ITableDefinitions, IViewport, IViewportTableDefinition, } from "./DxfParser";
|
||||
export type { IEntity, IPoint } from "./entities/geomtry";
|
||||
export type { I3DfaceEntity } from "./entities/3dface";
|
||||
export type { IArcEntity } from "./entities/arc";
|
||||
export type { IAttdefEntity } from "./entities/attdef";
|
||||
export type { ICircleEntity } from "./entities/circle";
|
||||
export type { IDimensionEntity } from "./entities/dimension";
|
||||
export type { ILeaderEntity } from "./entities/mleader";
|
||||
export type { IEllipseEntity } from "./entities/ellipse";
|
||||
export type { IHatchEntity } from "./entities/hatch";
|
||||
export type { IInsertEntity } from "./entities/insert";
|
||||
export type { ILineEntity } from "./entities/line";
|
||||
export type { ILwpolylineEntity } from "./entities/lwpolyline";
|
||||
export type { IMtextEntity } from "./entities/mtext";
|
||||
export type { IPointEntity } from "./entities/point";
|
||||
export type { IPolylineEntity } from "./entities/polyline";
|
||||
export type { ISolidEntity } from "./entities/solid";
|
||||
export type { ISplineEntity } from "./entities/spline";
|
||||
export type { ITextEntity } from "./entities/text";
|
||||
export type { ITableEntity, TableCell } from "./entities/table";
|
||||
export type { IVertexEntity } from "./entities/vertex";
|
||||
export type { IViewportEntity } from "./entities/viewport";
|
||||
export type { IObject } from "./objects/common";
|
||||
export type { IImageDefObject } from "./objects/imagedef";
|
||||
export type { ILayoutObject } from "./objects/layout";
|
||||
export type { ISortEntsObject, ISortEntsTableObject } from "./objects/sortentstable";
|
||||
|
||||
@ -1,15 +1,15 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
export interface IObject {
|
||||
type: string;
|
||||
handle: string;
|
||||
ownerHandle: string;
|
||||
extendedData?: {
|
||||
customStrings?: string[];
|
||||
applicationName?: string;
|
||||
};
|
||||
}
|
||||
export declare type ObjectName = "ACAD_PROXY_OBJECT" | "ACDBDICTIONARYWDFLT" | "ACDBPLACEHOLDER" | "DATATABLE" | "DICTIONARY" | "DICTIONARYVAR" | "DIMASSOC" | "FIELD" | "GEODATA" | "IDBUFFER" | "IMAGEDEF" | "IMAGEDEF_REACTOR" | "LAYER_INDEX" | "LAYER_FILTER" | "LAYOUT" | "LIGHTLIST" | "MATERIAL" | "MLINESTYLE" | "OBJECT_PTR" | "PLOTSETTINGS" | "RASTERVARIABLES" | "RENDER" | "SECTION" | "SPATIAL_INDEX" | "SPATIAL_FILTER" | "SORTENTSTABLE" | "TABLESTYLE" | "UNDERLAYDEFINITION" | "VISUALSTYLE" | "VBA_PROJECT" | "WIPEOUTVARIABLES" | "XRECORD";
|
||||
export interface IObjectParser {
|
||||
ForObjectName: ObjectName;
|
||||
parseObject(scanner: DxfBaseReader, curr: IGroup): IObject;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
export interface IObject {
|
||||
type: string;
|
||||
handle: string;
|
||||
ownerHandle: string;
|
||||
extendedData?: {
|
||||
customStrings?: string[];
|
||||
applicationName?: string;
|
||||
};
|
||||
}
|
||||
export declare type ObjectName = "ACAD_PROXY_OBJECT" | "ACDBDICTIONARYWDFLT" | "ACDBPLACEHOLDER" | "DATATABLE" | "DICTIONARY" | "DICTIONARYVAR" | "DIMASSOC" | "FIELD" | "GEODATA" | "IDBUFFER" | "IMAGEDEF" | "IMAGEDEF_REACTOR" | "LAYER_INDEX" | "LAYER_FILTER" | "LAYOUT" | "LIGHTLIST" | "MATERIAL" | "MLINESTYLE" | "OBJECT_PTR" | "PLOTSETTINGS" | "RASTERVARIABLES" | "RENDER" | "SECTION" | "SPATIAL_INDEX" | "SPATIAL_FILTER" | "SORTENTSTABLE" | "TABLESTYLE" | "UNDERLAYDEFINITION" | "VISUALSTYLE" | "VBA_PROJECT" | "WIPEOUTVARIABLES" | "XRECORD";
|
||||
export interface IObjectParser {
|
||||
ForObjectName: ObjectName;
|
||||
parseObject(scanner: DxfBaseReader, curr: IGroup): IObject;
|
||||
}
|
||||
|
||||
@ -1,19 +1,19 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import { IObject, IObjectParser } from "./common";
|
||||
export declare enum DictionaryCloningFlags {
|
||||
NotApplicable = 0,
|
||||
KeepExisting = 1,
|
||||
UseClone = 2,
|
||||
XrefName = 3,
|
||||
Name = 4,
|
||||
UnmangleName = 5
|
||||
}
|
||||
export interface IDictionaryObject extends IObject {
|
||||
entries: Record<string, string>;
|
||||
isHardOwner: boolean;
|
||||
cloningFlag: DictionaryCloningFlags;
|
||||
}
|
||||
export declare class Dictionary implements IObjectParser {
|
||||
ForObjectName: "DICTIONARY";
|
||||
parseObject(scanner: DxfBaseReader, curr: IGroup): IDictionaryObject;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import { IObject, IObjectParser } from "./common";
|
||||
export declare enum DictionaryCloningFlags {
|
||||
NotApplicable = 0,
|
||||
KeepExisting = 1,
|
||||
UseClone = 2,
|
||||
XrefName = 3,
|
||||
Name = 4,
|
||||
UnmangleName = 5
|
||||
}
|
||||
export interface IDictionaryObject extends IObject {
|
||||
entries: Record<string, string>;
|
||||
isHardOwner: boolean;
|
||||
cloningFlag: DictionaryCloningFlags;
|
||||
}
|
||||
export declare class Dictionary implements IObjectParser {
|
||||
ForObjectName: "DICTIONARY";
|
||||
parseObject(scanner: DxfBaseReader, curr: IGroup): IDictionaryObject;
|
||||
}
|
||||
|
||||
@ -1,24 +1,24 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import { IPoint } from "../entities/geomtry";
|
||||
import { IObject, IObjectParser } from "./common";
|
||||
export declare enum ImgaeDefLoaded {
|
||||
Unloaded = 0,
|
||||
Loaded = 1
|
||||
}
|
||||
export declare enum ImageDefResolutionUnits {
|
||||
NoUnits = 0,
|
||||
Centimeters = 2,
|
||||
Inches = 5
|
||||
}
|
||||
export interface IImageDefObject extends IObject {
|
||||
classVersion: number;
|
||||
filename: string;
|
||||
imageSize: IPoint;
|
||||
pixelSize: IPoint;
|
||||
loaded: ImgaeDefLoaded;
|
||||
resolutionUnits: ImageDefResolutionUnits;
|
||||
}
|
||||
export declare class ImageDef implements IObjectParser {
|
||||
ForObjectName: "IMAGEDEF";
|
||||
parseObject(scanner: DxfBaseReader, curr: IGroup): IImageDefObject;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import { IPoint } from "../entities/geomtry";
|
||||
import { IObject, IObjectParser } from "./common";
|
||||
export declare enum ImgaeDefLoaded {
|
||||
Unloaded = 0,
|
||||
Loaded = 1
|
||||
}
|
||||
export declare enum ImageDefResolutionUnits {
|
||||
NoUnits = 0,
|
||||
Centimeters = 2,
|
||||
Inches = 5
|
||||
}
|
||||
export interface IImageDefObject extends IObject {
|
||||
classVersion: number;
|
||||
filename: string;
|
||||
imageSize: IPoint;
|
||||
pixelSize: IPoint;
|
||||
loaded: ImgaeDefLoaded;
|
||||
resolutionUnits: ImageDefResolutionUnits;
|
||||
}
|
||||
export declare class ImageDef implements IObjectParser {
|
||||
ForObjectName: "IMAGEDEF";
|
||||
parseObject(scanner: DxfBaseReader, curr: IGroup): IImageDefObject;
|
||||
}
|
||||
|
||||
@ -1,29 +1,29 @@
|
||||
import { IObject, IObjectParser } from './common';
|
||||
import { DxfBaseReader, IGroup } from '../DxfBaseReader';
|
||||
import { IPoint } from '../entities/geomtry';
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface ILayoutObject extends IObject {
|
||||
plotSettings?: object;
|
||||
layoutName: string;
|
||||
flag: number;
|
||||
tabOrder: number;
|
||||
minLimit: IPoint;
|
||||
maxLimit: IPoint;
|
||||
basePoint: IPoint;
|
||||
minExtent: IPoint;
|
||||
maxExtent: IPoint;
|
||||
elevation: number;
|
||||
origin: IPoint;
|
||||
XAxis: IPoint;
|
||||
YAxis: IPoint;
|
||||
orthographicType: number;
|
||||
blockTableHandle: string;
|
||||
viewportHandle: string;
|
||||
associatedBlockName: string;
|
||||
}
|
||||
export declare class Layout implements IObjectParser {
|
||||
ForObjectName: "LAYOUT";
|
||||
parseObject(scanner: DxfBaseReader, curr: IGroup): ILayoutObject;
|
||||
}
|
||||
import { IObject, IObjectParser } from './common';
|
||||
import { DxfBaseReader, IGroup } from '../DxfBaseReader';
|
||||
import { IPoint } from '../entities/geomtry';
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export interface ILayoutObject extends IObject {
|
||||
plotSettings?: object;
|
||||
layoutName: string;
|
||||
flag: number;
|
||||
tabOrder: number;
|
||||
minLimit: IPoint;
|
||||
maxLimit: IPoint;
|
||||
basePoint: IPoint;
|
||||
minExtent: IPoint;
|
||||
maxExtent: IPoint;
|
||||
elevation: number;
|
||||
origin: IPoint;
|
||||
XAxis: IPoint;
|
||||
YAxis: IPoint;
|
||||
orthographicType: number;
|
||||
blockTableHandle: string;
|
||||
viewportHandle: string;
|
||||
associatedBlockName: string;
|
||||
}
|
||||
export declare class Layout implements IObjectParser {
|
||||
ForObjectName: "LAYOUT";
|
||||
parseObject(scanner: DxfBaseReader, curr: IGroup): ILayoutObject;
|
||||
}
|
||||
|
||||
@ -1,12 +1,12 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import { IObject, IObjectParser } from "./common";
|
||||
export interface ISortEntsObject extends IObject {
|
||||
entityHandles: string[][];
|
||||
}
|
||||
export interface ISortEntsTableObject extends IObject {
|
||||
sortEntsObject: ISortEntsObject;
|
||||
}
|
||||
export declare class SortEntsTable implements IObjectParser {
|
||||
ForObjectName: "SORTENTSTABLE";
|
||||
parseObject(scanner: DxfBaseReader, curr: IGroup): ISortEntsTableObject;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import { IObject, IObjectParser } from "./common";
|
||||
export interface ISortEntsObject extends IObject {
|
||||
entityHandles: string[][];
|
||||
}
|
||||
export interface ISortEntsTableObject extends IObject {
|
||||
sortEntsObject: ISortEntsObject;
|
||||
}
|
||||
export declare class SortEntsTable implements IObjectParser {
|
||||
ForObjectName: "SORTENTSTABLE";
|
||||
parseObject(scanner: DxfBaseReader, curr: IGroup): ISortEntsTableObject;
|
||||
}
|
||||
|
||||
@ -1,22 +1,22 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import { IPoint } from "../entities/geomtry";
|
||||
import { IObject, IObjectParser } from "./common";
|
||||
export interface ISpatialFilterObject extends IObject {
|
||||
origin: IPoint;
|
||||
numberOfPointsOnClipBoundary: number;
|
||||
vertices: IPoint[];
|
||||
extrusionDirectionX: number;
|
||||
extrusionDirectionY: number;
|
||||
extrusionDirectionZ: number;
|
||||
clipBoundaryVisible: boolean;
|
||||
frontClippingPlaneFlag: boolean;
|
||||
frontClippingPlaneDistance: number;
|
||||
backClippingPlaneFlag: boolean;
|
||||
backClippingPlaneDistance: number;
|
||||
matrix: number[];
|
||||
invertBlockMatrix: number[];
|
||||
}
|
||||
export declare class SpatialFilter implements IObjectParser {
|
||||
ForObjectName: "SPATIAL_FILTER";
|
||||
parseObject(scanner: DxfBaseReader, curr: IGroup): ISpatialFilterObject;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import { IPoint } from "../entities/geomtry";
|
||||
import { IObject, IObjectParser } from "./common";
|
||||
export interface ISpatialFilterObject extends IObject {
|
||||
origin: IPoint;
|
||||
numberOfPointsOnClipBoundary: number;
|
||||
vertices: IPoint[];
|
||||
extrusionDirectionX: number;
|
||||
extrusionDirectionY: number;
|
||||
extrusionDirectionZ: number;
|
||||
clipBoundaryVisible: boolean;
|
||||
frontClippingPlaneFlag: boolean;
|
||||
frontClippingPlaneDistance: number;
|
||||
backClippingPlaneFlag: boolean;
|
||||
backClippingPlaneDistance: number;
|
||||
matrix: number[];
|
||||
invertBlockMatrix: number[];
|
||||
}
|
||||
export declare class SpatialFilter implements IObjectParser {
|
||||
ForObjectName: "SPATIAL_FILTER";
|
||||
parseObject(scanner: DxfBaseReader, curr: IGroup): ISpatialFilterObject;
|
||||
}
|
||||
|
||||
@ -1,11 +1,11 @@
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import { IObject, IObjectParser } from "./common";
|
||||
import { DictionaryCloningFlags } from "./dictionary";
|
||||
export interface IXRecord extends IObject {
|
||||
binaryData: string | undefined;
|
||||
cloningFlag: DictionaryCloningFlags;
|
||||
}
|
||||
export declare class XRecord implements IObjectParser {
|
||||
ForObjectName: "XRECORD";
|
||||
parseObject(scanner: DxfBaseReader, curr: IGroup): IXRecord;
|
||||
}
|
||||
import { DxfBaseReader, IGroup } from "../DxfBaseReader";
|
||||
import { IObject, IObjectParser } from "./common";
|
||||
import { DictionaryCloningFlags } from "./dictionary";
|
||||
export interface IXRecord extends IObject {
|
||||
binaryData: string | undefined;
|
||||
cloningFlag: DictionaryCloningFlags;
|
||||
}
|
||||
export declare class XRecord implements IObjectParser {
|
||||
ForObjectName: "XRECORD";
|
||||
parseObject(scanner: DxfBaseReader, curr: IGroup): IXRecord;
|
||||
}
|
||||
|
||||
302
demo/libs/types/core/dxf/DxfCompare.d.ts
vendored
302
demo/libs/types/core/dxf/DxfCompare.d.ts
vendored
@ -1,151 +1,151 @@
|
||||
import * as THREE from "three";
|
||||
import type { DxfEntity } from "./DxfLoader";
|
||||
import type { DxfCompareConfig } from "../../core/Configs";
|
||||
import { IDxf } from "../../core/dxf-parser";
|
||||
/**
|
||||
* Dxf change type, which can be "Added", "Removed" or "Modified".
|
||||
*
|
||||
* Note that a "Modified" change can be represented as a "Removed" and an "Added" types.
|
||||
*
|
||||
* The system can display "Added" object in a specific color (green, etc.),
|
||||
* and "Removed" in another color (red, etc.).
|
||||
*/
|
||||
export declare enum DxfChangeType {
|
||||
Added = "Added",
|
||||
Removed = "Removed",
|
||||
Modified = "Modified",
|
||||
NoChange = "NoChange"
|
||||
}
|
||||
/**
|
||||
* Dxf compare detail changes.
|
||||
* It supports:
|
||||
* - color
|
||||
* - lineType
|
||||
* - constantWidth (polyline width)
|
||||
*/
|
||||
export declare type DxfDetailChanges = {
|
||||
[propName: string]: {
|
||||
/**
|
||||
* The old value.
|
||||
*/
|
||||
old: unknown;
|
||||
/**
|
||||
* The new value.
|
||||
*/
|
||||
new: unknown;
|
||||
};
|
||||
};
|
||||
/**
|
||||
* Describes a dxf change
|
||||
*/
|
||||
export interface DxfChange {
|
||||
/**
|
||||
* An integer type id. It is unique in the lifecycle of a DxfViewer.
|
||||
*/
|
||||
id: number;
|
||||
/**
|
||||
* Change type, which can be "Added", "Removed", "Modified" or "NoChange".
|
||||
*/
|
||||
type: DxfChangeType;
|
||||
/**
|
||||
* AutoCAD entity handle
|
||||
*/
|
||||
handle: string;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
parentHandles?: string[];
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
box?: THREE.Box3;
|
||||
detailChanges?: DxfDetailChanges;
|
||||
}
|
||||
/**
|
||||
* Used to compare two drawings/dxfs.
|
||||
* - Consider model space only.
|
||||
* - Consider entity's geometry, position, scale, etc.
|
||||
* - Ignore layer's visibility, freeze settings.
|
||||
* - Ignore entity's properties like linetype, fill pattern, font, color, etc.
|
||||
* - Ignore spatial filter (xclip) of block reference.
|
||||
* - We compare entities with the same handle and type. e.g.
|
||||
* - if line A from dxf1 has the same handle with arc A from dxf2, then line A is "Removed", arc A is "Added".
|
||||
* - For color, it compares color setting rather than the actual color. E.g.
|
||||
* - If a color setting is "ByLayer", but the layer's color is changed. We take this case as unchanged.
|
||||
* - If a color setting is "ByLayer", the setting is changed to "ByBlock", while the layer and block actually have the same color. We take this case as changed.
|
||||
* @internal
|
||||
*/
|
||||
export declare class DxfCompare {
|
||||
static readonly ENTITY_COLOR_ADDED = 65280;
|
||||
static readonly ENTITY_COLOR_REMOVED = 16711680;
|
||||
static readonly ENTITY_COLOR_NO_CHANGE = 10066329;
|
||||
static readonly ENTITY_COLOR_MARKUP = 16744231;
|
||||
private dxf1;
|
||||
private dxf2;
|
||||
private changes;
|
||||
private comparedBlocks;
|
||||
private isComparingBlock;
|
||||
private isComparingDimension;
|
||||
private enableDetailComparision;
|
||||
static readonly ignoreEntityTypes: string[];
|
||||
constructor(dxf1: IDxf, dxf2: IDxf, compareCfg?: DxfCompareConfig);
|
||||
private getLayerFrozen;
|
||||
/**
|
||||
* Compares model spaces of two dxf files.
|
||||
* Returns DxfChange map, the key is incremental integer starts from 1.
|
||||
* It is unique in the lifecycle of a DxfViewer.
|
||||
*/
|
||||
compare(onProgress?: (event: ProgressEvent) => void): Promise<Record<number, DxfChange>>;
|
||||
private isDimensionBlock;
|
||||
compareInsertOrDemensionEntities(a: DxfEntity, b: DxfEntity, parentHandle1?: string, parentHandle2?: string): {
|
||||
type: DxfChangeType;
|
||||
handle: string;
|
||||
parentHandles?: string[] | undefined;
|
||||
}[] | undefined;
|
||||
private compareBlock;
|
||||
private compareEntities;
|
||||
private bIgnoreChildEntitiesOriginalType;
|
||||
private entitiesEqual;
|
||||
private getColor;
|
||||
private getLineType;
|
||||
private addModificationItem;
|
||||
private baseEntitiesEqual;
|
||||
private arcsEqual;
|
||||
private linesEqual;
|
||||
private polylinesEqual;
|
||||
private textsEqual;
|
||||
private solidsEqual;
|
||||
private pointEntitiesEqual;
|
||||
private splinesEqual;
|
||||
private mtextsEqual;
|
||||
private ellipsesEqual;
|
||||
private attDefsEqual;
|
||||
private attribsEqual;
|
||||
private hatchesEqual;
|
||||
private viewportsEqual;
|
||||
private leadersEqual;
|
||||
private mleadersEqual;
|
||||
private ole2framesEqual;
|
||||
private insertsEqual;
|
||||
private dimensionsEqual;
|
||||
private regionsEqual;
|
||||
private vectorsEqual;
|
||||
private pointsEqual;
|
||||
private vertexEntityEqual;
|
||||
private numbersEqual;
|
||||
private numberEqual;
|
||||
private vectorArraysEqual;
|
||||
private verticesEqual;
|
||||
private verticesArrayEqual;
|
||||
private vertexEntitiesEqual;
|
||||
private hatchEdgesEqual;
|
||||
private hatchEdgeArraysEqual;
|
||||
private hatchBoundaryPathsEqual;
|
||||
private hatchBoundaryPathArraysEqual;
|
||||
private mleaderLineEqual;
|
||||
private mleaderLinesEqual;
|
||||
private mleaderLeaderEqual;
|
||||
private mleaderLeadersEqual;
|
||||
private mleaderContextEqual;
|
||||
private compareHexStrings;
|
||||
}
|
||||
import * as THREE from "three";
|
||||
import type { DxfEntity } from "./DxfLoader";
|
||||
import type { DxfCompareConfig } from "../../core/Configs";
|
||||
import { IDxf } from "../../core/dxf-parser";
|
||||
/**
|
||||
* Dxf change type, which can be "Added", "Removed" or "Modified".
|
||||
*
|
||||
* Note that a "Modified" change can be represented as a "Removed" and an "Added" types.
|
||||
*
|
||||
* The system can display "Added" object in a specific color (green, etc.),
|
||||
* and "Removed" in another color (red, etc.).
|
||||
*/
|
||||
export declare enum DxfChangeType {
|
||||
Added = "Added",
|
||||
Removed = "Removed",
|
||||
Modified = "Modified",
|
||||
NoChange = "NoChange"
|
||||
}
|
||||
/**
|
||||
* Dxf compare detail changes.
|
||||
* It supports:
|
||||
* - color
|
||||
* - lineType
|
||||
* - constantWidth (polyline width)
|
||||
*/
|
||||
export declare type DxfDetailChanges = {
|
||||
[propName: string]: {
|
||||
/**
|
||||
* The old value.
|
||||
*/
|
||||
old: unknown;
|
||||
/**
|
||||
* The new value.
|
||||
*/
|
||||
new: unknown;
|
||||
};
|
||||
};
|
||||
/**
|
||||
* Describes a dxf change
|
||||
*/
|
||||
export interface DxfChange {
|
||||
/**
|
||||
* An integer type id. It is unique in the lifecycle of a DxfViewer.
|
||||
*/
|
||||
id: number;
|
||||
/**
|
||||
* Change type, which can be "Added", "Removed", "Modified" or "NoChange".
|
||||
*/
|
||||
type: DxfChangeType;
|
||||
/**
|
||||
* AutoCAD entity handle
|
||||
*/
|
||||
handle: string;
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
parentHandles?: string[];
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
box?: THREE.Box3;
|
||||
detailChanges?: DxfDetailChanges;
|
||||
}
|
||||
/**
|
||||
* Used to compare two drawings/dxfs.
|
||||
* - Consider model space only.
|
||||
* - Consider entity's geometry, position, scale, etc.
|
||||
* - Ignore layer's visibility, freeze settings.
|
||||
* - Ignore entity's properties like linetype, fill pattern, font, color, etc.
|
||||
* - Ignore spatial filter (xclip) of block reference.
|
||||
* - We compare entities with the same handle and type. e.g.
|
||||
* - if line A from dxf1 has the same handle with arc A from dxf2, then line A is "Removed", arc A is "Added".
|
||||
* - For color, it compares color setting rather than the actual color. E.g.
|
||||
* - If a color setting is "ByLayer", but the layer's color is changed. We take this case as unchanged.
|
||||
* - If a color setting is "ByLayer", the setting is changed to "ByBlock", while the layer and block actually have the same color. We take this case as changed.
|
||||
* @internal
|
||||
*/
|
||||
export declare class DxfCompare {
|
||||
static readonly ENTITY_COLOR_ADDED = 65280;
|
||||
static readonly ENTITY_COLOR_REMOVED = 16711680;
|
||||
static readonly ENTITY_COLOR_NO_CHANGE = 10066329;
|
||||
static readonly ENTITY_COLOR_MARKUP = 16744231;
|
||||
private dxf1;
|
||||
private dxf2;
|
||||
private changes;
|
||||
private comparedBlocks;
|
||||
private isComparingBlock;
|
||||
private isComparingDimension;
|
||||
private enableDetailComparision;
|
||||
static readonly ignoreEntityTypes: string[];
|
||||
constructor(dxf1: IDxf, dxf2: IDxf, compareCfg?: DxfCompareConfig);
|
||||
private getLayerFrozen;
|
||||
/**
|
||||
* Compares model spaces of two dxf files.
|
||||
* Returns DxfChange map, the key is incremental integer starts from 1.
|
||||
* It is unique in the lifecycle of a DxfViewer.
|
||||
*/
|
||||
compare(onProgress?: (event: ProgressEvent) => void): Promise<Record<number, DxfChange>>;
|
||||
private isDimensionBlock;
|
||||
compareInsertOrDemensionEntities(a: DxfEntity, b: DxfEntity, parentHandle1?: string, parentHandle2?: string): {
|
||||
type: DxfChangeType;
|
||||
handle: string;
|
||||
parentHandles?: string[] | undefined;
|
||||
}[] | undefined;
|
||||
private compareBlock;
|
||||
private compareEntities;
|
||||
private bIgnoreChildEntitiesOriginalType;
|
||||
private entitiesEqual;
|
||||
private getColor;
|
||||
private getLineType;
|
||||
private addModificationItem;
|
||||
private baseEntitiesEqual;
|
||||
private arcsEqual;
|
||||
private linesEqual;
|
||||
private polylinesEqual;
|
||||
private textsEqual;
|
||||
private solidsEqual;
|
||||
private pointEntitiesEqual;
|
||||
private splinesEqual;
|
||||
private mtextsEqual;
|
||||
private ellipsesEqual;
|
||||
private attDefsEqual;
|
||||
private attribsEqual;
|
||||
private hatchesEqual;
|
||||
private viewportsEqual;
|
||||
private leadersEqual;
|
||||
private mleadersEqual;
|
||||
private ole2framesEqual;
|
||||
private insertsEqual;
|
||||
private dimensionsEqual;
|
||||
private regionsEqual;
|
||||
private vectorsEqual;
|
||||
private pointsEqual;
|
||||
private vertexEntityEqual;
|
||||
private numbersEqual;
|
||||
private numberEqual;
|
||||
private vectorArraysEqual;
|
||||
private verticesEqual;
|
||||
private verticesArrayEqual;
|
||||
private vertexEntitiesEqual;
|
||||
private hatchEdgesEqual;
|
||||
private hatchEdgeArraysEqual;
|
||||
private hatchBoundaryPathsEqual;
|
||||
private hatchBoundaryPathArraysEqual;
|
||||
private mleaderLineEqual;
|
||||
private mleaderLinesEqual;
|
||||
private mleaderLeaderEqual;
|
||||
private mleaderLeadersEqual;
|
||||
private mleaderContextEqual;
|
||||
private compareHexStrings;
|
||||
}
|
||||
|
||||
30
demo/libs/types/core/dxf/DxfConstants.d.ts
vendored
30
demo/libs/types/core/dxf/DxfConstants.d.ts
vendored
@ -1,15 +1,15 @@
|
||||
/**
|
||||
* Constants used by dxf
|
||||
*/
|
||||
export declare const BYLAYER = "BYLAYER";
|
||||
export declare const BYBLOCK = "BYBLOCK";
|
||||
export declare enum DxfRenderOrder {
|
||||
Mesh = -1,
|
||||
MeshWithPattern = 0,
|
||||
LineWithWidth = 1,
|
||||
Line = 2,
|
||||
LineWithPattern = 3,
|
||||
Point = 4,
|
||||
Text = 5
|
||||
}
|
||||
export declare const NestCompareTypes: string[];
|
||||
/**
|
||||
* Constants used by dxf
|
||||
*/
|
||||
export declare const BYLAYER = "BYLAYER";
|
||||
export declare const BYBLOCK = "BYBLOCK";
|
||||
export declare enum DxfRenderOrder {
|
||||
Mesh = -1,
|
||||
MeshWithPattern = 0,
|
||||
LineWithWidth = 1,
|
||||
Line = 2,
|
||||
LineWithPattern = 3,
|
||||
Point = 4,
|
||||
Text = 5
|
||||
}
|
||||
export declare const NestCompareTypes: string[];
|
||||
|
||||
1056
demo/libs/types/core/dxf/DxfLoader.d.ts
vendored
1056
demo/libs/types/core/dxf/DxfLoader.d.ts
vendored
File diff suppressed because it is too large
Load Diff
64
demo/libs/types/core/dxf/DxfObject.d.ts
vendored
64
demo/libs/types/core/dxf/DxfObject.d.ts
vendored
@ -1,32 +1,32 @@
|
||||
import { Box3, BufferGeometry, Object3D, Layers, Material, Matrix4 } from "three";
|
||||
export declare enum ObjectType {
|
||||
Object = 0,
|
||||
Point = 1,
|
||||
Line = 2,
|
||||
LineSegment = 3,
|
||||
Mesh = 4
|
||||
}
|
||||
export declare type CallBack = (object: DxfObject) => void;
|
||||
export declare class DxfObject {
|
||||
name: string;
|
||||
type: ObjectType;
|
||||
matrix: Matrix4;
|
||||
parent?: DxfObject;
|
||||
children: DxfObject[];
|
||||
layers: Layers;
|
||||
renderOrder: number;
|
||||
userData: any;
|
||||
material?: Material;
|
||||
geometry?: BufferGeometry;
|
||||
matrixWorld?: Matrix4;
|
||||
constructor(type?: ObjectType);
|
||||
add(object: DxfObject, ...args: DxfObject[]): this;
|
||||
remove(object: DxfObject, ...args: DxfObject[]): this;
|
||||
removeFromParent(): this;
|
||||
clear(): this;
|
||||
traverse(callback: CallBack): void;
|
||||
clone(recursive?: boolean): DxfObject;
|
||||
copy(source: DxfObject, recursive?: boolean): this;
|
||||
convertToThreejsObject(recursive?: boolean): Object3D<import("three").Event> | undefined;
|
||||
static getBox(object: DxfObject, box: THREE.Box3, parentMatrix?: Matrix4): Box3;
|
||||
}
|
||||
import { Box3, BufferGeometry, Object3D, Layers, Material, Matrix4 } from "three";
|
||||
export declare enum ObjectType {
|
||||
Object = 0,
|
||||
Point = 1,
|
||||
Line = 2,
|
||||
LineSegment = 3,
|
||||
Mesh = 4
|
||||
}
|
||||
export declare type CallBack = (object: DxfObject) => void;
|
||||
export declare class DxfObject {
|
||||
name: string;
|
||||
type: ObjectType;
|
||||
matrix: Matrix4;
|
||||
parent?: DxfObject;
|
||||
children: DxfObject[];
|
||||
layers: Layers;
|
||||
renderOrder: number;
|
||||
userData: any;
|
||||
material?: Material;
|
||||
geometry?: BufferGeometry;
|
||||
matrixWorld?: Matrix4;
|
||||
constructor(type?: ObjectType);
|
||||
add(object: DxfObject, ...args: DxfObject[]): this;
|
||||
remove(object: DxfObject, ...args: DxfObject[]): this;
|
||||
removeFromParent(): this;
|
||||
clear(): this;
|
||||
traverse(callback: CallBack): void;
|
||||
clone(recursive?: boolean): DxfObject;
|
||||
copy(source: DxfObject, recursive?: boolean): this;
|
||||
convertToThreejsObject(recursive?: boolean): Object3D<import("three").Event> | undefined;
|
||||
static getBox(object: DxfObject, box: THREE.Box3, parentMatrix?: Matrix4): Box3;
|
||||
}
|
||||
|
||||
158
demo/libs/types/core/dxf/DxfUtils.d.ts
vendored
158
demo/libs/types/core/dxf/DxfUtils.d.ts
vendored
@ -1,79 +1,79 @@
|
||||
import { DxfObject } from "../../core/dxf/DxfObject";
|
||||
/**
|
||||
* MergeHelper class is used to merge child objects for a given object
|
||||
* @internal
|
||||
*/
|
||||
export declare class DxfUtils {
|
||||
static mergeInfo: {
|
||||
removedObjects: number;
|
||||
mergedMeshes: number;
|
||||
mergedLines: number;
|
||||
mergedPoints: number;
|
||||
mergedUnknownTypeObjects: number;
|
||||
elapsedTime: number;
|
||||
};
|
||||
static resetMergeInfo(): void;
|
||||
/**
|
||||
* Merges child objects for given object.
|
||||
* it tries to merge objects in the same level and with the same parent;
|
||||
* @param saveBatchInfo caller can set saveBatchInfo to true, so that s/he can
|
||||
* get the object's original data before merged.
|
||||
* While this takes some extra space, so, we'd like to add a flag here.
|
||||
*/
|
||||
static merge(object: DxfObject, saveBatchInfo?: boolean): void;
|
||||
/**
|
||||
* Merges child objects of given object.
|
||||
* If objects' material are the same, they can be merged.
|
||||
*/
|
||||
private static mergeInner;
|
||||
/**
|
||||
* @param object parent object or THREE.Object3D[]
|
||||
* @param i index of for object.children[]
|
||||
* @param k index of for object.children[]
|
||||
* @param dict to store merge-able object
|
||||
* @param nonMergeIndexes used in order to improve performance
|
||||
*/
|
||||
private static tryHandleMergeableObjects;
|
||||
/**
|
||||
* TODO: Filters XC etc.
|
||||
* there are cases where entities with xc and without xc are merged together
|
||||
*/
|
||||
private static isFilteredByOtherFactors;
|
||||
/**
|
||||
* Merges all objects of given object, just leaf children.
|
||||
* If objects' material are the same, they can be merged.
|
||||
* Better to call mergeInner first then deepMerge for a better performance.
|
||||
* return \{ "added": THREE.Object3D[], "removed": THREE.Object3D[] \}
|
||||
*/
|
||||
static deepMerge(objects: DxfObject[], levelObject?: DxfObject | undefined, bRemovedAndAddedAfterMerge?: boolean, bRemoveEmptyObjectsAfterMerge?: boolean, saveBatchInfo?: boolean): {
|
||||
added: DxfObject[];
|
||||
removed: DxfObject[];
|
||||
};
|
||||
/**
|
||||
* since we'll move geometry to another merged mesh under a group, below is the structure:
|
||||
- root object
|
||||
- merged objects group
|
||||
- merged object 1
|
||||
* need to consider a geometry's matrix for each level of ancestor
|
||||
*/
|
||||
private static applyMatrix;
|
||||
/**
|
||||
* Merges geometries for lines
|
||||
*/
|
||||
/**
|
||||
* Removes a number from array
|
||||
*/
|
||||
private static removeFromArray;
|
||||
/**
|
||||
* Checks if two geometries are mergable.
|
||||
* It requires they have the same type and the same attributes.
|
||||
*/
|
||||
/**
|
||||
* Checks if two objects are mergable.
|
||||
* It requires
|
||||
* - They are with the same masks.
|
||||
* - Their userData.layerName must be the same if there is. This is useful for Dxf.
|
||||
* - They have the same type or the same draw type( Mesh or Line or Point).
|
||||
*/
|
||||
private static areObjectsMergeable;
|
||||
}
|
||||
import { DxfObject } from "../../core/dxf/DxfObject";
|
||||
/**
|
||||
* MergeHelper class is used to merge child objects for a given object
|
||||
* @internal
|
||||
*/
|
||||
export declare class DxfUtils {
|
||||
static mergeInfo: {
|
||||
removedObjects: number;
|
||||
mergedMeshes: number;
|
||||
mergedLines: number;
|
||||
mergedPoints: number;
|
||||
mergedUnknownTypeObjects: number;
|
||||
elapsedTime: number;
|
||||
};
|
||||
static resetMergeInfo(): void;
|
||||
/**
|
||||
* Merges child objects for given object.
|
||||
* it tries to merge objects in the same level and with the same parent;
|
||||
* @param saveBatchInfo caller can set saveBatchInfo to true, so that s/he can
|
||||
* get the object's original data before merged.
|
||||
* While this takes some extra space, so, we'd like to add a flag here.
|
||||
*/
|
||||
static merge(object: DxfObject, saveBatchInfo?: boolean): void;
|
||||
/**
|
||||
* Merges child objects of given object.
|
||||
* If objects' material are the same, they can be merged.
|
||||
*/
|
||||
private static mergeInner;
|
||||
/**
|
||||
* @param object parent object or THREE.Object3D[]
|
||||
* @param i index of for object.children[]
|
||||
* @param k index of for object.children[]
|
||||
* @param dict to store merge-able object
|
||||
* @param nonMergeIndexes used in order to improve performance
|
||||
*/
|
||||
private static tryHandleMergeableObjects;
|
||||
/**
|
||||
* TODO: Filters XC etc.
|
||||
* there are cases where entities with xc and without xc are merged together
|
||||
*/
|
||||
private static isFilteredByOtherFactors;
|
||||
/**
|
||||
* Merges all objects of given object, just leaf children.
|
||||
* If objects' material are the same, they can be merged.
|
||||
* Better to call mergeInner first then deepMerge for a better performance.
|
||||
* return \{ "added": THREE.Object3D[], "removed": THREE.Object3D[] \}
|
||||
*/
|
||||
static deepMerge(objects: DxfObject[], levelObject?: DxfObject | undefined, bRemovedAndAddedAfterMerge?: boolean, bRemoveEmptyObjectsAfterMerge?: boolean, saveBatchInfo?: boolean): {
|
||||
added: DxfObject[];
|
||||
removed: DxfObject[];
|
||||
};
|
||||
/**
|
||||
* since we'll move geometry to another merged mesh under a group, below is the structure:
|
||||
- root object
|
||||
- merged objects group
|
||||
- merged object 1
|
||||
* need to consider a geometry's matrix for each level of ancestor
|
||||
*/
|
||||
private static applyMatrix;
|
||||
/**
|
||||
* Merges geometries for lines
|
||||
*/
|
||||
/**
|
||||
* Removes a number from array
|
||||
*/
|
||||
private static removeFromArray;
|
||||
/**
|
||||
* Checks if two geometries are mergable.
|
||||
* It requires they have the same type and the same attributes.
|
||||
*/
|
||||
/**
|
||||
* Checks if two objects are mergable.
|
||||
* It requires
|
||||
* - They are with the same masks.
|
||||
* - Their userData.layerName must be the same if there is. This is useful for Dxf.
|
||||
* - They have the same type or the same draw type( Mesh or Line or Point).
|
||||
*/
|
||||
private static areObjectsMergeable;
|
||||
}
|
||||
|
||||
@ -1,12 +1,12 @@
|
||||
import * as THREE from "three";
|
||||
export interface PatternLine {
|
||||
origin: THREE.Vector2;
|
||||
delta: THREE.Vector2;
|
||||
angle: number;
|
||||
pattern: number[];
|
||||
patternSum: number[];
|
||||
patternLength: number;
|
||||
}
|
||||
export declare function createHatchPatternShaderMaterial(patternLines: PatternLine[], patternAngle: number, cameraZoomUniform: {
|
||||
value: number;
|
||||
}, color: THREE.Color, fixedThicknessInWorldCoord?: number): THREE.Material;
|
||||
import * as THREE from "three";
|
||||
export interface PatternLine {
|
||||
origin: THREE.Vector2;
|
||||
delta: THREE.Vector2;
|
||||
angle: number;
|
||||
pattern: number[];
|
||||
patternSum: number[];
|
||||
patternLength: number;
|
||||
}
|
||||
export declare function createHatchPatternShaderMaterial(patternLines: PatternLine[], patternAngle: number, cameraZoomUniform: {
|
||||
value: number;
|
||||
}, color: THREE.Color, fixedThicknessInWorldCoord?: number): THREE.Material;
|
||||
|
||||
24
demo/libs/types/core/dxf/LinePatternShaders.d.ts
vendored
24
demo/libs/types/core/dxf/LinePatternShaders.d.ts
vendored
@ -1,12 +1,12 @@
|
||||
import * as THREE from "three";
|
||||
export declare class LinePatternShaders {
|
||||
/**
|
||||
* Creates line shader by given pattern.
|
||||
* Note: remember to call line.computeLineDistances() in order to make it work!
|
||||
*/
|
||||
static createLineShaderMaterial(pattern: number[], color: number, scale: number, viewportScaleUniform: {
|
||||
value: number;
|
||||
}, cameraZoomUniform: {
|
||||
value: number;
|
||||
}): THREE.Material;
|
||||
}
|
||||
import * as THREE from "three";
|
||||
export declare class LinePatternShaders {
|
||||
/**
|
||||
* Creates line shader by given pattern.
|
||||
* Note: remember to call line.computeLineDistances() in order to make it work!
|
||||
*/
|
||||
static createLineShaderMaterial(pattern: number[], color: number, scale: number, viewportScaleUniform: {
|
||||
value: number;
|
||||
}, cameraZoomUniform: {
|
||||
value: number;
|
||||
}): THREE.Material;
|
||||
}
|
||||
|
||||
16
demo/libs/types/core/dxf/bspline.d.ts
vendored
16
demo/libs/types/core/dxf/bspline.d.ts
vendored
@ -1,8 +1,8 @@
|
||||
/**
|
||||
* Copied and ported to code standard as the b-spline library is not maintained any longer.
|
||||
* Source:
|
||||
* https://github.com/thibauts/b-spline
|
||||
* Copyright (c) 2015 Thibaut Séguy <thibaut.seguy@gmail.com>
|
||||
*/
|
||||
declare const _default: (t: number, degree: number, points: number[][], knots: number[], weights?: number[]) => number[];
|
||||
export default _default;
|
||||
/**
|
||||
* Copied and ported to code standard as the b-spline library is not maintained any longer.
|
||||
* Source:
|
||||
* https://github.com/thibauts/b-spline
|
||||
* Copyright (c) 2015 Thibaut Séguy <thibaut.seguy@gmail.com>
|
||||
*/
|
||||
declare const _default: (t: number, degree: number, points: number[][], knots: number[], weights?: number[]) => number[];
|
||||
export default _default;
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user