rm-build-dxf 0.1.186
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -0
- package/package.json +50 -0
- package/src/App.vue.d.ts +2 -0
- package/src/DomEventRegister.js +1 -0
- package/src/api/getSocket.d.ts +1 -0
- package/src/api/index.d.ts +27 -0
- package/src/api/type.d.ts +46 -0
- package/src/build.js +1 -0
- package/src/components/DragContainer.vue.d.ts +48 -0
- package/src/components/NumberEditor.vue.d.ts +33 -0
- package/src/constants.d.ts +11 -0
- package/src/demo.d.ts +1 -0
- package/src/dxf-system/DxfSystem.d.ts +26 -0
- package/src/dxf-system/build.d.ts +94 -0
- package/src/dxf-system/components/CorrectionDxf.d.ts +44 -0
- package/src/dxf-system/components/Dxf.d.ts +96 -0
- package/src/dxf-system/components/ThreeVJia.d.ts +33 -0
- package/src/dxf-system/components/Variable.d.ts +41 -0
- package/src/dxf-system/index.d.ts +2 -0
- package/src/dxf-system/plugins/editor/Command/ClippingLine.d.ts +30 -0
- package/src/dxf-system/plugins/editor/Command/Command.d.ts +346 -0
- package/src/dxf-system/plugins/editor/Command/DefaultCommand.d.ts +56 -0
- package/src/dxf-system/plugins/editor/Command/DeleteSelectLine.d.ts +25 -0
- package/src/dxf-system/plugins/editor/Command/DrawBalconyRailing.d.ts +12 -0
- package/src/dxf-system/plugins/editor/Command/DrawBeam.d.ts +12 -0
- package/src/dxf-system/plugins/editor/Command/DrawDoorLine.d.ts +9 -0
- package/src/dxf-system/plugins/editor/Command/DrawHole.d.ts +67 -0
- package/src/dxf-system/plugins/editor/Command/DrawLine.d.ts +41 -0
- package/src/dxf-system/plugins/editor/Command/DrawPillar.d.ts +12 -0
- package/src/dxf-system/plugins/editor/Command/DrawWindow.d.ts +12 -0
- package/src/dxf-system/plugins/editor/Command/ManualDistance.d.ts +23 -0
- package/src/dxf-system/plugins/editor/Command/MergeLine.d.ts +33 -0
- package/src/dxf-system/plugins/editor/Command/PointDrag/index.d.ts +38 -0
- package/src/dxf-system/plugins/editor/Command/PointDrag/modifyDoor.d.ts +40 -0
- package/src/dxf-system/plugins/editor/Command/PointDrag/modifyLine.d.ts +34 -0
- package/src/dxf-system/plugins/editor/Command/PointDrag/modifyWindow.d.ts +25 -0
- package/src/dxf-system/plugins/editor/Command/PropertiesPanel.d.ts +33 -0
- package/src/dxf-system/plugins/editor/Command/RayDistance.d.ts +23 -0
- package/src/dxf-system/plugins/editor/Command/SelectAll.d.ts +30 -0
- package/src/dxf-system/plugins/editor/Command/TwoLineConnectionLine.d.ts +33 -0
- package/src/dxf-system/plugins/editor/Command/TwoPointConnection.d.ts +33 -0
- package/src/dxf-system/plugins/editor/Command/VerticalCorr.d.ts +66 -0
- package/src/dxf-system/plugins/editor/Command/VerticalCorrContinue.d.ts +35 -0
- package/src/dxf-system/plugins/editor/Command/ViewAngle.d.ts +21 -0
- package/src/dxf-system/plugins/editor/Editor.d.ts +56 -0
- package/src/dxf-system/plugins/editor/RenderManager.d.ts +101 -0
- package/src/dxf-system/plugins/editor/index.d.ts +9 -0
- package/src/dxf-system/plugins/editor/pages/EditorTool/EditorTool.vue.d.ts +7 -0
- package/src/dxf-system/plugins/editor/pages/EditorTool/EditorToolContent.vue.d.ts +7 -0
- package/src/dxf-system/plugins/editor/pages/PropertiesPanel.vue.d.ts +18 -0
- package/src/dxf-system/plugins/editor/pages/components/Button.vue.d.ts +17 -0
- package/src/dxf-system/plugins/editor/pages/components/Input.vue.d.ts +13 -0
- package/src/dxf-system/plugins/editor/pages/components/ToolToggle.vue.d.ts +20 -0
- package/src/dxf-system/plugins/editor/type.d.ts +11 -0
- package/src/dxf-system/plugins/editor/us-service/DragControlPoint.d.ts +48 -0
- package/src/dxf-system/plugins/editor/us-service/LineSelector.d.ts +44 -0
- package/src/dxf-system/plugins/editor/us-service/PointerFollowMove.d.ts +86 -0
- package/src/dxf-system/plugins/editor/us-service/SnapController.d.ts +32 -0
- package/src/dxf-system/plugins/editor/utils/Wall2D.d.ts +10 -0
- package/src/dxf-system/plugins/model3d/components/DxfLineModel.d.ts +14 -0
- package/src/dxf-system/plugins/model3d/components/WhiteModel.d.ts +61 -0
- package/src/dxf-system/plugins/model3d/components/index.d.ts +2 -0
- package/src/dxf-system/plugins/model3d/index.d.ts +11 -0
- package/src/dxf-system/plugins/renderer/components/DomContainer.d.ts +13 -0
- package/src/dxf-system/plugins/renderer/components/DomEventRegister.d.ts +116 -0
- package/src/dxf-system/plugins/renderer/components/EventInput.d.ts +74 -0
- package/src/dxf-system/plugins/renderer/components/ModelDataRender.d.ts +13 -0
- package/src/dxf-system/plugins/renderer/components/Renderer.d.ts +100 -0
- package/src/dxf-system/plugins/renderer/components/index.d.ts +5 -0
- package/src/dxf-system/plugins/renderer/index.d.ts +13 -0
- package/src/dxf-system/type.d.ts +218 -0
- package/src/dxf-system/utils/BayWindowHelper.d.ts +58 -0
- package/src/dxf-system/utils/BoundExt.d.ts +51 -0
- package/src/dxf-system/utils/DoorFind.d.ts +44 -0
- package/src/dxf-system/utils/DoubleWallFinder.d.ts +24 -0
- package/src/dxf-system/utils/HeightQuery.d.ts +12 -0
- package/src/dxf-system/utils/LineGroupType.d.ts +125 -0
- package/src/dxf-system/utils/LoadModel.d.ts +7 -0
- package/src/dxf-system/utils/RunJianPipeline.d.ts +92 -0
- package/src/dxf-system/utils/SceneAutoGenerat.d.ts +42 -0
- package/src/dxf-system/utils/ThreeVJiaPipeline.d.ts +154 -0
- package/src/dxf-system/utils/WallGroupManager.d.ts +27 -0
- package/src/dxf-system/utils/WallHole.d.ts +134 -0
- package/src/dxf-system/utils/WallHoleDrawData.d.ts +31 -0
- package/src/dxf-system/utils/ZHouseMockData.d.ts +127 -0
- package/src/dxf-system/utils/cad/DxfDataPlugin.d.ts +20 -0
- package/src/dxf-system/utils/cad/DxfDrawPlugin.d.ts +13 -0
- package/src/dxf-system/utils/cad/draw-data.d.ts +43 -0
- package/src/dxf-system/utils/cad/draw-dxf-image.d.ts +2 -0
- package/src/dxf-system/utils/cad/draw-dxf-string.d.ts +3 -0
- package/src/dxf-system/utils/cad/index.d.ts +143 -0
- package/src/dxf-system/utils/clipping-double-wall.d.ts +7 -0
- package/src/dxf-system/utils/draw-helper.d.ts +6 -0
- package/src/dxf-system/utils/find-discrete.d.ts +26 -0
- package/src/dxf-system/utils/find-rooms.d.ts +16 -0
- package/src/dxf-system/utils/get-win-draw-data.d.ts +18 -0
- package/src/dxf-system/utils/index.d.ts +8 -0
- package/src/dxf-system/utils/line-pipeline/builtin/axis-align-corr.d.ts +16 -0
- package/src/dxf-system/utils/line-pipeline/builtin/beam-support-line.d.ts +3 -0
- package/src/dxf-system/utils/line-pipeline/builtin/bound-ext.d.ts +8 -0
- package/src/dxf-system/utils/line-pipeline/builtin/build-group/bay-window.d.ts +7 -0
- package/src/dxf-system/utils/line-pipeline/builtin/build-group/double-wall.d.ts +6 -0
- package/src/dxf-system/utils/line-pipeline/builtin/build-group/index.d.ts +7 -0
- package/src/dxf-system/utils/line-pipeline/builtin/door-space-handle.d.ts +5 -0
- package/src/dxf-system/utils/line-pipeline/builtin/door-to-hole.d.ts +9 -0
- package/src/dxf-system/utils/line-pipeline/builtin/double-wall-alignment.d.ts +7 -0
- package/src/dxf-system/utils/line-pipeline/builtin/index.d.ts +39 -0
- package/src/dxf-system/utils/line-pipeline/builtin/init.d.ts +8 -0
- package/src/dxf-system/utils/line-pipeline/builtin/remove-room-sundries.d.ts +3 -0
- package/src/dxf-system/utils/line-pipeline/builtin/remove-short-double-wall.d.ts +6 -0
- package/src/dxf-system/utils/line-pipeline/builtin/wall-height-handle.d.ts +8 -0
- package/src/dxf-system/utils/line-pipeline/index.d.ts +22 -0
- package/src/dxf-system/utils/remove-dangline.d.ts +7 -0
- package/src/dxf-system/utils/tools.d.ts +91 -0
- package/src/index.css +1 -0
- package/src/index.js +1 -0
- package/src/index2.js +1 -0
- package/src/index3.js +1 -0
- package/src/main.d.ts +0 -0
- package/src/pages/CubeView.vue.d.ts +4 -0
- package/src/pages/DxfPreview.vue.d.ts +9 -0
- package/src/pages/Editor.vue.d.ts +8 -0
- package/src/pages/ExportGLB.vue.d.ts +2 -0
- package/src/pages/ImagePreview.vue.d.ts +9 -0
- package/src/pages/ModelView.vue.d.ts +11 -0
- package/src/pages/Setting.vue.d.ts +6 -0
- package/src/pages/Todo.vue.d.ts +2 -0
- package/src/pages/WallView.vue.d.ts +9 -0
- package/src/pages/WindowManager.vue.d.ts +2 -0
- package/src/pages/buildJson.vue.d.ts +4 -0
- package/src/pages/modelCarrier/index.vue.d.ts +4 -0
- package/src/router/index.d.ts +2 -0
- package/src/utils/EventDispatcher.d.ts +18 -0
- package/src/utils/algorithms/AlignToParallelSegments.d.ts +25 -0
- package/src/utils/algorithms/AxisAlignCorr.d.ts +38 -0
- package/src/utils/algorithms/Box2.d.ts +96 -0
- package/src/utils/algorithms/CheckPointCloudContinuity.d.ts +63 -0
- package/src/utils/algorithms/ConstraintSystem.d.ts +17 -0
- package/src/utils/algorithms/ConvexHullGraham.d.ts +16 -0
- package/src/utils/algorithms/Debouncing.d.ts +10 -0
- package/src/utils/algorithms/LineIndexGenerator.d.ts +12 -0
- package/src/utils/algorithms/LineQueryer.d.ts +42 -0
- package/src/utils/algorithms/LineSegment.d.ts +258 -0
- package/src/utils/algorithms/LineSegmentSpatialHash.d.ts +86 -0
- package/src/utils/algorithms/LineSegmentUtils.d.ts +185 -0
- package/src/utils/algorithms/Map.d.ts +38 -0
- package/src/utils/algorithms/MaxiCircles.d.ts +15 -0
- package/src/utils/algorithms/MiniCircles.d.ts +57 -0
- package/src/utils/algorithms/OBB.d.ts +30 -0
- package/src/utils/algorithms/PCSparseOctree.d.ts +56 -0
- package/src/utils/algorithms/Pipeline.d.ts +20 -0
- package/src/utils/algorithms/Point.d.ts +271 -0
- package/src/utils/algorithms/PointSpatialHash.d.ts +149 -0
- package/src/utils/algorithms/PointUtils.d.ts +47 -0
- package/src/utils/algorithms/Polygon.d.ts +164 -0
- package/src/utils/algorithms/PolygonUtils.d.ts +9 -0
- package/src/utils/algorithms/Quadtree.d.ts +89 -0
- package/src/utils/algorithms/Rectangle.d.ts +62 -0
- package/src/utils/algorithms/UndirectedGraph.d.ts +124 -0
- package/src/utils/algorithms/UnionFindSet.d.ts +12 -0
- package/src/utils/algorithms/ccw.d.ts +2 -0
- package/src/utils/algorithms/lazy.d.ts +14 -0
- package/src/utils/algorithms/precision.d.ts +3 -0
- package/src/utils/algorithms/stepElimination.d.ts +6 -0
- package/src/utils/algorithms/uuid.d.ts +1 -0
- package/src/utils/command/CommandFlow.d.ts +45 -0
- package/src/utils/command/CommandSystem.d.ts +96 -0
- package/src/utils/command/index.d.ts +2 -0
- package/src/utils/decorators/measure-time.d.ts +5 -0
- package/src/utils/ecs/Component.d.ts +18 -0
- package/src/utils/ecs/Container.d.ts +47 -0
- package/src/utils/ecs/index.d.ts +4 -0
- package/src/utils/geometry-manager/GeometryManager.d.ts +2 -0
- package/src/utils/index.d.ts +25 -0
- package/src/utils/modelScenario/bayWindow.d.ts +35 -0
- package/src/utils/modelScenario/scenario.d.ts +92 -0
- package/src/utils/three-object-3d/ExtrudeMesh.d.ts +11 -0
- package/src/utils/three-object-3d/LineAlignmentGuide.d.ts +20 -0
- package/src/utils/three-object-3d/Lines.d.ts +25 -0
- package/src/utils/three-object-3d/Lines2.d.ts +22 -0
- package/src/utils/three-object-3d/Shape2D.d.ts +61 -0
- package/src/utils/tools/GCHandle.d.ts +12 -0
- package/src/utils/tools/Gltf.d.ts +7 -0
- package/src/utils/tools/SnapLine.d.ts +19 -0
- package/src/utils/tools/StorageHelper.d.ts +8 -0
- package/src/utils/tools/clone-user-data.d.ts +7 -0
- package/src/utils/tools/create-html.d.ts +9 -0
- package/src/utils/tools/create-promise.d.ts +5 -0
- package/src/utils/tools/createVueApp.d.ts +1 -0
- package/src/utils/tools/download.d.ts +1 -0
- package/src/utils/tools/get-json.d.ts +5 -0
- package/src/utils/tools/include.d.ts +1 -0
- package/src/utils/tools/is-mobile.d.ts +2 -0
- package/src/utils/tools/repetitive-task.d.ts +1 -0
- package/src/utils/tools/selectLocal-file.d.ts +7 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
titleColor?: string;
|
|
3
|
+
titleSize?: string;
|
|
4
|
+
icon?: string;
|
|
5
|
+
iconSize?: string;
|
|
6
|
+
title?: string;
|
|
7
|
+
};
|
|
8
|
+
type __VLS_PublicProps = {
|
|
9
|
+
modelValue?: boolean;
|
|
10
|
+
} & __VLS_Props;
|
|
11
|
+
declare const _default: import('vue').DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
12
|
+
"update:modelValue": (value: boolean) => any;
|
|
13
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
14
|
+
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
15
|
+
}>, {
|
|
16
|
+
titleColor: string;
|
|
17
|
+
titleSize: string;
|
|
18
|
+
iconSize: string;
|
|
19
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
20
|
+
export default _default;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { Point } from '../../../../utils/algorithms/Point';
|
|
2
|
+
import { Editor } from '../Editor';
|
|
3
|
+
import { Properties } from 'csstype';
|
|
4
|
+
import { Vector3 } from 'three';
|
|
5
|
+
import { CSS2DObject } from 'three/examples/jsm/renderers/CSS2DRenderer.js';
|
|
6
|
+
type Option = {
|
|
7
|
+
auxiliaryLine?: boolean;
|
|
8
|
+
style?: Properties;
|
|
9
|
+
size?: number;
|
|
10
|
+
};
|
|
11
|
+
export declare class DragControlPoint {
|
|
12
|
+
editor: Editor;
|
|
13
|
+
/** 存储事件注销函数的数组 */
|
|
14
|
+
eventCancels: any[];
|
|
15
|
+
onChange?: (p: Point) => void;
|
|
16
|
+
onStart?: (p: Point) => void;
|
|
17
|
+
onEnd?: (p: Point) => void;
|
|
18
|
+
onEnter?: () => void;
|
|
19
|
+
onLeave?: () => void;
|
|
20
|
+
onClick?: () => void;
|
|
21
|
+
onDblClick?: () => void;
|
|
22
|
+
onLongTouch?: () => void;
|
|
23
|
+
private point;
|
|
24
|
+
opt: Option;
|
|
25
|
+
constructor(point: Point, editor: Editor, opt?: Option);
|
|
26
|
+
object3D?: CSS2DObject;
|
|
27
|
+
/**
|
|
28
|
+
* 创建拖拽点
|
|
29
|
+
*/
|
|
30
|
+
init(): void;
|
|
31
|
+
/** 设置
|
|
32
|
+
* @param point
|
|
33
|
+
*/
|
|
34
|
+
setPoint(point: Vector3 | Point): void;
|
|
35
|
+
/** 创建视图
|
|
36
|
+
* @returns
|
|
37
|
+
*/
|
|
38
|
+
createView(): {
|
|
39
|
+
object3D: CSS2DObject;
|
|
40
|
+
defaultWidth: string;
|
|
41
|
+
background: string;
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* 销毁, 注销所有事件监听,标记为已结束,释放资源
|
|
45
|
+
*/
|
|
46
|
+
destroy(): void;
|
|
47
|
+
}
|
|
48
|
+
export {};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { LineSegment } from '../../../../utils/algorithms/LineSegment';
|
|
2
|
+
import { Editor } from '../Editor';
|
|
3
|
+
import { Point } from '../../../../utils/algorithms/Point';
|
|
4
|
+
import { PointerFollowMove, MobileTrigger } from './PointerFollowMove';
|
|
5
|
+
import { Quadtree } from '../../../../utils';
|
|
6
|
+
/**
|
|
7
|
+
* 线段选择器
|
|
8
|
+
* 通过鼠标吸附交互,让用户从场景中选取一条符合类型要求的线段(墙线、洞口、门窗等)
|
|
9
|
+
* 支持异步等待选择结果,且可被暂停、销毁
|
|
10
|
+
*/
|
|
11
|
+
export declare class LineSelector extends PointerFollowMove {
|
|
12
|
+
resolve_: any;
|
|
13
|
+
onMiss?: () => void;
|
|
14
|
+
/**
|
|
15
|
+
* @param editor
|
|
16
|
+
* @param point 移动端默认点位置
|
|
17
|
+
* @param mobileTrigger 移动端触发方式
|
|
18
|
+
* @param quadtree
|
|
19
|
+
*/
|
|
20
|
+
constructor(editor: Editor, point?: Point, mobileTrigger?: MobileTrigger, quadtree?: Quadtree);
|
|
21
|
+
setEmptySpace(_: boolean): this;
|
|
22
|
+
/**
|
|
23
|
+
* 异步获取一条符合当前类型筛选的线段
|
|
24
|
+
* @param type 要选择的线段类型,若不传则使用实例当前的 type
|
|
25
|
+
* @returns Promise,解析为用户点击选中的线段,若未选中则返回 null
|
|
26
|
+
*/
|
|
27
|
+
getLines(): Promise<LineSegment<Record<string, any>> | null>;
|
|
28
|
+
/**
|
|
29
|
+
* 实现异步迭代器协议,允许使用 for-await-of 循环逐个获取选中的线段
|
|
30
|
+
* 注意:每次迭代都会调用 getLines 等待用户点击,直至选择器被销毁
|
|
31
|
+
*/
|
|
32
|
+
[Symbol.asyncIterator](): this;
|
|
33
|
+
/**
|
|
34
|
+
* 异步迭代器的 next 方法
|
|
35
|
+
* @returns 若选择器未结束且能获取到线段,则返回 { value, done: false };否则返回 { done: true }
|
|
36
|
+
*/
|
|
37
|
+
next(): Promise<{
|
|
38
|
+
value: LineSegment<Record<string, any>>;
|
|
39
|
+
done: boolean;
|
|
40
|
+
} | {
|
|
41
|
+
value: undefined;
|
|
42
|
+
done: boolean;
|
|
43
|
+
}>;
|
|
44
|
+
}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { LineSegment } from '../../../../utils/algorithms/LineSegment';
|
|
2
|
+
import { Editor } from '../Editor';
|
|
3
|
+
import { Point } from '../../../../utils/algorithms/Point';
|
|
4
|
+
import { DragControlPoint } from './DragControlPoint';
|
|
5
|
+
import { SnapController } from './SnapController';
|
|
6
|
+
import { Quadtree } from '../../../../utils';
|
|
7
|
+
/** 吸附线段类型:全部 / 墙体 / 洞口 / 通道入口 / 门 / 窗 */
|
|
8
|
+
export type LineType = ("wall" | "balconyRailing" | "hole" | "passageEntrance" | "door" | "window")[] | "all" | "none";
|
|
9
|
+
export type MobileTrigger = "dragControlPoint" | "pointerdown";
|
|
10
|
+
export declare class PointerFollowMove {
|
|
11
|
+
snapController: SnapController;
|
|
12
|
+
protected editor: Editor;
|
|
13
|
+
protected currentSelectLine: LineSegment | null;
|
|
14
|
+
protected pos: Point | null;
|
|
15
|
+
private snapType;
|
|
16
|
+
private snapRadius;
|
|
17
|
+
private emptySpace;
|
|
18
|
+
protected ended: boolean;
|
|
19
|
+
private _paused;
|
|
20
|
+
mobileTrigger: MobileTrigger;
|
|
21
|
+
/** 存储事件注销函数的数组 */
|
|
22
|
+
eventCancels: any[];
|
|
23
|
+
/** 是否暂停 */
|
|
24
|
+
get paused(): boolean;
|
|
25
|
+
/** 鼠标移动时的回调,参数为当前吸附到的线段(可能为 null)以及完整的吸附结果 */
|
|
26
|
+
onPointerMove?: (point: Point | null, line: LineSegment | null) => void;
|
|
27
|
+
onMobileStart?: (point: Point) => void;
|
|
28
|
+
onMobileEnd?: (point: Point) => void;
|
|
29
|
+
constructor(editor: Editor, point?: Point, mobileTrigger?: MobileTrigger, quadtree?: Quadtree);
|
|
30
|
+
dragControlPoint?: DragControlPoint;
|
|
31
|
+
/**
|
|
32
|
+
* 初始化:监听编辑器的鼠标位置变化事件
|
|
33
|
+
*/
|
|
34
|
+
private init;
|
|
35
|
+
/**
|
|
36
|
+
* 尝试从给定线段上获取一个洞口(或门洞/窗洞等开洞元素)
|
|
37
|
+
* @param line 基础线段(墙体)
|
|
38
|
+
* @param point 鼠标吸附的坐标点
|
|
39
|
+
* @returns 如果该点位于某个符合条件的洞口内,则返回表示该洞口的线段对象;否则返回 null
|
|
40
|
+
*/
|
|
41
|
+
private getHole;
|
|
42
|
+
/**
|
|
43
|
+
* 判断一条线段是否为门
|
|
44
|
+
* @param line 线段
|
|
45
|
+
* @returns 如果线段的 userData.isDoor 为真,则返回该线段本身;否则返回 null
|
|
46
|
+
*/
|
|
47
|
+
private getDoor;
|
|
48
|
+
/**
|
|
49
|
+
* 判断一条线段是否为栏杆
|
|
50
|
+
* @param line 线段
|
|
51
|
+
* @returns 如果线段的 userData.isDoor 为真,则返回该线段本身;否则返回 null
|
|
52
|
+
*/
|
|
53
|
+
private getBalconyRailing;
|
|
54
|
+
hasSnapType(keys: string[]): boolean;
|
|
55
|
+
/**
|
|
56
|
+
* 鼠标位置变化时的处理函数
|
|
57
|
+
* 根据吸附结果和当前类型筛选,更新 currentSelectLine,并触发 onPointerMove 回调
|
|
58
|
+
*/
|
|
59
|
+
private pointerPositionChange;
|
|
60
|
+
/**
|
|
61
|
+
* 设置要筛选的线段类型
|
|
62
|
+
* @param type 线段类型
|
|
63
|
+
* @returns this,支持链式调用
|
|
64
|
+
*/
|
|
65
|
+
setEmptySpace(emptySpace: boolean): this;
|
|
66
|
+
/**
|
|
67
|
+
* 设置要筛选的线段类型
|
|
68
|
+
* @param type 线段类型
|
|
69
|
+
* @returns this,支持链式调用
|
|
70
|
+
*/
|
|
71
|
+
setType(snapType: LineType): this;
|
|
72
|
+
/**
|
|
73
|
+
* 设置吸附半径
|
|
74
|
+
* @param adsorptRadius 半径(世界单位)
|
|
75
|
+
* @returns this,支持链式调用
|
|
76
|
+
*/
|
|
77
|
+
setSnapRadius(adsorptRadius: number): this;
|
|
78
|
+
/** 暂停吸附响应(鼠标移动时将不再更新选中状态) */
|
|
79
|
+
pause(): void;
|
|
80
|
+
/** 恢复吸附响应 */
|
|
81
|
+
resume(): void;
|
|
82
|
+
/**
|
|
83
|
+
* 销毁选择器:注销所有事件监听,标记为已结束,释放资源
|
|
84
|
+
*/
|
|
85
|
+
destroy(): void;
|
|
86
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { LineSegment, Point, Quadtree } from '../../../../utils';
|
|
2
|
+
import { Editor } from '../Editor';
|
|
3
|
+
export type SnapResult = {
|
|
4
|
+
point: Point;
|
|
5
|
+
find: boolean;
|
|
6
|
+
mode: string;
|
|
7
|
+
line: LineSegment<Record<string, any>>;
|
|
8
|
+
} | {
|
|
9
|
+
point: Point;
|
|
10
|
+
find: boolean;
|
|
11
|
+
line: undefined;
|
|
12
|
+
mode: undefined;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* 实现吸附类
|
|
16
|
+
*/
|
|
17
|
+
export declare class SnapController {
|
|
18
|
+
editor: Editor;
|
|
19
|
+
lineSnap: boolean;
|
|
20
|
+
pointSnap: boolean;
|
|
21
|
+
quadtree: Quadtree;
|
|
22
|
+
radius: number;
|
|
23
|
+
outQuadtree: boolean;
|
|
24
|
+
constructor(editor: Editor, lines: LineSegment[] | Quadtree, radius?: number);
|
|
25
|
+
addLine(line: LineSegment): void;
|
|
26
|
+
removeLine(line: LineSegment): void;
|
|
27
|
+
snap(point: Point, radius?: number): SnapResult;
|
|
28
|
+
/**
|
|
29
|
+
* 释放资源
|
|
30
|
+
*/
|
|
31
|
+
destroy(): void;
|
|
32
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Rectangle, LineSegment } from '../../../../utils';
|
|
2
|
+
import { Shape2D } from '../../../../utils/three-object-3d/Shape2D';
|
|
3
|
+
export declare class Wall2D extends Shape2D {
|
|
4
|
+
line: LineSegment;
|
|
5
|
+
rectangle: Rectangle;
|
|
6
|
+
width: number;
|
|
7
|
+
constructor(line: LineSegment, width?: number);
|
|
8
|
+
setLine(line: LineSegment): void;
|
|
9
|
+
dispose(): void;
|
|
10
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Component, ComponentContainer } from '../../../../utils/ecs';
|
|
2
|
+
import * as THREE from "three";
|
|
3
|
+
export declare class DxfLineModel extends Component<{
|
|
4
|
+
modelUpdate: {
|
|
5
|
+
model: THREE.Group;
|
|
6
|
+
};
|
|
7
|
+
}> {
|
|
8
|
+
static name: string;
|
|
9
|
+
dxfLineModel: THREE.LineSegments<THREE.BufferGeometry<THREE.NormalBufferAttributes, THREE.BufferGeometryEventMap>, THREE.Material | THREE.Material[], THREE.Object3DEventMap>;
|
|
10
|
+
dxfDoorsLineModel: THREE.LineSegments<THREE.BufferGeometry<THREE.NormalBufferAttributes, THREE.BufferGeometryEventMap>, THREE.Material | THREE.Material[], THREE.Object3DEventMap>;
|
|
11
|
+
dxfModelGroup: THREE.Group<THREE.Object3DEventMap>;
|
|
12
|
+
onAddFromParent(parent: ComponentContainer): void;
|
|
13
|
+
updateMode(): void;
|
|
14
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { Component, ComponentContainer } from '../../../../utils/ecs';
|
|
2
|
+
import { Dxf } from '../../../components/Dxf';
|
|
3
|
+
import { Variable } from '../../../components/Variable';
|
|
4
|
+
import * as THREE from "three";
|
|
5
|
+
export declare class WhiteModel extends Component<{
|
|
6
|
+
updateModel: {
|
|
7
|
+
whiteModelGroup: THREE.Group;
|
|
8
|
+
};
|
|
9
|
+
}> {
|
|
10
|
+
static name: string;
|
|
11
|
+
Dxf: Dxf | null;
|
|
12
|
+
Variable: Variable | null;
|
|
13
|
+
whiteModelGroup: THREE.Group<THREE.Object3DEventMap>;
|
|
14
|
+
whiteModelLineGroup: THREE.Group<THREE.Object3DEventMap>;
|
|
15
|
+
buildGround: boolean;
|
|
16
|
+
itemList: any[];
|
|
17
|
+
promise?: Promise<THREE.Group>;
|
|
18
|
+
/** 设置物品列表
|
|
19
|
+
* @param itemList
|
|
20
|
+
*/
|
|
21
|
+
setItemList(itemList: any): void;
|
|
22
|
+
onAddFromParent(parent: ComponentContainer): void;
|
|
23
|
+
/**
|
|
24
|
+
* 重新生成模型
|
|
25
|
+
*/
|
|
26
|
+
regenerateModel(): void;
|
|
27
|
+
private updateModel;
|
|
28
|
+
/**
|
|
29
|
+
* 转为obj
|
|
30
|
+
* @returns
|
|
31
|
+
*/
|
|
32
|
+
toOBJ(): Promise<string>;
|
|
33
|
+
/**
|
|
34
|
+
* 转为 glb
|
|
35
|
+
* @param binary
|
|
36
|
+
* @returns
|
|
37
|
+
*/
|
|
38
|
+
toGltf(binary?: boolean): Promise<string | ArrayBuffer | undefined>;
|
|
39
|
+
/**
|
|
40
|
+
* 转为 OBJBlob
|
|
41
|
+
* @returns
|
|
42
|
+
*/
|
|
43
|
+
toOBJBlob(): Promise<Blob | undefined>;
|
|
44
|
+
/**
|
|
45
|
+
* 转为 GltfBlob
|
|
46
|
+
* @returns
|
|
47
|
+
*/
|
|
48
|
+
toGltfBlob(binary?: boolean): Promise<Blob | undefined>;
|
|
49
|
+
/**
|
|
50
|
+
* 下载 OBJ
|
|
51
|
+
* @param filename
|
|
52
|
+
* @returns
|
|
53
|
+
*/
|
|
54
|
+
downloadOBJ(filename: string): Promise<void>;
|
|
55
|
+
/**
|
|
56
|
+
* 下载 Gltf
|
|
57
|
+
* @param filename
|
|
58
|
+
* @returns
|
|
59
|
+
*/
|
|
60
|
+
downloadGltf(filename: string, binary?: boolean): Promise<void>;
|
|
61
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { DxfSystem } from '../../DxfSystem';
|
|
2
|
+
import * as components from "./components";
|
|
3
|
+
type Option = {
|
|
4
|
+
whiteModel?: boolean;
|
|
5
|
+
dxfLineModel?: boolean;
|
|
6
|
+
};
|
|
7
|
+
declare function Model3dPlugin_(dxfSystem: DxfSystem, option?: Option): void;
|
|
8
|
+
declare const ModelDataPlugin: typeof Model3dPlugin_ & {
|
|
9
|
+
create(option?: Option): (dxfSystem: DxfSystem) => void;
|
|
10
|
+
};
|
|
11
|
+
export { components, ModelDataPlugin };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Component } from '../../../../utils/ecs';
|
|
2
|
+
export declare class DomContainer extends Component {
|
|
3
|
+
static name: string;
|
|
4
|
+
container: HTMLDivElement;
|
|
5
|
+
domElement: HTMLDivElement;
|
|
6
|
+
canvas: HTMLCanvasElement;
|
|
7
|
+
html2DRenderer: HTMLDivElement;
|
|
8
|
+
html3DRenderer: HTMLDivElement;
|
|
9
|
+
dialogLayer: HTMLDivElement;
|
|
10
|
+
style: HTMLStyleElement;
|
|
11
|
+
rect: DOMRect;
|
|
12
|
+
constructor();
|
|
13
|
+
}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { Vector2 } from 'three';
|
|
2
|
+
import { Component } from '../../../../utils/ecs';
|
|
3
|
+
export declare class DomEventRegister extends Component<{
|
|
4
|
+
mousemove: {
|
|
5
|
+
x: number;
|
|
6
|
+
y: number;
|
|
7
|
+
moveX: number;
|
|
8
|
+
moveY: number;
|
|
9
|
+
};
|
|
10
|
+
mousedown: {
|
|
11
|
+
x: number;
|
|
12
|
+
y: number;
|
|
13
|
+
};
|
|
14
|
+
pointerdown: {
|
|
15
|
+
x: number;
|
|
16
|
+
y: number;
|
|
17
|
+
pointerId: number;
|
|
18
|
+
pointerCount: number;
|
|
19
|
+
};
|
|
20
|
+
pointermove: {
|
|
21
|
+
x: number;
|
|
22
|
+
y: number;
|
|
23
|
+
movementX: number;
|
|
24
|
+
movementY: number;
|
|
25
|
+
pointerId: number;
|
|
26
|
+
pointerCount: number;
|
|
27
|
+
};
|
|
28
|
+
pointerup: {
|
|
29
|
+
x: number;
|
|
30
|
+
y: number;
|
|
31
|
+
pointerId: number;
|
|
32
|
+
pointerCount: number;
|
|
33
|
+
};
|
|
34
|
+
click: {
|
|
35
|
+
x: number;
|
|
36
|
+
y: number;
|
|
37
|
+
};
|
|
38
|
+
}> {
|
|
39
|
+
static name: string;
|
|
40
|
+
cancelDefaultBehaviorList: ((e: KeyboardEvent) => boolean)[];
|
|
41
|
+
pointer: Vector2;
|
|
42
|
+
pointers: Vector2[];
|
|
43
|
+
isMouseEnters: boolean[];
|
|
44
|
+
private _isMouseEnter;
|
|
45
|
+
set isMouseEnter(isMouseEnter: boolean);
|
|
46
|
+
get isMouseEnter(): boolean;
|
|
47
|
+
private _mouseMoveEventProxylock;
|
|
48
|
+
set mouseMoveEventProxylock(lock: boolean);
|
|
49
|
+
get mouseMoveEventProxylock(): boolean;
|
|
50
|
+
/**
|
|
51
|
+
* 组件被添加到父组件上时调用
|
|
52
|
+
*/
|
|
53
|
+
onAddFromParent(): void;
|
|
54
|
+
/** 判断点是否在 DOMRect 里, 以rect的目标元素为坐标系
|
|
55
|
+
* @param x
|
|
56
|
+
* @param y
|
|
57
|
+
* @param rect
|
|
58
|
+
* @returns
|
|
59
|
+
*/
|
|
60
|
+
pointInDOMRect(x: number, y: number, rect: DOMRect): boolean;
|
|
61
|
+
/** 计算当前偏移
|
|
62
|
+
* @param touch
|
|
63
|
+
* @param rect
|
|
64
|
+
* @returns
|
|
65
|
+
*/
|
|
66
|
+
computedPosition(touch: PointerEvent | Touch, rect: DOMRect): {
|
|
67
|
+
offsetX: number;
|
|
68
|
+
offsetY: number;
|
|
69
|
+
};
|
|
70
|
+
/** 更新鼠标
|
|
71
|
+
* @param e
|
|
72
|
+
*/
|
|
73
|
+
updatePointer(e: PointerEvent | TouchEvent): void;
|
|
74
|
+
/**
|
|
75
|
+
* 初始化基础事件代理
|
|
76
|
+
*/
|
|
77
|
+
initBaseEventProxy(): void;
|
|
78
|
+
/** 指针事件代理
|
|
79
|
+
*/
|
|
80
|
+
initPointerEventProxy(): void;
|
|
81
|
+
/**
|
|
82
|
+
* 初始化鼠标事件代理(判断鼠标是否在domElement上)
|
|
83
|
+
*/
|
|
84
|
+
initMouseMoveEventProxy(): void;
|
|
85
|
+
/**
|
|
86
|
+
* 初始化键盘事件
|
|
87
|
+
*/
|
|
88
|
+
initKeyEvent(): void;
|
|
89
|
+
/**
|
|
90
|
+
* 初始化滚轮事件
|
|
91
|
+
*/
|
|
92
|
+
initWheelEvent(): void;
|
|
93
|
+
/**
|
|
94
|
+
* 根据domElement的cursor自动设置body的cursor
|
|
95
|
+
*/
|
|
96
|
+
autoBodyCursor(): void;
|
|
97
|
+
/**
|
|
98
|
+
* @param callBack
|
|
99
|
+
*/
|
|
100
|
+
addCancelDefaultBehavior(callBack: (e: KeyboardEvent) => boolean): this;
|
|
101
|
+
destroy(): void;
|
|
102
|
+
/**
|
|
103
|
+
*
|
|
104
|
+
* @param el
|
|
105
|
+
* @param callBack
|
|
106
|
+
* @param offset
|
|
107
|
+
* @param condition
|
|
108
|
+
*/
|
|
109
|
+
static dragMoveHelper(el: HTMLElement, callBack: (offset: {
|
|
110
|
+
x: number;
|
|
111
|
+
y: number;
|
|
112
|
+
}, mx: number, my: number) => void, offset?: {
|
|
113
|
+
x: number;
|
|
114
|
+
y: number;
|
|
115
|
+
}, condition?: () => boolean): () => void;
|
|
116
|
+
}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { Component, ComponentContainer } from '../../../../utils/ecs';
|
|
2
|
+
export declare class EventInput extends Component<{
|
|
3
|
+
codeChange: {
|
|
4
|
+
code: string;
|
|
5
|
+
mode: "up" | "down";
|
|
6
|
+
};
|
|
7
|
+
}> {
|
|
8
|
+
static name: string;
|
|
9
|
+
keyList: Set<string>;
|
|
10
|
+
mouseList: Set<string>;
|
|
11
|
+
private keyCombinationMap;
|
|
12
|
+
currentKeyCombinationMap: Map<string, number>;
|
|
13
|
+
get activeCodeCount(): number;
|
|
14
|
+
/**
|
|
15
|
+
*
|
|
16
|
+
* @param parent
|
|
17
|
+
*/
|
|
18
|
+
onAddFromParent(parent: ComponentContainer): void;
|
|
19
|
+
/** 添加取消浏览器默认行为规则
|
|
20
|
+
* @param callBack
|
|
21
|
+
*/
|
|
22
|
+
addCancelDefaultBehavior(callBack: (input: EventInput) => boolean): void;
|
|
23
|
+
/**
|
|
24
|
+
* 计算组合按键
|
|
25
|
+
*/
|
|
26
|
+
private _computeKeyCombinations;
|
|
27
|
+
/**
|
|
28
|
+
* 添加组合按键
|
|
29
|
+
* @param name
|
|
30
|
+
* @param keys
|
|
31
|
+
* @param count
|
|
32
|
+
*/
|
|
33
|
+
addKeyCombination(name: string, keys: string[], count?: number): void;
|
|
34
|
+
/**
|
|
35
|
+
* 移除组合按键
|
|
36
|
+
* @param name
|
|
37
|
+
*/
|
|
38
|
+
removeKeyCombination(name: string): void;
|
|
39
|
+
/**
|
|
40
|
+
* 是否按下按键
|
|
41
|
+
* @param key
|
|
42
|
+
* @returns
|
|
43
|
+
*/
|
|
44
|
+
isKeyDown(key: string): boolean;
|
|
45
|
+
/**
|
|
46
|
+
* 是否按下按键组
|
|
47
|
+
* @param keys
|
|
48
|
+
* @returns
|
|
49
|
+
*/
|
|
50
|
+
isKeyDowns(keys: string[]): boolean;
|
|
51
|
+
/**
|
|
52
|
+
* 是否按下按键组中部分
|
|
53
|
+
* @param keys
|
|
54
|
+
* @returns
|
|
55
|
+
*/
|
|
56
|
+
isSomeKeyDowns(keys: string[]): boolean;
|
|
57
|
+
/**
|
|
58
|
+
* 是否按下按键组中所有,并且只按下按键组中的按键
|
|
59
|
+
* @param keys
|
|
60
|
+
* @returns
|
|
61
|
+
*/
|
|
62
|
+
isOnlyKeyDowns(keys: string[]): boolean;
|
|
63
|
+
/**
|
|
64
|
+
*
|
|
65
|
+
* @param keys
|
|
66
|
+
* @returns
|
|
67
|
+
*/
|
|
68
|
+
isOnlyKeyDown(key: string): boolean;
|
|
69
|
+
/**
|
|
70
|
+
*
|
|
71
|
+
* @param name
|
|
72
|
+
*/
|
|
73
|
+
isKeyCombination(name: string): boolean;
|
|
74
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Component, ComponentContainer } from '../../../../utils/ecs';
|
|
2
|
+
import { Point } from '../../../../utils/algorithms/Point';
|
|
3
|
+
export interface PointGroup {
|
|
4
|
+
points: Point[];
|
|
5
|
+
indices: number[];
|
|
6
|
+
rectIndices: number[];
|
|
7
|
+
}
|
|
8
|
+
export declare class ModelDataRender extends Component {
|
|
9
|
+
static name: string;
|
|
10
|
+
onAddFromParent(parent: ComponentContainer): void;
|
|
11
|
+
dxf(parent: ComponentContainer): void;
|
|
12
|
+
whiteModel(parent: ComponentContainer): void;
|
|
13
|
+
}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { CSS3DRenderer, CSS3DObject, CSS3DSprite } from 'three/addons/renderers/CSS3DRenderer.js';
|
|
2
|
+
import { CSS2DRenderer, CSS2DObject } from 'three/addons/renderers/CSS2DRenderer.js';
|
|
3
|
+
import { OrbitControls } from 'three/addons/controls/OrbitControls.js';
|
|
4
|
+
import { Component } from '../../../../utils/ecs';
|
|
5
|
+
import { Point } from '../../../../utils/algorithms/Point';
|
|
6
|
+
import { LineSegment } from '../../../../utils/algorithms/LineSegment';
|
|
7
|
+
import * as THREE from "three";
|
|
8
|
+
import type * as CSS from "csstype";
|
|
9
|
+
export interface RendererDescription {
|
|
10
|
+
canvas: HTMLCanvasElement;
|
|
11
|
+
orbitControls?: {
|
|
12
|
+
enableDamping?: boolean;
|
|
13
|
+
dampingFactor?: number;
|
|
14
|
+
domElement: HTMLElement;
|
|
15
|
+
};
|
|
16
|
+
htmlRenderer?: {
|
|
17
|
+
'2d'?: HTMLElement;
|
|
18
|
+
'3d'?: HTMLElement;
|
|
19
|
+
};
|
|
20
|
+
resizeObserver?: HTMLElement | null;
|
|
21
|
+
scene?: THREE.Scene;
|
|
22
|
+
camera?: THREE.PerspectiveCamera | THREE.OrthographicCamera | THREE.Camera;
|
|
23
|
+
}
|
|
24
|
+
export declare class Renderer extends Component<{
|
|
25
|
+
resize: {
|
|
26
|
+
width: number;
|
|
27
|
+
height: number;
|
|
28
|
+
};
|
|
29
|
+
}> {
|
|
30
|
+
static name: string;
|
|
31
|
+
static CSS2DObject: typeof CSS2DObject;
|
|
32
|
+
static CSS3DObject: typeof CSS3DObject;
|
|
33
|
+
static CSS3DSprite: typeof CSS3DSprite;
|
|
34
|
+
static Group: typeof THREE.Group;
|
|
35
|
+
static Object3D: typeof THREE.Object3D;
|
|
36
|
+
static Mesh: typeof THREE.Mesh;
|
|
37
|
+
static Line: typeof THREE.Line;
|
|
38
|
+
static LineSegments: typeof THREE.LineSegments;
|
|
39
|
+
static Points: typeof THREE.Points;
|
|
40
|
+
scene: THREE.Scene;
|
|
41
|
+
camera: THREE.PerspectiveCamera | THREE.OrthographicCamera;
|
|
42
|
+
renderer: THREE.WebGLRenderer;
|
|
43
|
+
orbitControls?: OrbitControls;
|
|
44
|
+
private resizeObserver?;
|
|
45
|
+
description: RendererDescription;
|
|
46
|
+
html2DRenderer?: CSS2DRenderer;
|
|
47
|
+
html3DRenderer?: CSS3DRenderer;
|
|
48
|
+
container: THREE.Group<THREE.Object3DEventMap>;
|
|
49
|
+
container2: THREE.Group<THREE.Object3DEventMap>;
|
|
50
|
+
onUpdate?: () => void;
|
|
51
|
+
onResize?: (width: number, height: number) => void;
|
|
52
|
+
width: number;
|
|
53
|
+
height: number;
|
|
54
|
+
private tweenTaskList;
|
|
55
|
+
constructor(description: RendererDescription);
|
|
56
|
+
render(): void;
|
|
57
|
+
/**
|
|
58
|
+
* 世界坐标转屏幕坐标
|
|
59
|
+
* @param worldPosition
|
|
60
|
+
* @param camera
|
|
61
|
+
* @param renderer
|
|
62
|
+
* @returns
|
|
63
|
+
*/
|
|
64
|
+
worldToScreenPosition(worldPosition: THREE.Vector3): THREE.Vector2;
|
|
65
|
+
cameraPositionRecord: [THREE.Vector3, THREE.Quaternion][];
|
|
66
|
+
/**
|
|
67
|
+
* 相机
|
|
68
|
+
* @param position
|
|
69
|
+
* @param lookAt
|
|
70
|
+
* @param onEnd
|
|
71
|
+
*/
|
|
72
|
+
cameraTo(position: THREE.Vector3, lookAt: THREE.Vector3, onEnd?: any): void;
|
|
73
|
+
cameraBack(): void;
|
|
74
|
+
/**
|
|
75
|
+
* 创建点
|
|
76
|
+
* @param pos
|
|
77
|
+
*/
|
|
78
|
+
createPointMesh(pos?: Point | THREE.Vector3, size?: number, parameters?: THREE.MeshBasicMaterialParameters, parent?: THREE.Object3D): THREE.Mesh<THREE.SphereGeometry, THREE.MeshBasicMaterial, THREE.Object3DEventMap>;
|
|
79
|
+
/**
|
|
80
|
+
* 创建文本
|
|
81
|
+
* @param text
|
|
82
|
+
* @param pos
|
|
83
|
+
* @param style
|
|
84
|
+
*/
|
|
85
|
+
createText(text: any, pos?: Point | THREE.Vector3, style?: CSS.Properties, parent?: THREE.Object3D): CSS2DObject;
|
|
86
|
+
/**
|
|
87
|
+
* 创建几何缓冲区
|
|
88
|
+
* @param map
|
|
89
|
+
* @param count
|
|
90
|
+
*/
|
|
91
|
+
createLineSegments(map: Record<string, number[]> | LineSegment[], count: number, parameters?: THREE.LineBasicMaterialParameters, parent?: THREE.Object3D): THREE.LineSegments;
|
|
92
|
+
/** 创建点
|
|
93
|
+
* @param point
|
|
94
|
+
* @param parameters
|
|
95
|
+
* @param parent
|
|
96
|
+
* @returns
|
|
97
|
+
*/
|
|
98
|
+
createCircle(point: (Point | THREE.Vector3) | (Point | THREE.Vector3)[], parameters?: THREE.PointsMaterialParameters, parent?: THREE.Object3D): THREE.Points<THREE.BufferGeometry<THREE.NormalBufferAttributes, THREE.BufferGeometryEventMap>, THREE.PointsMaterial, THREE.Object3DEventMap>;
|
|
99
|
+
destroy(): void;
|
|
100
|
+
}
|