three-base 2.0.38 → 2.0.40

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/ThreeBase.d.ts CHANGED
@@ -52,7 +52,7 @@ export default class ThreeBase extends EventDispatcher {
52
52
  needRender: boolean;
53
53
  stopRender(): void;
54
54
  hasStrokeOrPass(): boolean;
55
- render(): void;
55
+ render(): boolean;
56
56
  private renderBindThis;
57
57
  download(fileName?: string): void;
58
58
  private _preMesh;
package/ThreeBase.js CHANGED
@@ -247,11 +247,11 @@ export default class ThreeBase extends EventDispatcher {
247
247
  // 重置控制器的位置
248
248
  resetLookAt({ position = this.perspectiveCamera.position, center = this.controls.target, }) {
249
249
  // 停止控制器的惯性
250
- this.controls.enableDamping = false;
250
+ const originEnableDamping = this.controls.enableDamping;
251
251
  this.controls.saveState();
252
252
  this.controls.update();
253
253
  this.controls.reset();
254
- this.controls.enableDamping = true;
254
+ this.controls.enableDamping = originEnableDamping;
255
255
  this.controlsDistance.reset({ distance: new Vector3(position.x, position.y, position.z).distanceTo(new Vector3(center.x, center.y, center.z)) });
256
256
  position && this.controlsPosition.reset({ x: position.x, y: position.y, z: position.z });
257
257
  center && this.controlsCenter.reset({ x: center.x, y: center.y, z: center.z });
@@ -384,7 +384,7 @@ export default class ThreeBase extends EventDispatcher {
384
384
  this.threeMouse.dispatchEvent();
385
385
  // 在不自动渲染时, needRender=false 就跳过渲染
386
386
  if (!this.autoRender && !this.needRender) {
387
- return;
387
+ return false; // 标识未渲染
388
388
  }
389
389
  this.needRender = false;
390
390
  if (this.controls.enabled) {
@@ -411,6 +411,7 @@ export default class ThreeBase extends EventDispatcher {
411
411
  });
412
412
  }
413
413
  this.dispatchEvent({ type: "afterRender" });
414
+ return true; // 标识已渲染
414
415
  }
415
416
  renderBindThis = this.render.bind(this);
416
417
  // 下载渲染图
package/ThreeBase.ts CHANGED
@@ -297,11 +297,11 @@ export default class ThreeBase extends EventDispatcher {
297
297
  }: { position: Vector3, center: Vector3 }) {
298
298
 
299
299
  // 停止控制器的惯性
300
- this.controls.enableDamping = false;
300
+ const originEnableDamping = this.controls.enableDamping;
301
301
  this.controls.saveState();
302
302
  this.controls.update();
303
303
  this.controls.reset();
304
- this.controls.enableDamping = true;
304
+ this.controls.enableDamping = originEnableDamping;
305
305
 
306
306
  this.controlsDistance.reset({ distance: new Vector3(position.x, position.y, position.z).distanceTo(new Vector3(center.x, center.y, center.z)) });
307
307
  position && this.controlsPosition.reset({ x: position.x, y: position.y, z: position.z });
@@ -461,7 +461,7 @@ export default class ThreeBase extends EventDispatcher {
461
461
 
462
462
  // 在不自动渲染时, needRender=false 就跳过渲染
463
463
  if (!this.autoRender && !this.needRender) {
464
- return;
464
+ return false; // 标识未渲染
465
465
  }
466
466
  this.needRender = false;
467
467
 
@@ -495,6 +495,7 @@ export default class ThreeBase extends EventDispatcher {
495
495
  }
496
496
 
497
497
  this.dispatchEvent({ type: "afterRender" } as never);
498
+ return true; // 标识已渲染
498
499
  }
499
500
 
500
501
  private renderBindThis = this.render.bind(this);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "three-base",
3
- "version": "2.0.38",
3
+ "version": "2.0.40",
4
4
  "description": "three 3d three-base",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"