@anov/3d 0.0.4-alpha25 → 0.0.4-alpha27

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.
@@ -1 +1 @@
1
- {"version":3,"names":["Color","Mesh","MeshBasicMaterial","lib","FontLoader","TextGeometry","Font","font","text","options","Promise","res","loader","load","geometry","size","height","mesh","depthTest","color","position","copy","createFontMesh","createText"],"sources":["../../../src/factory/utils/fontMesh.ts"],"sourcesContent":["import type { Vector3 } from '@anov/3d-core'\nimport { Color, Mesh, MeshBasicMaterial, lib } from '@anov/3d-core'\n\nconst { FontLoader, TextGeometry } = lib\n\ntype FontMeshOption = {\n position: Vector3\n color?: Color\n size?: number\n rotate?: number\n}\n\nclass Font {\n font: lib.Font | null\n\n constructor() {\n this.font = null\n }\n\n createText(text: string, options: FontMeshOption) {\n return new Promise((res) => {\n const loader = new FontLoader()\n loader.load('./font.json', (font) => {\n this.font = font\n\n const geometry = new TextGeometry(text, {\n font: this.font,\n size: options.size ?? 10,\n height: 0.1,\n })\n\n const mesh = new Mesh(geometry, new MeshBasicMaterial({\n depthTest: true,\n color: new Color('#000'),\n }))\n\n mesh.position.copy(options.position)\n res(mesh)\n })\n })\n }\n}\n\nconst font = new Font()\n\nconst createFontMesh = (text: string, options: FontMeshOption) => {\n return font.createText(text, options) as Promise<Mesh>\n}\n\nexport default createFontMesh\n"],"mappings":";;;;;;;AACA,SAASA,KAAK,EAAEC,IAAI,EAAEC,iBAAiB,EAAEC,GAAG,QAAQ,eAAe;AAEnE,IAAQC,UAAU,GAAmBD,GAAG,CAAhCC,UAAU;EAAEC,YAAY,GAAKF,GAAG,CAApBE,YAAY;AAAQ,IASlCC,IAAI;EAGR,gBAAc;IAAA;IAAA;IACZ,IAAI,CAACC,IAAI,GAAG,IAAI;EAClB;EAAC;IAAA;IAAA,OAED,oBAAWC,IAAY,EAAEC,OAAuB,EAAE;MAAA;MAChD,OAAO,IAAIC,OAAO,CAAC,UAACC,GAAG,EAAK;QAC1B,IAAMC,MAAM,GAAG,IAAIR,UAAU,EAAE;QAC/BQ,MAAM,CAACC,IAAI,CAAC,aAAa,EAAE,UAACN,IAAI,EAAK;UAAA;UACnC,KAAI,CAACA,IAAI,GAAGA,IAAI;UAEhB,IAAMO,QAAQ,GAAG,IAAIT,YAAY,CAACG,IAAI,EAAE;YACtCD,IAAI,EAAE,KAAI,CAACA,IAAI;YACfQ,IAAI,mBAAEN,OAAO,CAACM,IAAI,yDAAI,EAAE;YACxBC,MAAM,EAAE;UACV,CAAC,CAAC;UAEF,IAAMC,IAAI,GAAG,IAAIhB,IAAI,CAACa,QAAQ,EAAE,IAAIZ,iBAAiB,CAAC;YACpDgB,SAAS,EAAE,IAAI;YACfC,KAAK,EAAE,IAAInB,KAAK,CAAC,MAAM;UACzB,CAAC,CAAC,CAAC;UAEHiB,IAAI,CAACG,QAAQ,CAACC,IAAI,CAACZ,OAAO,CAACW,QAAQ,CAAC;UACpCT,GAAG,CAACM,IAAI,CAAC;QACX,CAAC,CAAC;MACJ,CAAC,CAAC;IACJ;EAAC;EAAA;AAAA;AAGH,IAAMV,IAAI,GAAG,IAAID,IAAI,EAAE;AAEvB,IAAMgB,cAAc,GAAG,SAAjBA,cAAc,CAAId,IAAY,EAAEC,OAAuB,EAAK;EAChE,OAAOF,IAAI,CAACgB,UAAU,CAACf,IAAI,EAAEC,OAAO,CAAC;AACvC,CAAC;AAED,eAAea,cAAc"}
1
+ {"version":3,"names":["Color","Mesh","MeshBasicMaterial","lib","FontLoader","TextGeometry","Font","font","text","options","Promise","res","loader","load","geometry","size","height","mesh","depthTest","color","position","copy","createFontMesh","createText"],"sources":["../../../src/factory/utils/fontMesh.ts"],"sourcesContent":["import type { Vector3 } from '@anov/3d-core'\nimport { Color, Mesh, MeshBasicMaterial, lib } from '@anov/3d-core'\n\nconst { FontLoader, TextGeometry } = lib\n\ntype FontMeshOption = {\n position: Vector3\n color?: Color\n size?: number\n rotate?: number\n}\n\nclass Font {\n font: lib.Font | null\n\n constructor() {\n this.font = null\n }\n\n createText(text: string, options: FontMeshOption) {\n return new Promise((res) => {\n const loader = new FontLoader()\n loader.load('./font.json', (font) => {\n this.font = font\n\n const geometry = new TextGeometry(text, {\n font: this.font,\n size: options.size ?? 10,\n height: 1,\n })\n\n const mesh = new Mesh(geometry, new MeshBasicMaterial({\n depthTest: true,\n color: new Color('#fff'),\n }))\n\n mesh.position.copy(options.position)\n res(mesh)\n })\n })\n }\n}\n\nconst font = new Font()\n\nconst createFontMesh = (text: string, options: FontMeshOption) => {\n return font.createText(text, options) as Promise<Mesh>\n}\n\nexport default createFontMesh\n"],"mappings":";;;;;;;AACA,SAASA,KAAK,EAAEC,IAAI,EAAEC,iBAAiB,EAAEC,GAAG,QAAQ,eAAe;AAEnE,IAAQC,UAAU,GAAmBD,GAAG,CAAhCC,UAAU;EAAEC,YAAY,GAAKF,GAAG,CAApBE,YAAY;AAAQ,IASlCC,IAAI;EAGR,gBAAc;IAAA;IAAA;IACZ,IAAI,CAACC,IAAI,GAAG,IAAI;EAClB;EAAC;IAAA;IAAA,OAED,oBAAWC,IAAY,EAAEC,OAAuB,EAAE;MAAA;MAChD,OAAO,IAAIC,OAAO,CAAC,UAACC,GAAG,EAAK;QAC1B,IAAMC,MAAM,GAAG,IAAIR,UAAU,EAAE;QAC/BQ,MAAM,CAACC,IAAI,CAAC,aAAa,EAAE,UAACN,IAAI,EAAK;UAAA;UACnC,KAAI,CAACA,IAAI,GAAGA,IAAI;UAEhB,IAAMO,QAAQ,GAAG,IAAIT,YAAY,CAACG,IAAI,EAAE;YACtCD,IAAI,EAAE,KAAI,CAACA,IAAI;YACfQ,IAAI,mBAAEN,OAAO,CAACM,IAAI,yDAAI,EAAE;YACxBC,MAAM,EAAE;UACV,CAAC,CAAC;UAEF,IAAMC,IAAI,GAAG,IAAIhB,IAAI,CAACa,QAAQ,EAAE,IAAIZ,iBAAiB,CAAC;YACpDgB,SAAS,EAAE,IAAI;YACfC,KAAK,EAAE,IAAInB,KAAK,CAAC,MAAM;UACzB,CAAC,CAAC,CAAC;UAEHiB,IAAI,CAACG,QAAQ,CAACC,IAAI,CAACZ,OAAO,CAACW,QAAQ,CAAC;UACpCT,GAAG,CAACM,IAAI,CAAC;QACX,CAAC,CAAC;MACJ,CAAC,CAAC;IACJ;EAAC;EAAA;AAAA;AAGH,IAAMV,IAAI,GAAG,IAAID,IAAI,EAAE;AAEvB,IAAMgB,cAAc,GAAG,SAAjBA,cAAc,CAAId,IAAY,EAAEC,OAAuB,EAAK;EAChE,OAAOF,IAAI,CAACgB,UAAU,CAACf,IAAI,EAAEC,OAAO,CAAC;AACvC,CAAC;AAED,eAAea,cAAc"}
@@ -8,6 +8,7 @@ import { EWeatherType } from './module/environment/weather/type';
8
8
  import type { InitOptions } from './applicationApi';
