@operato/scene-visualizer 9.0.0-beta.1 → 9.0.0-beta.2
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/banner.d.ts +1 -1
- package/dist/banner.js +1 -1
- package/dist/banner.js.map +1 -1
- package/dist/camera.d.ts +1 -1
- package/dist/camera.js +1 -1
- package/dist/camera.js.map +1 -1
- package/dist/cube.d.ts +2 -2
- package/dist/cube.js +1 -1
- package/dist/cube.js.map +1 -1
- package/dist/cylinder.d.ts +2 -2
- package/dist/cylinder.js +1 -1
- package/dist/cylinder.js.map +1 -1
- package/dist/desk.d.ts +1 -1
- package/dist/desk.js +1 -1
- package/dist/desk.js.map +1 -1
- package/dist/editors/index.d.ts +2 -2
- package/dist/editors/index.js +2 -2
- package/dist/editors/index.js.map +1 -1
- package/dist/ellipse.d.ts +1 -1
- package/dist/ellipse.js +1 -1
- package/dist/ellipse.js.map +1 -1
- package/dist/gltf-object.d.ts +1 -1
- package/dist/gltf-object.js +1 -1
- package/dist/gltf-object.js.map +1 -1
- package/dist/html-overlay-element.js +1 -1
- package/dist/html-overlay-element.js.map +1 -1
- package/dist/index.d.ts +22 -22
- package/dist/index.js +22 -22
- package/dist/index.js.map +1 -1
- package/dist/light.d.ts +1 -1
- package/dist/light.js +1 -1
- package/dist/light.js.map +1 -1
- package/dist/polygon.d.ts +1 -1
- package/dist/polygon.js +1 -1
- package/dist/polygon.js.map +1 -1
- package/dist/rack-table-cell.d.ts +1 -1
- package/dist/rack-table-cell.js +1 -1
- package/dist/rack-table-cell.js.map +1 -1
- package/dist/rack-table.d.ts +4 -4
- package/dist/rack-table.js +2 -2
- package/dist/rack-table.js.map +1 -1
- package/dist/rack.d.ts +3 -3
- package/dist/rack.js +2 -2
- package/dist/rack.js.map +1 -1
- package/dist/rect.d.ts +1 -1
- package/dist/rect.js +1 -1
- package/dist/rect.js.map +1 -1
- package/dist/scene/component.js +1 -1
- package/dist/scene/component.js.map +1 -1
- package/dist/sphere.d.ts +2 -2
- package/dist/sphere.js +1 -1
- package/dist/sphere.js.map +1 -1
- package/dist/sprite.d.ts +1 -1
- package/dist/sprite.js +1 -1
- package/dist/sprite.js.map +1 -1
- package/dist/stock.d.ts +2 -2
- package/dist/stock.js +1 -1
- package/dist/stock.js.map +1 -1
- package/dist/templates/index.js +13 -13
- package/dist/templates/index.js.map +1 -1
- package/dist/text.js +1 -1
- package/dist/text.js.map +1 -1
- package/dist/three-container.d.ts +4 -4
- package/dist/three-container.js +4 -4
- package/dist/three-container.js.map +1 -1
- package/dist/three-space.d.ts +4 -4
- package/dist/three-space.js +4 -4
- package/dist/three-space.js.map +1 -1
- package/dist/threed/floor/floor.js +1 -1
- package/dist/threed/floor/floor.js.map +1 -1
- package/dist/threed/index.d.ts +15 -15
- package/dist/threed/index.js +15 -15
- package/dist/threed/index.js.map +1 -1
- package/dist/threed/real-object-camera-meshed.d.ts +1 -1
- package/dist/threed/real-object-camera-meshed.js +2 -2
- package/dist/threed/real-object-camera-meshed.js.map +1 -1
- package/dist/threed/real-object-camera.d.ts +1 -1
- package/dist/threed/real-object-camera.js +1 -1
- package/dist/threed/real-object-camera.js.map +1 -1
- package/dist/threed/real-object-dom-element.d.ts +1 -1
- package/dist/threed/real-object-dom-element.js +1 -1
- package/dist/threed/real-object-dom-element.js.map +1 -1
- package/dist/threed/real-object-dummy.d.ts +1 -1
- package/dist/threed/real-object-dummy.js +1 -1
- package/dist/threed/real-object-dummy.js.map +1 -1
- package/dist/threed/real-object-extrude.d.ts +2 -2
- package/dist/threed/real-object-extrude.js +4 -4
- package/dist/threed/real-object-extrude.js.map +1 -1
- package/dist/threed/real-object-gltf.d.ts +1 -1
- package/dist/threed/real-object-gltf.js +1 -1
- package/dist/threed/real-object-gltf.js.map +1 -1
- package/dist/threed/real-object-group.d.ts +1 -1
- package/dist/threed/real-object-group.js +1 -1
- package/dist/threed/real-object-group.js.map +1 -1
- package/dist/threed/real-object-mesh.d.ts +1 -1
- package/dist/threed/real-object-mesh.js +2 -2
- package/dist/threed/real-object-mesh.js.map +1 -1
- package/dist/threed/real-object-plane.d.ts +1 -1
- package/dist/threed/real-object-plane.js +1 -1
- package/dist/threed/real-object-plane.js.map +1 -1
- package/dist/threed/real-object-scene.d.ts +1 -1
- package/dist/threed/real-object-scene.js +2 -2
- package/dist/threed/real-object-scene.js.map +1 -1
- package/dist/threed/real-object-sprite-2d.d.ts +1 -1
- package/dist/threed/real-object-sprite-2d.js +2 -2
- package/dist/threed/real-object-sprite-2d.js.map +1 -1
- package/dist/threed/real-object-sprite.d.ts +1 -1
- package/dist/threed/real-object-sprite.js +2 -2
- package/dist/threed/real-object-sprite.js.map +1 -1
- package/dist/threed/real-object-text.d.ts +1 -1
- package/dist/threed/real-object-text.js +3 -3
- package/dist/threed/real-object-text.js.map +1 -1
- package/dist/threed/real-object.d.ts +1 -1
- package/dist/threed/real-object.js +1 -1
- package/dist/threed/real-object.js.map +1 -1
- package/dist/threed/texture/canvas-texture.js +1 -1
- package/dist/threed/texture/canvas-texture.js.map +1 -1
- package/dist/threed/texture/text-texture.js +1 -1
- package/dist/threed/texture/text-texture.js.map +1 -1
- package/dist/visualizer.d.ts +3 -3
- package/dist/visualizer.js +3 -3
- package/dist/visualizer.js.map +1 -1
- package/dist/wall.d.ts +2 -2
- package/dist/wall.js +1 -1
- package/dist/wall.js.map +1 -1
- package/package.json +3 -2
package/dist/banner.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as THREE from 'three';
|
|
2
2
|
import { ComponentNature, Shape } from '@hatiolab/things-scene';
|
|
3
|
-
import { RealObject } from './threed/real-object';
|
|
3
|
+
import { RealObject } from './threed/real-object.js';
|
|
4
4
|
export declare class Banner3D extends RealObject {
|
|
5
5
|
build(): void;
|
|
6
6
|
createCube(w: number, h: number, d: number): THREE.Mesh<THREE.BoxGeometry, THREE.MeshStandardMaterial, THREE.Object3DEventMap>;
|
package/dist/banner.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import * as THREE from 'three';
|
|
5
5
|
import { Component, RectPath, Shape } from '@hatiolab/things-scene';
|
|
6
|
-
import { RealObject } from './threed/real-object';
|
|
6
|
+
import { RealObject } from './threed/real-object.js';
|
|
7
7
|
const NATURE = {
|
|
8
8
|
mutable: false,
|
|
9
9
|
resizable: true,
|
package/dist/banner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"banner.js","sourceRoot":"","sources":["../src/banner.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,SAAS,EAAmB,QAAQ,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AACpF,OAAO,EAAE,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"banner.js","sourceRoot":"","sources":["../src/banner.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\nimport * as THREE from 'three'\nimport { Component, ComponentNature, RectPath, Shape } from '@hatiolab/things-scene'\nimport { RealObject } from './threed/real-object.js'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'color',\n label: 'box-color',\n name: 'boxColor',\n property: 'boxColor'\n }\n ],\n help: 'scene/component/banner'\n}\n\nexport class Banner3D extends RealObject {\n build() {\n super.build()\n\n var { width = 1, height = 1, depth = 1 } = this.component.state\n\n this.object3d.add(this.createCube(width, height, depth))\n\n let textureBoard = this.createTextureBoard(width, depth)\n textureBoard.position.set(0, 0, 0.5 * height + 1)\n this.object3d.add(textureBoard)\n }\n\n createCube(w: number, h: number, d: number) {\n var { boxColor = '#ccaa76' } = this.component.state\n\n var geometry = new THREE.BoxGeometry(w, d, h)\n var material = new THREE.MeshStandardMaterial({\n color: boxColor,\n side: THREE.FrontSide\n })\n\n var cube = new THREE.Mesh(geometry, material)\n cube.castShadow = true\n\n return cube\n }\n\n createTextureBoard(w: number, h: number) {\n var boardMaterial\n\n let { fillStyle = '#ccaa76' } = this.component.state\n const texture = RealObject.buildFillStyleTexture(this.component)\n\n if (texture) {\n boardMaterial = new THREE.MeshStandardMaterial({ map: texture })\n } else {\n boardMaterial = new THREE.MeshStandardMaterial({\n color: fillStyle || '#ccaa76',\n side: THREE.FrontSide\n })\n }\n\n var boardGeometry = new THREE.PlaneGeometry(w, h, 1, 1)\n var boardMesh = new THREE.Mesh(boardGeometry, boardMaterial)\n boardMesh.castShadow = true\n\n return boardMesh\n }\n}\n\nexport class Banner extends RectPath(Shape) {\n is3dish() {\n return true\n }\n\n get nature() {\n return NATURE\n }\n\n buildRealObject(): RealObject | undefined {\n return new Banner3D(this)\n }\n}\n\nComponent.register('banner', Banner)\n"]}
|
package/dist/camera.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ComponentNature, Shape } from '@hatiolab/things-scene';
|
|
2
2
|
import * as THREE from 'three';
|
|
3
|
-
import { RealObject } from './threed/real-object';
|
|
3
|
+
import { RealObject } from './threed/real-object.js';
|
|
4
4
|
export declare class Camera3D extends RealObject<THREE.Mesh> {
|
|
5
5
|
camera?: THREE.PerspectiveCamera;
|
|
6
6
|
helper?: THREE.CameraHelper;
|
package/dist/camera.js
CHANGED
package/dist/camera.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"camera.js","sourceRoot":"","sources":["../src/camera.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAmB,QAAQ,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AACpF,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"camera.js","sourceRoot":"","sources":["../src/camera.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\nimport { Component, ComponentNature, RectPath, Shape } from '@hatiolab/things-scene'\nimport * as THREE from 'three'\nimport { RealObject } from './threed/real-object.js'\n\nconst DEFAULT = {\n far: 100000,\n fov: 80,\n near: 1,\n zoom: 1\n}\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'number',\n label: 'near',\n name: 'near'\n },\n {\n type: 'number',\n label: 'far',\n name: 'far'\n },\n {\n type: 'number',\n label: 'fov',\n name: 'fov'\n },\n {\n type: 'number',\n label: 'zoom',\n name: 'zoom'\n },\n {\n type: 'checkbox',\n label: 'show-helper',\n name: 'showHelper'\n }\n ],\n help: 'scene/component/camera'\n}\n\nexport class Camera3D extends RealObject<THREE.Mesh> {\n camera?: THREE.PerspectiveCamera\n helper?: THREE.CameraHelper\n\n protected getObject3dInstance() {\n return new THREE.Mesh()\n }\n\n updateCamera() {\n var {\n near = DEFAULT.near,\n far = DEFAULT.far,\n fov = DEFAULT.fov,\n zoom = DEFAULT.zoom,\n showHelper\n } = this.component.state\n\n this.camera!.far = far\n this.camera!.fov = fov\n this.camera!.near = near\n this.camera!.zoom = zoom\n\n if (showHelper) {\n if (!this.helper) {\n this.helper = new THREE.CameraHelper(this.camera!)\n this.object3d.add(this.helper)\n }\n } else if (this.helper) {\n this.object3d.remove(this.helper)\n delete this.helper\n }\n }\n\n build() {\n super.build()\n\n var { width = 0, height = 0, depth = 0, fillStyle = 'lightgray' } = this.component.state\n\n this.object3d.geometry = new THREE.BoxGeometry(width, depth, height)\n this.object3d.material = new THREE.MeshStandardMaterial({ color: fillStyle, side: THREE.FrontSide })\n\n this.camera = new THREE.PerspectiveCamera()\n this.camera.position.set(0, 0, 0)\n\n this.object3d.add(this.camera)\n this.object3d.lookAt(0, 0, 0)\n\n this.updateCamera()\n }\n}\n\nexport class Camera extends RectPath(Shape) {\n static _image: HTMLImageElement\n\n is3dish() {\n return true\n }\n\n static get image() {\n if (!Camera._image) {\n Camera._image = new Image()\n Camera._image.src = new URL('../icons/camera-big.png', import.meta.url).href\n }\n\n return Camera._image\n }\n\n render(context: CanvasRenderingContext2D) {\n var { left, top, width, height } = this.bounds\n\n context.beginPath()\n this.drawImage(context, Camera.image, left, top, width, height)\n }\n\n buildRealObject(): RealObject | undefined {\n return new Camera3D(this)\n }\n\n get nature(): ComponentNature {\n return NATURE\n }\n}\n\nComponent.register('camera', Camera)\n"]}
|
package/dist/cube.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ComponentNature, Shape } from '@hatiolab/things-scene';
|
|
2
|
-
import { RealObject } from './threed/real-object';
|
|
3
|
-
import { RealObjectMesh } from './threed/real-object-mesh';
|
|
2
|
+
import { RealObject } from './threed/real-object.js';
|
|
3
|
+
import { RealObjectMesh } from './threed/real-object-mesh.js';
|
|
4
4
|
export declare class Cube3D extends RealObjectMesh {
|
|
5
5
|
buildGeometry(): void;
|
|
6
6
|
}
|
package/dist/cube.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { Component, RectPath, Shape } from '@hatiolab/things-scene';
|
|
5
5
|
import * as THREE from 'three';
|
|
6
|
-
import { RealObjectMesh } from './threed/real-object-mesh';
|
|
6
|
+
import { RealObjectMesh } from './threed/real-object-mesh.js';
|
|
7
7
|
const NATURE = {
|
|
8
8
|
mutable: false,
|
|
9
9
|
resizable: true,
|
package/dist/cube.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cube.js","sourceRoot":"","sources":["../src/cube.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAmB,QAAQ,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AACpF,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"cube.js","sourceRoot":"","sources":["../src/cube.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAmB,QAAQ,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AACpF,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAE7D,MAAM,MAAM,GAAoB;IAC9B,OAAO,EAAE,KAAK;IACd,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,IAAI;IACf,UAAU,EAAE,EAAE;IACd,IAAI,EAAE,sBAAsB;CAC7B,CAAA;AAED,MAAM,OAAO,MAAO,SAAQ,cAAc;IACxC,aAAa;QACX,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAA;QAE/D,IAAI,CAAC,QAAQ,CAAC,QAAQ,GAAG,IAAI,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;IACtE,CAAC;CACF;AAED,MAAM,OAAO,IAAK,SAAQ,QAAQ,CAAC,KAAK,CAAC;IACvC,OAAO;QACL,OAAO,IAAI,CAAA;IACb,CAAC;IAED,eAAe;QACb,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,CAAA;IACzB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AAED,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\nimport { Component, ComponentNature, RectPath, Shape } from '@hatiolab/things-scene'\nimport * as THREE from 'three'\nimport { RealObject } from './threed/real-object.js'\nimport { RealObjectMesh } from './threed/real-object-mesh.js'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [],\n help: 'scene/component/cube'\n}\n\nexport class Cube3D extends RealObjectMesh {\n buildGeometry() {\n var { width = 0, height = 0, depth = 0 } = this.component.state\n\n this.object3d.geometry = new THREE.BoxGeometry(width, depth, height)\n }\n}\n\nexport class Cube extends RectPath(Shape) {\n is3dish() {\n return true\n }\n\n buildRealObject(): RealObject | undefined {\n return new Cube3D(this)\n }\n\n get nature() {\n return NATURE\n }\n}\n\nComponent.register('cube', Cube)\n"]}
|
package/dist/cylinder.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ComponentNature, Ellipse } from '@hatiolab/things-scene';
|
|
2
|
-
import { RealObject } from './threed/real-object';
|
|
3
|
-
import { RealObjectMesh } from './threed/real-object-mesh';
|
|
2
|
+
import { RealObject } from './threed/real-object.js';
|
|
3
|
+
import { RealObjectMesh } from './threed/real-object-mesh.js';
|
|
4
4
|
export declare class Cylinder3D extends RealObjectMesh {
|
|
5
5
|
buildGeometry(): void;
|
|
6
6
|
}
|
package/dist/cylinder.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { Component, Ellipse } from '@hatiolab/things-scene';
|
|
5
5
|
import * as THREE from 'three';
|
|
6
|
-
import { RealObjectMesh } from './threed/real-object-mesh';
|
|
6
|
+
import { RealObjectMesh } from './threed/real-object-mesh.js';
|
|
7
7
|
const NATURE = {
|
|
8
8
|
mutable: false,
|
|
9
9
|
resizable: true,
|
package/dist/cylinder.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cylinder.js","sourceRoot":"","sources":["../src/cylinder.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAmB,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAC5E,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"cylinder.js","sourceRoot":"","sources":["../src/cylinder.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAmB,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAC5E,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAE7D,MAAM,MAAM,GAAoB;IAC9B,OAAO,EAAE,KAAK;IACd,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,IAAI;IACf,UAAU,EAAE,EAAE;IACd,IAAI,EAAE,0BAA0B;CACjC,CAAA;AAED,MAAM,OAAO,UAAW,SAAQ,cAAc;IAC5C,aAAa;QACX,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAA;QAEhD,IAAI,CAAC,QAAQ,CAAC,QAAQ,GAAG,IAAI,KAAK,CAAC,gBAAgB,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAA;IACxE,CAAC;CACF;AAED,MAAM,OAAO,QAAS,SAAQ,OAAO;IACnC,OAAO;QACL,OAAO,IAAI,CAAA;IACb,CAAC;IAED,eAAe;QACb,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,CAAA;IAC7B,CAAC;IAED,IAAI,MAAM;QACR,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AAED,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\nimport { Component, ComponentNature, Ellipse } from '@hatiolab/things-scene'\nimport * as THREE from 'three'\nimport { RealObject } from './threed/real-object.js'\nimport { RealObjectMesh } from './threed/real-object-mesh.js'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [],\n help: 'scene/component/cylinder'\n}\n\nexport class Cylinder3D extends RealObjectMesh {\n buildGeometry() {\n var { depth = 0, rx = 0 } = this.component.state\n\n this.object3d.geometry = new THREE.CylinderGeometry(rx, rx, depth, 25)\n }\n}\n\nexport class Cylinder extends Ellipse {\n is3dish() {\n return true\n }\n\n buildRealObject(): RealObject | undefined {\n return new Cylinder3D(this)\n }\n\n get nature() {\n return NATURE\n }\n}\n\nComponent.register('cylinder', Cylinder)\n"]}
|
package/dist/desk.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ComponentNature, Shape } from '@hatiolab/things-scene';
|
|
2
2
|
import * as THREE from 'three';
|
|
3
|
-
import { RealObject } from './threed/real-object';
|
|
3
|
+
import { RealObject } from './threed/real-object.js';
|
|
4
4
|
export declare class Desk3D extends RealObject {
|
|
5
5
|
get boardThickness(): number;
|
|
6
6
|
get legThickness(): number;
|
package/dist/desk.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { Component, RectPath, Shape } from '@hatiolab/things-scene';
|
|
5
5
|
import * as THREE from 'three';
|
|
6
|
-
import { RealObject } from './threed/real-object';
|
|
6
|
+
import { RealObject } from './threed/real-object.js';
|
|
7
7
|
const NATURE = {
|
|
8
8
|
mutable: false,
|
|
9
9
|
resizable: true,
|
package/dist/desk.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"desk.js","sourceRoot":"","sources":["../src/desk.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAmB,QAAQ,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AACpF,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"desk.js","sourceRoot":"","sources":["../src/desk.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\nimport { Component, ComponentNature, RectPath, Shape } from '@hatiolab/things-scene'\nimport * as THREE from 'three'\nimport { RealObject } from './threed/real-object.js'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'color',\n label: 'leg-color',\n name: 'legColor',\n property: 'legColor'\n }\n ],\n help: 'scene/component/desk'\n}\n\nexport class Desk3D extends RealObject {\n get boardThickness() {\n var { depth } = this.component.state\n\n return Math.min(10, depth / 10)\n }\n\n get legThickness() {\n var { width, height } = this.component.state\n\n var min = Math.min(width, height)\n\n return Math.min(10, min / 10)\n }\n\n get margin() {\n return Math.min(this.legThickness / 5, 2)\n }\n\n build() {\n super.build()\n\n var { width, height, depth } = this.component.state\n\n var top = (depth - this.boardThickness) / 2\n\n var legs = this.createDeskLegs(width, height, depth)\n legs.position.set(0, -this.boardThickness / 2, 0)\n legs.castShadow = true\n\n this.object3d.add(legs)\n\n let board = this.createDeskBoard(width, height)\n board.position.set(0, top, 0)\n board.rotation.x = Math.PI / 2\n board.castShadow = true\n\n this.object3d.add(board)\n }\n\n createDeskLegs(w: number, h: number, d: number) {\n var { legColor } = this.component.state\n\n var legThickness = this.legThickness\n var margin = this.margin\n d -= this.boardThickness\n\n var legs = new THREE.Group()\n\n var posX = w / 2 - legThickness / 2 - margin\n var posY = h / 2 - legThickness / 2 - margin\n var posZ = 0\n\n for (var i = 0; i < 4; i++) {\n var geometry = new THREE.BoxGeometry(legThickness, d, legThickness)\n var material = new THREE.MeshStandardMaterial({\n color: legColor || '#252525'\n })\n\n var leg = new THREE.Mesh(geometry, material)\n leg.castShadow = true\n\n switch (i) {\n case 0:\n leg.position.set(posX, posZ, posY)\n break\n case 1:\n leg.position.set(posX, posZ, -posY)\n break\n case 2:\n leg.position.set(-posX, posZ, posY)\n break\n case 3:\n leg.position.set(-posX, posZ, -posY)\n break\n }\n\n legs.add(leg)\n }\n\n return legs\n }\n\n createDeskBoard(w: number, h: number) {\n var { fillStyle } = this.component.state\n\n var d = 10\n\n var boardMaterial = new THREE.MeshStandardMaterial({\n color: fillStyle || '#ccaa76'\n })\n var boardGeometry = new THREE.BoxGeometry(w, h, d, 1, 1)\n var board = new THREE.Mesh(boardGeometry, boardMaterial)\n\n return board\n }\n}\n\nexport class Desk extends RectPath(Shape) {\n is3dish() {\n return true\n }\n\n buildRealObject(): RealObject | undefined {\n return new Desk3D(this)\n }\n\n get nature() {\n return NATURE\n }\n}\n\nComponent.register('desk', Desk)\n"]}
|
package/dist/editors/index.d.ts
CHANGED
package/dist/editors/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/editors/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/editors/index.ts"],"names":[],"mappings":"AAAA,OAAO,gDAAgD,CAAA;AACvD,OAAO,gCAAgC,CAAA;AAEvC,eAAe;IACb;QACE,IAAI,EAAE,2BAA2B;QACjC,OAAO,EAAE,2CAA2C;KACrD;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,2BAA2B;KACrC;CACF,CAAA","sourcesContent":["import './property-editor-location-increase-pattern.js'\nimport './property-editor-gltf-info.js'\n\nexport default [\n {\n type: 'location-increase-pattern',\n element: 'property-editor-location-increase-pattern'\n },\n {\n type: 'gltf-info',\n element: 'property-editor-gltf-info'\n }\n]\n"]}
|
package/dist/ellipse.d.ts
CHANGED
package/dist/ellipse.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { Ellipse } from '@hatiolab/things-scene';
|
|
5
5
|
import * as THREE from 'three';
|
|
6
|
-
import { RealObjectExtrude } from './threed/real-object-extrude';
|
|
6
|
+
import { RealObjectExtrude } from './threed/real-object-extrude.js';
|
|
7
7
|
export class EllipseExtrude extends RealObjectExtrude {
|
|
8
8
|
get shape() {
|
|
9
9
|
var { cx = 0, cy = 0, rx = 1, ry = 1, startAngle = 0, endAngle = 2 * Math.PI, anticlockwise = false } = this.component.state;
|
package/dist/ellipse.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ellipse.js","sourceRoot":"","sources":["../src/ellipse.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"ellipse.js","sourceRoot":"","sources":["../src/ellipse.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAEnE,MAAM,OAAO,cAAe,SAAQ,iBAAiB;IACnD,IAAI,KAAK;QACP,IAAI,EACF,EAAE,GAAG,CAAC,EACN,EAAE,GAAG,CAAC,EACN,EAAE,GAAG,CAAC,EACN,EAAE,GAAG,CAAC,EACN,UAAU,GAAG,CAAC,EACd,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,EACtB,aAAa,GAAG,KAAK,EACtB,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAA;QAExB,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,YAAY,CAClC,EAAE,EACF,EAAE,EAAE,SAAS;QACb,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EACZ,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,mBAAmB;QACjC,UAAU,EACV,QAAQ,EAAE,yBAAyB;QACnC,aAAa,EAAE,aAAa;QAC5B,CAAC,CAAC,YAAY;SACf,CAAA;QAED,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAA;IAC7C,CAAC;CACF;AAED,OAAO,CAAC,SAAS,CAAC,eAAe,GAAG;IAClC,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,CAAA;AACjC,CAAC,CAAA","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\nimport { Ellipse } from '@hatiolab/things-scene'\nimport * as THREE from 'three'\nimport { RealObjectExtrude } from './threed/real-object-extrude.js'\n\nexport class EllipseExtrude extends RealObjectExtrude {\n get shape() {\n var {\n cx = 0,\n cy = 0,\n rx = 1,\n ry = 1,\n startAngle = 0,\n endAngle = 2 * Math.PI,\n anticlockwise = false\n } = this.component.state\n\n const curve = new THREE.EllipseCurve(\n cx,\n cy, // ax, aY\n Math.abs(rx),\n Math.abs(ry), // xRadius, yRadius\n startAngle,\n endAngle, // aStartAngle, aEndAngle\n anticlockwise, // aClockwise\n 0 // aRotation\n )\n\n return new THREE.Shape(curve.getPoints(50))\n }\n}\n\nEllipse.prototype.buildRealObject = function () {\n return new EllipseExtrude(this)\n}\n"]}
|
package/dist/gltf-object.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ComponentNature, Control, Shape } from '@hatiolab/things-scene';
|
|
2
|
-
import { RealObject } from './threed/real-object';
|
|
2
|
+
import { RealObject } from './threed/real-object.js';
|
|
3
3
|
declare const GLTFObject_base: typeof Shape;
|
|
4
4
|
export declare class GLTFObject extends GLTFObject_base {
|
|
5
5
|
static _image: HTMLImageElement;
|
package/dist/gltf-object.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright © HatioLab Inc. All rights reserved.
|
|
3
3
|
*/
|
|
4
4
|
import { Component, RectPath, Shape } from '@hatiolab/things-scene';
|
|
5
|
-
import { RealObjectGLTF } from './threed/real-object-gltf';
|
|
5
|
+
import { RealObjectGLTF } from './threed/real-object-gltf.js';
|
|
6
6
|
const BASE_URL_ALIAS = '$base_url';
|
|
7
7
|
const NATURE = {
|
|
8
8
|
mutable: false,
|
package/dist/gltf-object.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gltf-object.js","sourceRoot":"","sources":["../src/gltf-object.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAA4B,QAAQ,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAG7F,OAAO,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"gltf-object.js","sourceRoot":"","sources":["../src/gltf-object.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport { Component, ComponentNature, Control, RectPath, Shape } from '@hatiolab/things-scene'\nimport { RealObject } from './threed/real-object.js'\n\nimport { RealObjectGLTF } from './threed/real-object-gltf.js'\n\nconst BASE_URL_ALIAS = '$base_url'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'gltf-selector',\n label: 'url',\n name: 'src',\n property: {\n displayField: 'id',\n displayFullUrl: true,\n baseUrlAlias: BASE_URL_ALIAS,\n defaultStorage: '3d-model',\n storageFilters: {\n type: Array,\n value: [\n {\n name: 'category',\n value: 'image'\n }\n ]\n },\n useUpload: true,\n category: 'application'\n },\n observe: function (this: HTMLElement, src: string) {\n const info: any = this.parentNode!.querySelector('[name=gltfInfo]')\n info.src = src\n }\n },\n {\n type: 'gltf-info',\n label: '',\n name: 'gltfInfo',\n readonly: true,\n property: {\n action: (component: GLTFObject, options: any) => {\n component.set(options)\n }\n },\n editor: {\n fullwidth: true\n }\n }\n ],\n 'value-property': 'source',\n help: 'scene/component/gltf-object'\n}\n\nexport class GLTFObject extends RectPath(Shape) {\n static _image: HTMLImageElement\n\n is3dish() {\n return true\n }\n\n static get image() {\n if (!GLTFObject._image) {\n GLTFObject._image = new Image()\n GLTFObject._image.src = new URL('../icons/canvasicon-gltf.png', import.meta.url).href\n }\n\n return GLTFObject._image\n }\n\n get controls(): Array<Control> | undefined {\n return []\n }\n\n render(context: CanvasRenderingContext2D) {\n var { left, top, width, height } = this.bounds\n\n context.beginPath()\n this.drawImage(context, GLTFObject.image, left, top, width, height)\n }\n\n buildRealObject(): RealObject | undefined {\n return new RealObjectGLTF(this)\n }\n\n get nature() {\n return NATURE\n }\n\n get source() {\n return this.getState('src')\n }\n\n set source(source) {\n this.setState('src', source)\n }\n\n set dimension(dimension: { width: number; height: number; depth: number }) {\n const { width = 1, height = 1, depth = 1 } = dimension\n this.setState({\n width,\n height,\n depth\n })\n\n this.realObject?.updateDimension()\n }\n}\n\nComponent.register('gltf-object', GLTFObject)\n"]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright © HatioLab Inc. All rights reserved.
|
|
3
3
|
*/
|
|
4
4
|
import { HTMLOverlayContainer, HTMLOverlayElement } from '@hatiolab/things-scene';
|
|
5
|
-
import { RealObjectDomElement } from './threed/real-object-dom-element';
|
|
5
|
+
import { RealObjectDomElement } from './threed/real-object-dom-element.js';
|
|
6
6
|
HTMLOverlayElement.prototype.buildRealObject = function () {
|
|
7
7
|
return new RealObjectDomElement(this);
|
|
8
8
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html-overlay-element.js","sourceRoot":"","sources":["../src/html-overlay-element.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"html-overlay-element.js","sourceRoot":"","sources":["../src/html-overlay-element.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAA;AAE1E,kBAAkB,CAAC,SAAS,CAAC,eAAe,GAAG;IAC7C,OAAO,IAAI,oBAAoB,CAAC,IAAI,CAAC,CAAA;AACvC,CAAC,CAAA;AAED,oBAAoB,CAAC,SAAS,CAAC,eAAe,GAAG;IAC/C,OAAO,IAAI,oBAAoB,CAAC,IAAI,CAAC,CAAA;AACvC,CAAC,CAAA","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\nimport { HTMLOverlayContainer, HTMLOverlayElement } from '@hatiolab/things-scene'\nimport { RealObjectDomElement } from './threed/real-object-dom-element.js'\n\nHTMLOverlayElement.prototype.buildRealObject = function () {\n return new RealObjectDomElement(this)\n}\n\nHTMLOverlayContainer.prototype.buildRealObject = function () {\n return new RealObjectDomElement(this)\n}\n"]}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import './scene/component';
|
|
2
|
-
import './text';
|
|
3
|
-
import './html-overlay-element';
|
|
4
|
-
export * from './threed';
|
|
5
|
-
export * from './gltf-object';
|
|
6
|
-
export * from './camera';
|
|
7
|
-
export * from './banner';
|
|
8
|
-
export * from './sprite';
|
|
9
|
-
export * from './cube';
|
|
10
|
-
export * from './cylinder';
|
|
11
|
-
export * from './desk';
|
|
12
|
-
export * from './ellipse';
|
|
13
|
-
export * from './polygon';
|
|
14
|
-
export * from './rack';
|
|
15
|
-
export * from './rack-table';
|
|
16
|
-
export * from './rack-table-cell';
|
|
17
|
-
export * from './rect';
|
|
18
|
-
export * from './sphere';
|
|
19
|
-
export * from './visualizer';
|
|
20
|
-
export * from './three-container';
|
|
21
|
-
export * from './wall';
|
|
22
|
-
export * from './light';
|
|
1
|
+
import './scene/component.js';
|
|
2
|
+
import './text.js';
|
|
3
|
+
import './html-overlay-element.js';
|
|
4
|
+
export * from './threed/index.js';
|
|
5
|
+
export * from './gltf-object.js';
|
|
6
|
+
export * from './camera.js';
|
|
7
|
+
export * from './banner.js';
|
|
8
|
+
export * from './sprite.js';
|
|
9
|
+
export * from './cube.js';
|
|
10
|
+
export * from './cylinder.js';
|
|
11
|
+
export * from './desk.js';
|
|
12
|
+
export * from './ellipse.js';
|
|
13
|
+
export * from './polygon.js';
|
|
14
|
+
export * from './rack.js';
|
|
15
|
+
export * from './rack-table.js';
|
|
16
|
+
export * from './rack-table-cell.js';
|
|
17
|
+
export * from './rect.js';
|
|
18
|
+
export * from './sphere.js';
|
|
19
|
+
export * from './visualizer.js';
|
|
20
|
+
export * from './three-container.js';
|
|
21
|
+
export * from './wall.js';
|
|
22
|
+
export * from './light.js';
|
package/dist/index.js
CHANGED
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
/*
|
|
2
2
|
* Copyright © HatioLab Inc. All rights reserved.
|
|
3
3
|
*/
|
|
4
|
-
import './scene/component';
|
|
5
|
-
import './text';
|
|
6
|
-
import './html-overlay-element';
|
|
7
|
-
export * from './threed';
|
|
8
|
-
export * from './gltf-object';
|
|
9
|
-
export * from './camera';
|
|
10
|
-
export * from './banner';
|
|
11
|
-
export * from './sprite';
|
|
12
|
-
export * from './cube';
|
|
13
|
-
export * from './cylinder';
|
|
14
|
-
export * from './desk';
|
|
15
|
-
export * from './ellipse';
|
|
16
|
-
export * from './polygon';
|
|
17
|
-
export * from './rack';
|
|
18
|
-
export * from './rack-table';
|
|
19
|
-
export * from './rack-table-cell';
|
|
20
|
-
export * from './rect';
|
|
21
|
-
export * from './sphere';
|
|
22
|
-
export * from './visualizer';
|
|
23
|
-
export * from './three-container';
|
|
24
|
-
export * from './wall';
|
|
25
|
-
export * from './light';
|
|
4
|
+
import './scene/component.js';
|
|
5
|
+
import './text.js';
|
|
6
|
+
import './html-overlay-element.js';
|
|
7
|
+
export * from './threed/index.js';
|
|
8
|
+
export * from './gltf-object.js';
|
|
9
|
+
export * from './camera.js';
|
|
10
|
+
export * from './banner.js';
|
|
11
|
+
export * from './sprite.js';
|
|
12
|
+
export * from './cube.js';
|
|
13
|
+
export * from './cylinder.js';
|
|
14
|
+
export * from './desk.js';
|
|
15
|
+
export * from './ellipse.js';
|
|
16
|
+
export * from './polygon.js';
|
|
17
|
+
export * from './rack.js';
|
|
18
|
+
export * from './rack-table.js';
|
|
19
|
+
export * from './rack-table-cell.js';
|
|
20
|
+
export * from './rect.js';
|
|
21
|
+
export * from './sphere.js';
|
|
22
|
+
export * from './visualizer.js';
|
|
23
|
+
export * from './three-container.js';
|
|
24
|
+
export * from './wall.js';
|
|
25
|
+
export * from './light.js';
|
|
26
26
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,sBAAsB,CAAA;AAE7B,OAAO,WAAW,CAAA;AAClB,OAAO,2BAA2B,CAAA;AAElC,cAAc,mBAAmB,CAAA;AAEjC,cAAc,kBAAkB,CAAA;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,sBAAsB,CAAA;AACpC,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,sBAAsB,CAAA;AACpC,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport './scene/component.js'\n\nimport './text.js'\nimport './html-overlay-element.js'\n\nexport * from './threed/index.js'\n\nexport * from './gltf-object.js'\nexport * from './camera.js'\nexport * from './banner.js'\nexport * from './sprite.js'\nexport * from './cube.js'\nexport * from './cylinder.js'\nexport * from './desk.js'\nexport * from './ellipse.js'\nexport * from './polygon.js'\nexport * from './rack.js'\nexport * from './rack-table.js'\nexport * from './rack-table-cell.js'\nexport * from './rect.js'\nexport * from './sphere.js'\nexport * from './visualizer.js'\nexport * from './three-container.js'\nexport * from './wall.js'\nexport * from './light.js'\n"]}
|
package/dist/light.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Anchor, ComponentNature, Ellipse } from '@hatiolab/things-scene';
|
|
2
2
|
import * as THREE from 'three';
|
|
3
|
-
import { RealObject } from './threed/real-object';
|
|
3
|
+
import { RealObject } from './threed/real-object.js';
|
|
4
4
|
export declare class LightObject extends RealObject<THREE.Light> {
|
|
5
5
|
helper?: THREE.CameraHelper;
|
|
6
6
|
updatePointLight(): void;
|
package/dist/light.js
CHANGED
package/dist/light.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"light.js","sourceRoot":"","sources":["../src/light.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAU,SAAS,EAAmB,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACpF,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"light.js","sourceRoot":"","sources":["../src/light.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAU,SAAS,EAAmB,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACpF,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD,MAAM,MAAM,GAAoB;IAC9B,OAAO,EAAE,KAAK;IACd,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,IAAI;IACf,UAAU,EAAE;QACV;YACE,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,YAAY;YACnB,IAAI,EAAE,WAAW;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,aAAa,CAAC;aACtC;SACF;QACD;YACE,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,WAAW;YAClB,IAAI,EAAE,WAAW;SAClB;QACD;YACE,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,UAAU;YACjB,IAAI,EAAE,UAAU;SACjB;QACD;YACE,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,OAAO;SACd;QACD;YACE,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,aAAa;YACpB,IAAI,EAAE,YAAY;SACnB;QACD;YACE,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,KAAK;SACnB;QACD;YACE,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,KAAK;YACZ,IAAI,EAAE,KAAK;YACX,WAAW,EAAE,MAAM;SACpB;QACD;YACE,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,KAAK;YACZ,IAAI,EAAE,KAAK;YACX,WAAW,EAAE,IAAI;SAClB;QACD;YACE,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,GAAG;SACjB;QACD;YACE,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,aAAa;YACpB,IAAI,EAAE,YAAY;SACnB;KACF;IACD,IAAI,EAAE,uBAAuB;CAC9B,CAAA;AAED,MAAM,OAAO,WAAY,SAAQ,UAAuB;IAGtD,gBAAgB;;QACd,IAAI,EACF,SAAS,GAAG,OAAO,EACnB,QAAQ,GAAG,CAAC,EAAE,YAAY;QAC1B,SAAS,GAAG,EAAE,EACd,KAAK,GAAG,CAAC,EACT,SAAS,EAAE,KAAK,GAAG,OAAO,EAC1B,UAAU,EACV,IAAI,GAAG,GAAG,EACV,GAAG,GAAG,IAAI,EACV,GAAG,GAAG,EAAE,EACR,IAAI,GAAG,CAAC,EACR,UAAU,EACX,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAA;QAExB,IAAI,CAAC,QAAS,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC7C,IAAI,SAAS,IAAI,OAAO,EAAE,CAAC;YACzB,CAAC;YAAC,IAAI,CAAC,QAA8B,CAAC,QAAQ,GAAG,QAAQ,CACxD;YAAC,IAAI,CAAC,QAA8B,CAAC,KAAK,GAAG,KAAK,CAAA;QACrD,CAAC;QACD,IAAI,CAAC,QAAS,CAAC,SAAS,GAAG,SAAS,CAAA;QACpC,IAAI,CAAC,QAAS,CAAC,UAAU,GAAG,UAAU,CAAA;QACtC,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,MAAA,IAAI,CAAC,QAAS,CAAC,MAAM,0CAAE,MAAiC,CAAA;YACvE,MAAM,CAAC,GAAG,GAAG,GAAG,CAAA;YAChB,MAAM,CAAC,IAAI,GAAG,IAAI,CAAA;YAClB,MAAM,CAAC,GAAG,GAAG,GAAG,CAAA;YAChB,MAAM,CAAC,IAAI,GAAG,IAAI,CAAA;QACpB,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,MAAA,IAAI,CAAC,QAAS,CAAC,MAAM,0CAAE,MAAiC,CAAA;YAEvE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjB,IAAI,CAAC,MAAM,GAAG,IAAI,KAAK,CAAC,YAAY,CAAC,MAAO,CAAC,CAAA;gBAC7C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACvB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACjC,OAAO,IAAI,CAAC,MAAM,CAAA;QACpB,CAAC;IACH,CAAC;IAES,mBAAmB;QAC3B,IAAI,EAAE,SAAS,GAAG,OAAO,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAA;QAElD,OAAO,SAAS,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAA;IACrF,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,KAAK,EAAE,CAAA;QACZ,IAAI,CAAC,KAAK,EAAE,CAAA;QAEZ,IAAI,CAAC,eAAe,EAAE,CAAA;QACtB,IAAI,CAAC,YAAY,EAAE,CAAA;QAEnB,IAAI,CAAC,gBAAgB,EAAE,CAAA;IACzB,CAAC;CACF;AAED,MAAM,OAAO,UAAW,SAAQ,OAAO;IACrC,OAAO;QACL,OAAO,IAAI,CAAA;IACb,CAAC;IAED,eAAe;QACb,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC;IAED,IAAI,OAAO;QACT,OAAO,EAAE,CAAA;IACX,CAAC;IAED,IAAI,MAAM;QACR,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AAED,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\nimport { Anchor, Component, ComponentNature, Ellipse } from '@hatiolab/things-scene'\nimport * as THREE from 'three'\nimport { RealObject } from './threed/real-object.js'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'select',\n label: 'light-type',\n name: 'lightType',\n property: {\n options: ['', 'point', 'directional']\n }\n },\n {\n type: 'number',\n label: 'intensity',\n name: 'intensity'\n },\n {\n type: 'number',\n label: 'distance',\n name: 'distance'\n },\n {\n type: 'number',\n label: 'decay',\n name: 'decay'\n },\n {\n type: 'checkbox',\n label: 'cast-shadow',\n name: 'castShadow'\n },\n {\n type: 'number',\n label: 'near',\n name: 'near',\n placeholder: '0.5'\n },\n {\n type: 'number',\n label: 'far',\n name: 'far',\n placeholder: '1000'\n },\n {\n type: 'number',\n label: 'fov',\n name: 'fov',\n placeholder: '90'\n },\n {\n type: 'number',\n label: 'zoom',\n name: 'zoom',\n placeholder: '1'\n },\n {\n type: 'checkbox',\n label: 'show-helper',\n name: 'showHelper'\n }\n ],\n help: 'scene/component/light'\n}\n\nexport class LightObject extends RealObject<THREE.Light> {\n helper?: THREE.CameraHelper\n\n updatePointLight() {\n var {\n lightType = 'point',\n distance = 0, // unlimited\n intensity = 10,\n decay = 1,\n fillStyle: color = 'white',\n castShadow,\n near = 0.5,\n far = 1000,\n fov = 90,\n zoom = 1,\n showHelper\n } = this.component.state\n\n this.object3d!.color = new THREE.Color(color)\n if (lightType == 'point') {\n ;(this.object3d as THREE.PointLight)!.distance = distance\n ;(this.object3d as THREE.PointLight)!.decay = decay\n }\n this.object3d!.intensity = intensity\n this.object3d!.castShadow = castShadow\n if (castShadow) {\n const camera = this.object3d!.shadow?.camera as THREE.PerspectiveCamera\n camera.far = far\n camera.near = near\n camera.fov = fov\n camera.zoom = zoom\n }\n\n if (showHelper) {\n const camera = this.object3d!.shadow?.camera as THREE.PerspectiveCamera\n\n if (!this.helper) {\n this.helper = new THREE.CameraHelper(camera!)\n this.object3d.add(this.helper)\n }\n } else if (this.helper) {\n this.object3d.remove(this.helper)\n delete this.helper\n }\n }\n\n protected getObject3dInstance(): THREE.Light {\n var { lightType = 'point' } = this.component.state\n\n return lightType == 'point' ? new THREE.PointLight() : new THREE.DirectionalLight()\n }\n\n update() {\n this.clear()\n this.build()\n\n this.updateDimension()\n this.updateHidden()\n\n this.updatePointLight()\n }\n}\n\nexport class PointLight extends Ellipse {\n is3dish() {\n return true\n }\n\n buildRealObject(): RealObject | undefined {\n return new LightObject(this)\n }\n\n get anchors(): Array<Anchor> {\n return []\n }\n\n get nature(): ComponentNature {\n return NATURE\n }\n}\n\nComponent.register('light', PointLight)\n"]}
|
package/dist/polygon.d.ts
CHANGED
package/dist/polygon.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { Polygon } from '@hatiolab/things-scene';
|
|
5
5
|
import * as THREE from 'three';
|
|
6
|
-
import { RealObjectExtrude } from './threed/real-object-extrude';
|
|
6
|
+
import { RealObjectExtrude } from './threed/real-object-extrude.js';
|
|
7
7
|
export class PolygonExtrude extends RealObjectExtrude {
|
|
8
8
|
get shape() {
|
|
9
9
|
var { path = [], round = 0 } = this.component.state;
|
package/dist/polygon.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"polygon.js","sourceRoot":"","sources":["../src/polygon.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAS,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACvD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"polygon.js","sourceRoot":"","sources":["../src/polygon.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAS,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACvD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAEnE,MAAM,OAAO,cAAe,SAAQ,iBAAiB;IAQnD,IAAI,KAAK;QACP,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAA;QAEnD,IAAI,KAAK,GAAG,IAAI,KAAK,CAAC,KAAK,EAAE,CAAA;QAE7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAA;YACtD,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAA;YACpD,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAA;YAExC,IAAI,IAAI,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC;gBAC/C,SAAQ;YACV,CAAC;YAED,IAAI,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;YAC7G,IAAI,KAAK,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAC/E,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;YAChE,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;YAEhE,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC,IAAI,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAA;YAExD,IAAI,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;YAC7G,KAAK,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAC3E,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;YAC5D,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;YAE5D,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC,IAAI,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAA;YAExD,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;YAC5D,KAAK,GAAG,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;QACrE,CAAC;QAED,OAAO,KAAK,CAAA;IACd,CAAC;IAED,IAAI,MAAM;QACR,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAA;YAEnC,IAAI,IAAwB,CAAA;YAC5B,IAAI,IAAwB,CAAA;YAC5B,IAAI,IAAwB,CAAA;YAC5B,IAAI,IAAwB,CAAA;YAE5B,IAAI,CAAC,OAAO,CAAC,CAAC,CAAQ,EAAE,CAAS,EAAE,EAAE;gBACnC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBACX,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAA;oBACjB,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAA;oBACjB,OAAM;gBACR,CAAC;gBAED,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC3B,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC3B,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC3B,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;YAC7B,CAAC,CAAC,CAAA;YAEF,IAAI,CAAC,OAAO,GAAG;gBACb,IAAI;gBACJ,IAAI;gBACJ,IAAI;gBACJ,IAAI;aACL,CAAA;QACH,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;CACF;AAED,OAAO,CAAC,SAAS,CAAC,eAAe,GAAG;IAClC,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,CAAA;AACjC,CAAC,CAAA","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport { POINT, Polygon } from '@hatiolab/things-scene'\nimport * as THREE from 'three'\nimport { RealObjectExtrude } from './threed/real-object-extrude.js'\n\nexport class PolygonExtrude extends RealObjectExtrude {\n _minMax?: {\n minX?: number\n minY?: number\n maxX?: number\n maxY?: number\n }\n\n get shape() {\n var { path = [], round = 0 } = this.component.state\n\n var shape = new THREE.Shape()\n\n for (var i = 0; i < path.length; i++) {\n const prev = path[(i - 1 + path.length) % path.length]\n const cursor = path[(i + path.length) % path.length]\n const next = path[(i + 1) % path.length]\n\n if (prev.x === cursor.x && prev.y === cursor.y) {\n continue\n }\n\n var length = Math.sqrt((prev.x - cursor.x) * (prev.x - cursor.x) + (prev.y - cursor.y) * (prev.y - cursor.y))\n var theta = length !== 0 ? Math.atan2(prev.x - cursor.x, prev.y - cursor.y) : 0\n var x = Math.sin(theta) * Math.min(round, length / 2) + cursor.x\n var y = Math.cos(theta) * Math.min(round, length / 2) + cursor.y\n\n const p1 = round > 0 || length !== 0 ? { x, y } : cursor\n\n var length = Math.sqrt((next.x - cursor.x) * (next.x - cursor.x) + (next.y - cursor.y) * (next.y - cursor.y))\n theta = length !== 0 ? Math.atan2(next.x - cursor.x, next.y - cursor.y) : 0\n x = Math.sin(theta) * Math.min(round, length / 2) + cursor.x\n y = Math.cos(theta) * Math.min(round, length / 2) + cursor.y\n\n const p2 = round > 0 || length !== 0 ? { x, y } : cursor\n\n i == 0 ? shape.moveTo(p1.x, p1.y) : shape.lineTo(p1.x, p1.y)\n round > 0 && shape.quadraticCurveTo(cursor.x, cursor.y, p2.x, p2.y)\n }\n\n return shape\n }\n\n get minMax() {\n if (!this._minMax) {\n var { path } = this.component.state\n\n var minX: number | undefined\n var minY: number | undefined\n var maxX: number | undefined\n var maxY: number | undefined\n\n path.forEach((p: POINT, i: number) => {\n if (i == 0) {\n minX = maxX = p.x\n minY = maxY = p.y\n return\n }\n\n minX = Math.min(minX!, p.x)\n maxX = Math.max(maxX!, p.x)\n minY = Math.min(minY!, p.y)\n maxY = Math.max(maxY!, p.y)\n })\n\n this._minMax = {\n minX,\n minY,\n maxX,\n maxY\n }\n }\n\n return this._minMax\n }\n}\n\nPolygon.prototype.buildRealObject = function () {\n return new PolygonExtrude(this)\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Component, Properties } from '@hatiolab/things-scene';
|
|
2
|
-
import { RealObject } from './threed/real-object';
|
|
2
|
+
import { RealObject } from './threed/real-object.js';
|
|
3
3
|
declare const RackTableCell_base: typeof Component;
|
|
4
4
|
/**
|
|
5
5
|
* 1. 스타일을 상속 받아야 함. (cascade-style)
|
package/dist/rack-table-cell.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright © HatioLab Inc. All rights reserved.
|
|
3
3
|
*/
|
|
4
4
|
import { Component, RectPath } from '@hatiolab/things-scene';
|
|
5
|
-
import { Rack } from './rack';
|
|
5
|
+
import { Rack } from './rack.js';
|
|
6
6
|
const EMPTY_BORDER = {};
|
|
7
7
|
function isBottomMost(idx, rows, columns) {
|
|
8
8
|
return idx >= (rows - 1) * columns;
|