@anov/3d 0.0.322 → 0.0.323
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/anov3d.js +8 -64
- package/dist/anov3d.js.map +1 -1
- package/dist/applicationApi.js +16 -50
- package/dist/applicationApi.js.map +1 -1
- package/dist/applicationApiType.js.map +1 -1
- package/dist/hooksManager.js +35 -43
- package/dist/hooksManager.js.map +1 -1
- package/dist/index.js +2 -3
- package/dist/index.js.map +1 -1
- package/dist/module/animation/motion/index.js +4 -2
- package/dist/module/animation/motion/index.js.map +1 -1
- package/dist/module/camera/index.js.map +1 -1
- package/dist/module/entity/area/index.js +3 -3
- package/dist/module/entity/area/index.js.map +1 -1
- package/dist/module/entity/baseEntity.js +4 -13
- package/dist/module/entity/baseEntity.js.map +1 -1
- package/dist/module/entity/batch/index.js +10 -12
- package/dist/module/entity/batch/index.js.map +1 -1
- package/dist/module/entity/flyline/index.js +3 -3
- package/dist/module/entity/flyline/index.js.map +1 -1
- package/dist/module/entity/group/index.js +4 -18
- package/dist/module/entity/group/index.js.map +1 -1
- package/dist/module/entity/heatmap/index.js +4 -16
- package/dist/module/entity/heatmap/index.js.map +1 -1
- package/dist/module/entity/index.js +12 -13
- package/dist/module/entity/index.js.map +1 -1
- package/dist/module/entity/infoPanel/index.js +2 -2
- package/dist/module/entity/infoPanel/index.js.map +1 -1
- package/dist/module/entity/light/pointLight/index.js +2 -2
- package/dist/module/entity/light/pointLight/index.js.map +1 -1
- package/dist/module/entity/mark/index.js +14 -11
- package/dist/module/entity/mark/index.js.map +1 -1
- package/dist/module/entity/model/index.js +12 -29
- package/dist/module/entity/model/index.js.map +1 -1
- package/dist/module/entity/model/load/loadFbx.js +1 -1
- package/dist/module/entity/model/load/loadFbx.js.map +1 -1
- package/dist/module/entity/model/load/loadGlb.js +11 -6
- package/dist/module/entity/model/load/loadGlb.js.map +1 -1
- package/dist/module/entity/poi/index.js +3 -3
- package/dist/module/entity/poi/index.js.map +1 -1
- package/dist/module/entity/shape/index.js +14 -16
- package/dist/module/entity/shape/index.js.map +1 -1
- package/dist/module/entity/spline/index.js +4 -4
- package/dist/module/entity/spline/index.js.map +1 -1
- package/dist/module/entity/strategy.js.map +1 -1
- package/dist/module/entity/traffic/realismTraffic/index.js +5 -17
- package/dist/module/entity/traffic/realismTraffic/index.js.map +1 -1
- package/dist/module/entity/traffic/streamerTraffic/index.js +4 -16
- package/dist/module/entity/traffic/streamerTraffic/index.js.map +1 -1
- package/dist/module/entity/videoPanel/index.js +3 -3
- package/dist/module/entity/videoPanel/index.js.map +1 -1
- package/dist/module/environment/index.js +4 -3
- package/dist/module/environment/index.js.map +1 -1
- package/dist/module/environment/season/index.js +1 -1
- package/dist/module/environment/season/index.js.map +1 -1
- package/dist/module/eventBus/index.js +4 -3
- package/dist/module/eventBus/index.js.map +1 -1
- package/dist/module/material/index.js +6 -5
- package/dist/module/material/index.js.map +1 -1
- package/dist/module/scene/fileParse.js +16 -21
- package/dist/module/scene/fileParse.js.map +1 -1
- package/dist/module/scene/index.js +10 -9
- package/dist/module/scene/index.js.map +1 -1
- package/dist/sdkEntry.js +32 -25
- package/dist/sdkEntry.js.map +1 -1
- package/dist/utils/messageFn.js +11 -21
- package/dist/utils/messageFn.js.map +1 -1
- package/package.json +4 -5
- package/dist/__mocks__/ability-mock.js +0 -124
- package/dist/__mocks__/ability-mock.js.map +0 -1
- package/dist/__mocks__/geo-3d-mock.js +0 -10
- package/dist/__mocks__/geo-3d-mock.js.map +0 -1
- package/dist/module/message/hub.js +0 -178
- package/dist/module/message/hub.js.map +0 -1
- package/dist/utils/debugTools.js +0 -364
- package/dist/utils/debugTools.js.map +0 -1
- package/dist/utils/messageTracer.js +0 -369
- package/dist/utils/messageTracer.js.map +0 -1
|
@@ -2,15 +2,15 @@ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" ==
|
|
|
2
2
|
function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, catch: function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
|
|
3
3
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
4
4
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
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; }
|
|
5
6
|
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
6
7
|
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
7
8
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
8
9
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
9
10
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
10
|
-
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; }
|
|
11
11
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
12
12
|
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); }
|
|
13
|
-
import { BufferGeometry, Euler, MathUtils, Vector3 } from '@anov/3d-core';
|
|
13
|
+
import { BufferGeometry, Euler, MathUtils, Vector3, use } from '@anov/3d-core';
|
|
14
14
|
import { computeBoundsTree, disposeBoundsTree } from 'three-mesh-bvh';
|
|
15
15
|
import createDisposeFn from "../dispose";
|
|
16
16
|
import MaterialManage from "../../material";
|
|
@@ -25,23 +25,12 @@ var defaultOption = {
|
|
|
25
25
|
scale: [1, 1, 1],
|
|
26
26
|
collision: true
|
|
27
27
|
};
|
|
28
|
+
var materialManage = new MaterialManage(null);
|
|
28
29
|
var ModelManage = /*#__PURE__*/function () {
|
|
29
|
-
function ModelManage(
|
|
30
|
+
function ModelManage() {
|
|
30
31
|
_classCallCheck(this, ModelManage);
|
|
31
|
-
_defineProperty(this, "sceneControl", void 0);
|
|
32
|
-
this.sceneControl = sceneControl;
|
|
33
32
|
}
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* @deprecated
|
|
37
|
-
* 请使用 constructor(sceneControl: SceneControl) 初始化
|
|
38
|
-
*/
|
|
39
33
|
_createClass(ModelManage, [{
|
|
40
|
-
key: "setSceneControl",
|
|
41
|
-
value: function setSceneControl(sceneControl) {
|
|
42
|
-
this.sceneControl = sceneControl;
|
|
43
|
-
}
|
|
44
|
-
}, {
|
|
45
34
|
key: "setOption",
|
|
46
35
|
value: function () {
|
|
47
36
|
var _setOption = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(option, target) {
|
|
@@ -94,33 +83,25 @@ var ModelManage = /*#__PURE__*/function () {
|
|
|
94
83
|
key: "applyMaterialOverride",
|
|
95
84
|
value: function () {
|
|
96
85
|
var _applyMaterialOverride = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(option, target) {
|
|
97
|
-
var materials, properties
|
|
86
|
+
var materials, properties;
|
|
98
87
|
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
|
99
88
|
while (1) switch (_context2.prev = _context2.next) {
|
|
100
89
|
case 0:
|
|
101
90
|
materials = option.materials, properties = option.properties;
|
|
102
91
|
if (!materials) {
|
|
103
|
-
_context2.next =
|
|
92
|
+
_context2.next = 3;
|
|
104
93
|
break;
|
|
105
94
|
}
|
|
106
|
-
_context2.prev = 2;
|
|
107
|
-
materialManage = new MaterialManage({
|
|
108
|
-
sceneControl: this.sceneControl
|
|
109
|
-
});
|
|
110
95
|
return _context2.abrupt("return", materialManage.changeByObject(target, {
|
|
111
96
|
target: option.id,
|
|
112
97
|
materials: materials,
|
|
113
98
|
properties: properties
|
|
114
99
|
}));
|
|
115
|
-
case
|
|
116
|
-
_context2.prev = 7;
|
|
117
|
-
_context2.t0 = _context2["catch"](2);
|
|
118
|
-
console.error(_context2.t0);
|
|
119
|
-
case 10:
|
|
100
|
+
case 3:
|
|
120
101
|
case "end":
|
|
121
102
|
return _context2.stop();
|
|
122
103
|
}
|
|
123
|
-
}, _callee2
|
|
104
|
+
}, _callee2);
|
|
124
105
|
}));
|
|
125
106
|
function applyMaterialOverride(_x3, _x4) {
|
|
126
107
|
return _applyMaterialOverride.apply(this, arguments);
|
|
@@ -142,7 +123,7 @@ var ModelManage = /*#__PURE__*/function () {
|
|
|
142
123
|
case 4:
|
|
143
124
|
loadAPi = _context3.sent;
|
|
144
125
|
_context3.next = 7;
|
|
145
|
-
return loadAPi(url, id, events
|
|
126
|
+
return loadAPi(url, id, events);
|
|
146
127
|
case 7:
|
|
147
128
|
model = _context3.sent;
|
|
148
129
|
model.name = json.name;
|
|
@@ -154,12 +135,14 @@ var ModelManage = /*#__PURE__*/function () {
|
|
|
154
135
|
object3d.traverse(function (child) {
|
|
155
136
|
if (child.type === 'Mesh') {
|
|
156
137
|
if (child.geometry.boundsTree) child.geometry.disposeBoundsTree();
|
|
138
|
+
|
|
139
|
+
// 查看金属度
|
|
157
140
|
var metalness = child.material.metalness;
|
|
158
141
|
child.material.metalness = 0.8;
|
|
159
142
|
child.geometry.computeBoundsTree();
|
|
160
143
|
}
|
|
161
144
|
});
|
|
162
|
-
|
|
145
|
+
use.useScene().scene.add(object3d);
|
|
163
146
|
object3d.userData.option = option;
|
|
164
147
|
return _context3.abrupt("return", object3d);
|
|
165
148
|
case 17:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_regeneratorRuntime","e","t","r","Object","prototype","n","hasOwnProperty","o","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","catch","_catch","delegateYield","ownKeys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","apply","_objectSpread","arguments","_defineProperty","getOwnPropertyDescriptors","defineProperties","asyncGeneratorStep","gen","reject","_next","_throw","key","info","error","_asyncToGenerator","fn","self","args","err","undefined","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","_toPropertyKey","_createClass","protoProps","staticProps","obj","_toPrimitive","String","toPrimitive","Number","BufferGeometry","Euler","MathUtils","Vector3","computeBoundsTree","disposeBoundsTree","createDisposeFn","MaterialManage","LoadStrategy","defaultOption","visible","position","rotation","scale","collision","ModelManage","sceneControl","setSceneControl","_setOption","_callee","option","_defaultOption$option","url","_defaultOption$option2","castShadow","_defaultOption$option3","receiveShadow","_callee$","_context","copy","fromArray","degToRad","traverse","node","userData","applyMaterialOverride","setOption","_x","_x2","_applyMaterialOverride","_callee2","materials","properties","materialManage","_callee2$","_context2","changeByObject","id","t0","console","_x3","_x4","_create","_callee3","json","events","modelType","loadAPi","model","object3d","_callee3$","_context3","split","scene","child","geometry","boundsTree","metalness","material","context","add","_x5","_update","_callee4","entityDispose","_callee4$","_context4","removeFromParent","dispose","update","_x6","_x7"],"sources":["../../../../src/module/entity/model/index.ts"],"sourcesContent":["import type { Group, Object3D, SceneControl } from '@anov/3d-core'\nimport { BufferGeometry, Euler, MathUtils, Vector3 } from '@anov/3d-core'\nimport type { EMaterialType } from '@anov/3d-ability'\n\nimport { computeBoundsTree, disposeBoundsTree } from 'three-mesh-bvh'\nimport createDisposeFn from '../dispose'\nimport MaterialManage from '../../material'\nimport { LoadStrategy } from './load'\n\nBufferGeometry.prototype.computeBoundsTree = computeBoundsTree\nBufferGeometry.prototype.disposeBoundsTree = disposeBoundsTree\n\ntype ModelOption = {\n url: string\n id: string\n\n} & PartialModelOption\n\ntype MaterialOption = Partial<{\n meshIndex: number\n primitiveIndex: number\n materialId: EMaterialType\n properties: {\n color: string\n uvScale: number\n }\n}>\n\ntype PartialModelOption = Partial<{\n name: string\n visible: boolean\n position: number[]\n rotation: number[]\n scale: number[]\n collision: boolean\n materials: Array<MaterialOption>\n properties: {\n color: string\n uvScale: number\n }\n}>\n\nconst defaultOption: PartialModelOption = {\n name: '',\n visible: true,\n position: [0, 0, 0],\n rotation: [0, 0, 0],\n scale: [1, 1, 1],\n collision: true,\n}\n\nclass ModelManage {\n private sceneControl: SceneControl\n constructor(sceneControl: SceneControl) {\n this.sceneControl = sceneControl\n }\n\n /**\n * @deprecated\n * 请使用 constructor(sceneControl: SceneControl) 初始化\n */\n setSceneControl(sceneControl: SceneControl) {\n this.sceneControl = sceneControl\n }\n\n private async setOption(option: ModelOption, target: Group) {\n const { visible, position, rotation, collision, url, scale, castShadow = false, receiveShadow = false } = { ...defaultOption, ...option }\n\n target.visible = visible\n target.position.copy(new Vector3().fromArray(position))\n target.rotation.copy(new Euler(MathUtils.degToRad(rotation[0]), MathUtils.degToRad(rotation[1]), MathUtils.degToRad(rotation[2])))\n target.scale.copy(new Vector3().fromArray(scale))\n\n // TODO:统一在实体类中管理,标识为castShadow、receiveShadow实体添加阴影图层,后期统一管理\n if (castShadow || receiveShadow) {\n target.castShadow = castShadow\n target.receiveShadow = receiveShadow\n target.traverse((node: Object3D) => {\n if (node.type === 'Mesh') {\n node.castShadow = castShadow\n node.receiveShadow = receiveShadow\n }\n })\n }\n target.userData.collision = collision\n target.userData.url = url\n\n await this.applyMaterialOverride(option, target)\n\n return { visible, position, rotation, collision, url, scale }\n }\n\n private async applyMaterialOverride(option: ModelOption, target: Group) {\n const { materials, properties } = option\n\n if (materials) {\n try {\n const materialManage = new MaterialManage({ sceneControl: this.sceneControl } as any)\n return materialManage.changeByObject(target, { target: option.id, materials, properties })\n }\n catch (e) {\n console.error(e)\n }\n }\n }\n\n async create(json) {\n const { url, id, events } = json\n const modelType = url.split('.').pop()\n const loadAPi = await LoadStrategy[modelType]()\n const model = await loadAPi(url, id, events, this.sceneControl)\n model.name = json.name\n const object3d = modelType === 'fbx' ? model : model.scene\n\n const option = await this.setOption({\n ...defaultOption,\n ...json,\n }, object3d,\n )\n\n object3d.traverse((child) => {\n if (child.type === 'Mesh') {\n if (child.geometry.boundsTree)\n child.geometry.disposeBoundsTree()\n\n const metalness = child.material.metalness\n child.material.metalness = 0.8\n child.geometry.computeBoundsTree()\n }\n })\n\n if (this.sceneControl)\n this.sceneControl.context.scene.add(object3d)\n\n object3d.userData.option = option\n\n return object3d\n }\n\n async update(target: Group, option: ModelOption) {\n const { url } = option\n\n if (url && target.userData.url !== url) {\n target.removeFromParent()\n\n // todo: 抽离\n const entityDispose = createDisposeFn()\n entityDispose.call(target)\n\n // @ts-ignore\n // eslint-disable-next-line no-proto\n target.__proto__.dispose = entityDispose\n // @ts-ignore\n target.dispose()\n return this.create(option)\n }\n\n else {\n this.setOption({\n ...target.userData.option,\n ...option,\n }, target)\n\n return target\n }\n }\n}\n\nexport default ModelManage\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_regeneratorRuntime","e","t","r","Object","prototype","n","hasOwnProperty","o","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","catch","_catch","delegateYield","ownKeys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","apply","_objectSpread","arguments","_defineProperty","getOwnPropertyDescriptors","defineProperties","obj","key","_toPropertyKey","asyncGeneratorStep","gen","reject","_next","_throw","info","error","_asyncToGenerator","fn","self","args","err","undefined","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","_createClass","protoProps","staticProps","_toPrimitive","String","toPrimitive","Number","BufferGeometry","Euler","MathUtils","Vector3","use","computeBoundsTree","disposeBoundsTree","createDisposeFn","MaterialManage","LoadStrategy","defaultOption","visible","position","rotation","scale","collision","materialManage","ModelManage","_setOption","_callee","option","_defaultOption$option","url","_defaultOption$option2","castShadow","_defaultOption$option3","receiveShadow","_callee$","_context","copy","fromArray","degToRad","traverse","node","userData","applyMaterialOverride","setOption","_x","_x2","_applyMaterialOverride","_callee2","materials","properties","_callee2$","_context2","changeByObject","id","_x3","_x4","_create","_callee3","json","events","modelType","loadAPi","model","object3d","_callee3$","_context3","split","scene","child","geometry","boundsTree","metalness","material","useScene","add","_x5","_update","_callee4","entityDispose","_callee4$","_context4","removeFromParent","dispose","update","_x6","_x7"],"sources":["../../../../src/module/entity/model/index.ts"],"sourcesContent":["import type { Group, Object3D } from '@anov/3d-core'\nimport { BufferGeometry, Euler, MathUtils, Vector3, use } from '@anov/3d-core'\nimport type { EMaterialType } from '@anov/3d-ability'\n\nimport { computeBoundsTree, disposeBoundsTree } from 'three-mesh-bvh'\nimport createDisposeFn from '../dispose'\nimport MaterialManage from '../../material'\nimport { LoadStrategy } from './load'\n\nBufferGeometry.prototype.computeBoundsTree = computeBoundsTree\nBufferGeometry.prototype.disposeBoundsTree = disposeBoundsTree\n\ntype ModelOption = {\n url: string\n id: string\n\n} & PartialModelOption\n\ntype MaterialOption = Partial<{\n meshIndex: number\n primitiveIndex: number\n materialId: EMaterialType\n properties: {\n color: string\n uvScale: number\n }\n}>\n\ntype PartialModelOption = Partial<{\n name: string\n visible: boolean\n position: number[]\n rotation: number[]\n scale: number[]\n collision: boolean\n materials: Array<MaterialOption>\n properties: {\n color: string\n uvScale: number\n }\n}>\n\nconst defaultOption: PartialModelOption = {\n name: '',\n visible: true,\n position: [0, 0, 0],\n rotation: [0, 0, 0],\n scale: [1, 1, 1],\n collision: true,\n}\n\nconst materialManage = new MaterialManage(null)\n\nclass ModelManage {\n private async setOption(option: ModelOption, target: Group) {\n const { visible, position, rotation, collision, url, scale, castShadow = false, receiveShadow = false } = { ...defaultOption, ...option }\n\n target.visible = visible\n target.position.copy(new Vector3().fromArray(position))\n target.rotation.copy(new Euler(MathUtils.degToRad(rotation[0]), MathUtils.degToRad(rotation[1]), MathUtils.degToRad(rotation[2])))\n target.scale.copy(new Vector3().fromArray(scale))\n\n // TODO:统一在实体类中管理,标识为castShadow、receiveShadow实体添加阴影图层,后期统一管理\n if (castShadow || receiveShadow) {\n target.castShadow = castShadow\n target.receiveShadow = receiveShadow\n target.traverse((node: Object3D) => {\n if (node.type === 'Mesh') {\n node.castShadow = castShadow\n node.receiveShadow = receiveShadow\n }\n })\n }\n target.userData.collision = collision\n target.userData.url = url\n\n await this.applyMaterialOverride(option, target)\n\n return { visible, position, rotation, collision, url, scale }\n }\n\n private async applyMaterialOverride(option: ModelOption, target: Group) {\n const { materials, properties } = option\n\n if (materials)\n return materialManage.changeByObject(target, { target: option.id, materials, properties })\n }\n\n async create(json) {\n const { url, id, events } = json\n const modelType = url.split('.').pop()\n const loadAPi = await LoadStrategy[modelType]()\n const model = await loadAPi(url, id, events)\n model.name = json.name\n const object3d = modelType === 'fbx' ? model : model.scene\n\n const option = await this.setOption({\n ...defaultOption,\n ...json,\n }, object3d,\n )\n\n object3d.traverse((child) => {\n if (child.type === 'Mesh') {\n if (child.geometry.boundsTree)\n child.geometry.disposeBoundsTree()\n\n // 查看金属度\n const metalness = child.material.metalness\n child.material.metalness = 0.8\n child.geometry.computeBoundsTree()\n }\n })\n\n use.useScene().scene.add(object3d)\n\n object3d.userData.option = option\n\n return object3d\n }\n\n async update(target: Group, option: ModelOption) {\n const { url } = option\n\n if (url && target.userData.url !== url) {\n target.removeFromParent()\n\n // todo: 抽离\n const entityDispose = createDisposeFn()\n entityDispose.call(target)\n\n // @ts-ignore\n // eslint-disable-next-line no-proto\n target.__proto__.dispose = entityDispose\n // @ts-ignore\n target.dispose()\n return this.create(option)\n }\n\n else {\n this.setOption({\n ...target.userData.option,\n ...option,\n }, target)\n\n return target\n }\n }\n}\n\nexport default ModelManage\n"],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { LoaderModule } from '@anov/3d-core';
|
|
|
2
2
|
import { MessageType, sendToMessage } from "../../../../utils/messageFn";
|
|
3
3
|
import { EMessageStatus } from "../../../../messageStatus";
|
|
4
4
|
var load = new LoaderModule();
|
|
5
|
-
var loadFbx = function loadFbx(url, id
|
|
5
|
+
var loadFbx = function loadFbx(url, id) {
|
|
6
6
|
return new Promise(function (resolve, reject) {
|
|
7
7
|
load.loadFbx({
|
|
8
8
|
url: url,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["LoaderModule","MessageType","sendToMessage","EMessageStatus","load","loadFbx","url","id","
|
|
1
|
+
{"version":3,"names":["LoaderModule","MessageType","sendToMessage","EMessageStatus","load","loadFbx","url","id","Promise","resolve","reject","isCache","onProgress","progress","messageType","Event","messageName","status","Success","global","loaded","total","onLoad","gltf","onError","error"],"sources":["../../../../../src/module/entity/model/load/loadFbx.ts"],"sourcesContent":["import { LoaderModule } from '@anov/3d-core'\nimport { MessageType, sendToMessage } from '../../../../utils/messageFn'\nimport { EMessageStatus } from '../../../../messageStatus'\n\nconst load = new LoaderModule()\n\nconst loadFbx = (url: string, id: string) => {\n return new Promise((resolve, reject) => {\n load.loadFbx({\n url,\n isCache: false,\n onProgress: (progress) => {\n sendToMessage(\n {\n messageType: MessageType.Event,\n messageName: 'onProgress',\n status: EMessageStatus.Success,\n global: false,\n },\n {\n id,\n progress: progress.loaded / progress.total,\n })\n },\n onLoad: (gltf) => {\n resolve(gltf)\n },\n onError: (error) => {\n reject(error)\n },\n\n })\n })\n}\n\nexport default loadFbx"],"mappings":"AAAA,SAASA,YAAY,QAAQ,eAAe;AAC5C,SAASC,WAAW,EAAEC,aAAa;AACnC,SAASC,cAAc;AAEvB,IAAMC,IAAI,GAAG,IAAIJ,YAAY,CAAC,CAAC;AAE/B,IAAMK,OAAO,GAAG,SAAVA,OAAOA,CAAIC,GAAW,EAAEC,EAAU,EAAK;EAC3C,OAAO,IAAIC,OAAO,CAAC,UAACC,OAAO,EAAEC,MAAM,EAAK;IACtCN,IAAI,CAACC,OAAO,CAAC;MACXC,GAAG,EAAHA,GAAG;MACHK,OAAO,EAAE,KAAK;MACdC,UAAU,EAAE,SAAAA,WAACC,QAAQ,EAAK;QACxBX,aAAa,CACX;UACEY,WAAW,EAAEb,WAAW,CAACc,KAAK;UAC9BC,WAAW,EAAE,YAAY;UACzBC,MAAM,EAAEd,cAAc,CAACe,OAAO;UAC9BC,MAAM,EAAE;QACV,CAAC,EACD;UACEZ,EAAE,EAAFA,EAAE;UACFM,QAAQ,EAAEA,QAAQ,CAACO,MAAM,GAAGP,QAAQ,CAACQ;QACvC,CAAC,CAAC;MACN,CAAC;MACDC,MAAM,EAAE,SAAAA,OAACC,IAAI,EAAK;QAChBd,OAAO,CAACc,IAAI,CAAC;MACf,CAAC;MACDC,OAAO,EAAE,SAAAA,QAACC,KAAK,EAAK;QAClBf,MAAM,CAACe,KAAK,CAAC;MACf;IAEF,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ,CAAC;AAED,eAAepB,OAAO"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { LoaderModule } from '@anov/3d-core';
|
|
1
|
+
import { LoaderModule, utils } from '@anov/3d-core';
|
|
2
2
|
import { MessageType, sendToMessage } from "../../../../utils/messageFn";
|
|
3
3
|
import { EMessageStatus } from "../../../../messageStatus";
|
|
4
4
|
var load = new LoaderModule();
|
|
5
|
-
var
|
|
6
|
-
|
|
7
|
-
var dracoPath = (_sceneControl$context = sceneControl === null || sceneControl === void 0 ? void 0 : sceneControl.context.storeManagement.get('decoderPath')) !== null && _sceneControl$context !== void 0 ? _sceneControl$context : './draco/';
|
|
5
|
+
var emitter = utils.emitter;
|
|
6
|
+
var loadGlb = function loadGlb(url, id) {
|
|
8
7
|
return new Promise(function (resolve, reject) {
|
|
8
|
+
var _utils$storeManagemen;
|
|
9
9
|
load.loadGLTF({
|
|
10
10
|
url: url,
|
|
11
11
|
autoBackward: false,
|
|
12
12
|
isCache: true,
|
|
13
13
|
draco: true,
|
|
14
|
-
dracoPath:
|
|
14
|
+
dracoPath: (_utils$storeManagemen = utils.storeManagement.get('decoderPath')) !== null && _utils$storeManagemen !== void 0 ? _utils$storeManagemen : './draco/',
|
|
15
15
|
onProgress: function onProgress(progress) {
|
|
16
16
|
var params = {
|
|
17
17
|
id: id,
|
|
@@ -24,12 +24,17 @@ var loadGlb = function loadGlb(url, id, events, sceneControl) {
|
|
|
24
24
|
status: EMessageStatus.Success,
|
|
25
25
|
global: false
|
|
26
26
|
}, params);
|
|
27
|
-
|
|
27
|
+
emitter.emit('model-loading-progress', params);
|
|
28
28
|
},
|
|
29
29
|
onLoad: function onLoad(gltf) {
|
|
30
30
|
resolve(gltf);
|
|
31
31
|
},
|
|
32
32
|
onError: function onError(error) {
|
|
33
|
+
emitter.emit('model-loading-progress', {
|
|
34
|
+
id: id,
|
|
35
|
+
url: url,
|
|
36
|
+
progress: 1
|
|
37
|
+
});
|
|
33
38
|
reject(error);
|
|
34
39
|
}
|
|
35
40
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["LoaderModule","MessageType","sendToMessage","EMessageStatus","load","loadGlb","url","id","
|
|
1
|
+
{"version":3,"names":["LoaderModule","utils","MessageType","sendToMessage","EMessageStatus","load","emitter","loadGlb","url","id","Promise","resolve","reject","_utils$storeManagemen","loadGLTF","autoBackward","isCache","draco","dracoPath","storeManagement","get","onProgress","progress","params","loaded","total","messageType","Event","messageName","status","Success","global","emit","onLoad","gltf","onError","error"],"sources":["../../../../../src/module/entity/model/load/loadGlb.ts"],"sourcesContent":["import { LoaderModule, utils } from '@anov/3d-core'\nimport { MessageType, sendToMessage } from '../../../../utils/messageFn'\nimport { EMessageStatus } from '../../../../messageStatus'\n\nconst load = new LoaderModule()\nconst { emitter } = utils\n\nconst loadGlb = (url: string, id: string) => {\n return new Promise((resolve, reject) => {\n load.loadGLTF({\n url,\n autoBackward: false,\n isCache: true,\n draco: true,\n dracoPath: utils.storeManagement.get('decoderPath') ?? './draco/',\n onProgress: (progress) => {\n const params = { id, url, progress: progress.loaded / progress.total }\n sendToMessage(\n {\n messageType: MessageType.Event,\n messageName: 'onProgress',\n status: EMessageStatus.Success,\n global: false,\n },\n params)\n emitter.emit('model-loading-progress', params)\n },\n onLoad: (gltf) => {\n resolve(gltf)\n },\n onError: (error) => {\n emitter.emit('model-loading-progress', { id, url, progress: 1 })\n reject(error)\n },\n })\n })\n}\n\nexport default loadGlb"],"mappings":"AAAA,SAASA,YAAY,EAAEC,KAAK,QAAQ,eAAe;AACnD,SAASC,WAAW,EAAEC,aAAa;AACnC,SAASC,cAAc;AAEvB,IAAMC,IAAI,GAAG,IAAIL,YAAY,CAAC,CAAC;AAC/B,IAAQM,OAAO,GAAKL,KAAK,CAAjBK,OAAO;AAEf,IAAMC,OAAO,GAAG,SAAVA,OAAOA,CAAIC,GAAW,EAAEC,EAAU,EAAK;EAC3C,OAAO,IAAIC,OAAO,CAAC,UAACC,OAAO,EAAEC,MAAM,EAAK;IAAA,IAAAC,qBAAA;IACtCR,IAAI,CAACS,QAAQ,CAAC;MACZN,GAAG,EAAHA,GAAG;MACHO,YAAY,EAAE,KAAK;MACnBC,OAAO,EAAE,IAAI;MACbC,KAAK,EAAE,IAAI;MACXC,SAAS,GAAAL,qBAAA,GAAEZ,KAAK,CAACkB,eAAe,CAACC,GAAG,CAAC,aAAa,CAAC,cAAAP,qBAAA,cAAAA,qBAAA,GAAI,UAAU;MACjEQ,UAAU,EAAE,SAAAA,WAACC,QAAQ,EAAK;QACxB,IAAMC,MAAM,GAAG;UAAEd,EAAE,EAAFA,EAAE;UAAED,GAAG,EAAHA,GAAG;UAAEc,QAAQ,EAAEA,QAAQ,CAACE,MAAM,GAAGF,QAAQ,CAACG;QAAM,CAAC;QACtEtB,aAAa,CACX;UACEuB,WAAW,EAAExB,WAAW,CAACyB,KAAK;UAC9BC,WAAW,EAAE,YAAY;UACzBC,MAAM,EAAEzB,cAAc,CAAC0B,OAAO;UAC9BC,MAAM,EAAE;QACV,CAAC,EACDR,MAAM,CAAC;QACTjB,OAAO,CAAC0B,IAAI,CAAC,wBAAwB,EAAET,MAAM,CAAC;MAChD,CAAC;MACDU,MAAM,EAAE,SAAAA,OAACC,IAAI,EAAK;QAChBvB,OAAO,CAACuB,IAAI,CAAC;MACf,CAAC;MACDC,OAAO,EAAE,SAAAA,QAACC,KAAK,EAAK;QAClB9B,OAAO,CAAC0B,IAAI,CAAC,wBAAwB,EAAE;UAAEvB,EAAE,EAAFA,EAAE;UAAED,GAAG,EAAHA,GAAG;UAAEc,QAAQ,EAAE;QAAE,CAAC,CAAC;QAChEV,MAAM,CAACwB,KAAK,CAAC;MACf;IACF,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ,CAAC;AAED,eAAe7B,OAAO"}
|
|
@@ -20,9 +20,9 @@ import BaseEntity from "../baseEntity";
|
|
|
20
20
|
var Poi = /*#__PURE__*/function (_BaseEntity) {
|
|
21
21
|
_inherits(Poi, _BaseEntity);
|
|
22
22
|
var _super = _createSuper(Poi);
|
|
23
|
-
function Poi(
|
|
23
|
+
function Poi() {
|
|
24
24
|
_classCallCheck(this, Poi);
|
|
25
|
-
return _super.
|
|
25
|
+
return _super.apply(this, arguments);
|
|
26
26
|
}
|
|
27
27
|
_createClass(Poi, [{
|
|
28
28
|
key: "create",
|
|
@@ -88,7 +88,7 @@ var Poi = /*#__PURE__*/function (_BaseEntity) {
|
|
|
88
88
|
key: "_createMesh",
|
|
89
89
|
value: function _createMesh(json) {
|
|
90
90
|
if (json.lookAt !== undefined) json.facingCamera = json.lookAt;
|
|
91
|
-
var mesh = new PoiManage(json
|
|
91
|
+
var mesh = new PoiManage(json);
|
|
92
92
|
mesh.userData.option = json;
|
|
93
93
|
return mesh;
|
|
94
94
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_regeneratorRuntime","e","t","r","Object","prototype","n","hasOwnProperty","o","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","catch","_catch","delegateYield","asyncGeneratorStep","gen","reject","_next","_throw","key","info","error","_asyncToGenerator","fn","self","args","arguments","apply","err","undefined","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","_toPropertyKey","_createClass","protoProps","staticProps","_toPrimitive","String","toPrimitive","Number","_inherits","subClass","superClass","_setPrototypeOf","bind","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","_possibleConstructorReturn","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","Poi","PoiManage","_","BaseEntity","_BaseEntity","_super","sceneControl","_create","_callee","json","bubble","mesh","_callee$","_context","scale","radius","_createMesh","userData","option","addToScene","_x","_update","_callee2","mergedOption","_callee2$","_context2","isSpecifiedFieldsChanged","mergeWith","customizer","parent","removeFromParent","update","_x2","_x3","lookAt","facingCamera"],"sources":["../../../../src/module/entity/poi/index.ts"],"sourcesContent":["import type { Object3D, SceneControl } from '@anov/3d-core'\nimport { Poi as PoiManage } from '@anov/3d-ability'\nimport _ from 'lodash'\nimport BaseEntity from '../baseEntity'\n\nclass Poi extends BaseEntity {\n constructor(sceneControl: SceneControl) {\n super(sceneControl)\n }\n\n async create(json): Promise<Object3D> {\n const { bubble } = json\n if (bubble?.scale) // TODO 转换成半径\n bubble.radius = bubble.scale[0] / 2\n const mesh = await this._createMesh(json)\n mesh.userData.option = json\n this.addToScene(mesh, json)\n return mesh\n }\n\n async update(mesh: Object3D, json): Promise<Object3D> {\n if (this.isSpecifiedFieldsChanged(json)) {\n this.addToScene(mesh, json, false)\n return mesh\n }\n\n const option = mesh.userData.option || {}\n const mergedOption = _.mergeWith({}, option, json, this.customizer)\n mesh.parent && mesh.removeFromParent()\n return this.create(mergedOption)\n }\n\n private _createMesh(json): Object3D {\n if (json.lookAt !== undefined)\n json.facingCamera = json.lookAt\n const mesh = new PoiManage(json, this.sceneControl)\n mesh.userData.option = json\n return mesh\n }\n}\n\nexport default Poi\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_regeneratorRuntime","e","t","r","Object","prototype","n","hasOwnProperty","o","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","catch","_catch","delegateYield","asyncGeneratorStep","gen","reject","_next","_throw","key","info","error","_asyncToGenerator","fn","self","args","arguments","apply","err","undefined","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","_toPropertyKey","_createClass","protoProps","staticProps","_toPrimitive","String","toPrimitive","Number","_inherits","subClass","superClass","_setPrototypeOf","bind","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","_possibleConstructorReturn","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","Poi","PoiManage","_","BaseEntity","_BaseEntity","_super","_create","_callee","json","bubble","mesh","_callee$","_context","scale","radius","_createMesh","userData","option","addToScene","_x","_update","_callee2","mergedOption","_callee2$","_context2","isSpecifiedFieldsChanged","mergeWith","customizer","parent","removeFromParent","update","_x2","_x3","lookAt","facingCamera"],"sources":["../../../../src/module/entity/poi/index.ts"],"sourcesContent":["import type { Object3D } from '@anov/3d-core'\nimport { Poi as PoiManage } from '@anov/3d-ability'\nimport _ from 'lodash'\nimport BaseEntity from '../baseEntity'\n\nclass Poi extends BaseEntity {\n async create(json): Promise<Object3D> {\n const { bubble } = json\n if (bubble?.scale) // TODO 转换成半径\n bubble.radius = bubble.scale[0] / 2\n const mesh = await this._createMesh(json)\n mesh.userData.option = json\n this.addToScene(mesh, json)\n return mesh\n }\n\n async update(mesh: Object3D, json): Promise<Object3D> {\n if (this.isSpecifiedFieldsChanged(json)) {\n this.addToScene(mesh, json, false)\n return mesh\n }\n\n const option = mesh.userData.option || {}\n const mergedOption = _.mergeWith({}, option, json, this.customizer)\n mesh.parent && mesh.removeFromParent()\n return this.create(mergedOption)\n }\n\n private _createMesh(json): Object3D {\n if (json.lookAt !== undefined)\n json.facingCamera = json.lookAt\n const mesh = new PoiManage(json)\n mesh.userData.option = json\n return mesh\n }\n}\n\nexport default Poi\n"],"mappings":"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"}
|
|
@@ -18,25 +18,26 @@ function _assertThisInitialized(self) { if (self === void 0) { throw new Referen
|
|
|
18
18
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
19
19
|
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
20
20
|
/*
|
|
21
|
-
* @Descripttion:
|
|
22
|
-
* @version:
|
|
21
|
+
* @Descripttion:
|
|
22
|
+
* @version:
|
|
23
23
|
* @Author: 周志国
|
|
24
24
|
* @Date: 2025-09-09 16:09:51
|
|
25
25
|
* @LastEditors: 周志国
|
|
26
26
|
* @LastEditTime: 2025-09-12 11:13:25
|
|
27
|
-
* @changeLog:
|
|
27
|
+
* @changeLog:
|
|
28
28
|
* @FilePath: /anov-3d-webgl/packages/anov-3d/src/module/entity/shape/index.ts
|
|
29
29
|
*/
|
|
30
|
-
import {
|
|
31
|
-
import _ from 'lodash';
|
|
30
|
+
import { Plane, Sphere, Cylinder, Box, EMaterialType } from '@anov/3d-ability';
|
|
32
31
|
import BaseEntity from "../baseEntity";
|
|
32
|
+
import _ from 'lodash';
|
|
33
33
|
import MaterialManage from "../../material";
|
|
34
|
+
var materialManage = new MaterialManage(null);
|
|
34
35
|
var Shape = /*#__PURE__*/function (_BaseEntity) {
|
|
35
36
|
_inherits(Shape, _BaseEntity);
|
|
36
37
|
var _super = _createSuper(Shape);
|
|
37
|
-
function Shape(
|
|
38
|
+
function Shape() {
|
|
38
39
|
_classCallCheck(this, Shape);
|
|
39
|
-
return _super.
|
|
40
|
+
return _super.apply(this, arguments);
|
|
40
41
|
}
|
|
41
42
|
_createClass(Shape, [{
|
|
42
43
|
key: "create",
|
|
@@ -98,7 +99,7 @@ var Shape = /*#__PURE__*/function (_BaseEntity) {
|
|
|
98
99
|
return _update.apply(this, arguments);
|
|
99
100
|
}
|
|
100
101
|
return update;
|
|
101
|
-
}()
|
|
102
|
+
}() //更新材质
|
|
102
103
|
}, {
|
|
103
104
|
key: "applyMaterialOverride",
|
|
104
105
|
value: function applyMaterialOverride(option, target) {
|
|
@@ -106,9 +107,6 @@ var Shape = /*#__PURE__*/function (_BaseEntity) {
|
|
|
106
107
|
properties = option.properties;
|
|
107
108
|
if (materials) {
|
|
108
109
|
try {
|
|
109
|
-
var materialManage = new MaterialManage({
|
|
110
|
-
sceneControl: this.sceneControl
|
|
111
|
-
});
|
|
112
110
|
materialManage.changeByObject(target, {
|
|
113
111
|
target: option.id,
|
|
114
112
|
materials: materials,
|
|
@@ -131,16 +129,16 @@ var Shape = /*#__PURE__*/function (_BaseEntity) {
|
|
|
131
129
|
_context3.next = _context3.t0 === 'plane' ? 3 : _context3.t0 === 'sphere' ? 5 : _context3.t0 === 'cylinder' ? 7 : _context3.t0 === 'box' ? 9 : 11;
|
|
132
130
|
break;
|
|
133
131
|
case 3:
|
|
134
|
-
mesh = new Plane(json
|
|
132
|
+
mesh = new Plane(json);
|
|
135
133
|
return _context3.abrupt("break", 12);
|
|
136
134
|
case 5:
|
|
137
|
-
mesh = new Sphere(json
|
|
135
|
+
mesh = new Sphere(json);
|
|
138
136
|
return _context3.abrupt("break", 12);
|
|
139
137
|
case 7:
|
|
140
|
-
mesh = new Cylinder(json
|
|
138
|
+
mesh = new Cylinder(json);
|
|
141
139
|
return _context3.abrupt("break", 12);
|
|
142
140
|
case 9:
|
|
143
|
-
mesh = new Box(json
|
|
141
|
+
mesh = new Box(json);
|
|
144
142
|
return _context3.abrupt("break", 12);
|
|
145
143
|
case 11:
|
|
146
144
|
throw new Error("Unsupported shape type: ".concat(json.style));
|
|
@@ -150,7 +148,7 @@ var Shape = /*#__PURE__*/function (_BaseEntity) {
|
|
|
150
148
|
case "end":
|
|
151
149
|
return _context3.stop();
|
|
152
150
|
}
|
|
153
|
-
}, _callee3
|
|
151
|
+
}, _callee3);
|
|
154
152
|
}));
|
|
155
153
|
function _createMesh(_x4) {
|
|
156
154
|
return _createMesh2.apply(this, arguments);
|