@anov/3d 0.0.44 → 0.0.45
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.d.ts +1 -0
- package/dist/anov3d.js +1 -0
- package/dist/anov3d.js.map +1 -1
- package/dist/applicationApi.d.ts +3 -0
- package/dist/applicationApi.js +4 -2
- package/dist/applicationApi.js.map +1 -1
- package/dist/factory/3d.d.ts +1 -1
- package/dist/factory/3d.js +1 -1
- package/dist/factory/3d.js.map +1 -1
- package/dist/factory/unit/layer/rise.js.map +1 -1
- package/package.json +1 -1
package/dist/anov3d.d.ts
CHANGED
package/dist/anov3d.js
CHANGED
|
@@ -18,6 +18,7 @@ var Anov3D = /*#__PURE__*/function () {
|
|
|
18
18
|
function Anov3D(opts) {
|
|
19
19
|
var _camera$fov, _camera$near, _camera$far, _opts$size$width, _opts$size, _opts$size$height, _opts$size2, _opts$size$width2, _opts$size3, _opts$size$height2, _opts$size4, _scene$controls, _opts$camera;
|
|
20
20
|
_classCallCheck(this, Anov3D);
|
|
21
|
+
_defineProperty(this, "zoomRatio", 1);
|
|
21
22
|
_defineProperty(this, "opts", void 0);
|
|
22
23
|
_defineProperty(this, "sceneControl", void 0);
|
|
23
24
|
_defineProperty(this, "eventBus", void 0);
|
package/dist/anov3d.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["PMREMGenerator","SceneControl","Vector3","lib","use","utils","EventBus","EWeatherType","object2Vector3","Model","defaultCameraParams","RoomEnvironment","Anov3D","opts","camera","cameraParams","fov","near","far","position","fromArray","scene","orbitControls","controls","defCameraOps","aspect","size","width","container","clientWidth","height","clientHeight","rendererOps","shadowMap","reset","css2DRenderer","ambientLight","render","target","copy","lookAt","emitter","emit","sceneControl","eventBus","model","load","changeSceneEnvironment","storeManagement","set","openFlag","useScene","renderer","pmremGenerator","compileEquirectangularShader","roomEnvironment"],"sources":["../src/anov3d.ts"],"sourcesContent":["import { PMREMGenerator, SceneControl, Vector3, lib, use, utils } from '@anov/3d-core'\nimport EventBus from './module/eventBus'\nimport { EWeatherType } from './module/environment/weather/type'\nimport type { InitOptions } from './applicationApi'\nimport { object2Vector3 } from './utils/index'\nimport Model from './module/model'\nimport { defaultCameraParams } from './index'\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 controls?: InitOptions['controls']\n}\n\nconst { RoomEnvironment } = lib\n\nclass Anov3D {\n opts: Anov3DOptions\n sceneControl: SceneControl\n eventBus: EventBus\n EWeatherType: typeof EWeatherType = EWeatherType\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: opts.controls || { use: true },\n defCameraOps: {\n aspect: (opts?.size?.width ?? opts.container.clientWidth) / (opts?.size?.height ?? opts.container.clientHeight),\n ...cameraParams,\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 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\n this.eventBus = new EventBus()\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 utils.emitter.emit('instantiation-completed', this)\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":";;;;;;;;;AAAA,SAASA,cAAc,EAAEC,YAAY,EAAEC,OAAO,EAAEC,GAAG,EAAEC,GAAG,EAAEC,KAAK,QAAQ,eAAe;AACtF,OAAOC,QAAQ;AACf,SAASC,YAAY;AAErB,SAASC,cAAc;AACvB,OAAOC,KAAK;AACZ,SAASC,mBAAmB;AAc5B,IAAQC,eAAe,GAAKR,GAAG,CAAvBQ,eAAe;AAAQ,IAEzBC,MAAM;
|
|
1
|
+
{"version":3,"names":["PMREMGenerator","SceneControl","Vector3","lib","use","utils","EventBus","EWeatherType","object2Vector3","Model","defaultCameraParams","RoomEnvironment","Anov3D","opts","camera","cameraParams","fov","near","far","position","fromArray","scene","orbitControls","controls","defCameraOps","aspect","size","width","container","clientWidth","height","clientHeight","rendererOps","shadowMap","reset","css2DRenderer","ambientLight","render","target","copy","lookAt","emitter","emit","sceneControl","eventBus","model","load","changeSceneEnvironment","storeManagement","set","openFlag","useScene","renderer","pmremGenerator","compileEquirectangularShader","roomEnvironment"],"sources":["../src/anov3d.ts"],"sourcesContent":["import { PMREMGenerator, SceneControl, Vector3, lib, use, utils } from '@anov/3d-core'\nimport EventBus from './module/eventBus'\nimport { EWeatherType } from './module/environment/weather/type'\nimport type { InitOptions } from './applicationApi'\nimport { object2Vector3 } from './utils/index'\nimport Model from './module/model'\nimport { defaultCameraParams } from './index'\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 controls?: InitOptions['controls']\n}\n\nconst { RoomEnvironment } = lib\n\nclass Anov3D {\n zoomRatio = 1\n opts: Anov3DOptions\n sceneControl: SceneControl\n eventBus: EventBus\n EWeatherType: typeof EWeatherType = EWeatherType\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: opts.controls || { use: true },\n defCameraOps: {\n aspect: (opts?.size?.width ?? opts.container.clientWidth) / (opts?.size?.height ?? opts.container.clientHeight),\n ...cameraParams,\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 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\n this.eventBus = new EventBus()\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 utils.emitter.emit('instantiation-completed', this)\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/dist/applicationApi.d.ts
CHANGED
package/dist/applicationApi.js
CHANGED
|
@@ -25,10 +25,11 @@ var Application = /*#__PURE__*/function () {
|
|
|
25
25
|
key: "init",
|
|
26
26
|
value: function init(params, id) {
|
|
27
27
|
try {
|
|
28
|
-
var _camera$fov, _camera$near, _camera$far, _params$size$width, _params$size, _params$size$height, _params$size2, _params$environment, _params$environment2;
|
|
28
|
+
var _camera$fov, _camera$near, _camera$far, _params$size$width, _params$size, _params$size$height, _params$size2, _params$environment, _params$environment2, _set$zoomRatio;
|
|
29
29
|
var _ref = params || {},
|
|
30
30
|
_ref$camera = _ref.camera,
|
|
31
|
-
camera = _ref$camera === void 0 ? {} : _ref$camera
|
|
31
|
+
camera = _ref$camera === void 0 ? {} : _ref$camera,
|
|
32
|
+
set = _ref.set;
|
|
32
33
|
var cameraParams = {
|
|
33
34
|
fov: (_camera$fov = camera.fov) !== null && _camera$fov !== void 0 ? _camera$fov : defaultCameraParams.fov,
|
|
34
35
|
near: (_camera$near = camera.near) !== null && _camera$near !== void 0 ? _camera$near : defaultCameraParams.near,
|
|
@@ -52,6 +53,7 @@ var Application = /*#__PURE__*/function () {
|
|
|
52
53
|
controls: params.controls
|
|
53
54
|
});
|
|
54
55
|
this.iEngine = anov3D;
|
|
56
|
+
this.iEngine.zoomRatio = (_set$zoomRatio = set === null || set === void 0 ? void 0 : set.zoomRatio) !== null && _set$zoomRatio !== void 0 ? _set$zoomRatio : 1;
|
|
55
57
|
var caseInstance = this.loadCase(anov3D, params);
|
|
56
58
|
|
|
57
59
|
// @ts-ignore
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["utils","getFnByFnkey","MessageType","sendToMessage","EMessageStatus","Factory3D","Anov3D","defaultCameraParams","Application","opts","container","el","Api","Success","params","id","camera","cameraParams","fov","near","far","position","target","anov3D","model","case","size","width","clientWidth","height","clientHeight","environment","weather","time","controls","iEngine","caseInstance","loadCase","loadingManager","onLoad","onProgress","_","loaded","total","progress","Event","undefined","error","EventHandleFailed","console","req","name","init","Error","fn","res","Promise","resolve","then","failMessage","message","eventName","cb","storeManagement","
|
|
1
|
+
{"version":3,"names":["utils","getFnByFnkey","MessageType","sendToMessage","EMessageStatus","Factory3D","Anov3D","defaultCameraParams","Application","opts","container","el","Api","Success","params","id","camera","set","cameraParams","fov","near","far","position","target","anov3D","model","case","size","width","clientWidth","height","clientHeight","environment","weather","time","controls","iEngine","zoomRatio","caseInstance","loadCase","loadingManager","onLoad","onProgress","_","loaded","total","progress","Event","undefined","error","EventHandleFailed","console","req","name","init","Error","fn","res","Promise","resolve","then","failMessage","message","eventName","cb","storeManagement","option","factory","envMaps","imgBox","decoderPath","renderScene","sceneControl","createInstance"],"sources":["../src/applicationApi.ts"],"sourcesContent":["import { utils } from '@anov/3d-core'\nimport { getFnByFnkey } from './utils/index'\nimport { MessageType, sendToMessage } from './utils/messageFn'\nimport { EMessageStatus } from './messageStatus'\nimport Factory3D from './factory/3d'\nimport Anov3D, { defaultCameraParams } from './index'\n\ntype ApplicationOptions = {\n el: HTMLElement\n}\n\nexport type InitOptions = {\n case?: string // 案例名称,用于兼容init直接加载项目\n camera?: {\n fov?: number\n near?: number\n far?: number\n position?: [\n number,\n number,\n number,\n ]\n target?: [\n number,\n number,\n number,\n ]\n }\n model?: string\n decoderPath?: string // DRACO压缩 资源文件路径\n size?: {\n width: number\n height: number\n }\n environment?: {\n weather?: string\n time?: number\n }\n envMaps: {\n use?: boolean\n imgBox?: Array<string> | string\n }\n controls: {\n // 相机缩放范围\n minDistance?: number\n maxDistance?: number\n // 上下旋转范围\n minPolarAngle?: number// 默认值0\n maxPolarAngle?: number\n // 左右旋转范围\n minAzimuthAngle?: number\n maxAzimuthAngle?: number\n }\n set?: {\n zoomRatio?: number\n }\n}\n\nclass Application {\n private container: HTMLElement\n iEngine: Anov3D | undefined\n\n constructor(opts: ApplicationOptions) {\n this.container = opts.el\n\n sendToMessage(MessageType.Api, 'engineReady', EMessageStatus.Success)\n }\n\n private init(params: InitOptions, id: string) {\n try {\n const { camera = {}, set } = params || {}\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,\n target: camera.target,\n }\n\n const anov3D = new Anov3D({\n container: this.container,\n model: params.case ? '' : params?.model, // temporary solution by LM\n size: {\n width: params?.size?.width ?? this.container.clientWidth,\n height: params?.size?.height ?? this.container.clientHeight,\n },\n camera: {\n ...cameraParams,\n },\n environment: {\n weather: params?.environment?.weather,\n time: params?.environment?.time,\n },\n controls: params.controls,\n })\n\n this.iEngine = anov3D\n this.iEngine.zoomRatio = set?.zoomRatio ?? 1\n\n const caseInstance = this.loadCase(anov3D, params)\n\n // @ts-ignore\n this.iEngine.caseInstance = caseInstance\n\n caseInstance.loadingManager.onLoad = () => {\n sendToMessage(MessageType.Api, 'core.init', EMessageStatus.Success, id)\n }\n\n caseInstance.loadingManager.onProgress = (_, loaded, total) => {\n const progress = loaded / total\n\n sendToMessage(MessageType.Event, 'onInitProgress', EMessageStatus.Success, undefined, {\n progress,\n })\n }\n }\n catch (error) {\n sendToMessage(MessageType.Api, 'core.init', EMessageStatus.EventHandleFailed)\n console.error(error)\n }\n }\n\n sendMessage(req: { name: string; id: string; params: any }) {\n if (req.name === 'Core.init' || req.name === 'core.init') {\n this.init(req.params, req.id)\n return\n }\n\n if (!this.iEngine)\n throw new Error('please init first!')\n\n const fn = getFnByFnkey(this.iEngine, req.name, req.id) as any\n\n try {\n const res = fn(req.params)\n\n Promise.resolve(res).then((res) => {\n sendToMessage(MessageType.Api, req.name, EMessageStatus.Success, req.id, res)\n })\n }\n catch (error: any) {\n sendToMessage(MessageType.Api, req.name, EMessageStatus.EventHandleFailed, req.id, {\n failMessage: error.message,\n })\n }\n }\n\n receiveMessage(eventName: string, cb: (params: any) => void) {\n utils.storeManagement.set(eventName, cb)\n }\n\n // 此方法 用于直接加载案例\n private loadCase(anov3D: Anov3D, option: InitOptions) {\n switch (option.case) {\n case 'factory':\n\n // eslint-disable-next-line no-case-declarations\n const factory = new Factory3D({ model: option.model, environment: option.envMaps.imgBox as string, decoderPath: option.decoderPath, controls: option.controls })\n factory.renderScene(anov3D.sceneControl)\n return factory\n }\n }\n}\n\n/**\n * createInstance\n * @returns\n */\nexport const createInstance = (opts: ApplicationOptions): Application => {\n return new Application(opts)\n}\n"],"mappings":"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"}
|
package/dist/factory/3d.d.ts
CHANGED
|
@@ -16,7 +16,7 @@ declare type factory3dOption = {
|
|
|
16
16
|
controls?: any;
|
|
17
17
|
};
|
|
18
18
|
export declare const loadingManager: LoadingManager;
|
|
19
|
-
export declare const usePath = "
|
|
19
|
+
export declare const usePath = "http://172.16.223.163:9000/anov-prod/anov-3d/factory/example/";
|
|
20
20
|
declare class Factory3D {
|
|
21
21
|
position: Vector3;
|
|
22
22
|
scene: SceneControl;
|
package/dist/factory/3d.js
CHANGED
|
@@ -25,7 +25,7 @@ var rgbeLoader = new lib.RGBELoader(loadingManager);
|
|
|
25
25
|
var emitter = utils.emitter;
|
|
26
26
|
var resourcePath = './';
|
|
27
27
|
var resourcePath2 = 'http://172.16.223.163:9000/anov-prod/anov-3d/factory/example/';
|
|
28
|
-
export var usePath =
|
|
28
|
+
export var usePath = resourcePath2;
|
|
29
29
|
var _Texture = new TextureLoader().load("".concat(usePath, "demo03.jpg"));
|
|
30
30
|
_Texture.wrapS = RepeatWrapping;
|
|
31
31
|
_Texture.wrapT = RepeatWrapping;
|
package/dist/factory/3d.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Color","EquirectangularReflectionMapping","InteractionManager","LoadingManager","ModelLoader","RepeatWrapping","SRGBColorSpace","ShaderChunk","ShaderMaterial","TextureLoader","Vector2","Vector3","lib","use","utils","Camera","finirMaterialV1","handleUnit","toggleTag","globalEvents","SceneStyle","SceneTag","factoryGlobalObject","createRiseLayer","frag","vert","vertexShader","logdepthbuf_pars_vertex","logdepthbuf_vertex","fragmentShader","logdepthbuf_pars_fragment","logdepthbuf_fragment","loadingManager","load","rgbeLoader","RGBELoader","emitter","resourcePath","resourcePath2","usePath","_Texture","wrapS","wrapT","uniforms","material","transparent","Factory3D","option","overview","real","Map","globalEventsAgent","setFactory","scene","Promise","resolve","cameraUtil","camera","controls","control","layers","set","loadGLTF","gltf","realTreeModel","add","interactionManager","renderer","domElement","storeManagement","useframe","update","loadModel","onLoad","toneMappingExposure","visible","style","realModl","call","group","traverse","child","type","name","scale","text","repeat","opacity","renderOrder","depthTest","map","offset","x","tech","techModel","texture1","value","texture2","uvScale","depthWrite","thermaLimaging","pipeline","realGroundModel","setPath","texture","mapping","colorSpace","boxSkeyTexture","environment","background","params","tag","apply","forEach","eventKey","on","args","eventHandleFn","get","fn","cutoutCamera","inspection","minCamera","mainCamera","eventName","handleFn","push"],"sources":["../../src/factory/3d.ts"],"sourcesContent":["import type { DataTexture, Group, OrbitControls, SceneControl } from '@anov/3d-core'\nimport { BoxGeometry, Color, EquirectangularReflectionMapping, InteractionManager, LoadingManager, Mesh, MeshBasicMaterial, ModelLoader, PlaneGeometry, RepeatWrapping, SRGBColorSpace, ShaderChunk, ShaderMaterial, TextureLoader, Vector2, Vector3, Vector4, lib, sRGBEncoding, use, utils } from '@anov/3d-core'\nimport { Camera, createBloomSelectedTool, initPostEffects } from '@anov/3d-ability'\nimport { finirMaterialV1 } from './utils/finirMaterial'\nimport handleUnit, { toggleTag } from './unit'\nimport type WallManage from './unit/wall'\nimport type LineManage from './unit/line'\nimport type CylinderManage from './unit/cylinder'\nimport type PoiManage from './unit/poi'\nimport type CircleManage from './unit/circle'\nimport type AreaBoundingBoxManage from './unit/areaBoundingBox'\nimport type Inspection from './unit/inspection'\nimport { globalEvents } from './globalData'\nimport { SceneStyle, SceneTag } from './utils/constant'\nimport switchMaterial from './utils/switchMaterial'\nimport factoryGlobalObject from './globalControl'\nimport { debounce } from './utils'\nimport createRiseLayer from './unit/layer/rise'\n\nimport frag from './unit/glsl/heat/frag'\nimport vert from './unit/glsl/heat/ver'\n\ntype factory3dOption = {\n model: string\n environment: string\n decoderPath?: string\n controls?: any\n}\n\nconst vertexShader = `\n${ShaderChunk.logdepthbuf_pars_vertex}\nbool isPerspectiveMatrix(mat4) {\n return true;\n }\n varying vec2 vUv;\n varying vec3 vPosition;\n\n void main() {\n vUv = uv;\n gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\n vec4 worldPosition1 = modelMatrix * vec4(position, 1.0);\n vPosition = worldPosition1.xyz;\n ${ShaderChunk.logdepthbuf_vertex}\n }\n`\n\n// Fragment shader\nconst fragmentShader = `\n ${ShaderChunk.logdepthbuf_pars_fragment} \n\n varying vec3 vPosition;\n varying vec2 vUv;\n\n void main() {\n \n if(vPosition.x>-550.0 && vPosition.x<550.0 && vPosition.z>-300.0 && vPosition.z<270.0){\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0);\n }else{\n gl_FragColor = vec4(0.0, 0.0, 0.0, 0.0);\n }\n\n ${ShaderChunk.logdepthbuf_fragment}\n }\n`\n\nexport const loadingManager = new LoadingManager()\nconst load = new ModelLoader(loadingManager)\nconst rgbeLoader = new lib.RGBELoader(loadingManager)\nconst { emitter } = utils\n\nconst resourcePath = './'\nconst resourcePath2 = 'http://172.16.223.163:9000/anov-prod/anov-3d/factory/example/'\n\nexport const usePath = resourcePath\n\nconst _Texture = new TextureLoader().load(`${usePath}demo03.jpg`)\n\n_Texture.wrapS = RepeatWrapping\n_Texture.wrapT = RepeatWrapping\n\nconst uniforms = {\n\n}\n\nconst material = new ShaderMaterial({\n uniforms,\n vertexShader,\n fragmentShader,\n transparent: true,\n})\n\nclass Factory3D {\n position: Vector3 = new Vector3(0, 0, 0)\n scene: SceneControl\n control: OrbitControls\n cameraUtil: Camera\n\n public loadingManager = loadingManager\n public tag = SceneTag.overview\n public style: SceneStyle = SceneStyle.real\n private option: factory3dOption\n wall: WallManage\n line: LineManage\n cylinder: CylinderManage\n poi: PoiManage\n circle: CircleManage\n areaBoundingBox: AreaBoundingBoxManage\n inspection: Inspection\n\n usePath = usePath\n\n private pipeline: Group\n private realModl: Group\n private techModel: Group\n private realGroundModel: Group\n private realTreeModel: Group\n private thermaLimaging: Group\n private eventHandleFn: Map<string, ((args?: any) => void)[]> = new Map()\n private boxSkeyTexture: DataTexture\n\n interactionManager: InteractionManager\n\n constructor(option: factory3dOption) {\n this.option = option\n this.globalEventsAgent()\n factoryGlobalObject.setFactory(this)\n }\n\n /**\n * render factory 3d scene\n */\n renderScene(scene: SceneControl) {\n return new Promise((resolve) => {\n this.scene = scene\n\n this.cameraUtil = new Camera(scene.camera!, scene.controls!, scene)\n this.control = scene.controls!\n scene.camera.layers.set(0)\n\n load.loadGLTF(`${this.usePath}landScap3.glb`, false, true, './draco/', (gltf) => {\n this.realTreeModel = (gltf.scene) as Group\n\n // this.interactionManager.add(gltf.scene)\n\n // gltf.scene.addEventListener('click', (value) => {\n // console.log(value.point)\n // this.position = value.point\n // })\n scene.add(this.realTreeModel)\n\n return gltf\n })\n\n const interactionManager = new InteractionManager(\n this.scene.renderer,\n this.scene.camera,\n this.scene.renderer.domElement, // Modified By LM this.scene.cssRenderer.cssRenderer.domElement,\n )\n\n this.interactionManager = interactionManager\n\n utils.storeManagement.set('interactionManager', interactionManager)\n\n use.useframe(() => {\n interactionManager.update()\n })\n\n this.loadModel()\n\n loadingManager.onLoad = () => {\n resolve('success')\n }\n\n scene.renderer.toneMappingExposure = 0.4\n })\n }\n\n private loadModel() {\n // real model\n load.loadGLTF(`${this.usePath}222.glb`, false, true, './draco/', (gltf) => {\n this.scene.add(gltf.scene)\n\n gltf.scene.visible = SceneStyle.real === this.style\n\n this.realModl = gltf.scene as Group\n\n // this.interactionManager.add(gltf.scene)\n\n // gltf.scene.addEventListener('click', (value) => {\n // console.log(value.point)\n // this.position = value.point\n // })\n\n handleUnit.call(this)\n\n return gltf\n })\n\n // tech model\n load.loadGLTF(`${this.usePath}2222.glb`, false, true, './draco/', (gltf) => {\n const group = gltf.scene\n group.traverse((child) => {\n // @ts-ignore\n if (child.type === 'Mesh') {\n if (child.name === '柱体') {\n child.visible = false\n }\n\n else {\n // @ts-ignore\n child.material = finirMaterialV1\n }\n }\n })\n\n load.loadGLTF(`${this.usePath}plane.glb`, false, true, './draco/', (gltf) => {\n gltf.scene.scale.set(0.5, 0.5, 0.5)\n\n const text = new TextureLoader().load(`${this.usePath}roll.png`)\n\n text.wrapS = RepeatWrapping\n text.wrapT = RepeatWrapping\n\n text.repeat.set(1, 1)\n\n gltf.scene.traverse((child) => {\n if (child.type === 'Mesh') {\n // @ts-ignore\n child.material.transparent = true\n // @ts-ignore\n child.material.opacity = 1\n child.renderOrder = -1\n // @ts-ignore\n child.material.depthTest = false\n\n // @ts-ignore\n child.material.map = text\n }\n })\n\n use.useframe(() => {\n text.offset.x += 0.01\n })\n\n group.add(gltf.scene)\n\n return gltf\n })\n\n createRiseLayer()\n\n this.scene.add(group)\n\n group.visible = SceneStyle.tech === this.style\n this.techModel = group as Group\n\n return gltf\n })\n\n // thermaLimaging model\n load.loadGLTF(`${this.usePath}2222.glb`, false, true, './draco/', (gltf) => {\n const group = gltf.scene\n group.traverse((child) => {\n if (child.type === 'Mesh') {\n // @ts-ignore\n child.material = new ShaderMaterial({\n vertexShader: vert,\n fragmentShader: frag,\n uniforms: {\n texture1: { value: new TextureLoader(this.loadingManager).load(`${this.usePath}test01.jpg`) },\n texture2: { value: new TextureLoader(this.loadingManager).load(`${this.usePath}test02.jpg`) },\n uvScale: { value: new Vector2(1, 1) },\n },\n depthTest: false,\n depthWrite: false,\n })\n\n child.layers.set(2)\n }\n })\n\n this.scene.add(group)\n\n this.thermaLimaging = group as Group\n\n return gltf\n })\n\n load.loadGLTF(`${this.usePath}guandao.glb`, false, true, './draco/', (gltf) => {\n this.scene.add(gltf.scene)\n\n this.pipeline = gltf.scene as Group\n return gltf\n })\n\n // ground\n load.loadGLTF(`${this.usePath}landScap.glb`, false, true, './draco/', (gltf) => {\n this.scene.add(gltf.scene)\n\n // this.interactionManager.add(gltf.scene)\n\n // gltf.scene.addEventListener('click', (value) => {\n // console.log(value.point)\n // this.position = value.point\n // })\n\n this.realGroundModel = gltf.scene as Group\n return gltf\n })\n rgbeLoader.setPath(`${this.usePath}`).load('demo.hdr', (texture) => {\n texture.mapping = EquirectangularReflectionMapping\n\n texture.colorSpace = SRGBColorSpace\n this.boxSkeyTexture = texture\n this.scene.scene.environment = texture\n this.scene.scene.background = new Color('#ccc')\n })\n }\n\n /**\n * toggle SceneStyle\n * @param params\n */\n toggleSceneStyle(params: SceneStyle) {\n if (this.style === params)\n return\n\n this.style = params\n\n if (this.style === SceneStyle.tech) {\n this.pipeline.visible = false\n this.techModel.visible = true\n this.realModl.visible = false\n this.realTreeModel.visible = false\n this.scene.scene.background = null\n this.realGroundModel && (this.realGroundModel.visible = false)\n\n this.scene.renderer.toneMappingExposure = 0.6\n }\n\n if (params === SceneStyle.real) {\n this.pipeline.visible = true\n this.techModel.visible = false\n this.realModl.visible = true\n this.realGroundModel && (this.realGroundModel.visible = true)\n this.realTreeModel && (this.realTreeModel.visible = true)\n this.scene.scene.background = new Color('#ccc')\n this.scene.scene.environment = this.boxSkeyTexture\n\n this.scene.renderer.toneMappingExposure = 0.4\n }\n }\n\n public toggleTag(tag: SceneTag) {\n if (this.tag === tag)\n return\n toggleTag[tag].apply(this, [this])\n }\n\n private globalEventsAgent() {\n globalEvents.forEach((eventKey) => {\n emitter.on(eventKey, (args) => {\n this.eventHandleFn.get(eventKey)?.forEach((fn) => {\n fn(args)\n })\n })\n })\n }\n\n /**\n * toggle view\n */\n toggleView() {\n if (this.scene.cutoutCamera === this.inspection.minCamera) {\n const cutoutCamera = this.inspection.minCamera\n this.scene.cutoutCamera = this.scene.camera\n this.scene.camera = cutoutCamera\n // initPostEffects(this.scene.scene, this.scene.renderer, cutoutCamera, {\n // type: 'main',\n // })\n }\n else {\n const mainCamera = this.scene.cutoutCamera\n const cutoutCamera = this.inspection.minCamera\n\n this.scene.camera = mainCamera\n this.scene.cutoutCamera = cutoutCamera\n\n // initPostEffects(this.scene.scene, this.scene.renderer, cutoutCamera, {\n // type: 'sub',\n // })\n }\n }\n\n addEventListener(eventName: string, handleFn: (args?: any) => void) {\n if (this.eventHandleFn.get(eventName))\n this.eventHandleFn.get(eventName).push(handleFn)\n\n else\n this.eventHandleFn.set(eventName, [handleFn])\n }\n}\n\nexport default Factory3D"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["Color","EquirectangularReflectionMapping","InteractionManager","LoadingManager","ModelLoader","RepeatWrapping","SRGBColorSpace","ShaderChunk","ShaderMaterial","TextureLoader","Vector2","Vector3","lib","use","utils","Camera","finirMaterialV1","handleUnit","toggleTag","globalEvents","SceneStyle","SceneTag","factoryGlobalObject","createRiseLayer","frag","vert","vertexShader","logdepthbuf_pars_vertex","logdepthbuf_vertex","fragmentShader","logdepthbuf_pars_fragment","logdepthbuf_fragment","loadingManager","load","rgbeLoader","RGBELoader","emitter","resourcePath","resourcePath2","usePath","_Texture","wrapS","wrapT","uniforms","material","transparent","Factory3D","option","overview","real","Map","globalEventsAgent","setFactory","scene","Promise","resolve","cameraUtil","camera","controls","control","layers","set","loadGLTF","gltf","realTreeModel","add","interactionManager","renderer","domElement","storeManagement","useframe","update","loadModel","onLoad","toneMappingExposure","visible","style","realModl","call","group","traverse","child","type","name","scale","text","repeat","opacity","renderOrder","depthTest","map","offset","x","tech","techModel","texture1","value","texture2","uvScale","depthWrite","thermaLimaging","pipeline","realGroundModel","setPath","texture","mapping","colorSpace","boxSkeyTexture","environment","background","params","tag","apply","forEach","eventKey","on","args","eventHandleFn","get","fn","cutoutCamera","inspection","minCamera","mainCamera","eventName","handleFn","push"],"sources":["../../src/factory/3d.ts"],"sourcesContent":["import type { DataTexture, Group, OrbitControls, SceneControl } from '@anov/3d-core'\nimport { BoxGeometry, Color, EquirectangularReflectionMapping, InteractionManager, LoadingManager, Mesh, MeshBasicMaterial, ModelLoader, PlaneGeometry, RepeatWrapping, SRGBColorSpace, ShaderChunk, ShaderMaterial, TextureLoader, Vector2, Vector3, Vector4, lib, sRGBEncoding, use, utils } from '@anov/3d-core'\nimport { Camera, createBloomSelectedTool, initPostEffects } from '@anov/3d-ability'\nimport { finirMaterialV1 } from './utils/finirMaterial'\nimport handleUnit, { toggleTag } from './unit'\nimport type WallManage from './unit/wall'\nimport type LineManage from './unit/line'\nimport type CylinderManage from './unit/cylinder'\nimport type PoiManage from './unit/poi'\nimport type CircleManage from './unit/circle'\nimport type AreaBoundingBoxManage from './unit/areaBoundingBox'\nimport type Inspection from './unit/inspection'\nimport { globalEvents } from './globalData'\nimport { SceneStyle, SceneTag } from './utils/constant'\nimport switchMaterial from './utils/switchMaterial'\nimport factoryGlobalObject from './globalControl'\nimport { debounce } from './utils'\nimport createRiseLayer from './unit/layer/rise'\n\nimport frag from './unit/glsl/heat/frag'\nimport vert from './unit/glsl/heat/ver'\n\ntype factory3dOption = {\n model: string\n environment: string\n decoderPath?: string\n controls?: any\n}\n\nconst vertexShader = `\n${ShaderChunk.logdepthbuf_pars_vertex}\nbool isPerspectiveMatrix(mat4) {\n return true;\n }\n varying vec2 vUv;\n varying vec3 vPosition;\n\n void main() {\n vUv = uv;\n gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\n vec4 worldPosition1 = modelMatrix * vec4(position, 1.0);\n vPosition = worldPosition1.xyz;\n ${ShaderChunk.logdepthbuf_vertex}\n }\n`\n\n// Fragment shader\nconst fragmentShader = `\n ${ShaderChunk.logdepthbuf_pars_fragment} \n\n varying vec3 vPosition;\n varying vec2 vUv;\n\n void main() {\n \n if(vPosition.x>-550.0 && vPosition.x<550.0 && vPosition.z>-300.0 && vPosition.z<270.0){\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0);\n }else{\n gl_FragColor = vec4(0.0, 0.0, 0.0, 0.0);\n }\n\n ${ShaderChunk.logdepthbuf_fragment}\n }\n`\n\nexport const loadingManager = new LoadingManager()\nconst load = new ModelLoader(loadingManager)\nconst rgbeLoader = new lib.RGBELoader(loadingManager)\nconst { emitter } = utils\n\nconst resourcePath = './'\nconst resourcePath2 = 'http://172.16.223.163:9000/anov-prod/anov-3d/factory/example/'\n\nexport const usePath = resourcePath2\n\nconst _Texture = new TextureLoader().load(`${usePath}demo03.jpg`)\n\n_Texture.wrapS = RepeatWrapping\n_Texture.wrapT = RepeatWrapping\n\nconst uniforms = {\n\n}\n\nconst material = new ShaderMaterial({\n uniforms,\n vertexShader,\n fragmentShader,\n transparent: true,\n})\n\nclass Factory3D {\n position: Vector3 = new Vector3(0, 0, 0)\n scene: SceneControl\n control: OrbitControls\n cameraUtil: Camera\n\n public loadingManager = loadingManager\n public tag = SceneTag.overview\n public style: SceneStyle = SceneStyle.real\n private option: factory3dOption\n wall: WallManage\n line: LineManage\n cylinder: CylinderManage\n poi: PoiManage\n circle: CircleManage\n areaBoundingBox: AreaBoundingBoxManage\n inspection: Inspection\n\n usePath = usePath\n\n private pipeline: Group\n private realModl: Group\n private techModel: Group\n private realGroundModel: Group\n private realTreeModel: Group\n private thermaLimaging: Group\n private eventHandleFn: Map<string, ((args?: any) => void)[]> = new Map()\n private boxSkeyTexture: DataTexture\n\n interactionManager: InteractionManager\n\n constructor(option: factory3dOption) {\n this.option = option\n this.globalEventsAgent()\n factoryGlobalObject.setFactory(this)\n }\n\n /**\n * render factory 3d scene\n */\n renderScene(scene: SceneControl) {\n return new Promise((resolve) => {\n this.scene = scene\n\n this.cameraUtil = new Camera(scene.camera!, scene.controls!, scene)\n this.control = scene.controls!\n scene.camera.layers.set(0)\n\n load.loadGLTF(`${this.usePath}landScap3.glb`, false, true, './draco/', (gltf) => {\n this.realTreeModel = (gltf.scene) as Group\n\n // this.interactionManager.add(gltf.scene)\n\n // gltf.scene.addEventListener('click', (value) => {\n // console.log(value.point)\n // this.position = value.point\n // })\n scene.add(this.realTreeModel)\n\n return gltf\n })\n\n const interactionManager = new InteractionManager(\n this.scene.renderer,\n this.scene.camera,\n this.scene.renderer.domElement, // Modified By LM this.scene.cssRenderer.cssRenderer.domElement,\n )\n\n this.interactionManager = interactionManager\n\n utils.storeManagement.set('interactionManager', interactionManager)\n\n use.useframe(() => {\n interactionManager.update()\n })\n\n this.loadModel()\n\n loadingManager.onLoad = () => {\n resolve('success')\n }\n\n scene.renderer.toneMappingExposure = 0.4\n })\n }\n\n private loadModel() {\n // real model\n load.loadGLTF(`${this.usePath}222.glb`, false, true, './draco/', (gltf) => {\n this.scene.add(gltf.scene)\n\n gltf.scene.visible = SceneStyle.real === this.style\n\n this.realModl = gltf.scene as Group\n\n // this.interactionManager.add(gltf.scene)\n\n // gltf.scene.addEventListener('click', (value) => {\n // console.log(value.point)\n // this.position = value.point\n // })\n\n handleUnit.call(this)\n\n return gltf\n })\n\n // tech model\n load.loadGLTF(`${this.usePath}2222.glb`, false, true, './draco/', (gltf) => {\n const group = gltf.scene\n group.traverse((child) => {\n // @ts-ignore\n if (child.type === 'Mesh') {\n if (child.name === '柱体') {\n child.visible = false\n }\n\n else {\n // @ts-ignore\n child.material = finirMaterialV1\n }\n }\n })\n\n load.loadGLTF(`${this.usePath}plane.glb`, false, true, './draco/', (gltf) => {\n gltf.scene.scale.set(0.5, 0.5, 0.5)\n\n const text = new TextureLoader().load(`${this.usePath}roll.png`)\n\n text.wrapS = RepeatWrapping\n text.wrapT = RepeatWrapping\n\n text.repeat.set(1, 1)\n\n gltf.scene.traverse((child) => {\n if (child.type === 'Mesh') {\n // @ts-ignore\n child.material.transparent = true\n // @ts-ignore\n child.material.opacity = 1\n child.renderOrder = -1\n // @ts-ignore\n child.material.depthTest = false\n\n // @ts-ignore\n child.material.map = text\n }\n })\n\n use.useframe(() => {\n text.offset.x += 0.01\n })\n\n group.add(gltf.scene)\n\n return gltf\n })\n\n createRiseLayer()\n\n this.scene.add(group)\n\n group.visible = SceneStyle.tech === this.style\n this.techModel = group as Group\n\n return gltf\n })\n\n // thermaLimaging model\n load.loadGLTF(`${this.usePath}2222.glb`, false, true, './draco/', (gltf) => {\n const group = gltf.scene\n group.traverse((child) => {\n if (child.type === 'Mesh') {\n // @ts-ignore\n child.material = new ShaderMaterial({\n vertexShader: vert,\n fragmentShader: frag,\n uniforms: {\n texture1: { value: new TextureLoader(this.loadingManager).load(`${this.usePath}test01.jpg`) },\n texture2: { value: new TextureLoader(this.loadingManager).load(`${this.usePath}test02.jpg`) },\n uvScale: { value: new Vector2(1, 1) },\n },\n depthTest: false,\n depthWrite: false,\n })\n\n child.layers.set(2)\n }\n })\n\n this.scene.add(group)\n\n this.thermaLimaging = group as Group\n\n return gltf\n })\n\n load.loadGLTF(`${this.usePath}guandao.glb`, false, true, './draco/', (gltf) => {\n this.scene.add(gltf.scene)\n\n this.pipeline = gltf.scene as Group\n return gltf\n })\n\n // ground\n load.loadGLTF(`${this.usePath}landScap.glb`, false, true, './draco/', (gltf) => {\n this.scene.add(gltf.scene)\n\n // this.interactionManager.add(gltf.scene)\n\n // gltf.scene.addEventListener('click', (value) => {\n // console.log(value.point)\n // this.position = value.point\n // })\n\n this.realGroundModel = gltf.scene as Group\n return gltf\n })\n rgbeLoader.setPath(`${this.usePath}`).load('demo.hdr', (texture) => {\n texture.mapping = EquirectangularReflectionMapping\n\n texture.colorSpace = SRGBColorSpace\n this.boxSkeyTexture = texture\n this.scene.scene.environment = texture\n this.scene.scene.background = new Color('#ccc')\n })\n }\n\n /**\n * toggle SceneStyle\n * @param params\n */\n toggleSceneStyle(params: SceneStyle) {\n if (this.style === params)\n return\n\n this.style = params\n\n if (this.style === SceneStyle.tech) {\n this.pipeline.visible = false\n this.techModel.visible = true\n this.realModl.visible = false\n this.realTreeModel.visible = false\n this.scene.scene.background = null\n this.realGroundModel && (this.realGroundModel.visible = false)\n\n this.scene.renderer.toneMappingExposure = 0.6\n }\n\n if (params === SceneStyle.real) {\n this.pipeline.visible = true\n this.techModel.visible = false\n this.realModl.visible = true\n this.realGroundModel && (this.realGroundModel.visible = true)\n this.realTreeModel && (this.realTreeModel.visible = true)\n this.scene.scene.background = new Color('#ccc')\n this.scene.scene.environment = this.boxSkeyTexture\n\n this.scene.renderer.toneMappingExposure = 0.4\n }\n }\n\n public toggleTag(tag: SceneTag) {\n if (this.tag === tag)\n return\n toggleTag[tag].apply(this, [this])\n }\n\n private globalEventsAgent() {\n globalEvents.forEach((eventKey) => {\n emitter.on(eventKey, (args) => {\n this.eventHandleFn.get(eventKey)?.forEach((fn) => {\n fn(args)\n })\n })\n })\n }\n\n /**\n * toggle view\n */\n toggleView() {\n if (this.scene.cutoutCamera === this.inspection.minCamera) {\n const cutoutCamera = this.inspection.minCamera\n this.scene.cutoutCamera = this.scene.camera\n this.scene.camera = cutoutCamera\n // initPostEffects(this.scene.scene, this.scene.renderer, cutoutCamera, {\n // type: 'main',\n // })\n }\n else {\n const mainCamera = this.scene.cutoutCamera\n const cutoutCamera = this.inspection.minCamera\n\n this.scene.camera = mainCamera\n this.scene.cutoutCamera = cutoutCamera\n\n // initPostEffects(this.scene.scene, this.scene.renderer, cutoutCamera, {\n // type: 'sub',\n // })\n }\n }\n\n addEventListener(eventName: string, handleFn: (args?: any) => void) {\n if (this.eventHandleFn.get(eventName))\n this.eventHandleFn.get(eventName).push(handleFn)\n\n else\n this.eventHandleFn.set(eventName, [handleFn])\n }\n}\n\nexport default Factory3D"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ShaderMaterial","Sprite","TextureLoader","Vector3","Vector4","use","riseSpriteMaterial","uniforms","_TintColor","value","_MainTex","load","_InvFade","depthTest","transparent","vertexShader","fragmentShader","lookAtOnYAxis","mesh","targetPosition","direction","subVectors","position","y","normalize","rotationY","Math","atan2","z","x","PI","rotation","createRiseLayer","riseLayer","useScene","scene","camera","RiseLayer","forEach","item","sprite","scale","set","rotateZ","random","layers","useframe","add"],"sources":["../../../../src/factory/unit/layer/rise.ts"],"sourcesContent":["import { ShaderMaterial, Sprite, TextureLoader, Vector3, Vector4, lib, use } from '@anov/3d-core'\n\nconst riseSpriteMaterial = new ShaderMaterial(\n {\n uniforms: {\n _TintColor: {\n value: new Vector4(1, 1, 1, 1),\n },\n _MainTex: {\n value: new TextureLoader().load('./test03.png'),\n },\n _InvFade: {\n value: 0.5,\n },\n },\n depthTest: false,\n transparent: true,\n vertexShader: /* glsl */`\n varying vec2 vUv;\n void main() {\n vUv = uv;\n gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\n }\n `,\n fragmentShader: /* glsl */`\nuniform vec3 _TintColor;\nuniform sampler2D _MainTex;\nuniform float _InvFade;\n\nvarying vec2 vUv;\n\nvoid main() {\n #ifdef USE_SOFTPARTICLES\n float sceneZ = texture2DProj(_CameraDepthTexture, vec4(vUv, 0.0, 1.0)).r;\n float partZ = gl_FragCoord.z / gl_FragCoord.w;\n float fade = clamp(_InvFade * (sceneZ - partZ), 0.0, 1.0);\n gl_FragColor = vec4(texture2D(_MainTex, vUv).rgb * _TintColor.rgb * 2.0 * fade, texture2D(_MainTex, vUv).a);\n #else\n gl_FragColor = vec4(texture2D(_MainTex, vUv).rgb * _TintColor.rgb * 2.0, texture2D(_MainTex, vUv).a);\n #endif\n\n \n}\n `,\n\n },\n)\n\nconst lookAtOnYAxis = (mesh, targetPosition) => {\n const direction = new Vector3().subVectors(targetPosition, mesh.position)\n direction.y = 0\n direction.normalize()\n\n let rotationY = Math.atan2(-direction.z, direction.x)\n\n rotationY -= Math.PI / 2\n\n mesh.rotation.y = rotationY + Math.PI\n}\n\nconst position = [{ x: -498.20348353985537, y: 1.724138326633124, z: -281.23472454616785 },\n { x: -563.1644534597008, y: -7.638570902979723, z: -149.5955833695798 },\n { x: -539.9109368199106, y: -0.7796363631222221, z: 4.303779590985869 },\n { x: -534.3300967431978, y: -1.9484837019957695, z: 207.03842215576515 },\n { x: -442.78992295689204, y: -0.9124291814532626, z: 284.6781114942187 },\n { x: -283.09754160435295, y: -0.8067932128907387, z: 284.7632588661927 },\n { x: -17.793886943446523, y: -0.8170822284307633, z: 278.6614163511422 },\n { x: 179.67836454455573, y: -0.7142971925655957, z: 277.5182969378766 },\n { x: 508.9391424549631, y: -0.06078556583531736, z: 270.6384956562051 },\n { x: 533.1529366899049, y: -0.3130418997158131, z: 175.59337885556306 },\n { x: 533.9192918796916, y: -0.595400047193607, z: 70.85117576185621 },\n { x: 558.8072691291136, y: 5.982457089229797, z: -47.46377685009156 },\n { x: 536.4516296924203, y: 1.629037413908577, z: -152.78540121590413 },\n { x: 555.1397274226065, y: 0.23968594510984076, z: -307.35056881373566 },\n { x: 476.2494806852892, y: -0.8084288516456581, z: -345.36949523013845 },\n { x: 216.87888929400197, y: -0.5794669817644262, z: -332.7211786339103 },\n { x: 175.22031507466454, y: -0.5724182128905113, z: -341.87163811528535 },\n { x: -35.18223117258549, y: -0.6265496863107956, z: -379.64710400924196 },\n { x: -356.44488560882746, y: -0.8819180034963665, z: -351.6907599590395 },\n { x: -237.58163560440826, y: 1.1368683772161603e-13, z: -128.96463232189376 },\n { x: 196.42648060764338, y: 1.1368683772161603e-13, z: 55.58793681693976 },\n { x: -235.24785890696023, y: 0, z: 187.57190736438497 },\n
|
|
1
|
+
{"version":3,"names":["ShaderMaterial","Sprite","TextureLoader","Vector3","Vector4","use","riseSpriteMaterial","uniforms","_TintColor","value","_MainTex","load","_InvFade","depthTest","transparent","vertexShader","fragmentShader","lookAtOnYAxis","mesh","targetPosition","direction","subVectors","position","y","normalize","rotationY","Math","atan2","z","x","PI","rotation","createRiseLayer","riseLayer","useScene","scene","camera","RiseLayer","forEach","item","sprite","scale","set","rotateZ","random","layers","useframe","add"],"sources":["../../../../src/factory/unit/layer/rise.ts"],"sourcesContent":["import type { Object3D } from '@anov/3d-core'\nimport { ShaderMaterial, Sprite, TextureLoader, Vector3, Vector4, lib, use } from '@anov/3d-core'\n\nconst riseSpriteMaterial = new ShaderMaterial(\n {\n uniforms: {\n _TintColor: {\n value: new Vector4(1, 1, 1, 1),\n },\n _MainTex: {\n value: new TextureLoader().load('./test03.png'),\n },\n _InvFade: {\n value: 0.5,\n },\n },\n depthTest: false,\n transparent: true,\n vertexShader: /* glsl */`\n varying vec2 vUv;\n void main() {\n vUv = uv;\n gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\n }\n `,\n fragmentShader: /* glsl */`\nuniform vec3 _TintColor;\nuniform sampler2D _MainTex;\nuniform float _InvFade;\n\nvarying vec2 vUv;\n\nvoid main() {\n #ifdef USE_SOFTPARTICLES\n float sceneZ = texture2DProj(_CameraDepthTexture, vec4(vUv, 0.0, 1.0)).r;\n float partZ = gl_FragCoord.z / gl_FragCoord.w;\n float fade = clamp(_InvFade * (sceneZ - partZ), 0.0, 1.0);\n gl_FragColor = vec4(texture2D(_MainTex, vUv).rgb * _TintColor.rgb * 2.0 * fade, texture2D(_MainTex, vUv).a);\n #else\n gl_FragColor = vec4(texture2D(_MainTex, vUv).rgb * _TintColor.rgb * 2.0, texture2D(_MainTex, vUv).a);\n #endif\n\n \n}\n `,\n\n },\n)\n\nconst lookAtOnYAxis = (mesh: Object3D, targetPosition: Vector3) => {\n const direction = new Vector3().subVectors(targetPosition, mesh.position)\n direction.y = 0\n direction.normalize()\n\n let rotationY = Math.atan2(-direction.z, direction.x)\n\n rotationY -= Math.PI / 2\n\n mesh.rotation.y = rotationY + Math.PI\n}\n\nconst position = [{ x: -498.20348353985537, y: 1.724138326633124, z: -281.23472454616785 },\n { x: -563.1644534597008, y: -7.638570902979723, z: -149.5955833695798 },\n { x: -539.9109368199106, y: -0.7796363631222221, z: 4.303779590985869 },\n { x: -534.3300967431978, y: -1.9484837019957695, z: 207.03842215576515 },\n { x: -442.78992295689204, y: -0.9124291814532626, z: 284.6781114942187 },\n { x: -283.09754160435295, y: -0.8067932128907387, z: 284.7632588661927 },\n { x: -17.793886943446523, y: -0.8170822284307633, z: 278.6614163511422 },\n { x: 179.67836454455573, y: -0.7142971925655957, z: 277.5182969378766 },\n { x: 508.9391424549631, y: -0.06078556583531736, z: 270.6384956562051 },\n { x: 533.1529366899049, y: -0.3130418997158131, z: 175.59337885556306 },\n { x: 533.9192918796916, y: -0.595400047193607, z: 70.85117576185621 },\n { x: 558.8072691291136, y: 5.982457089229797, z: -47.46377685009156 },\n { x: 536.4516296924203, y: 1.629037413908577, z: -152.78540121590413 },\n { x: 555.1397274226065, y: 0.23968594510984076, z: -307.35056881373566 },\n { x: 476.2494806852892, y: -0.8084288516456581, z: -345.36949523013845 },\n { x: 216.87888929400197, y: -0.5794669817644262, z: -332.7211786339103 },\n { x: 175.22031507466454, y: -0.5724182128905113, z: -341.87163811528535 },\n { x: -35.18223117258549, y: -0.6265496863107956, z: -379.64710400924196 },\n { x: -356.44488560882746, y: -0.8819180034963665, z: -351.6907599590395 },\n { x: -237.58163560440826, y: 1.1368683772161603e-13, z: -128.96463232189376 },\n { x: 196.42648060764338, y: 1.1368683772161603e-13, z: 55.58793681693976 },\n { x: -235.24785890696023, y: 0, z: 187.57190736438497 },\n]\n\n/**\n * todo: other page remove animation\n * @param riseLayer\n */\nconst createRiseLayer = (riseLayer?: number) => {\n const { scene, camera } = use.useScene()\n const RiseLayer = riseLayer ?? 28\n\n position.forEach((item) => {\n const sprite = new Sprite(\n riseSpriteMaterial as any,\n )\n\n sprite.scale.set(30, 30, 1)\n sprite.rotateZ(-Math.PI / 2)\n\n sprite.position.set(item.x, item.y + Math.random() * 300, item.z)\n sprite.layers.set(RiseLayer)\n\n use.useframe(() => {\n lookAtOnYAxis(sprite, camera!.position)\n\n if (sprite.position.y > 300)\n sprite.position.y = 0\n\n sprite.position.y += 1.5\n })\n\n scene!.add(sprite)\n })\n}\n\nexport default createRiseLayer"],"mappings":"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"}
|