9
9
  import { Scene } from './module/scene';
10
10
  import Model from './module/model';
11
+ import HandleManage from './factory/unit/handle';
11
12
  export declare type Override<P, S> = Omit<P, keyof S> & S;
12
13
  declare type Anov3DOptions = {
13
14
  container: HTMLElement;
@@ -30,6 +31,7 @@ declare class Anov3D {
30
31
  camera: Camera;
31
32
  scene: Scene;
32
33
  model: Model;
34
+ factory: HandleManage;
33
35
  constructor(opts: Anov3DOptions);
34
36
  changeSceneEnvironment(openFlag?: boolean): void;
35
37
  }
package/dist/sdkEntry.js CHANGED
@@ -16,6 +16,7 @@ import { object2Vector3 } from "./utils/index";
16
16
  import { Scene } from "./module/scene";
17
17
  import Model from "./module/model";
18
18
  import Factory3D from "./factory/3d";
19
+ import HandleManage from "./factory/unit/handle";
19
20
  import { defaultCameraParams } from "./index";
20
21
  var RoomEnvironment = lib.RoomEnvironment;
21
22
  var Anov3D = /*#__PURE__*/function () {
@@ -32,6 +33,7 @@ var Anov3D = /*#__PURE__*/function () {
32
33
  _defineProperty(this, "camera", void 0);
33
34
  _defineProperty(this, "scene", void 0);
34
35
  _defineProperty(this, "model", void 0);
36
+ _defineProperty(this, "factory", void 0);
35
37
  this.opts = opts;
36
38
  var _ref = opts || {},
37
39
  _ref$camera = _ref.camera,
@@ -83,6 +85,7 @@ var Anov3D = /*#__PURE__*/function () {
83
85
  this.camera = new Camera(scene.camera, scene.controls);
84
86
  this.scene = new Scene(factory);
85
87
  this.model = new Model();
88
+ this.factory = new HandleManage(this.camera);
86
89
  // this.opts.model && (this.model.load(this.opts.model))
87
90
  // this.changeSceneEnvironment()
88
91
  utils.storeManagement.set('event-bus', this.eventBus);
@@ -1 +1 @@
1
- {"version":3,"names":["PMREMGenerator","SceneControl","Vector3","lib","use","utils","HeatMap","EventBus","Camera","EWeatherType","object2Vector3","Scene","Model","Factory3D","defaultCameraParams","RoomEnvironment","Anov3D","opts","camera","cameraParams","fov","near","far","position","fromArray","scene","orbitControls","defCameraOps","aspect","size","width","container","clientWidth","height","clientHeight","rendererOps","shadowMap","reset","css2DRenderer","ambientLight","render","factory","model","environment","renderScene","useframe","renderer","controls","target","copy","lookAt","emitter","emit","sceneControl","heatMap","eventBus","storeManagement","set","openFlag","useScene","pmremGenerator","compileEquirectangularShader","roomEnvironment","fromScene","texture"],"sources":["../src/sdkEntry.ts"],"sourcesContent":["import { PMREMGenerator, SceneControl, Vector3, lib, use, utils } from '@anov/3d-core'\nimport type { Poi } from '@anov/3d-ability'\nimport { HeatMap } from '@anov/3d-ability'\nimport type Environment from './module/environment'\nimport EventBus from './module/eventBus'\nimport Camera from './module/camera'\nimport { EWeatherType } from './module/environment/weather/type'\nimport type { InitOptions } from './applicationApi'\nimport { object2Vector3 } from './utils/index'\nimport { Scene } from './module/scene'\nimport Model from './module/model'\nimport Factory3D from './factory/3d'\nimport { defaultCameraParams } from './index'\n\nexport type Override<P, S> = Omit<P, keyof S> & S\n\ntype Anov3DOptions = {\n container: HTMLElement\n size?: {\n width: number\n height: number\n }\n camera?: InitOptions['camera']\n environment?: InitOptions['environment']\n model?: InitOptions['model']\n}\n\nconst { RoomEnvironment } = lib\n\nclass Anov3D {\n private opts: Anov3DOptions\n sceneControl: SceneControl\n environment: Environment\n eventBus: EventBus\n EWeatherType: typeof EWeatherType = EWeatherType\n poi: Poi\n heatMap: HeatMap\n camera: Camera\n scene: Scene\n model: Model\n\n constructor(opts: Anov3DOptions) {\n this.opts = opts\n const { camera = {} } = opts || {}\n\n const cameraParams = {\n fov: camera.fov ?? defaultCameraParams.fov,\n near: camera.near ?? defaultCameraParams.near,\n far: camera.far ?? defaultCameraParams.far,\n position: camera.position ? new Vector3().fromArray(camera.position) : object2Vector3(defaultCameraParams.position),\n }\n\n const scene = new SceneControl({\n orbitControls: true,\n defCameraOps: {\n aspect: (opts?.size?.width ?? opts.container.clientWidth) / (opts?.size?.height ?? opts.container.clientHeight),\n ...cameraParams,\n fov: 60,\n },\n rendererOps: {\n shadowMap: true,\n size: {\n width: opts?.size?.width ?? opts.container.clientWidth,\n height: opts?.size?.height ?? opts.container.clientHeight,\n },\n },\n reset: true,\n css2DRenderer: true,\n ambientLight: true,\n })\n\n scene.render(opts.container)\n\n // temporary solution by LM\n const factory = new Factory3D({ model: this.opts.model, environment: 'quarry_01_1k.hdr' })\n factory.renderScene(scene)\n\n use.useframe(() => {\n scene.renderer!.render(scene.scene!, scene.camera!)\n })\n\n scene.controls?.target.copy(opts.camera?.target ? new Vector3().fromArray(opts.camera.target) : object2Vector3(defaultCameraParams.lookAt))\n\n utils.emitter.emit('scene-completed', scene)\n\n // 不考虑 tree-shaking\n this.sceneControl = scene\n // this.environment = new Environment(this.changeSceneEnvironment, opts.environment) // temporary solution by LM\n // this.poi = new Poi()\n this.heatMap = new HeatMap()\n this.eventBus = new EventBus()\n this.camera = new Camera(scene.camera!, scene.controls!)\n this.scene = new Scene(factory)\n this.model = new Model()\n // this.opts.model && (this.model.load(this.opts.model))\n // this.changeSceneEnvironment()\n utils.storeManagement.set('event-bus', this.eventBus)\n }\n\n changeSceneEnvironment(openFlag = true) {\n const { renderer, scene } = use.useScene()\n const pmremGenerator = new PMREMGenerator(renderer!)\n pmremGenerator.compileEquirectangularShader()\n const roomEnvironment = new (RoomEnvironment as any)()\n\n if (openFlag)\n scene!.environment = pmremGenerator.fromScene(roomEnvironment, 0.04).texture\n\n else\n scene!.environment = null\n }\n}\n\nexport default Anov3D"],"mappings":"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"}
1
+ {"version":3,"names":["PMREMGenerator","SceneControl","Vector3","lib","use","utils","HeatMap","EventBus","Camera","EWeatherType","object2Vector3","Scene","Model","Factory3D","HandleManage","defaultCameraParams","RoomEnvironment","Anov3D","opts","camera","cameraParams","fov","near","far","position","fromArray","scene","orbitControls","defCameraOps","aspect","size","width","container","clientWidth","height","clientHeight","rendererOps","shadowMap","reset","css2DRenderer","ambientLight","render","factory","model","environment","renderScene","useframe","renderer","controls","target","copy","lookAt","emitter","emit","sceneControl","heatMap","eventBus","storeManagement","set","openFlag","useScene","pmremGenerator","compileEquirectangularShader","roomEnvironment","fromScene","texture"],"sources":["../src/sdkEntry.ts"],"sourcesContent":["import { PMREMGenerator, SceneControl, Vector3, lib, use, utils } from '@anov/3d-core'\nimport type { Poi } from '@anov/3d-ability'\nimport { HeatMap } from '@anov/3d-ability'\nimport type Environment from './module/environment'\nimport EventBus from './module/eventBus'\nimport Camera from './module/camera'\nimport { EWeatherType } from './module/environment/weather/type'\nimport type { InitOptions } from './applicationApi'\nimport { object2Vector3 } from './utils/index'\nimport { Scene } from './module/scene'\nimport Model from './module/model'\nimport Factory3D from './factory/3d'\nimport HandleManage from './factory/unit/handle'\nimport { defaultCameraParams } from './index'\n\nexport type Override<P, S> = Omit<P, keyof S> & S\n\ntype Anov3DOptions = {\n container: HTMLElement\n size?: {\n width: number\n height: number\n }\n camera?: InitOptions['camera']\n environment?: InitOptions['environment']\n model?: InitOptions['model']\n}\n\nconst { RoomEnvironment } = lib\n\nclass Anov3D {\n private opts: Anov3DOptions\n sceneControl: SceneControl\n environment: Environment\n eventBus: EventBus\n EWeatherType: typeof EWeatherType = EWeatherType\n poi: Poi\n heatMap: HeatMap\n camera: Camera\n scene: Scene\n model: Model\n factory: HandleManage\n\n constructor(opts: Anov3DOptions) {\n this.opts = opts\n const { camera = {} } = opts || {}\n\n const cameraParams = {\n fov: camera.fov ?? defaultCameraParams.fov,\n near: camera.near ?? defaultCameraParams.near,\n far: camera.far ?? defaultCameraParams.far,\n position: camera.position ? new Vector3().fromArray(camera.position) : object2Vector3(defaultCameraParams.position),\n }\n\n const scene = new SceneControl({\n orbitControls: true,\n defCameraOps: {\n aspect: (opts?.size?.width ?? opts.container.clientWidth) / (opts?.size?.height ?? opts.container.clientHeight),\n ...cameraParams,\n fov: 60,\n },\n rendererOps: {\n shadowMap: true,\n size: {\n width: opts?.size?.width ?? opts.container.clientWidth,\n height: opts?.size?.height ?? opts.container.clientHeight,\n },\n },\n reset: true,\n css2DRenderer: true,\n ambientLight: true,\n })\n\n scene.render(opts.container)\n\n // temporary solution by LM\n const factory = new Factory3D({ model: this.opts.model, environment: 'quarry_01_1k.hdr' })\n factory.renderScene(scene)\n\n use.useframe(() => {\n scene.renderer!.render(scene.scene!, scene.camera!)\n })\n\n scene.controls?.target.copy(opts.camera?.target ? new Vector3().fromArray(opts.camera.target) : object2Vector3(defaultCameraParams.lookAt))\n\n utils.emitter.emit('scene-completed', scene)\n\n // 不考虑 tree-shaking\n this.sceneControl = scene\n // this.environment = new Environment(this.changeSceneEnvironment, opts.environment) // temporary solution by LM\n // this.poi = new Poi()\n this.heatMap = new HeatMap()\n this.eventBus = new EventBus()\n this.camera = new Camera(scene.camera!, scene.controls!)\n this.scene = new Scene(factory)\n this.model = new Model()\n this.factory = new HandleManage(this.camera)\n // this.opts.model && (this.model.load(this.opts.model))\n // this.changeSceneEnvironment()\n utils.storeManagement.set('event-bus', this.eventBus)\n }\n\n changeSceneEnvironment(openFlag = true) {\n const { renderer, scene } = use.useScene()\n const pmremGenerator = new PMREMGenerator(renderer!)\n pmremGenerator.compileEquirectangularShader()\n const roomEnvironment = new (RoomEnvironment as any)()\n\n if (openFlag)\n scene!.environment = pmremGenerator.fromScene(roomEnvironment, 0.04).texture\n\n else\n scene!.environment = null\n }\n}\n\nexport default Anov3D"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@anov/3d",
3
- "version": "0.0.4-alpha25",
3
+ "version": "0.0.4-alpha27",
4
4
  "description": "",
5
5
  "author": "",
6
6
  "license": "MIT",
@@ -20,7 +20,7 @@
20
20
  "@tweenjs/tween.js": "^21.0.0",
21
21
  "localforage": "^1.10.0",
22
22
  "uuid": "^9.0.1",
23
- "@anov/3d-ability": "^0.0.4-alpha8",
23
+ "@anov/3d-ability": "^0.0.4-alpha9",
24
24
  "@anov/3d-core": "^0.0.4-alpha19"
25
25
  },
26
26
  "devDependencies": {