@anov/3d 0.0.303 → 0.0.305
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.
|
@@ -5,7 +5,7 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
|
|
|
5
5
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
6
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
7
7
|
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
8
|
-
import { use } from '@anov/3d-core';
|
|
8
|
+
import { MathUtils, use } from '@anov/3d-core';
|
|
9
9
|
var BaseEntity = /*#__PURE__*/function () {
|
|
10
10
|
function BaseEntity() {
|
|
11
11
|
_classCallCheck(this, BaseEntity);
|
|
@@ -55,7 +55,9 @@ var BaseEntity = /*#__PURE__*/function () {
|
|
|
55
55
|
rotation = options.rotation;
|
|
56
56
|
if (position) mesh.position.fromArray(this._validateTransform(position, 3));
|
|
57
57
|
if (scale) mesh.scale.fromArray(this._validateTransform(scale, 3));
|
|
58
|
-
if (rotation) mesh.rotation.
|
|
58
|
+
if (rotation) mesh.rotation.set(MathUtils.degToRad(rotation[0]), MathUtils.degToRad(rotation[1]), MathUtils.degToRad(rotation[2]));
|
|
59
|
+
// mesh.rotation.fromArray(this._validateTransform(rotation, 3))
|
|
60
|
+
|
|
59
61
|
if (options.visible !== undefined) mesh.visible = options.visible;
|
|
60
62
|
} catch (error) {
|
|
61
63
|
console.error(error, 'error');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["use","BaseEntity","_classCallCheck","_createClass","key","value","customizer","objValue","srcValue","Array","isArray","isSpecifiedFieldsChanged","changes","whitelist","arguments","length","undefined","PRESERVE_FIELDS","Object","keys","every","includes","addToScene","mesh","options","shouldAdd","applyTransforms","scene","useScene","children","add","_validateTransform","Error","concat","JSON","stringify","position","scale","rotation","fromArray","visible","error","console","_handleTransformError","_defineProperty"],"sources":["../../../src/module/entity/baseEntity.ts"],"sourcesContent":["import type { Object3D } from '@anov/3d-core'\nimport { use } from '@anov/3d-core'\nimport type { Option } from './type'\n\nclass BaseEntity {\n protected static readonly PRESERVE_FIELDS = ['id', 'visible', 'position', 'scale', 'rotation']\n\n protected customizer(objValue: any, srcValue: any): any {\n if (Array.isArray(objValue) && srcValue)\n return srcValue\n }\n\n protected isSpecifiedFieldsChanged(changes: object, whitelist = BaseEntity.PRESERVE_FIELDS): boolean {\n return Object.keys(changes).every(key =>\n whitelist.includes(key),\n )\n }\n\n /** 场景添加操作 */\n protected addToScene(mesh: Object3D, options: Option, shouldAdd = true): Object3D {\n this.applyTransforms(mesh, options)\n\n if (shouldAdd) {\n const scene = use.useScene().scene\n if (!scene.children.includes(mesh))\n scene.add(mesh)\n }\n return mesh\n }\n\n /** 三维变换属性校验器 */\n private _validateTransform<T extends number[]>(value: T, length: number): T | never {\n if (!value || value.length !== length)\n throw new Error(`Invalid transform data: ${JSON.stringify(value)}`)\n\n return value\n }\n\n /** 三维对象应用器 */\n applyTransforms(mesh: Object3D, options: Option): void {\n try {\n const { position, scale, rotation } = options\n\n if (position)\n mesh.position.fromArray(this._validateTransform(position, 3))\n\n if (scale)\n mesh.scale.fromArray(this._validateTransform(scale, 3))\n\n if (rotation)\n mesh.rotation.fromArray(this._validateTransform(rotation, 3))\n\n if (options.visible !== undefined)\n mesh.visible = options.visible\n }\n catch (error) {\n console.error(error, 'error')\n this._handleTransformError(error, options)\n throw error\n }\n }\n\n private _handleTransformError(error: Error, options: Option): void {\n console.error(`Transform application failed for options: ${JSON.stringify(options)}`, error)\n // 可扩展错误恢复逻辑\n }\n}\n\nexport default BaseEntity"],"mappings":";;;;;;;AACA,SAASA,GAAG,QAAQ,eAAe;AAAA,
|
|
1
|
+
{"version":3,"names":["MathUtils","use","BaseEntity","_classCallCheck","_createClass","key","value","customizer","objValue","srcValue","Array","isArray","isSpecifiedFieldsChanged","changes","whitelist","arguments","length","undefined","PRESERVE_FIELDS","Object","keys","every","includes","addToScene","mesh","options","shouldAdd","applyTransforms","scene","useScene","children","add","_validateTransform","Error","concat","JSON","stringify","position","scale","rotation","fromArray","set","degToRad","visible","error","console","_handleTransformError","_defineProperty"],"sources":["../../../src/module/entity/baseEntity.ts"],"sourcesContent":["import type { Object3D } from '@anov/3d-core'\nimport { MathUtils, use } from '@anov/3d-core'\nimport type { Option } from './type'\n\nclass BaseEntity {\n protected static readonly PRESERVE_FIELDS = ['id', 'visible', 'position', 'scale', 'rotation']\n\n protected customizer(objValue: any, srcValue: any): any {\n if (Array.isArray(objValue) && srcValue)\n return srcValue\n }\n\n protected isSpecifiedFieldsChanged(changes: object, whitelist = BaseEntity.PRESERVE_FIELDS): boolean {\n return Object.keys(changes).every(key =>\n whitelist.includes(key),\n )\n }\n\n /** 场景添加操作 */\n protected addToScene(mesh: Object3D, options: Option, shouldAdd = true): Object3D {\n this.applyTransforms(mesh, options)\n\n if (shouldAdd) {\n const scene = use.useScene().scene\n if (!scene.children.includes(mesh))\n scene.add(mesh)\n }\n return mesh\n }\n\n /** 三维变换属性校验器 */\n private _validateTransform<T extends number[]>(value: T, length: number): T | never {\n if (!value || value.length !== length)\n throw new Error(`Invalid transform data: ${JSON.stringify(value)}`)\n\n return value\n }\n\n /** 三维对象应用器 */\n applyTransforms(mesh: Object3D, options: Option): void {\n try {\n const { position, scale, rotation } = options\n\n if (position)\n mesh.position.fromArray(this._validateTransform(position, 3))\n\n if (scale)\n mesh.scale.fromArray(this._validateTransform(scale, 3))\n\n if (rotation)\n mesh.rotation.set(MathUtils.degToRad(rotation[0]), MathUtils.degToRad(rotation[1]), MathUtils.degToRad(rotation[2]))\n // mesh.rotation.fromArray(this._validateTransform(rotation, 3))\n\n if (options.visible !== undefined)\n mesh.visible = options.visible\n }\n catch (error) {\n console.error(error, 'error')\n this._handleTransformError(error, options)\n throw error\n }\n }\n\n private _handleTransformError(error: Error, options: Option): void {\n console.error(`Transform application failed for options: ${JSON.stringify(options)}`, error)\n // 可扩展错误恢复逻辑\n }\n}\n\nexport default BaseEntity"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@anov/3d",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.305",
|
|
4
4
|
"description": "",
|
|
5
5
|
"author": "",
|
|
6
6
|
"license": "MIT",
|
|
@@ -29,8 +29,8 @@
|
|
|
29
29
|
"rxjs": "7.8.1",
|
|
30
30
|
"three-mesh-bvh": "^0.9.0",
|
|
31
31
|
"uuid": "^9.0.1",
|
|
32
|
-
"@anov/3d-
|
|
33
|
-
"@anov/3d-
|
|
32
|
+
"@anov/3d-ability": "^0.0.155",
|
|
33
|
+
"@anov/3d-core": "^0.0.94"
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
|
36
36
|
"@types/uuid": "^9.0.7",
|