@planara/core 2.0.0 → 2.1.1
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/dist/core/editor-renderer.d.ts +34 -2
- package/dist/core/editor-renderer.d.ts.map +1 -1
- package/dist/events/editor-events.d.ts +6 -0
- package/dist/events/editor-events.d.ts.map +1 -1
- package/dist/events/event-topics.d.ts +3 -1
- package/dist/events/event-topics.d.ts.map +1 -1
- package/dist/extensions/symmetric-axes-helper.d.ts.map +1 -0
- package/dist/handlers/display/wireframe-handler.d.ts +3 -4
- package/dist/handlers/display/wireframe-handler.d.ts.map +1 -1
- package/dist/handlers/select/mesh-select-handler.d.ts +1 -0
- package/dist/handlers/select/mesh-select-handler.d.ts.map +1 -1
- package/dist/handlers/tool/base-tool-handler.d.ts +25 -0
- package/dist/handlers/tool/base-tool-handler.d.ts.map +1 -0
- package/dist/handlers/tool/rotate-tool-handler.d.ts +19 -0
- package/dist/handlers/tool/rotate-tool-handler.d.ts.map +1 -0
- package/dist/handlers/tool/scale-tool-handler.d.ts +19 -0
- package/dist/handlers/tool/scale-tool-handler.d.ts.map +1 -0
- package/dist/handlers/tool/translate-tool-handler.d.ts +19 -0
- package/dist/handlers/tool/translate-tool-handler.d.ts.map +1 -0
- package/dist/hub/editor-hub.d.ts +5 -2
- package/dist/hub/editor-hub.d.ts.map +1 -1
- package/dist/index.cjs.js +180 -180
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.es.js +6231 -5157
- package/dist/index.full.d.ts +52 -3
- package/dist/index.public.d.ts +38 -3
- package/dist/index.umd.js +147 -147
- package/dist/interfaces/api/transform-helpers-api.d.ts +25 -0
- package/dist/interfaces/api/transform-helpers-api.d.ts.map +1 -0
- package/dist/interfaces/handler/display-handler.d.ts +1 -0
- package/dist/interfaces/handler/display-handler.d.ts.map +1 -1
- package/dist/interfaces/handler/select-handler.d.ts +1 -0
- package/dist/interfaces/handler/select-handler.d.ts.map +1 -1
- package/dist/interfaces/handler/tool-handler.d.ts +14 -0
- package/dist/interfaces/handler/tool-handler.d.ts.map +1 -0
- package/dist/interfaces/manager/tool-manager.d.ts +8 -0
- package/dist/interfaces/manager/tool-manager.d.ts.map +1 -0
- package/dist/ioc/container.d.ts.map +1 -1
- package/dist/managers/display/display-manager.d.ts.map +1 -1
- package/dist/managers/select/select-manager.d.ts.map +1 -1
- package/dist/managers/tool/tool-manager.d.ts +18 -0
- package/dist/managers/tool/tool-manager.d.ts.map +1 -0
- package/dist/utils/renderer-api.d.ts +6 -1
- package/dist/utils/renderer-api.d.ts.map +1 -1
- package/package.json +2 -2
- package/dist/helpers/symmetric-axes-helper.d.ts.map +0 -1
- /package/dist/{helpers → extensions}/symmetric-axes-helper.d.ts +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Renderer } from './renderer';
|
|
2
2
|
import { EventBus } from '../events/event-bus';
|
|
3
|
-
import { Figure } from '@planara/types';
|
|
3
|
+
import { Figure, ToolType } from '@planara/types';
|
|
4
4
|
import * as THREE from 'three';
|
|
5
5
|
/**
|
|
6
6
|
* Рендерер для редактора.
|
|
@@ -13,19 +13,51 @@ export declare class EditorRenderer extends Renderer {
|
|
|
13
13
|
private _bus;
|
|
14
14
|
/** Orbit-контроллер для управления камерой */
|
|
15
15
|
private _orbit;
|
|
16
|
+
/** Transform-контроллер для редактирования */
|
|
17
|
+
private _transform;
|
|
18
|
+
private readonly _transformHelper;
|
|
19
|
+
/** Raycast для получения событий наведения/клика по модели*/
|
|
16
20
|
private _raycaster;
|
|
21
|
+
/** Курсор мыши */
|
|
17
22
|
private readonly _mouse;
|
|
23
|
+
/** Были ли инициализированы обработчики событий (hover/click) */
|
|
18
24
|
private _isEventListenersAdded;
|
|
25
|
+
/**
|
|
26
|
+
* Последняя модель на которую наводились,
|
|
27
|
+
* необходима для отправки только уникальных событий в event bus
|
|
28
|
+
*/
|
|
19
29
|
private _lastHovered;
|
|
20
30
|
constructor(_canvas: HTMLCanvasElement, _bus: EventBus);
|
|
21
31
|
/**
|
|
22
32
|
* Обновление состояния рендерера.
|
|
23
33
|
*/
|
|
24
34
|
protected update(): void;
|
|
35
|
+
/** Добавление фигуры на сцену */
|
|
25
36
|
addFigure(figure: Figure): THREE.Mesh<THREE.BufferGeometry<THREE.NormalBufferAttributes, THREE.BufferGeometryEventMap>, THREE.Material | THREE.Material[], THREE.Object3DEventMap>;
|
|
26
|
-
|
|
37
|
+
/**
|
|
38
|
+
* Смена отображения `TransformControls` в зависимости от типа инструмента.
|
|
39
|
+
* @param mode - тип инструмента для отображения `TransformControls`.
|
|
40
|
+
* @internal
|
|
41
|
+
*/
|
|
42
|
+
setTransformControlsMode(mode: ToolType): void;
|
|
43
|
+
/**
|
|
44
|
+
* Добавление `TransformControls` к объекту.
|
|
45
|
+
* @param object - объект, к которому добавляются `TransformControls`.
|
|
46
|
+
* @internal
|
|
47
|
+
*/
|
|
48
|
+
attachTransformControls(object: THREE.Object3D): void;
|
|
49
|
+
/**
|
|
50
|
+
* Удаление `TransformControls` с последнего выбранного объекта.
|
|
51
|
+
* @internal
|
|
52
|
+
*/
|
|
53
|
+
detachTransformControls(): void;
|
|
54
|
+
/** Инициализация обработчиков событий на hover/click */
|
|
55
|
+
private _initMouseListeners;
|
|
56
|
+
/** Обработчик события для hover */
|
|
27
57
|
private _handleMouseMove;
|
|
58
|
+
/** Обработчик события на click */
|
|
28
59
|
private _handleMouseClick;
|
|
60
|
+
/** Вспомогательный метод для получения модели, которую выбрали и отправки события в event bus */
|
|
29
61
|
private _processRaycastEvent;
|
|
30
62
|
}
|
|
31
63
|
//# sourceMappingURL=editor-renderer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editor-renderer.d.ts","sourceRoot":"","sources":["../../src/core/editor-renderer.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"editor-renderer.d.ts","sourceRoot":"","sources":["../../src/core/editor-renderer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAQtC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAG/C,OAAO,EAAE,KAAK,MAAM,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEvD;;;;;GAKG;AACH,qBACa,cAAe,SAAQ,QAAQ;IAwBtB,OAAO,CAAC,OAAO;IACb,OAAO,CAAC,IAAI;IAxBlC,8CAA8C;IAC9C,OAAO,CAAC,MAAM,CAAkB;IAEhC,8CAA8C;IAC9C,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkB;IAEnD,6DAA6D;IAC7D,OAAO,CAAC,UAAU,CAAmB;IAErC,kBAAkB;IAClB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IAExC,iEAAiE;IACjE,OAAO,CAAC,sBAAsB,CAAS;IAEvC;;;OAGG;IACH,OAAO,CAAC,YAAY,CAA+B;gBAGvB,OAAO,EAAE,iBAAiB,EACxB,IAAI,EAAE,QAAQ;IA+B5C;;OAEG;IACH,SAAS,CAAC,MAAM;IAIhB,iCAAiC;IACjB,SAAS,CAAC,MAAM,EAAE,MAAM;IAkBxC;;;;OAIG;IACI,wBAAwB,CAAC,IAAI,EAAE,QAAQ;IAI9C;;;;OAIG;IACI,uBAAuB,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ;IAIrD;;;OAGG;IACI,uBAAuB;IAI9B,wDAAwD;IACxD,OAAO,CAAC,mBAAmB;IAiB3B,mCAAmC;IACnC,OAAO,CAAC,gBAAgB,CAEtB;IAEF,kCAAkC;IAClC,OAAO,CAAC,iBAAiB,CAEvB;IAEF,iGAAiG;IACjG,OAAO,CAAC,oBAAoB;CAoC7B"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { EventTopics } from './event-topics';
|
|
2
|
+
import { SelectMode } from '@planara/types';
|
|
2
3
|
import * as THREE from 'three';
|
|
3
4
|
/**
|
|
4
5
|
* Типы событий редактора.
|
|
@@ -14,5 +15,10 @@ export type EditorEvents = {
|
|
|
14
15
|
[EventTopics.SelectClick]: {
|
|
15
16
|
mesh: THREE.Object3D;
|
|
16
17
|
} | null;
|
|
18
|
+
/** Событие выбора объекта для редактирования. Payload: выбранный режим выборки */
|
|
19
|
+
[EventTopics.ToolSelect]: {
|
|
20
|
+
mode: SelectMode;
|
|
21
|
+
mesh: THREE.Object3D | null;
|
|
22
|
+
};
|
|
17
23
|
};
|
|
18
24
|
//# sourceMappingURL=editor-events.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editor-events.d.ts","sourceRoot":"","sources":["../../src/events/editor-events.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C;;;;GAIG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,2EAA2E;IAC3E,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE;QAAE,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAA;KAAE,GAAG,IAAI,CAAC;IAE3D,gEAAgE;IAChE,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE;QAAE,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAA;KAAE,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"editor-events.d.ts","sourceRoot":"","sources":["../../src/events/editor-events.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD;;;;GAIG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,2EAA2E;IAC3E,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE;QAAE,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAA;KAAE,GAAG,IAAI,CAAC;IAE3D,gEAAgE;IAChE,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE;QAAE,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAA;KAAE,GAAG,IAAI,CAAC;IAE3D,kFAAkF;IAClF,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE;QAAE,IAAI,EAAE,UAAU,CAAC;QAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAA;KAAE,CAAC;CAC7E,CAAC"}
|
|
@@ -7,6 +7,8 @@ export declare enum EventTopics {
|
|
|
7
7
|
/** Событие наведения на объект (hover). Payload: mesh: Mesh | null */
|
|
8
8
|
SelectHover = "select.hover",
|
|
9
9
|
/** Событие клика по объекту. Payload: mesh: Mesh | null */
|
|
10
|
-
SelectClick = "select.click"
|
|
10
|
+
SelectClick = "select.click",
|
|
11
|
+
/** Событие выбора объекта для редактирования. Payload: mode: SelectMode, object: THREE.Object3D | null */
|
|
12
|
+
ToolSelect = "tool.select"
|
|
11
13
|
}
|
|
12
14
|
//# sourceMappingURL=event-topics.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-topics.d.ts","sourceRoot":"","sources":["../../src/events/event-topics.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,oBAAY,WAAW;IACrB,sEAAsE;IACtE,WAAW,iBAAiB;IAE5B,2DAA2D;IAC3D,WAAW,iBAAiB;
|
|
1
|
+
{"version":3,"file":"event-topics.d.ts","sourceRoot":"","sources":["../../src/events/event-topics.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,oBAAY,WAAW;IACrB,sEAAsE;IACtE,WAAW,iBAAiB;IAE5B,2DAA2D;IAC3D,WAAW,iBAAiB;IAE5B,0GAA0G;IAC1G,UAAU,gBAAgB;CAC3B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"symmetric-axes-helper.d.ts","sourceRoot":"","sources":["../../src/extensions/symmetric-axes-helper.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,qBAAa,mBAAoB,SAAQ,KAAK,CAAC,KAAK;gBACtC,IAAI,SAAI;CAsBrB"}
|
|
@@ -1,19 +1,18 @@
|
|
|
1
1
|
import { IDisplayHandler } from '../../interfaces/handler/display-handler';
|
|
2
|
-
import { RendererApi } from '../../utils/renderer-api';
|
|
3
2
|
import { DisplayMode } from '@planara/types';
|
|
3
|
+
import { IMeshApi } from '../../interfaces/api/mesh-api';
|
|
4
4
|
/**
|
|
5
5
|
* Хендлер для включения wireframe-режима.
|
|
6
6
|
* Управляет сценой через RendererApi.
|
|
7
7
|
* @internal
|
|
8
8
|
*/
|
|
9
9
|
export declare class WireframeHandler implements IDisplayHandler {
|
|
10
|
+
private _api;
|
|
10
11
|
/** Режим отображения */
|
|
11
12
|
readonly mode: DisplayMode;
|
|
12
13
|
/** Список wireframe-объектов для текущих мешей */
|
|
13
14
|
private _wireframes;
|
|
14
|
-
|
|
15
|
-
private readonly _api;
|
|
16
|
-
constructor(api: RendererApi);
|
|
15
|
+
constructor(_api: IMeshApi);
|
|
17
16
|
/**
|
|
18
17
|
* Применяет wireframe-режим к сцене.
|
|
19
18
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wireframe-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/display/wireframe-handler.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAEhF,OAAO,
|
|
1
|
+
{"version":3,"file":"wireframe-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/display/wireframe-handler.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAEhF,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAE9D;;;;GAIG;AACH,qBACa,gBAAiB,YAAW,eAAe;IAOnB,OAAO,CAAC,IAAI;IAN/C,wBAAwB;IACxB,SAAgB,IAAI,EAAE,WAAW,CAAyB;IAE1D,kDAAkD;IAClD,OAAO,CAAC,WAAW,CAA4B;gBAEJ,IAAI,EAAE,QAAQ;IAEzD;;OAEG;IACI,MAAM,IAAI,IAAI;IAwCrB;;OAEG;IACI,QAAQ,IAAI,IAAI;IAoBvB;;OAEG;IACI,OAAO,IAAI,IAAI;CAOvB"}
|
|
@@ -8,6 +8,7 @@ import { SelectEventType } from '../../types/event/select-event-type';
|
|
|
8
8
|
* Управляет сценой через payload события рендерера.
|
|
9
9
|
* Обрабатывает hover и click.
|
|
10
10
|
* Меняет цвет ребер конкретной модели из payload, в случае null возвращает исходное состояние.
|
|
11
|
+
* @internal
|
|
11
12
|
*/
|
|
12
13
|
export declare class MeshSelectHandler implements ISelectHandler {
|
|
13
14
|
/** Режим, которым управляет хендлер, нужен только менеджеру */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mesh-select-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/select/mesh-select-handler.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAE9E,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAEtE
|
|
1
|
+
{"version":3,"file":"mesh-select-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/select/mesh-select-handler.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAE9E,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAEtE;;;;;;GAMG;AACH,qBACa,iBAAkB,YAAW,cAAc;IACtD,+DAA+D;IAC/D,SAAgB,IAAI,EAAE,UAAU,CAAmB;IAEnD,kDAAkD;IAClD,OAAO,CAAC,YAAY,CAA2B;IAC/C,8CAA8C;IAC9C,OAAO,CAAC,aAAa,CAA2B;IAGhD,kDAAkD;IAClD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAY;IACxC,wCAAwC;IACxC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAY;IACzC,iEAAiE;IACjE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAY;;IAI1C,MAAM,CACJ,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,EACtF,IAAI,EAAE,eAAe,GACpB,IAAI;IA+CP,QAAQ,IAAI,IAAI;IAUhB,OAAO,IAAI,IAAI;IAIf,2DAA2D;IAC3D,OAAO,CAAC,cAAc;CAQvB"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { ToolType } from '@planara/types';
|
|
2
|
+
import { ITransformHelpersApi } from '../../interfaces/api/transform-helpers-api';
|
|
3
|
+
import { IToolHandler } from '../../interfaces/handler/tool-handler';
|
|
4
|
+
import * as THREE from 'three';
|
|
5
|
+
/**
|
|
6
|
+
* Базовый класс для инструментов
|
|
7
|
+
* @internal
|
|
8
|
+
*/
|
|
9
|
+
export declare abstract class BaseToolHandler implements IToolHandler {
|
|
10
|
+
protected api: ITransformHelpersApi;
|
|
11
|
+
abstract readonly mode: ToolType;
|
|
12
|
+
protected constructor(api: ITransformHelpersApi);
|
|
13
|
+
/**
|
|
14
|
+
* Обновляет состояние инструмента под текущее выделение.
|
|
15
|
+
*/
|
|
16
|
+
handle(target: THREE.Object3D | null): void;
|
|
17
|
+
/**
|
|
18
|
+
* Откатывает локальное состояние инструмента при смене инструмента.
|
|
19
|
+
*
|
|
20
|
+
* Вызывается менеджером перед активацией другого хендлера.
|
|
21
|
+
*/
|
|
22
|
+
rollback(): void;
|
|
23
|
+
destroy(): void;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=base-tool-handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-tool-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/tool/base-tool-handler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AACvF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAE1E;;;GAGG;AACH,8BAAsB,eAAgB,YAAW,YAAY;IAGrC,SAAS,CAAC,GAAG,EAAE,oBAAoB;IAFzD,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAEjC,SAAS,aAAuB,GAAG,EAAE,oBAAoB;IAEzD;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,GAAG,IAAI,GAAG,IAAI;IAM3C;;;;OAIG;IACH,QAAQ,IAAI,IAAI;IAIhB,OAAO,IAAI,IAAI;CAGhB"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { BaseToolHandler } from './base-tool-handler';
|
|
2
|
+
import { ITransformHelpersApi } from '../../interfaces/api/transform-helpers-api';
|
|
3
|
+
import { ToolType } from '@planara/types';
|
|
4
|
+
/**
|
|
5
|
+
* Хендлер инструмента «вращение».
|
|
6
|
+
*
|
|
7
|
+
* Отвечает только за управление общими TransformControls через Renderer API:
|
|
8
|
+
* - выставляет режим гизмо;
|
|
9
|
+
* - прикрепляет к текущему объекту или отцепляет его.
|
|
10
|
+
*
|
|
11
|
+
* @internal
|
|
12
|
+
* @extends BaseToolHandler
|
|
13
|
+
*/
|
|
14
|
+
export declare class RotateToolHandler extends BaseToolHandler {
|
|
15
|
+
/** Инструмент, которым управляет хендлер, нужен только менеджеру */
|
|
16
|
+
readonly mode: ToolType;
|
|
17
|
+
constructor(api: ITransformHelpersApi);
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=rotate-tool-handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rotate-tool-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/tool/rotate-tool-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAEvF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAI1C;;;;;;;;;GASG;AACH,qBACa,iBAAkB,SAAQ,eAAe;IACpD,oEAAoE;IACpE,SAAgB,IAAI,EAAE,QAAQ,CAAmB;gBAEP,GAAG,EAAE,oBAAoB;CAGpE"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { BaseToolHandler } from './base-tool-handler';
|
|
2
|
+
import { ITransformHelpersApi } from '../../interfaces/api/transform-helpers-api';
|
|
3
|
+
import { ToolType } from '@planara/types';
|
|
4
|
+
/**
|
|
5
|
+
* Хендлер инструмента «масштабирование».
|
|
6
|
+
*
|
|
7
|
+
* Отвечает только за управление общими TransformControls через Renderer API:
|
|
8
|
+
* - выставляет режим гизмо;
|
|
9
|
+
* - прикрепляет к текущему объекту или отцепляет его.
|
|
10
|
+
*
|
|
11
|
+
* @internal
|
|
12
|
+
* @extends BaseToolHandler
|
|
13
|
+
*/
|
|
14
|
+
export declare class ScaleToolHandler extends BaseToolHandler {
|
|
15
|
+
/** Инструмент, которым управляет хендлер, нужен только менеджеру */
|
|
16
|
+
readonly mode: ToolType;
|
|
17
|
+
constructor(api: ITransformHelpersApi);
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=scale-tool-handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scale-tool-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/tool/scale-tool-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAEvF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAI1C;;;;;;;;;GASG;AACH,qBACa,gBAAiB,SAAQ,eAAe;IACnD,oEAAoE;IACpE,SAAgB,IAAI,EAAE,QAAQ,CAAkB;gBAEN,GAAG,EAAE,oBAAoB;CAGpE"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { BaseToolHandler } from './base-tool-handler';
|
|
2
|
+
import { ITransformHelpersApi } from '../../interfaces/api/transform-helpers-api';
|
|
3
|
+
import { ToolType } from '@planara/types';
|
|
4
|
+
/**
|
|
5
|
+
* Хендлер инструмента «перемещение».
|
|
6
|
+
*
|
|
7
|
+
* Отвечает только за управление общими TransformControls через Renderer API:
|
|
8
|
+
* - выставляет режим гизмо;
|
|
9
|
+
* - прикрепляет к текущему объекту или отцепляет его.
|
|
10
|
+
*
|
|
11
|
+
* @internal
|
|
12
|
+
* @extends BaseToolHandler
|
|
13
|
+
*/
|
|
14
|
+
export declare class TranslateToolHandler extends BaseToolHandler {
|
|
15
|
+
/** Инструмент, которым управляет хендлер, нужен только менеджеру */
|
|
16
|
+
readonly mode: ToolType;
|
|
17
|
+
constructor(api: ITransformHelpersApi);
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=translate-tool-handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"translate-tool-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/tool/translate-tool-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAEvF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAI1C;;;;;;;;;GASG;AACH,qBACa,oBAAqB,SAAQ,eAAe;IACvD,oEAAoE;IACpE,SAAgB,IAAI,EAAE,QAAQ,CAAsB;gBAEV,GAAG,EAAE,oBAAoB;CAGpE"}
|
package/dist/hub/editor-hub.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { DisplayMode, Figure, SelectMode } from '@planara/types';
|
|
1
|
+
import { DisplayMode, Figure, SelectMode, ToolType } from '@planara/types';
|
|
2
2
|
import { IDisplayManager } from '../interfaces/manager/display-manager';
|
|
3
3
|
import { ISelectManager } from '../interfaces/manager/select-manager';
|
|
4
4
|
import { EditorRenderer } from '../core/editor-renderer';
|
|
5
|
+
import { IToolManager } from '../interfaces/manager/tool-manager';
|
|
5
6
|
/**
|
|
6
7
|
* Хаб для управления редактированием
|
|
7
8
|
* @public
|
|
@@ -9,10 +10,12 @@ import { EditorRenderer } from '../core/editor-renderer';
|
|
|
9
10
|
export declare class EditorHub {
|
|
10
11
|
private _displayManager;
|
|
11
12
|
private _selectManager;
|
|
13
|
+
private _toolManager;
|
|
12
14
|
private _renderer;
|
|
13
|
-
constructor(_displayManager: IDisplayManager, _selectManager: ISelectManager, _renderer: EditorRenderer);
|
|
15
|
+
constructor(_displayManager: IDisplayManager, _selectManager: ISelectManager, _toolManager: IToolManager, _renderer: EditorRenderer);
|
|
14
16
|
setDisplayMode(mode: DisplayMode): void;
|
|
15
17
|
setSelectMode(mode: SelectMode): void;
|
|
18
|
+
setToolMode(mode: ToolType): void;
|
|
16
19
|
resizeRenderer(): void;
|
|
17
20
|
updateRenderer(): void;
|
|
18
21
|
addFigure(figure: Figure): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editor-hub.d.ts","sourceRoot":"","sources":["../../src/hub/editor-hub.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,MAAM,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"editor-hub.d.ts","sourceRoot":"","sources":["../../src/hub/editor-hub.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAErF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAEvE;;;GAGG;AACH,qBACa,SAAS;IAES,OAAO,CAAC,eAAe;IACxB,OAAO,CAAC,cAAc;IACxB,OAAO,CAAC,YAAY;IAClB,OAAO,CAAC,SAAS;gBAHR,eAAe,EAAE,eAAe,EACjC,cAAc,EAAE,cAAc,EAChC,YAAY,EAAE,YAAY,EACxB,SAAS,EAAE,cAAc;IAM7D,cAAc,CAAC,IAAI,EAAE,WAAW;IAIhC,aAAa,CAAC,IAAI,EAAE,UAAU;IAI9B,WAAW,CAAC,IAAI,EAAE,QAAQ;IAI1B,cAAc;IAId,cAAc;IAId,SAAS,CAAC,MAAM,EAAE,MAAM;IAIxB,OAAO;CAKR"}
|