@anov/3d-ability 0.0.123 → 0.0.124
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/business/Area/{fence → Fence}/FenceBase.js.map +1 -1
- package/dist/business/Area/{fence → Fence}/fence_base_01.js.map +1 -1
- package/dist/business/Area/{fence → Fence}/fence_feeting_01.js.map +1 -1
- package/dist/business/Area/{fence → Fence}/fence_roll_01.js.map +1 -1
- package/dist/business/Area/{fillArea → FillArea}/FillAreaBase.js.map +1 -1
- package/dist/business/Area/{fillArea → FillArea}/fillArea_face_01.js.map +1 -1
- package/dist/business/Area/{fillArea → FillArea}/fillArea_line_01.js.map +1 -1
- package/dist/business/Area/index.js +5 -5
- package/dist/business/Area/index.js.map +1 -1
- package/dist/core/Material/SurfaceMaterial/index.d.ts +7 -1
- package/dist/core/Material/SurfaceMaterial/index.js +19 -1
- package/dist/core/Material/SurfaceMaterial/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/business/Area/fence/FenceBase.d.ts +0 -35
- package/dist/business/Area/fence/fence_base_01.d.ts +0 -11
- package/dist/business/Area/fence/fence_feeting_01.d.ts +0 -11
- package/dist/business/Area/fence/fence_roll_01.d.ts +0 -11
- package/dist/business/Area/fillArea/FillAreaBase.d.ts +0 -32
- package/dist/business/Area/fillArea/fillArea_face_01.d.ts +0 -11
- package/dist/business/Area/fillArea/fillArea_line_01.d.ts +0 -10
- /package/dist/business/Area/{fence → Fence}/FenceBase.js +0 -0
- /package/dist/business/Area/{fence → Fence}/fence_base_01.js +0 -0
- /package/dist/business/Area/{fence → Fence}/fence_feeting_01.js +0 -0
- /package/dist/business/Area/{fence → Fence}/fence_roll_01.js +0 -0
- /package/dist/business/Area/{fillArea → FillArea}/FillAreaBase.js +0 -0
- /package/dist/business/Area/{fillArea → FillArea}/fillArea_face_01.js +0 -0
- /package/dist/business/Area/{fillArea → FillArea}/fillArea_line_01.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ObjectLayer","hexToRGBA","parseRGBA","FenceBase","_ObjectLayer","_inherits","_super","_createSuper","option","_areaInstance","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","Set","_option","_initParams","_createClass","key","get","_mesh","_uri","set","value","_this2","_listeners","forEach","cb","_height","newValue","_this3","_color","uniforms","material","color1","_parseRGBA","r","g","b","colorTemp","Number","toFixed","_alpha","alpha","_corner","_close","corner","close","height","color","_points","points","uri","_delete","remove","removeFromParent","dispose","delete","clear","addReloadListener","callback","add"],"sources":["../../../../src/business/Area/fence/FenceBase.ts"],"sourcesContent":["import type { Group, Mesh, Object3D, ShaderMaterial, Vector3 } from '@anov/3d-core'\nimport _ from 'lodash'\nimport { Color, use } from '@anov/3d-core'\nimport ObjectLayer from '../../Base/ObjectLayer'\nimport type { FenceOption } from '../type'\nimport { hexToRGBA, parseRGBA } from '../tool'\n\nclass FenceBase extends ObjectLayer {\n public _mesh!: Mesh\n public _height: number\n public _alpha: number\n public _color: string\n public _corner: number\n public _close: boolean\n public _points!: Vector3[]\n public _uri: string\n public _option: FenceOption\n public _listeners = new Set()\n\n private _areaInstance: Object3D\n constructor(option: FenceOption, _areaInstance: Object3D) {\n super()\n this._option = option\n // 属性赋值\n this._initParams(option)\n this._areaInstance = _areaInstance\n // this.setValues(_.mergeWith({}, defaultOption, option))\n }\n\n public get mesh() {\n return this._mesh\n }\n\n public get uri() {\n return this._uri\n }\n\n public set uri(value: string) {\n if (this._uri === value)\n return\n this._uri = value\n // eslint-disable-next-line max-statements-per-line\n this._listeners.forEach((cb: Function) => { cb.call(this._areaInstance) })\n }\n\n // Getter and Setter for fenceHeight property\n get height(): number {\n return this._height\n }\n\n set height(newValue: number) {\n if (this._height === newValue)\n return\n\n this._height = newValue\n\n // eslint-disable-next-line max-statements-per-line\n this._listeners.forEach((cb: Function) => { cb.call(this._areaInstance) })\n // if (this._mesh) {\n // const childrens = this._mesh.children\n // childrens.forEach((item, index) => {\n // const uniforms = ((item as Mesh).material as ShaderMaterial).uniforms\n // if (uniforms.height)\n // uniforms.height.value = newValue\n // })\n // }\n }\n\n // Getter and Setter for fenceColor property\n get color(): string {\n return this._color\n }\n\n set color(newValue: string) {\n if (this._color === newValue)\n return\n\n this._color = newValue\n if (this._mesh) {\n // const childrens = this._mesh.children\n // const childrens = this._mesh.children\n // childrens.forEach((item, index) => {\n // const uniforms = ((item as Mesh).material as ShaderMaterial).uniforms\n // if (uniforms.color1) {\n // const { r, g, b } = parseRGBA(hexToRGBA(newValue))\n // const colorTemp = { r: Number((Number(r) / 255).toFixed(4)), g: Number((Number(g) / 255).toFixed(4)), b: Number((Number(b) / 255).toFixed(4)) }\n // uniforms.color1.value = colorTemp\n // }\n\n // // uniforms.color2.value = new Color(newValue)\n // })\n // childrens.forEach((item, index) => {\n const uniforms = ((this._mesh as Mesh).material as ShaderMaterial).uniforms\n if (uniforms.color1) {\n const { r, g, b } = parseRGBA(hexToRGBA(newValue))\n const colorTemp = { r: Number((Number(r) / 255).toFixed(4)), g: Number((Number(g) / 255).toFixed(4)), b: Number((Number(b) / 255).toFixed(4)) }\n uniforms.color1.value = colorTemp\n }\n\n // uniforms.color2.value = new Color(newValue)\n // })\n }\n }\n\n // Getter and Setter for fenceAlpha property\n get alpha(): number {\n return this._alpha\n }\n\n set alpha(newValue: number) {\n if (this._alpha === newValue)\n return\n\n this._alpha = newValue\n if (this._mesh) {\n // const childrens = this._mesh.children\n // childrens.forEach((item, index) => {\n // const uniforms = ((item as Mesh).material as ShaderMaterial).uniforms\n // if (uniforms.alpha)\n // uniforms.alpha.value = newValue\n // })\n // childrens.forEach((item, index) => {\n const uniforms = ((this._mesh as Mesh).material as ShaderMaterial).uniforms\n if (uniforms.alpha)\n uniforms.alpha.value = newValue\n // })\n }\n }\n\n get corner(): number {\n return this._corner\n }\n\n set corner(newValue: number) {\n if (this._corner === newValue)\n return\n\n this._corner = newValue\n }\n\n get close(): boolean {\n return this._close\n }\n\n set close(newValue: boolean) {\n if (this._close === newValue)\n return\n\n this._close = newValue\n }\n\n _initParams(option: FenceOption) {\n this._alpha = option.alpha\n this._corner = option.corner\n this._close = option.close\n this._height = option.height\n this._color = option.color\n this._points = option.points as unknown as Vector3[]\n this._uri = option.uri\n }\n\n public delete() {\n this._mesh.remove()\n this._mesh.removeFromParent()\n }\n\n // 销毁\n public dispose() {\n this.delete()\n this._listeners.clear()\n }\n\n // 注册监听\n public addReloadListener(callback: Function) {\n this._listeners.add(callback)\n }\n}\n\nexport default FenceBase\n"],"mappings":";;;;;;;;;;;;;;AAGA,OAAOA,WAAW;AAElB,SAASC,SAAS,EAAEC,SAAS;AAAiB,IAExCC,SAAS,0BAAAC,YAAA;EAAAC,SAAA,CAAAF,SAAA,EAAAC,YAAA;EAAA,IAAAE,MAAA,GAAAC,YAAA,CAAAJ,SAAA;EAab,SAAAA,UAAYK,MAAmB,EAAEC,aAAuB,EAAE;IAAA,IAAAC,KAAA;IAAAC,eAAA,OAAAR,SAAA;IACxDO,KAAA,GAAAJ,MAAA,CAAAM,IAAA;IAAOC,eAAA,CAAAC,sBAAA,CAAAJ,KAAA;IAAAG,eAAA,CAAAC,sBAAA,CAAAJ,KAAA;IAAAG,eAAA,CAAAC,sBAAA,CAAAJ,KAAA;IAAAG,eAAA,CAAAC,sBAAA,CAAAJ,KAAA;IAAAG,eAAA,CAAAC,sBAAA,CAAAJ,KAAA;IAAAG,eAAA,CAAAC,sBAAA,CAAAJ,KAAA;IAAAG,eAAA,CAAAC,sBAAA,CAAAJ,KAAA;IAAAG,eAAA,CAAAC,sBAAA,CAAAJ,KAAA;IAAAG,eAAA,CAAAC,sBAAA,CAAAJ,KAAA;IAAAG,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,iBAJW,IAAIK,GAAG,CAAC,CAAC;IAAAF,eAAA,CAAAC,sBAAA,CAAAJ,KAAA;IAK3BA,KAAA,CAAKM,OAAO,GAAGR,MAAM;IACrB;IACAE,KAAA,CAAKO,WAAW,CAACT,MAAM,CAAC;IACxBE,KAAA,CAAKD,aAAa,GAAGA,aAAa;IAClC;IAAA,OAAAC,KAAA;EACF;EAACQ,YAAA,CAAAf,SAAA;IAAAgB,GAAA;IAAAC,GAAA,EAED,SAAAA,IAAA,EAAkB;MAChB,OAAO,IAAI,CAACC,KAAK;IACnB;EAAC;IAAAF,GAAA;IAAAC,GAAA,EAED,SAAAA,IAAA,EAAiB;MACf,OAAO,IAAI,CAACE,IAAI;IAClB,CAAC;IAAAC,GAAA,EAED,SAAAA,IAAeC,KAAa,EAAE;MAAA,IAAAC,MAAA;MAC5B,IAAI,IAAI,CAACH,IAAI,KAAKE,KAAK,EACrB;MACF,IAAI,CAACF,IAAI,GAAGE,KAAK;MACjB;MACA,IAAI,CAACE,UAAU,CAACC,OAAO,CAAC,UAACC,EAAY,EAAK;QAAEA,EAAE,CAAChB,IAAI,CAACa,MAAI,CAAChB,aAAa,CAAC;MAAC,CAAC,CAAC;IAC5E;;IAEA;EAAA;IAAAU,GAAA;IAAAC,GAAA,EACA,SAAAA,IAAA,EAAqB;MACnB,OAAO,IAAI,CAACS,OAAO;IACrB,CAAC;IAAAN,GAAA,EAED,SAAAA,IAAWO,QAAgB,EAAE;MAAA,IAAAC,MAAA;MAC3B,IAAI,IAAI,CAACF,OAAO,KAAKC,QAAQ,EAC3B;MAEF,IAAI,CAACD,OAAO,GAAGC,QAAQ;;MAEvB;MACA,IAAI,CAACJ,UAAU,CAACC,OAAO,CAAC,UAACC,EAAY,EAAK;QAAEA,EAAE,CAAChB,IAAI,CAACmB,MAAI,CAACtB,aAAa,CAAC;MAAC,CAAC,CAAC;MAC1E;MACA;MACA;MACA;MACA;MACA;MACA;MACA;IACF;;IAEA;EAAA;IAAAU,GAAA;IAAAC,GAAA,EACA,SAAAA,IAAA,EAAoB;MAClB,OAAO,IAAI,CAACY,MAAM;IACpB,CAAC;IAAAT,GAAA,EAED,SAAAA,IAAUO,QAAgB,EAAE;MAC1B,IAAI,IAAI,CAACE,MAAM,KAAKF,QAAQ,EAC1B;MAEF,IAAI,CAACE,MAAM,GAAGF,QAAQ;MACtB,IAAI,IAAI,CAACT,KAAK,EAAE;QACd;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA,IAAMY,QAAQ,GAAK,IAAI,CAACZ,KAAK,CAAUa,QAAQ,CAAoBD,QAAQ;QAC3E,IAAIA,QAAQ,CAACE,MAAM,EAAE;UACnB,IAAAC,UAAA,GAAoBlC,SAAS,CAACD,SAAS,CAAC6B,QAAQ,CAAC,CAAC;YAA1CO,CAAC,GAAAD,UAAA,CAADC,CAAC;YAAEC,CAAC,GAAAF,UAAA,CAADE,CAAC;YAAEC,CAAC,GAAAH,UAAA,CAADG,CAAC;UACf,IAAMC,SAAS,GAAG;YAAEH,CAAC,EAAEI,MAAM,CAAC,CAACA,MAAM,CAACJ,CAAC,CAAC,GAAG,GAAG,EAAEK,OAAO,CAAC,CAAC,CAAC,CAAC;YAAEJ,CAAC,EAAEG,MAAM,CAAC,CAACA,MAAM,CAACH,CAAC,CAAC,GAAG,GAAG,EAAEI,OAAO,CAAC,CAAC,CAAC,CAAC;YAAEH,CAAC,EAAEE,MAAM,CAAC,CAACA,MAAM,CAACF,CAAC,CAAC,GAAG,GAAG,EAAEG,OAAO,CAAC,CAAC,CAAC;UAAE,CAAC;UAC/IT,QAAQ,CAACE,MAAM,CAACX,KAAK,GAAGgB,SAAS;QACnC;;QAEA;QACA;MACF;IACF;;IAEA;EAAA;IAAArB,GAAA;IAAAC,GAAA,EACA,SAAAA,IAAA,EAAoB;MAClB,OAAO,IAAI,CAACuB,MAAM;IACpB,CAAC;IAAApB,GAAA,EAED,SAAAA,IAAUO,QAAgB,EAAE;MAC1B,IAAI,IAAI,CAACa,MAAM,KAAKb,QAAQ,EAC1B;MAEF,IAAI,CAACa,MAAM,GAAGb,QAAQ;MACtB,IAAI,IAAI,CAACT,KAAK,EAAE;QACd;QACA;QACA;QACA;QACA;QACA;QACA;QACA,IAAMY,QAAQ,GAAK,IAAI,CAACZ,KAAK,CAAUa,QAAQ,CAAoBD,QAAQ;QAC3E,IAAIA,QAAQ,CAACW,KAAK,EAChBX,QAAQ,CAACW,KAAK,CAACpB,KAAK,GAAGM,QAAQ;QACjC;MACF;IACF;EAAC;IAAAX,GAAA;IAAAC,GAAA,EAED,SAAAA,IAAA,EAAqB;MACnB,OAAO,IAAI,CAACyB,OAAO;IACrB,CAAC;IAAAtB,GAAA,EAED,SAAAA,IAAWO,QAAgB,EAAE;MAC3B,IAAI,IAAI,CAACe,OAAO,KAAKf,QAAQ,EAC3B;MAEF,IAAI,CAACe,OAAO,GAAGf,QAAQ;IACzB;EAAC;IAAAX,GAAA;IAAAC,GAAA,EAED,SAAAA,IAAA,EAAqB;MACnB,OAAO,IAAI,CAAC0B,MAAM;IACpB,CAAC;IAAAvB,GAAA,EAED,SAAAA,IAAUO,QAAiB,EAAE;MAC3B,IAAI,IAAI,CAACgB,MAAM,KAAKhB,QAAQ,EAC1B;MAEF,IAAI,CAACgB,MAAM,GAAGhB,QAAQ;IACxB;EAAC;IAAAX,GAAA;IAAAK,KAAA,EAED,SAAAP,YAAYT,MAAmB,EAAE;MAC/B,IAAI,CAACmC,MAAM,GAAGnC,MAAM,CAACoC,KAAK;MAC1B,IAAI,CAACC,OAAO,GAAGrC,MAAM,CAACuC,MAAM;MAC5B,IAAI,CAACD,MAAM,GAAGtC,MAAM,CAACwC,KAAK;MAC1B,IAAI,CAACnB,OAAO,GAAGrB,MAAM,CAACyC,MAAM;MAC5B,IAAI,CAACjB,MAAM,GAAGxB,MAAM,CAAC0C,KAAK;MAC1B,IAAI,CAACC,OAAO,GAAG3C,MAAM,CAAC4C,MAA8B;MACpD,IAAI,CAAC9B,IAAI,GAAGd,MAAM,CAAC6C,GAAG;IACxB;EAAC;IAAAlC,GAAA;IAAAK,KAAA,EAED,SAAA8B,QAAA,EAAgB;MACd,IAAI,CAACjC,KAAK,CAACkC,MAAM,CAAC,CAAC;MACnB,IAAI,CAAClC,KAAK,CAACmC,gBAAgB,CAAC,CAAC;IAC/B;;IAEA;EAAA;IAAArC,GAAA;IAAAK,KAAA,EACA,SAAAiC,QAAA,EAAiB;MACf,IAAI,CAACC,MAAM,CAAC,CAAC;MACb,IAAI,CAAChC,UAAU,CAACiC,KAAK,CAAC,CAAC;IACzB;;IAEA;EAAA;IAAAxC,GAAA;IAAAK,KAAA,EACA,SAAAoC,kBAAyBC,QAAkB,EAAE;MAC3C,IAAI,CAACnC,UAAU,CAACoC,GAAG,CAACD,QAAQ,CAAC;IAC/B;EAAC;EAAA,OAAA1D,SAAA;AAAA,EAxKqBH,WAAW;AA2KnC,eAAeG,SAAS"}
|
|
1
|
+
{"version":3,"names":["ObjectLayer","hexToRGBA","parseRGBA","FenceBase","_ObjectLayer","_inherits","_super","_createSuper","option","_areaInstance","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","Set","_option","_initParams","_createClass","key","get","_mesh","_uri","set","value","_this2","_listeners","forEach","cb","_height","newValue","_this3","_color","uniforms","material","color1","_parseRGBA","r","g","b","colorTemp","Number","toFixed","_alpha","alpha","_corner","_close","corner","close","height","color","_points","points","uri","_delete","remove","removeFromParent","dispose","delete","clear","addReloadListener","callback","add"],"sources":["../../../../src/business/Area/Fence/FenceBase.ts"],"sourcesContent":["import type { Group, Mesh, Object3D, ShaderMaterial, Vector3 } from '@anov/3d-core'\nimport _ from 'lodash'\nimport { Color, use } from '@anov/3d-core'\nimport ObjectLayer from '../../Base/ObjectLayer'\nimport type { FenceOption } from '../type'\nimport { hexToRGBA, parseRGBA } from '../tool'\n\nclass FenceBase extends ObjectLayer {\n public _mesh!: Mesh\n public _height: number\n public _alpha: number\n public _color: string\n public _corner: number\n public _close: boolean\n public _points!: Vector3[]\n public _uri: string\n public _option: FenceOption\n public _listeners = new Set()\n\n private _areaInstance: Object3D\n constructor(option: FenceOption, _areaInstance: Object3D) {\n super()\n this._option = option\n // 属性赋值\n this._initParams(option)\n this._areaInstance = _areaInstance\n // this.setValues(_.mergeWith({}, defaultOption, option))\n }\n\n public get mesh() {\n return this._mesh\n }\n\n public get uri() {\n return this._uri\n }\n\n public set uri(value: string) {\n if (this._uri === value)\n return\n this._uri = value\n // eslint-disable-next-line max-statements-per-line\n this._listeners.forEach((cb: Function) => { cb.call(this._areaInstance) })\n }\n\n // Getter and Setter for fenceHeight property\n get height(): number {\n return this._height\n }\n\n set height(newValue: number) {\n if (this._height === newValue)\n return\n\n this._height = newValue\n\n // eslint-disable-next-line max-statements-per-line\n this._listeners.forEach((cb: Function) => { cb.call(this._areaInstance) })\n // if (this._mesh) {\n // const childrens = this._mesh.children\n // childrens.forEach((item, index) => {\n // const uniforms = ((item as Mesh).material as ShaderMaterial).uniforms\n // if (uniforms.height)\n // uniforms.height.value = newValue\n // })\n // }\n }\n\n // Getter and Setter for fenceColor property\n get color(): string {\n return this._color\n }\n\n set color(newValue: string) {\n if (this._color === newValue)\n return\n\n this._color = newValue\n if (this._mesh) {\n // const childrens = this._mesh.children\n // const childrens = this._mesh.children\n // childrens.forEach((item, index) => {\n // const uniforms = ((item as Mesh).material as ShaderMaterial).uniforms\n // if (uniforms.color1) {\n // const { r, g, b } = parseRGBA(hexToRGBA(newValue))\n // const colorTemp = { r: Number((Number(r) / 255).toFixed(4)), g: Number((Number(g) / 255).toFixed(4)), b: Number((Number(b) / 255).toFixed(4)) }\n // uniforms.color1.value = colorTemp\n // }\n\n // // uniforms.color2.value = new Color(newValue)\n // })\n // childrens.forEach((item, index) => {\n const uniforms = ((this._mesh as Mesh).material as ShaderMaterial).uniforms\n if (uniforms.color1) {\n const { r, g, b } = parseRGBA(hexToRGBA(newValue))\n const colorTemp = { r: Number((Number(r) / 255).toFixed(4)), g: Number((Number(g) / 255).toFixed(4)), b: Number((Number(b) / 255).toFixed(4)) }\n uniforms.color1.value = colorTemp\n }\n\n // uniforms.color2.value = new Color(newValue)\n // })\n }\n }\n\n // Getter and Setter for fenceAlpha property\n get alpha(): number {\n return this._alpha\n }\n\n set alpha(newValue: number) {\n if (this._alpha === newValue)\n return\n\n this._alpha = newValue\n if (this._mesh) {\n // const childrens = this._mesh.children\n // childrens.forEach((item, index) => {\n // const uniforms = ((item as Mesh).material as ShaderMaterial).uniforms\n // if (uniforms.alpha)\n // uniforms.alpha.value = newValue\n // })\n // childrens.forEach((item, index) => {\n const uniforms = ((this._mesh as Mesh).material as ShaderMaterial).uniforms\n if (uniforms.alpha)\n uniforms.alpha.value = newValue\n // })\n }\n }\n\n get corner(): number {\n return this._corner\n }\n\n set corner(newValue: number) {\n if (this._corner === newValue)\n return\n\n this._corner = newValue\n }\n\n get close(): boolean {\n return this._close\n }\n\n set close(newValue: boolean) {\n if (this._close === newValue)\n return\n\n this._close = newValue\n }\n\n _initParams(option: FenceOption) {\n this._alpha = option.alpha\n this._corner = option.corner\n this._close = option.close\n this._height = option.height\n this._color = option.color\n this._points = option.points as unknown as Vector3[]\n this._uri = option.uri\n }\n\n public delete() {\n this._mesh.remove()\n this._mesh.removeFromParent()\n }\n\n // 销毁\n public dispose() {\n this.delete()\n this._listeners.clear()\n }\n\n // 注册监听\n public addReloadListener(callback: Function) {\n this._listeners.add(callback)\n }\n}\n\nexport default FenceBase\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ShaderMaterial","use","createRoundedClosedWallMesh","hexToRGBA","parseRGBA","FenceBase","Fence_Base_01","_FenceBase","_inherits","_super","_createSuper","option","areaInstance","_this","_classCallCheck","call","create","_createClass","key","value","_mesh","createFenceMesh","_points","_corner","_close","_height","_color","_alpha","add","points","radius","arguments","length","undefined","close","height","color","alpha","material","createFenceMaterial","mesh","useframe","uniforms","iTime","_parseRGBA","r","g","b","colorTemp","Number","toFixed","color1","vertexShader","fragmentShader","transparent","side","depthTest","depthWrite"],"sources":["../../../../src/business/Area/
|
|
1
|
+
{"version":3,"names":["ShaderMaterial","use","createRoundedClosedWallMesh","hexToRGBA","parseRGBA","FenceBase","Fence_Base_01","_FenceBase","_inherits","_super","_createSuper","option","areaInstance","_this","_classCallCheck","call","create","_createClass","key","value","_mesh","createFenceMesh","_points","_corner","_close","_height","_color","_alpha","add","points","radius","arguments","length","undefined","close","height","color","alpha","material","createFenceMaterial","mesh","useframe","uniforms","iTime","_parseRGBA","r","g","b","colorTemp","Number","toFixed","color1","vertexShader","fragmentShader","transparent","side","depthTest","depthWrite"],"sources":["../../../../src/business/Area/Fence/fence_base_01.ts"],"sourcesContent":["import type { Mesh, Object3D, Vector3 } from '@anov/3d-core'\nimport { Color, ShaderMaterial, use } from '@anov/3d-core'\nimport { createRoundLineWallMesh, createRoundedClosedWallMesh } from '../../Utils/round-curve'\n\nimport type { FenceOption } from '../type'\nimport { hexToRGBA, parseRGBA } from '../tool'\nimport FenceBase from './FenceBase'\n\nclass Fence_Base_01 extends FenceBase {\n constructor(option: FenceOption, areaInstance: Object3D) {\n super(option, areaInstance)\n this.create()\n }\n\n create() {\n this._mesh = this.createFenceMesh(\n this._points,\n this._corner,\n this._close,\n this._height,\n this._color,\n this._alpha,\n )\n this._mesh && this.add(this._mesh)\n }\n\n // 创建围栏网格对象\n createFenceMesh(points: Vector3[], radius = 0, close = true, height: number, color: string, alpha: number) {\n if (!points)\n return\n\n // 创建围栏使用的材质,调用createFenceMaterial方法生成ShaderMaterial类型的材质\n const material = this.createFenceMaterial(height, color, alpha)\n\n // 使用createRoundLineWallMesh函数创建围栏的网格物体,传入点数组、半径、高度、是否闭合等参数以及创建好的材质\n const mesh = createRoundedClosedWallMesh(\n points,\n {\n radius,\n height,\n close,\n },\n material,\n )\n // const mesh = createRoundLineWallMesh(\n // points,\n // {\n // radius,\n // height,\n // close,\n // },\n // material,\n // )\n use.useframe(() => {\n // mesh.children.forEach((item, index) => {\n // const uniforms = ((item as Mesh).material as ShaderMaterial).uniforms\n // uniforms.iTime.value += 0.01\n // })\n\n const uniforms = ((mesh as Mesh).material as ShaderMaterial).uniforms\n uniforms.iTime.value += 0.01\n })\n return mesh\n }\n\n // 创建围栏材质\n createFenceMaterial(height: number, color: string, alpha: number): ShaderMaterial {\n const { r, g, b } = parseRGBA(hexToRGBA(color))\n const colorTemp = { r: Number((Number(r) / 255).toFixed(4)), g: Number((Number(g) / 255).toFixed(4)), b: Number((Number(b) / 255).toFixed(4)) }\n // 创建一个ShaderMaterial实例,用于自定义围栏的渲染效果\n const material = new ShaderMaterial({\n uniforms: {\n // 材质颜色\n color1: {\n value: colorTemp,\n }, // 材质颜色2,用于渐变\n _alpha: { value: alpha },\n _height: { value: height },\n iTime: { value: 0.0 },\n },\n // 顶点着色器\n vertexShader: `\n #include <common>\n #include <logdepthbuf_pars_vertex>\n varying vec3 vNormal; // 用于传递法线方向\n varying vec2 vUv;\n varying vec3 vWorldPosition;\n void main() {\n #include <begin_vertex>\n #include <project_vertex>\n #include <logdepthbuf_vertex>\n // gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\n vUv = uv;\n vNormal = normalize(mat3(modelMatrix) * normal); // 使用模型矩阵旋转法线\n vec4 modelPosition = modelMatrix * vec4(position, 1.0);\n vWorldPosition = modelPosition.xyz;\n gl_Position = projectionMatrix * viewMatrix * modelPosition;\n }\n `,\n // 片元着色器\n fragmentShader: `\n #include <common>\n #include <logdepthbuf_pars_fragment>\n varying vec3 vNormal; //\n varying vec2 vUv;\n varying vec3 vWorldPosition;\n // uniform float button;\n uniform float _height;\n uniform float iTime;\n uniform float _alpha;\n uniform vec3 color1;\n \n void main() {\n vec3 color2=vec3(0.,0.4235,0.749);\n #include <logdepthbuf_fragment>\n // float height = 50.;\n float button = 0.;\n vec3 myWp=(vWorldPosition-button)/_height; \n gl_FragColor = vec4(color1,pow(1.-clamp(myWp.y,0.,1.),2.))*_alpha *step(button,myWp.y);\n \n }\n `,\n // 设置材质为透明\n transparent: true,\n // 设置材质双面渲染,确保从正反两面都能正确显示\n side: 2,\n // 关闭深度测试\n depthTest: true,\n depthWrite: false,\n })\n\n return material\n }\n}\n\nexport default Fence_Base_01\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ShaderMaterial","use","createRoundedClosedWallMesh","hexToRGBA","parseRGBA","FenceBase","Fence_Feeting_01","_FenceBase","_inherits","_super","_createSuper","option","areaInstance","_this","_classCallCheck","call","create","_createClass","key","value","_mesh","createFenceMesh","_points","_corner","_close","_height","_color","_alpha","add","points","radius","arguments","length","undefined","close","height","color","alpha","material","createFenceMaterial","mesh","useframe","uniforms","iTime","_parseRGBA","r","g","b","colorTemp","Number","toFixed","color1","vertexShader","fragmentShader","transparent","side","depthTest","depthWrite"],"sources":["../../../../src/business/Area/fence/fence_feeting_01.ts"],"sourcesContent":["import type { Mesh, Object3D, Vector3 } from '@anov/3d-core'\nimport { Color, ShaderMaterial, use } from '@anov/3d-core'\n\nimport { createRoundLineWallMesh, createRoundedClosedWallMesh } from '../../Utils/round-curve'\nimport type { FenceOption } from '../type'\nimport { hexToRGBA, parseRGBA } from '../tool'\nimport FenceBase from './FenceBase'\n\nclass Fence_Feeting_01 extends FenceBase {\n constructor(option: FenceOption, areaInstance: Object3D) {\n super(option, areaInstance)\n this.create()\n }\n\n create() {\n this._mesh = this.createFenceMesh(\n this._points,\n this._corner,\n this._close,\n this._height,\n this._color,\n this._alpha,\n )\n this._mesh && this.add(this._mesh)\n }\n\n // 创建围栏网格对象\n createFenceMesh(points: Vector3[], radius = 0, close = true, height: number, color: string, alpha: number) {\n if (!points)\n return\n // 创建围栏使用的材质,调用createFenceMaterial方法生成ShaderMaterial类型的材质\n const material = this.createFenceMaterial(height, color, alpha)\n\n // 使用createRoundLineWallMesh函数创建围栏的网格物体,传入点数组、半径、高度、是否闭合等参数以及创建好的材质\n const mesh = createRoundedClosedWallMesh(\n points,\n {\n radius,\n height,\n close,\n },\n material,\n )\n // const mesh = createRoundLineWallMesh(\n // points,\n // {\n // radius,\n // height,\n // close,\n // },\n // material,\n // )\n use.useframe(() => {\n // mesh.children.forEach((item, index) => {\n // const uniforms = ((item as Mesh).material as ShaderMaterial).uniforms\n // uniforms.iTime.value += 0.01\n // })\n\n const uniforms = ((mesh as Mesh).material as ShaderMaterial).uniforms\n uniforms.iTime.value += 0.002\n })\n // 创建围栏使用的材质,调用createFenceMaterial方法生成ShaderMaterial类型的材质\n // const material = this.createFenceMaterial(height, color, alpha)\n // // 使用createRoundLineWallMesh函数创建围栏的网格物体,传入点数组、半径、高度、是否闭合等参数以及创建好的材质\n // const mesh = createRoundLineWallMesh(\n // points,\n // {\n // radius,\n // height,\n // close,\n // },\n // material,\n // )\n // use.useframe(() => {\n // mesh.children.forEach((item, index) => {\n // const uniforms = ((item as Mesh).material as ShaderMaterial).uniforms\n // uniforms.iTime.value += 0.002\n // })\n // })\n return mesh\n }\n\n // 创建围栏材质\n createFenceMaterial(height: number, color: string, alpha: number): ShaderMaterial {\n const { r, g, b } = parseRGBA(hexToRGBA(color))\n const colorTemp = { r: Number((Number(r) / 255).toFixed(4)), g: Number((Number(g) / 255).toFixed(4)), b: Number((Number(b) / 255).toFixed(4)) }\n // 创建一个ShaderMaterial实例,用于自定义围栏的渲染效果\n const material = new ShaderMaterial({\n uniforms: {\n // 材质颜色\n color1: {\n value: colorTemp,\n }, // 材质颜色2,用于渐变\n _alpha: { value: alpha },\n _height: { value: height },\n iTime: { value: 0.0 },\n },\n // 顶点着色器\n vertexShader: `\n #include <common>\n #include <logdepthbuf_pars_vertex>\n varying vec3 vNormal; // 用于传递法线方向\n varying vec2 vUv;\n varying vec3 vWorldPosition;\n void main() {\n \t#include <begin_vertex>\n #include <project_vertex>\n #include <logdepthbuf_vertex>\n // gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\n vUv = uv;\n vNormal = normalize(mat3(modelMatrix) * normal); // 使用模型矩阵旋转法线\n vec4 modelPosition = modelMatrix * vec4(position, 1.0);\n vWorldPosition = modelPosition.xyz;\n gl_Position = projectionMatrix * viewMatrix * modelPosition;\n }\n `,\n // 片元着色器\n fragmentShader: `\n #include <common>\n #include <logdepthbuf_pars_fragment>\n varying vec3 vNormal; // 用于传递法线方向\n varying vec2 vUv;\n varying vec3 vWorldPosition;\n \n uniform float _alpha;\n uniform float _height;\n uniform vec3 color1;\n uniform float iTime;\n \n\n\nconst int largeBlockCount = 80;\nconst int smallBlockCount = 20;\nconst int layerBlockCount = 10; // 添加的两层方块\n\nconst float largeBlockSpeed = .10;\nconst float smallBlockSpeed = .20;\nconst float layerBlockSpeed = .15; // 层的浮动速度\n\nconst float largeBlockSizeMin = 0.002;\nconst float largeBlockSizeMax = 0.03;\nconst float smallBlockSizeMin = 0.003;\nconst float smallBlockSizeMax = 0.008;\nconst float layerBlockSizeMin = 0.005;\nconst float layerBlockSizeMax = 0.01; // 两层方块的大小范围\n\nconst vec3 largeBlockColor = vec3(0.3, 0.2, 0.3);\nconst vec3 smallBlockColor = vec3(0.7, 0.6, 0.9);\nconst vec3 layerBlockColor = vec3(0.9, 0.7, 0.5); // 新增层的颜色\n\nfloat hash11(float p) {\nreturn fract(sin(p) * 43758.5453);\n}\n\nvec4 mainImage( vec2 uv) {\n// vec2 uv = fragCoord.xy / iResolution.xy;\nvec3 color = vec3(0.0, 0.0, 0.0); // Background color\n\n// Large blocks\nfor (int i = 0; i < largeBlockCount; ++i) {\n float id = float(i);\n vec2 randomPos = vec2(hash11(id + 0.1), hash11(id + 0.2));\n randomPos = fract(randomPos + vec2(0.,iTime * largeBlockSpeed)); // Float upwards with time\n\n float blockSize = mix(largeBlockSizeMin, largeBlockSizeMax, hash11(id));\n\n vec2 dist = abs(uv - randomPos);\n float inside = step(dist.x, blockSize) * step(dist.y, blockSize);\n color = mix(color, largeBlockColor, inside);\n}\n\n// Small blocks\nfor (int i = 0; i < smallBlockCount; ++i) {\n float id = float(i + largeBlockCount); // Offset for unique small block IDs\n vec2 randomPos = vec2(hash11(id + 0.1), hash11(id + 0.2));\n randomPos = fract(randomPos + vec2(0.,iTime * smallBlockSpeed)); // Float upwards with time\n\n float blockSize = mix(smallBlockSizeMin, smallBlockSizeMax, hash11(id));\n\n vec2 dist = abs(uv - randomPos);\n float inside = step(dist.x, blockSize) * step(dist.y, blockSize+hash11(id )*0.01);\n color = mix(color, smallBlockColor, inside);\n}\n\n// Layer blocks\nfor (int i = 0; i < layerBlockCount; ++i) {\n float id = float(i + largeBlockCount + smallBlockCount); // Offset for unique layer block IDs\n vec2 randomPos = vec2(hash11(id + 0.1), hash11(id + 0.2));\n randomPos = fract(randomPos + vec2(0.,iTime * layerBlockSpeed)); // Float upwards with time\n\n // Randomize the size with a slight stretch for length/width variation\n float blockSizeX = mix(layerBlockSizeMin, layerBlockSizeMax, hash11(id));\n float blockSizeY = blockSizeX * (0.8 + 0.4 * hash11(id + 0.3)); // Randomize aspect ratio\n\n vec2 dist = abs(uv - randomPos);\n float inside = step(dist.x, blockSizeX+hash11(id )*0.02) * step(dist.y, blockSizeY);\n color = mix(color, layerBlockColor, inside);\n}\n return vec4(color, 1.0);\n\n}\n\n void main() {\n #include <logdepthbuf_fragment>\n // float height = 50.;\n float button = 0.;\n vec3 myWp=(vWorldPosition-button)/_height; \n gl_FragColor = vec4(color1,pow(1.-clamp(myWp.y,0.,1.),2.)) *step(button,myWp.y);///0.6,0.1,0.01\n \n if (abs(vNormal.x) > 0.99) { \n gl_FragColor =mix(gl_FragColor,vec4(color1+vec3(0.2,0.7,0.2),1.*myWp.y) ,mainImage(fract(myWp.zy)).x *pow(gl_FragColor.a,.1) ); /////vec4(0.9,0.8,0.3,1.)\n }\n if (abs(vNormal.z) > 0.99) { \n gl_FragColor =mix(gl_FragColor,vec4(color1+vec3(0.2,0.7,0.2),1.*myWp.y) ,mainImage(fract(myWp.xy)).x *pow(gl_FragColor.a,.1) ); \n }\n gl_FragColor.a *= _alpha;\n\n }\n `,\n // 设置材质为透明\n transparent: true,\n // 设置材质双面渲染,确保从正反两面都能正确显示\n side: 2,\n // 关闭深度测试\n depthTest: true,\n depthWrite: false,\n })\n return material\n }\n}\n\nexport default Fence_Feeting_01\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["ShaderMaterial","use","createRoundedClosedWallMesh","hexToRGBA","parseRGBA","FenceBase","Fence_Feeting_01","_FenceBase","_inherits","_super","_createSuper","option","areaInstance","_this","_classCallCheck","call","create","_createClass","key","value","_mesh","createFenceMesh","_points","_corner","_close","_height","_color","_alpha","add","points","radius","arguments","length","undefined","close","height","color","alpha","material","createFenceMaterial","mesh","useframe","uniforms","iTime","_parseRGBA","r","g","b","colorTemp","Number","toFixed","color1","vertexShader","fragmentShader","transparent","side","depthTest","depthWrite"],"sources":["../../../../src/business/Area/Fence/fence_feeting_01.ts"],"sourcesContent":["import type { Mesh, Object3D, Vector3 } from '@anov/3d-core'\nimport { Color, ShaderMaterial, use } from '@anov/3d-core'\n\nimport { createRoundLineWallMesh, createRoundedClosedWallMesh } from '../../Utils/round-curve'\nimport type { FenceOption } from '../type'\nimport { hexToRGBA, parseRGBA } from '../tool'\nimport FenceBase from './FenceBase'\n\nclass Fence_Feeting_01 extends FenceBase {\n constructor(option: FenceOption, areaInstance: Object3D) {\n super(option, areaInstance)\n this.create()\n }\n\n create() {\n this._mesh = this.createFenceMesh(\n this._points,\n this._corner,\n this._close,\n this._height,\n this._color,\n this._alpha,\n )\n this._mesh && this.add(this._mesh)\n }\n\n // 创建围栏网格对象\n createFenceMesh(points: Vector3[], radius = 0, close = true, height: number, color: string, alpha: number) {\n if (!points)\n return\n // 创建围栏使用的材质,调用createFenceMaterial方法生成ShaderMaterial类型的材质\n const material = this.createFenceMaterial(height, color, alpha)\n\n // 使用createRoundLineWallMesh函数创建围栏的网格物体,传入点数组、半径、高度、是否闭合等参数以及创建好的材质\n const mesh = createRoundedClosedWallMesh(\n points,\n {\n radius,\n height,\n close,\n },\n material,\n )\n // const mesh = createRoundLineWallMesh(\n // points,\n // {\n // radius,\n // height,\n // close,\n // },\n // material,\n // )\n use.useframe(() => {\n // mesh.children.forEach((item, index) => {\n // const uniforms = ((item as Mesh).material as ShaderMaterial).uniforms\n // uniforms.iTime.value += 0.01\n // })\n\n const uniforms = ((mesh as Mesh).material as ShaderMaterial).uniforms\n uniforms.iTime.value += 0.002\n })\n // 创建围栏使用的材质,调用createFenceMaterial方法生成ShaderMaterial类型的材质\n // const material = this.createFenceMaterial(height, color, alpha)\n // // 使用createRoundLineWallMesh函数创建围栏的网格物体,传入点数组、半径、高度、是否闭合等参数以及创建好的材质\n // const mesh = createRoundLineWallMesh(\n // points,\n // {\n // radius,\n // height,\n // close,\n // },\n // material,\n // )\n // use.useframe(() => {\n // mesh.children.forEach((item, index) => {\n // const uniforms = ((item as Mesh).material as ShaderMaterial).uniforms\n // uniforms.iTime.value += 0.002\n // })\n // })\n return mesh\n }\n\n // 创建围栏材质\n createFenceMaterial(height: number, color: string, alpha: number): ShaderMaterial {\n const { r, g, b } = parseRGBA(hexToRGBA(color))\n const colorTemp = { r: Number((Number(r) / 255).toFixed(4)), g: Number((Number(g) / 255).toFixed(4)), b: Number((Number(b) / 255).toFixed(4)) }\n // 创建一个ShaderMaterial实例,用于自定义围栏的渲染效果\n const material = new ShaderMaterial({\n uniforms: {\n // 材质颜色\n color1: {\n value: colorTemp,\n }, // 材质颜色2,用于渐变\n _alpha: { value: alpha },\n _height: { value: height },\n iTime: { value: 0.0 },\n },\n // 顶点着色器\n vertexShader: `\n #include <common>\n #include <logdepthbuf_pars_vertex>\n varying vec3 vNormal; // 用于传递法线方向\n varying vec2 vUv;\n varying vec3 vWorldPosition;\n void main() {\n \t#include <begin_vertex>\n #include <project_vertex>\n #include <logdepthbuf_vertex>\n // gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\n vUv = uv;\n vNormal = normalize(mat3(modelMatrix) * normal); // 使用模型矩阵旋转法线\n vec4 modelPosition = modelMatrix * vec4(position, 1.0);\n vWorldPosition = modelPosition.xyz;\n gl_Position = projectionMatrix * viewMatrix * modelPosition;\n }\n `,\n // 片元着色器\n fragmentShader: `\n #include <common>\n #include <logdepthbuf_pars_fragment>\n varying vec3 vNormal; // 用于传递法线方向\n varying vec2 vUv;\n varying vec3 vWorldPosition;\n \n uniform float _alpha;\n uniform float _height;\n uniform vec3 color1;\n uniform float iTime;\n \n\n\nconst int largeBlockCount = 80;\nconst int smallBlockCount = 20;\nconst int layerBlockCount = 10; // 添加的两层方块\n\nconst float largeBlockSpeed = .10;\nconst float smallBlockSpeed = .20;\nconst float layerBlockSpeed = .15; // 层的浮动速度\n\nconst float largeBlockSizeMin = 0.002;\nconst float largeBlockSizeMax = 0.03;\nconst float smallBlockSizeMin = 0.003;\nconst float smallBlockSizeMax = 0.008;\nconst float layerBlockSizeMin = 0.005;\nconst float layerBlockSizeMax = 0.01; // 两层方块的大小范围\n\nconst vec3 largeBlockColor = vec3(0.3, 0.2, 0.3);\nconst vec3 smallBlockColor = vec3(0.7, 0.6, 0.9);\nconst vec3 layerBlockColor = vec3(0.9, 0.7, 0.5); // 新增层的颜色\n\nfloat hash11(float p) {\nreturn fract(sin(p) * 43758.5453);\n}\n\nvec4 mainImage( vec2 uv) {\n// vec2 uv = fragCoord.xy / iResolution.xy;\nvec3 color = vec3(0.0, 0.0, 0.0); // Background color\n\n// Large blocks\nfor (int i = 0; i < largeBlockCount; ++i) {\n float id = float(i);\n vec2 randomPos = vec2(hash11(id + 0.1), hash11(id + 0.2));\n randomPos = fract(randomPos + vec2(0.,iTime * largeBlockSpeed)); // Float upwards with time\n\n float blockSize = mix(largeBlockSizeMin, largeBlockSizeMax, hash11(id));\n\n vec2 dist = abs(uv - randomPos);\n float inside = step(dist.x, blockSize) * step(dist.y, blockSize);\n color = mix(color, largeBlockColor, inside);\n}\n\n// Small blocks\nfor (int i = 0; i < smallBlockCount; ++i) {\n float id = float(i + largeBlockCount); // Offset for unique small block IDs\n vec2 randomPos = vec2(hash11(id + 0.1), hash11(id + 0.2));\n randomPos = fract(randomPos + vec2(0.,iTime * smallBlockSpeed)); // Float upwards with time\n\n float blockSize = mix(smallBlockSizeMin, smallBlockSizeMax, hash11(id));\n\n vec2 dist = abs(uv - randomPos);\n float inside = step(dist.x, blockSize) * step(dist.y, blockSize+hash11(id )*0.01);\n color = mix(color, smallBlockColor, inside);\n}\n\n// Layer blocks\nfor (int i = 0; i < layerBlockCount; ++i) {\n float id = float(i + largeBlockCount + smallBlockCount); // Offset for unique layer block IDs\n vec2 randomPos = vec2(hash11(id + 0.1), hash11(id + 0.2));\n randomPos = fract(randomPos + vec2(0.,iTime * layerBlockSpeed)); // Float upwards with time\n\n // Randomize the size with a slight stretch for length/width variation\n float blockSizeX = mix(layerBlockSizeMin, layerBlockSizeMax, hash11(id));\n float blockSizeY = blockSizeX * (0.8 + 0.4 * hash11(id + 0.3)); // Randomize aspect ratio\n\n vec2 dist = abs(uv - randomPos);\n float inside = step(dist.x, blockSizeX+hash11(id )*0.02) * step(dist.y, blockSizeY);\n color = mix(color, layerBlockColor, inside);\n}\n return vec4(color, 1.0);\n\n}\n\n void main() {\n #include <logdepthbuf_fragment>\n // float height = 50.;\n float button = 0.;\n vec3 myWp=(vWorldPosition-button)/_height; \n gl_FragColor = vec4(color1,pow(1.-clamp(myWp.y,0.,1.),2.)) *step(button,myWp.y);///0.6,0.1,0.01\n \n if (abs(vNormal.x) > 0.99) { \n gl_FragColor =mix(gl_FragColor,vec4(color1+vec3(0.2,0.7,0.2),1.*myWp.y) ,mainImage(fract(myWp.zy)).x *pow(gl_FragColor.a,.1) ); /////vec4(0.9,0.8,0.3,1.)\n }\n if (abs(vNormal.z) > 0.99) { \n gl_FragColor =mix(gl_FragColor,vec4(color1+vec3(0.2,0.7,0.2),1.*myWp.y) ,mainImage(fract(myWp.xy)).x *pow(gl_FragColor.a,.1) ); \n }\n gl_FragColor.a *= _alpha;\n\n }\n `,\n // 设置材质为透明\n transparent: true,\n // 设置材质双面渲染,确保从正反两面都能正确显示\n side: 2,\n // 关闭深度测试\n depthTest: true,\n depthWrite: false,\n })\n return material\n }\n}\n\nexport default Fence_Feeting_01\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ShaderMaterial","use","createRoundedClosedWallMesh","hexToRGBA","parseRGBA","FenceBase","Fence_Roll_01","_FenceBase","_inherits","_super","_createSuper","option","areaInstance","_this","_classCallCheck","call","create","_createClass","key","value","_mesh","createFenceMesh","_points","_corner","_close","_height","_color","_alpha","add","points","radius","arguments","length","undefined","close","height","color","alpha","material","createFenceMaterial","mesh","useframe","uniforms","iTime","_parseRGBA","r","g","b","colorTemp","Number","toFixed","color1","vertexShader","fragmentShader","transparent","side","depthTest","depthWrite"],"sources":["../../../../src/business/Area/
|
|
1
|
+
{"version":3,"names":["ShaderMaterial","use","createRoundedClosedWallMesh","hexToRGBA","parseRGBA","FenceBase","Fence_Roll_01","_FenceBase","_inherits","_super","_createSuper","option","areaInstance","_this","_classCallCheck","call","create","_createClass","key","value","_mesh","createFenceMesh","_points","_corner","_close","_height","_color","_alpha","add","points","radius","arguments","length","undefined","close","height","color","alpha","material","createFenceMaterial","mesh","useframe","uniforms","iTime","_parseRGBA","r","g","b","colorTemp","Number","toFixed","color1","vertexShader","fragmentShader","transparent","side","depthTest","depthWrite"],"sources":["../../../../src/business/Area/Fence/fence_roll_01.ts"],"sourcesContent":["import type { Mesh, Object3D, Vector3 } from '@anov/3d-core'\nimport { Color, ShaderMaterial, use } from '@anov/3d-core'\nimport { createRoundLineWallMesh, createRoundedClosedWallMesh } from '../../Utils/round-curve'\nimport type { FenceOption } from '../type'\nimport { hexToRGBA, parseRGBA } from '../tool'\nimport FenceBase from './FenceBase'\n\nclass Fence_Roll_01 extends FenceBase {\n constructor(option: FenceOption, areaInstance: Object3D) {\n super(option, areaInstance)\n this.create()\n }\n\n create() {\n this._mesh = this.createFenceMesh(\n this._points,\n this._corner,\n this._close,\n this._height,\n this._color,\n this._alpha,\n )\n this._mesh && this.add(this._mesh)\n }\n\n // 创建围栏网格对象\n createFenceMesh(points: Vector3[], radius = 0, close = true, height: number, color: string, alpha: number) {\n if (!points)\n return\n // 创建围栏使用的材质,调用createFenceMaterial方法生成ShaderMaterial类型的材质\n const material = this.createFenceMaterial(height, color, alpha)\n\n // 使用createRoundLineWallMesh函数创建围栏的网格物体,传入点数组、半径、高度、是否闭合等参数以及创建好的材质\n const mesh = createRoundedClosedWallMesh(\n points,\n {\n radius,\n height,\n close,\n },\n material,\n )\n // const mesh = createRoundLineWallMesh(\n // points,\n // {\n // radius,\n // height,\n // close,\n // },\n // material,\n // )\n use.useframe(() => {\n // mesh.children.forEach((item, index) => {\n // const uniforms = ((item as Mesh).material as ShaderMaterial).uniforms\n // uniforms.iTime.value += 0.01\n // })\n\n const uniforms = ((mesh as Mesh).material as ShaderMaterial).uniforms\n uniforms.iTime.value += 0.002\n })\n\n // // 创建围栏使用的材质,调用createFenceMaterial方法生成ShaderMaterial类型的材质\n // const material = this.createFenceMaterial(height, color, alpha)\n // // 使用createRoundLineWallMesh函数创建围栏的网格物体,传入点数组、半径、高度、是否闭合等参数以及创建好的材质\n // const mesh = createRoundLineWallMesh(\n // points,\n // {\n // radius,\n // height,\n // close,\n // },\n // material,\n // )\n // use.useframe(() => {\n // mesh.children.forEach((item, index) => {\n // const uniforms = ((item as Mesh).material as ShaderMaterial).uniforms\n // uniforms.iTime.value += 0.002\n // })\n // })\n return mesh\n }\n\n // 创建围栏材质\n createFenceMaterial(height: number, color: string, alpha: number): ShaderMaterial {\n const { r, g, b } = parseRGBA(hexToRGBA(color))\n const colorTemp = { r: Number((Number(r) / 255).toFixed(4)), g: Number((Number(g) / 255).toFixed(4)), b: Number((Number(b) / 255).toFixed(4)) }\n // 创建一个ShaderMaterial实例,用于自定义围栏的渲染效果\n const material = new ShaderMaterial({\n uniforms: {\n // 材质颜色\n color1: {\n value: colorTemp,\n }, // 材质颜色2,用于渐变\n _alpha: { value: alpha },\n _height: { value: height },\n iTime: { value: 0.0 },\n },\n // 顶点着色器\n vertexShader: `\n #include <common>\n #include <logdepthbuf_pars_vertex>\n varying vec3 vNormal; // 用于传递法线方向\n varying vec2 vUv;\n varying vec3 vWorldPosition;\n void main() {\n \t#include <begin_vertex>\n #include <project_vertex>\n #include <logdepthbuf_vertex>\n // gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\n vUv = uv;\n vNormal = normalize(mat3(modelMatrix) * normal); // 使用模型矩阵旋转法线\n vec4 modelPosition = modelMatrix * vec4(position, 1.0);\n vWorldPosition = modelPosition.xyz;\n gl_Position = projectionMatrix * viewMatrix * modelPosition;\n }\n `,\n // 片元着色器\n fragmentShader: `\n #include <common>\n #include <logdepthbuf_pars_fragment>\n varying vec3 vNormal; //\n varying vec2 vUv;\n varying vec3 vWorldPosition;\n // uniform float button;\n uniform float _height;\n uniform float iTime;\n uniform float _alpha;\n uniform vec3 color1;\n \n void main() {\n #include <logdepthbuf_fragment>\n // float height = 50.;\n float button = 0.;\n vec3 myWp=(vWorldPosition-button)/_height; \n vec3 myWp_s=(vWorldPosition-button)*3./_height; \n float Grandient= pow(1.-clamp(myWp.y,0.,1.),1.5); \n float Grandient_s= pow(1.-fract(myWp_s.y-iTime),0.4); \n gl_FragColor = vec4(color1,Grandient*Grandient_s*(0.8+sin(iTime*5.0)*0.3) ) *_alpha *step(button,myWp.y);\n \n }\n `,\n // 设置材质为透明\n transparent: true,\n // 设置材质双面渲染,确保从正反两面都能正确显示\n side: 2,\n // 关闭深度测试\n depthTest: true,\n depthWrite: false,\n })\n return material\n }\n}\n\nexport default Fence_Roll_01\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Color","ObjectLayer","FillAreaBase","_ObjectLayer","_inherits","_super","_createSuper","option","areaInstance","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","Set","_option","_initParams","_areaInstance","_createClass","key","get","_mesh","_uri","set","value","_this2","_listeners","forEach","cb","_alpha","newValue","material","opacity","_color","color","_corner","_close","alpha","close","corner","_points","points","uri","_delete","remove","removeFromParent","dispose","delete","clear","addReloadListener","callback","add"],"sources":["../../../../src/business/Area/
|
|
1
|
+
{"version":3,"names":["Color","ObjectLayer","FillAreaBase","_ObjectLayer","_inherits","_super","_createSuper","option","areaInstance","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","Set","_option","_initParams","_areaInstance","_createClass","key","get","_mesh","_uri","set","value","_this2","_listeners","forEach","cb","_alpha","newValue","material","opacity","_color","color","_corner","_close","alpha","close","corner","_points","points","uri","_delete","remove","removeFromParent","dispose","delete","clear","addReloadListener","callback","add"],"sources":["../../../../src/business/Area/FillArea/FillAreaBase.ts"],"sourcesContent":["import type { Line2, Mesh, MeshBasicMaterial, Object3D, Vector3 } from '@anov/3d-core'\nimport { Color } from '@anov/3d-core'\n\nimport _ from 'lodash'\nimport ObjectLayer from '../../Base/ObjectLayer'\nimport type { FillAreaOption } from '../type'\n\nclass FillAreaBase extends ObjectLayer {\n public _mesh!: Mesh | Line2\n public _alpha: number\n public _color: string\n public _corner: number\n public _close: boolean\n public _points!: Vector3[]\n public _uri: string\n public _option: FillAreaOption\n public _listeners = new Set()\n\n private _areaInstance: Object3D\n\n constructor(option: FillAreaOption, areaInstance: Object3D) {\n super()\n this._option = option\n // 属性赋值\n this._initParams(option)\n this._areaInstance = areaInstance\n // 属性赋值\n // this.setValues(_.mergeWith({}, defaultOption, option))\n }\n\n public get mesh() {\n return this._mesh\n }\n\n public get uri() {\n return this._uri\n }\n\n public set uri(value: string) {\n if (this._uri === value)\n return\n this._uri = value\n // eslint-disable-next-line max-statements-per-line\n this._listeners.forEach((cb: Function) => { cb.call(this._areaInstance) })\n }\n\n // Getter and Setter for alpha property\n get alpha(): number {\n return this._alpha\n }\n\n set alpha(newValue: number) {\n if (this._alpha === newValue)\n return\n\n this._alpha = newValue\n if (this._mesh)\n (this._mesh.material as MeshBasicMaterial).opacity = newValue\n }\n\n // Getter and Setter for color property\n get color(): string {\n return this._color\n }\n\n set color(newValue: string) {\n if (this._color === newValue)\n return\n\n this._color = newValue\n if (this._mesh)\n (this._mesh.material as MeshBasicMaterial).color = new Color(newValue)\n }\n\n get corner(): number {\n return this._corner\n }\n\n set corner(newValue: number) {\n if (this._corner === newValue)\n return\n\n this._corner = newValue\n }\n\n get close(): boolean {\n return this._close\n }\n\n set close(newValue: boolean) {\n if (this._close === newValue)\n return\n\n this._close = newValue\n }\n\n _initParams(option: FillAreaOption) {\n this._alpha = option.alpha\n this._color = option.color\n this._close = option.close\n this._corner = option.corner\n this._points = option.points as unknown as Vector3[]\n this._uri = option.uri\n }\n\n public delete() {\n this._mesh.remove()\n this._mesh.removeFromParent()\n }\n\n // 销毁\n public dispose() {\n this.delete()\n this._listeners.clear()\n }\n\n // 注册监听\n public addReloadListener(callback: Function) {\n this._listeners.add(callback)\n }\n}\n\nexport default FillAreaBase"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Color","ExtrudeGeometry","Mesh","MeshBasicMaterial","Shape","Vector2","createRoundedClosedCurve","FillAreaBase","FillArea_Face_01","_FillAreaBase","_inherits","_super","_createSuper","option","areaInstance","_this","_classCallCheck","call","create","_createClass","key","value","_mesh","createMesh","_points","_color","_alpha","add","points","color","alpha","material","transparent","opacity","side","curvePath","_corner","_close","pathPoints","getPoints","points2D","map","p","x","z","shape","extrudeSettings","steps","bevelEnabled","depth","extrudePath","undefined","geometry","mesh","rotateX","Math","PI"],"sources":["../../../../src/business/Area/
|
|
1
|
+
{"version":3,"names":["Color","ExtrudeGeometry","Mesh","MeshBasicMaterial","Shape","Vector2","createRoundedClosedCurve","FillAreaBase","FillArea_Face_01","_FillAreaBase","_inherits","_super","_createSuper","option","areaInstance","_this","_classCallCheck","call","create","_createClass","key","value","_mesh","createMesh","_points","_color","_alpha","add","points","color","alpha","material","transparent","opacity","side","curvePath","_corner","_close","pathPoints","getPoints","points2D","map","p","x","z","shape","extrudeSettings","steps","bevelEnabled","depth","extrudePath","undefined","geometry","mesh","rotateX","Math","PI"],"sources":["../../../../src/business/Area/FillArea/fillArea_face_01.ts"],"sourcesContent":["import type { Object3D, Vector3 } from '@anov/3d-core'\nimport { Color, ExtrudeGeometry, Mesh, MeshBasicMaterial, Shape, Vector2 } from '@anov/3d-core'\nimport * as THREE from '@anov/3d-core'\nimport type { FillAreaOption } from '../type'\nimport { RoundLineGeometry, createRoundedClosedCurve } from '../../Utils/round-curve'\nimport FillAreaBase from './FillAreaBase'\n\nclass FillArea_Face_01 extends FillAreaBase {\n constructor(option: FillAreaOption, areaInstance: Object3D) {\n super(option, areaInstance)\n this.create()\n }\n\n create() {\n this._mesh = this.createMesh(this._points, this._color, this._alpha)\n this._mesh && this.add(this._mesh)\n }\n\n createMesh(points: Vector3[], color: string, alpha: number) {\n if (!points)\n return\n\n // 创建材质\n const material = new MeshBasicMaterial({ color: new Color(color), transparent: true, opacity: alpha, side: 2 })\n // // 创建一个Shape对象,用于定义填充区域的平面形状\n // const shape = new Shape()\n // // 将第一个点的x、z坐标作为Shape的起始位置\n // shape.moveTo(points[0].x, points[0].z)\n\n // // 遍历剩余的点,依次将它们的x、z坐标连接起来,构成封闭的平面形状\n // for (let i = 1; i < points.length; i++)\n // shape.lineTo(points[i].x, points[i].z)\n // // 闭合形状路径,确保形状是封闭的,以便后续挤出操作生成正确的几何体\n // shape.closePath()\n // const roundLineGeometry = new RoundLineGeometry(points, { radius: this._corner, close: this._close })\n // const curve = roundLineGeometry.curve\n const curvePath = createRoundedClosedCurve(points, this._corner, this._close)\n const pathPoints = curvePath.getPoints(1000)\n // const currentPoints = curve.getPoints(1000)\n const points2D = pathPoints.map((p: any) => new Vector2(p.x, p.z))\n // 创建一个Shape并添加封闭路径\n const shape = new Shape(points2D)\n // 定义挤出几何体的基本设置,包括步数、是否启用斜角、挤出深度以及挤出路径等\n const extrudeSettings = {\n steps: 100,\n bevelEnabled: false,\n depth: 1,\n extrudePath: undefined,\n }\n\n // 生成填充区域的几何体\n const geometry = new ExtrudeGeometry(shape, extrudeSettings)\n // 生成填充区域的网格物体\n const mesh = new Mesh(geometry, material)\n // 将填充区域的网格物体绕x轴旋转90度\n mesh.rotateX(Math.PI / 2)\n\n return mesh\n }\n\n // Getter and Setter for fenceColor property\n // get color(): string {\n // return this._color\n // }\n\n // set color(newValue: string) {\n // if (this._color === newValue)\n // return\n\n // this._color = newValue\n // if (this.mesh)\n // (this.mesh.material as MeshBasicMaterial).color = new Color(newValue)\n // }\n\n // // Getter and Setter for fenceAlpha property\n // get alpha(): number {\n // return this._alpha\n // }\n\n // set alpha(newValue: number) {\n // if (this._alpha === newValue)\n // return\n\n // this._alpha = newValue\n // if (this.mesh)\n // (this.mesh.material as MeshBasicMaterial).opacity = newValue\n // }\n}\n\nexport default FillArea_Face_01"],"mappings":";;;;;;;;;;;;;AACA,SAASA,KAAK,EAAEC,eAAe,EAAEC,IAAI,EAAEC,iBAAiB,EAAEC,KAAK,EAAEC,OAAO,QAAQ,eAAe;AAG/F,SAA4BC,wBAAwB;AACpD,OAAOC,YAAY;AAAsB,IAEnCC,gBAAgB,0BAAAC,aAAA;EAAAC,SAAA,CAAAF,gBAAA,EAAAC,aAAA;EAAA,IAAAE,MAAA,GAAAC,YAAA,CAAAJ,gBAAA;EACpB,SAAAA,iBAAYK,MAAsB,EAAEC,YAAsB,EAAE;IAAA,IAAAC,KAAA;IAAAC,eAAA,OAAAR,gBAAA;IAC1DO,KAAA,GAAAJ,MAAA,CAAAM,IAAA,OAAMJ,MAAM,EAAEC,YAAY;IAC1BC,KAAA,CAAKG,MAAM,CAAC,CAAC;IAAA,OAAAH,KAAA;EACf;EAACI,YAAA,CAAAX,gBAAA;IAAAY,GAAA;IAAAC,KAAA,EAED,SAAAH,OAAA,EAAS;MACP,IAAI,CAACI,KAAK,GAAG,IAAI,CAACC,UAAU,CAAC,IAAI,CAACC,OAAO,EAAE,IAAI,CAACC,MAAM,EAAE,IAAI,CAACC,MAAM,CAAC;MACpE,IAAI,CAACJ,KAAK,IAAI,IAAI,CAACK,GAAG,CAAC,IAAI,CAACL,KAAK,CAAC;IACpC;EAAC;IAAAF,GAAA;IAAAC,KAAA,EAED,SAAAE,WAAWK,MAAiB,EAAEC,KAAa,EAAEC,KAAa,EAAE;MAC1D,IAAI,CAACF,MAAM,EACT;;MAEF;MACA,IAAMG,QAAQ,GAAG,IAAI5B,iBAAiB,CAAC;QAAE0B,KAAK,EAAE,IAAI7B,KAAK,CAAC6B,KAAK,CAAC;QAAEG,WAAW,EAAE,IAAI;QAAEC,OAAO,EAAEH,KAAK;QAAEI,IAAI,EAAE;MAAE,CAAC,CAAC;MAC/G;MACA;MACA;MACA;;MAEA;MACA;MACA;MACA;MACA;MACA;MACA;MACA,IAAMC,SAAS,GAAG7B,wBAAwB,CAACsB,MAAM,EAAE,IAAI,CAACQ,OAAO,EAAE,IAAI,CAACC,MAAM,CAAC;MAC7E,IAAMC,UAAU,GAAGH,SAAS,CAACI,SAAS,CAAC,IAAI,CAAC;MAC5C;MACA,IAAMC,QAAQ,GAAGF,UAAU,CAACG,GAAG,CAAC,UAACC,CAAM;QAAA,OAAK,IAAIrC,OAAO,CAACqC,CAAC,CAACC,CAAC,EAAED,CAAC,CAACE,CAAC,CAAC;MAAA,EAAC;MAClE;MACA,IAAMC,KAAK,GAAG,IAAIzC,KAAK,CAACoC,QAAQ,CAAC;MACjC;MACA,IAAMM,eAAe,GAAG;QACtBC,KAAK,EAAE,GAAG;QACVC,YAAY,EAAE,KAAK;QACnBC,KAAK,EAAE,CAAC;QACRC,WAAW,EAAEC;MACf,CAAC;;MAED;MACA,IAAMC,QAAQ,GAAG,IAAInD,eAAe,CAAC4C,KAAK,EAAEC,eAAe,CAAC;MAC5D;MACA,IAAMO,IAAI,GAAG,IAAInD,IAAI,CAACkD,QAAQ,EAAErB,QAAQ,CAAC;MACzC;MACAsB,IAAI,CAACC,OAAO,CAACC,IAAI,CAACC,EAAE,GAAG,CAAC,CAAC;MAEzB,OAAOH,IAAI;IACb;;IAEA;IACA;IACA;IACA;;IAEA;IACA;IACA;;IAEA;IACA;IACA;IACA;;IAEA;IACA;IACA;IACA;;IAEA;IACA;IACA;;IAEA;IACA;IACA;IACA;EAAA;EAAA,OAAA7C,gBAAA;AAAA,EA/E6BD,YAAY;AAkF3C,eAAeC,gBAAgB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Color","Line2","LineGeometry","LineMaterial","Vector2","Vector3","THREE","createRoundedClosedCurve","FillAreaBase","FillArea_Line_01","_FillAreaBase","_inherits","_super","_createSuper","option","areaInstance","_this","_classCallCheck","call","create","_createClass","key","value","_mesh","createMesh","_points","_color","_alpha","add","points","color","alpha","material","getHex","transparent","opacity","blending","NormalBlending","depthTest","alphaTest","linewidth","resolution","window","innerWidth","innerHeight","curvePath","_corner","_close","pathPoints","getPoints","points3D","map","p","x","z","geometry","setPositions","flatMap","mesh"],"sources":["../../../../src/business/Area/
|
|
1
|
+
{"version":3,"names":["Color","Line2","LineGeometry","LineMaterial","Vector2","Vector3","THREE","createRoundedClosedCurve","FillAreaBase","FillArea_Line_01","_FillAreaBase","_inherits","_super","_createSuper","option","areaInstance","_this","_classCallCheck","call","create","_createClass","key","value","_mesh","createMesh","_points","_color","_alpha","add","points","color","alpha","material","getHex","transparent","opacity","blending","NormalBlending","depthTest","alphaTest","linewidth","resolution","window","innerWidth","innerHeight","curvePath","_corner","_close","pathPoints","getPoints","points3D","map","p","x","z","geometry","setPositions","flatMap","mesh"],"sources":["../../../../src/business/Area/FillArea/fillArea_line_01.ts"],"sourcesContent":["import { Color, Line, Line2, LineGeometry, LineMaterial, Mesh, Vector2, Vector3 } from '@anov/3d-core'\n\nimport * as THREE from '@anov/3d-core'\nimport type { FillAreaOption } from '../type'\nimport { RoundLineGeometry, createRoundedClosedCurve } from '../../Utils/round-curve'\nimport FillAreaBase from './FillAreaBase'\n\ninterface Point {\n x: number\n y: number\n z: number\n}\nclass FillArea_Line_01 extends FillAreaBase {\n constructor(option: FillAreaOption, areaInstance: THREE.Object3D) {\n super(option, areaInstance)\n this.create()\n }\n\n create() {\n this._mesh = this.createMesh(this._points, this._color, this._alpha)\n this._mesh && this.add(this._mesh)\n }\n\n createMesh(points: Vector3[], color: string, alpha: number) {\n if (!points)\n return\n // 创建材质,这里设置为线的材质,比如LineMaterial\n const material = new LineMaterial({\n color: new Color(color).getHex(),\n transparent: true,\n opacity: alpha,\n blending: THREE.NormalBlending, // 启用混合模式以使透明度生效\n depthTest: false,\n alphaTest: 0.01,\n linewidth: 15,\n resolution: new Vector2(window.innerWidth, window.innerHeight),\n })\n // const roundLineGeometry = new RoundLineGeometry(points, { radius: this._corner, close: this._close })\n // const curve = roundLineGeometry.curve\n // const currentPoints = curve.getPoints(1000)\n // // 将点转换为二维坐标(只保留x和y)\n // const points3D = currentPoints.map((p: Point) => new Vector3(p.x, 0, p.z))\n // const geometry = new LineGeometry()\n // geometry.setPositions(points3D.flatMap((p: Point) => [p.x, 0, p.z])) // 将二维坐标转换为一维数组\n // // 创建一个线的网格物体(区别于原来的面的网格物体)\n // const mesh = new Line2(geometry, material)\n\n const curvePath = createRoundedClosedCurve(points, this._corner, this._close)\n const pathPoints = curvePath.getPoints(1000)\n // const geometry = new THREE.BufferGeometry().setFromPoints(pathPoints)\n // const mesh = new Line2(geometry, material)\n // 将点转换为二维坐标(只保留x和y)\n const points3D = pathPoints.map((p: Point) => new Vector3(p.x, 0, p.z))\n const geometry = new LineGeometry()\n geometry.setPositions(points3D.flatMap((p: Point) => [p.x, 0, p.z])) // 将二维坐标转换为一维数组\n // 创建一个线的网格物体(区别于原来的面的网格物体)\n const mesh = new Line2(geometry, material)\n return mesh\n }\n\n // Getter and Setter for fenceColor property\n // get color(): string {\n // return this._color\n // }\n\n // set color(newValue: string) {\n // if (this._color === newValue)\n // return\n\n // this._color = newValue\n // if (this.mesh)\n // this.mesh.material.color = new Color(newValue)\n // }\n\n // Getter and Setter for fenceAlpha property\n // get alpha(): number {\n // return this._alpha\n // }\n\n // set alpha(newValue: number) {\n // if (this._alpha === newValue)\n // return\n\n // this._alpha = newValue\n // if (this.mesh)\n // this.mesh.material.opacity = newValue\n // }\n}\n\nexport default FillArea_Line_01"],"mappings":";;;;;;;;;;;;;AAAA,SAASA,KAAK,EAAQC,KAAK,EAAEC,YAAY,EAAEC,YAAY,EAAQC,OAAO,EAAEC,OAAO,QAAQ,eAAe;AAEtG,OAAO,KAAKC,KAAK,MAAM,eAAe;AAEtC,SAA4BC,wBAAwB;AACpD,OAAOC,YAAY;AAAsB,IAOnCC,gBAAgB,0BAAAC,aAAA;EAAAC,SAAA,CAAAF,gBAAA,EAAAC,aAAA;EAAA,IAAAE,MAAA,GAAAC,YAAA,CAAAJ,gBAAA;EACpB,SAAAA,iBAAYK,MAAsB,EAAEC,YAA4B,EAAE;IAAA,IAAAC,KAAA;IAAAC,eAAA,OAAAR,gBAAA;IAChEO,KAAA,GAAAJ,MAAA,CAAAM,IAAA,OAAMJ,MAAM,EAAEC,YAAY;IAC1BC,KAAA,CAAKG,MAAM,CAAC,CAAC;IAAA,OAAAH,KAAA;EACf;EAACI,YAAA,CAAAX,gBAAA;IAAAY,GAAA;IAAAC,KAAA,EAED,SAAAH,OAAA,EAAS;MACP,IAAI,CAACI,KAAK,GAAG,IAAI,CAACC,UAAU,CAAC,IAAI,CAACC,OAAO,EAAE,IAAI,CAACC,MAAM,EAAE,IAAI,CAACC,MAAM,CAAC;MACpE,IAAI,CAACJ,KAAK,IAAI,IAAI,CAACK,GAAG,CAAC,IAAI,CAACL,KAAK,CAAC;IACpC;EAAC;IAAAF,GAAA;IAAAC,KAAA,EAED,SAAAE,WAAWK,MAAiB,EAAEC,KAAa,EAAEC,KAAa,EAAE;MAC1D,IAAI,CAACF,MAAM,EACT;MACF;MACA,IAAMG,QAAQ,GAAG,IAAI7B,YAAY,CAAC;QAChC2B,KAAK,EAAE,IAAI9B,KAAK,CAAC8B,KAAK,CAAC,CAACG,MAAM,CAAC,CAAC;QAChCC,WAAW,EAAE,IAAI;QACjBC,OAAO,EAAEJ,KAAK;QACdK,QAAQ,EAAE9B,KAAK,CAAC+B,cAAc;QAAE;QAChCC,SAAS,EAAE,KAAK;QAChBC,SAAS,EAAE,IAAI;QACfC,SAAS,EAAE,EAAE;QACbC,UAAU,EAAE,IAAIrC,OAAO,CAACsC,MAAM,CAACC,UAAU,EAAED,MAAM,CAACE,WAAW;MAC/D,CAAC,CAAC;MACF;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;;MAEA,IAAMC,SAAS,GAAGtC,wBAAwB,CAACsB,MAAM,EAAE,IAAI,CAACiB,OAAO,EAAE,IAAI,CAACC,MAAM,CAAC;MAC7E,IAAMC,UAAU,GAAGH,SAAS,CAACI,SAAS,CAAC,IAAI,CAAC;MAC5C;MACA;MACA;MACA,IAAMC,QAAQ,GAAGF,UAAU,CAACG,GAAG,CAAC,UAACC,CAAQ;QAAA,OAAK,IAAI/C,OAAO,CAAC+C,CAAC,CAACC,CAAC,EAAE,CAAC,EAAED,CAAC,CAACE,CAAC,CAAC;MAAA,EAAC;MACvE,IAAMC,QAAQ,GAAG,IAAIrD,YAAY,CAAC,CAAC;MACnCqD,QAAQ,CAACC,YAAY,CAACN,QAAQ,CAACO,OAAO,CAAC,UAACL,CAAQ;QAAA,OAAK,CAACA,CAAC,CAACC,CAAC,EAAE,CAAC,EAAED,CAAC,CAACE,CAAC,CAAC;MAAA,EAAC,CAAC,EAAC;MACrE;MACA,IAAMI,IAAI,GAAG,IAAIzD,KAAK,CAACsD,QAAQ,EAAEvB,QAAQ,CAAC;MAC1C,OAAO0B,IAAI;IACb;;IAEA;IACA;IACA;IACA;;IAEA;IACA;IACA;;IAEA;IACA;IACA;IACA;;IAEA;IACA;IACA;IACA;;IAEA;IACA;IACA;;IAEA;IACA;IACA;IACA;EAAA;EAAA,OAAAjD,gBAAA;AAAA,EA1E6BD,YAAY;AA6E3C,eAAeC,gBAAgB"}
|
|
@@ -33,7 +33,7 @@ var FenceStrategy = {
|
|
|
33
33
|
while (1) switch (_context.prev = _context.next) {
|
|
34
34
|
case 0:
|
|
35
35
|
_context.next = 2;
|
|
36
|
-
return import("./
|
|
36
|
+
return import("./Fence/fence_base_01");
|
|
37
37
|
case 2:
|
|
38
38
|
return _context.abrupt("return", _context.sent.default);
|
|
39
39
|
case 3:
|
|
@@ -53,7 +53,7 @@ var FenceStrategy = {
|
|
|
53
53
|
while (1) switch (_context2.prev = _context2.next) {
|
|
54
54
|
case 0:
|
|
55
55
|
_context2.next = 2;
|
|
56
|
-
return import("./
|
|
56
|
+
return import("./Fence/fence_feeting_01");
|
|
57
57
|
case 2:
|
|
58
58
|
return _context2.abrupt("return", _context2.sent.default);
|
|
59
59
|
case 3:
|
|
@@ -73,7 +73,7 @@ var FenceStrategy = {
|
|
|
73
73
|
while (1) switch (_context3.prev = _context3.next) {
|
|
74
74
|
case 0:
|
|
75
75
|
_context3.next = 2;
|
|
76
|
-
return import("./
|
|
76
|
+
return import("./Fence/fence_roll_01");
|
|
77
77
|
case 2:
|
|
78
78
|
return _context3.abrupt("return", _context3.sent.default);
|
|
79
79
|
case 3:
|
|
@@ -95,7 +95,7 @@ var FillAreaStrategy = {
|
|
|
95
95
|
while (1) switch (_context4.prev = _context4.next) {
|
|
96
96
|
case 0:
|
|
97
97
|
_context4.next = 2;
|
|
98
|
-
return import("./
|
|
98
|
+
return import("./FillArea/fillArea_line_01");
|
|
99
99
|
case 2:
|
|
100
100
|
return _context4.abrupt("return", _context4.sent.default);
|
|
101
101
|
case 3:
|
|
@@ -115,7 +115,7 @@ var FillAreaStrategy = {
|
|
|
115
115
|
while (1) switch (_context5.prev = _context5.next) {
|
|
116
116
|
case 0:
|
|
117
117
|
_context5.next = 2;
|
|
118
|
-
return import("./
|
|
118
|
+
return import("./FillArea/fillArea_face_01");
|
|
119
119
|
case 2:
|
|
120
120
|
return _context5.abrupt("return", _context5.sent.default);
|
|
121
121
|
case 3:
|
|
@@ -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","_","Group","Vector3","ObjectLayer","FenceStrategy","base","_base","_callee","_callee$","_context","default","feeting","_feeting","_callee2","_callee2$","_context2","roll","_roll","_callee3","_callee3$","_context3","FillAreaStrategy","line","_line","_callee4","_callee4$","_context4","face","_face","_callee5","_callee5$","_context5","DEFAULT_OPTION","style","fence","uri","height","alpha","color","visible","fillArea","pos","surfaceSnap","posType","coordZType","path","points","position","corner","close","STYLE_DATA","area_base_01","area_feeting_01","area_roll_01","Area","_ObjectLayer","_inherits","_super","_createSuper","option","_this","_classCallCheck","_defineProperty","_assertThisInitialized","_initParam","_arrangePathParam","_path","_initializeMesh","_createClass","get","_mesh","_style","_fence","_fillArea","_surfaceSnap","set","_posType","_coordZType","_pathProxy","_resetFence","_resetFillArea","dispose","remove","_option","mergeWith","cloneDeep","_arrayMergeCustomizer","_this$_option","_createPathProxy","add","Array","isArray","_points","map","_corner","_close","console","_initializeMesh2","_callee6","_this$_option2","_this$_getCurrentStyl","currentFenceStyle","currentFillAreaStyle","_callee6$","_context6","_getCurrentStyle","_createFence","_fenceMesh","addReloadListener","createProxy","_createFillArea","_fillAreaMesh","_registerStrategy2","_callee7","StrategyManage","strategyClass","_callee7$","_context7","concat","_registerStrategy","_x","_x2","_createFence2","_callee8","Strategy","_callee8$","_context8","_objectSpread","_x3","_resetFence2","_callee9","_this$_getCurrentStyl2","_callee9$","_context9","_createFillArea2","_callee10","_this$_option3","mesh","_callee10$","_context10","_x4","_resetFillArea2","_callee11","_this$_getCurrentStyl3","_callee11$","_context11","_this2","Proxy","target","prop","objValue","srcValue","_STYLE_DATA$this$styl","_slicedToArray"],"sources":["../../../src/business/Area/index.ts"],"sourcesContent":["import _ from 'lodash'\nimport type { Mesh, Object3D } from '@anov/3d-core'\nimport { Group, Vector3, use } from '@anov/3d-core'\nimport ObjectLayer from '../Base/ObjectLayer'\nimport type { FenceOption, FillAreaOption, Option } from './type'\n\nconst FenceStrategy = {\n base: async () => (await import('./fence/fence_base_01')).default,\n feeting: async () => (await import('./fence/fence_feeting_01')).default,\n roll: async () => (await import('./fence/fence_roll_01')).default,\n}\nconst FillAreaStrategy = {\n line: async () => (await import('./fillArea/fillArea_line_01')).default,\n face: async () => (await import('./fillArea/fillArea_face_01')).default,\n}\nconst DEFAULT_OPTION = {\n style: 'area_base_01',\n fence: {\n uri: 'base',\n height: 70,\n alpha: 1,\n color: '#006CBF',\n visible: true,\n },\n fillArea: {\n uri: 'face',\n visible: true,\n alpha: 1,\n color: '#006CBF',\n pos: 'bottom',\n },\n surfaceSnap: false,\n posType: 0,\n coordZType: 0,\n path: {\n points: [\n {\n position: [-100, 0, 100],\n },\n {\n position: [100, 0, 100],\n },\n {\n position: [100, 0.00, -100],\n },\n {\n position: [-100, 0.00, -100],\n },\n ],\n corner: 10, // 圆角默认 10\n close: true, // 默认闭合\n },\n}\nconst STYLE_DATA = {\n area_base_01: ['base', ''],\n area_feeting_01: ['feeting', ''],\n area_roll_01: ['roll', ''],\n}\nclass Area extends ObjectLayer {\n private _mesh!: Group\n private _option: Option\n\n private _fenceMesh: Mesh & any\n private _fillAreaMesh: Mesh & any\n\n private _style: string\n private _surfaceSnap: boolean\n private _posType: number\n private _coordZType: number\n private _fence: FenceOption\n private _fenceProxy: FenceOption\n private _fillArea: FillAreaOption\n private _path: Option['path']\n private _pathProxy: Option['path']\n private _points!: Vector3[]\n private _corner: number\n private _close: boolean\n constructor(option: Option) {\n super()\n this._initParam(option)\n this._arrangePathParam(this._path)\n this._initializeMesh()\n }\n\n get mesh() {\n return this._mesh\n }\n\n get style(): string {\n return this._style\n }\n\n get fence(): FenceOption {\n // return this._fenceProxy\n return this._fence\n }\n\n get fillArea(): FillAreaOption {\n return this._fillArea\n }\n\n get surfaceSnap(): boolean {\n return this._surfaceSnap\n }\n\n set surfaceSnap(value: boolean) {\n if (this._surfaceSnap === value)\n return\n this._surfaceSnap = value\n }\n\n get posType(): number {\n return this._posType\n }\n\n set posType(value: number) {\n if (this._posType === value)\n return\n this._posType = value\n }\n\n get coordZType(): number {\n return this._coordZType\n }\n\n set coordZType(value: number) {\n if (this._coordZType === value)\n return\n this._coordZType = value\n }\n\n // 设置 path 时,返回代理对象\n set path(value: Option['path']) {\n if (this._path === value)\n return\n this._arrangePathParam(value)\n this._resetFence()\n this._resetFillArea()\n }\n\n // 获取 path 时,返回代理对象\n get path(): Option['path'] {\n return this._pathProxy // 返回代理对象\n }\n\n // 销毁\n dispose() {\n this.remove(this._mesh)\n }\n\n private _initParam(option: Option) {\n this._option = _.mergeWith(\n _.cloneDeep(DEFAULT_OPTION),\n option,\n this._arrayMergeCustomizer,\n )\n\n const { fence, fillArea } = this._option\n this._fence = fence\n this._fillArea = fillArea\n this._style = this._option.style\n this._path = this._option.path\n this._surfaceSnap = this._option.surfaceSnap\n this._posType = this._option.posType\n this._coordZType = this._option.coordZType\n this._createPathProxy()\n this._mesh = new Group()\n this.add(this._mesh)\n // this._createFenceProxy()\n }\n\n private _arrangePathParam(value: Option['path']) {\n // 确保 value 符合预期结构\n if (value && Array.isArray(value.points) && value.points.length >= 3) {\n const { points, corner, close } = value\n\n this._path = value // 更新 _path\n this._points = points.map(v => new Vector3(v.position[0], v.position[1], v.position[2])) // 使用 points 创建 Vector3 对象\n this._corner = corner // 更新圆角\n this._close = close // 更新闭合状态\n }\n\n else { console.error('Invalid path data: Ensure points has at least 3 elements') }\n }\n\n private async _initializeMesh() {\n const { fence, fillArea } = this._option\n const { currentFenceStyle, currentFillAreaStyle } = this._getCurrentStyle()\n if (currentFenceStyle) {\n this._fenceMesh = await this._createFence(currentFenceStyle)\n this._fenceMesh.visible = fence.visible\n this._fenceMesh.addReloadListener(this._resetFence)\n this._mesh.add(this._fenceMesh)\n this._fence = this.createProxy(this._fence, this._fenceMesh)\n }\n if (currentFillAreaStyle) {\n this._fillAreaMesh = await this._createFillArea(currentFillAreaStyle)\n this._fillAreaMesh.visible = fillArea.visible\n this._fillAreaMesh.addReloadListener(this._resetFillArea)\n this._mesh.add(this._fillAreaMesh)\n this._fillArea = this.createProxy(this._fillArea, this._fillAreaMesh)\n }\n // 统一更新矩阵\n // this._mesh.updateWorldMatrix(true, true)\n }\n\n // 注册样式\n private async _registerStrategy(style: string, StrategyManage: Object) {\n const strategyClass = StrategyManage[style]\n if (strategyClass)\n return await strategyClass()\n\n else\n throw new Error(`Style ${style} not found`)\n }\n\n // 创建围栏\n private async _createFence(style: string) {\n const { fence } = this._option\n const Strategy = await this._registerStrategy(style, FenceStrategy)\n const option = {\n points: this._points,\n corner: this._corner,\n close: this._close,\n ...fence,\n }\n return new Strategy(option, this)\n }\n\n private async _resetFence() {\n if (this._fenceMesh) {\n this._mesh.remove(this._fenceMesh)\n const { currentFenceStyle } = this._getCurrentStyle()\n this._fenceMesh = await this._createFence(currentFenceStyle)\n this._mesh.add(this._fenceMesh)\n this._fence = this.createProxy(this._fence, this._fenceMesh)\n }\n }\n\n // 创建封底\n private async _createFillArea(style: string) {\n const { fillArea, fence } = this._option\n const Strategy = await this._registerStrategy(style, FillAreaStrategy)\n const option = {\n points: this._points,\n corner: this._corner,\n close: this._close,\n ...fillArea,\n }\n const mesh = new Strategy(option, this)\n mesh.position.y = fillArea.pos === 'bottom' ? 0 : fence.height\n return mesh\n }\n\n private async _resetFillArea() {\n if (this._fillAreaMesh) {\n this._mesh.remove(this._fillAreaMesh)\n const { currentFillAreaStyle } = this._getCurrentStyle()\n this._fillAreaMesh = await this._createFillArea(currentFillAreaStyle)\n this._mesh.add(this._fillAreaMesh)\n this._fillArea = this.createProxy(this._fillArea, this._fillAreaMesh)\n }\n }\n\n private _createPathProxy() {\n // 创建代理,拦截对 _path 的修改\n this._pathProxy = new Proxy(this._path, {\n set: (target, prop, value) => {\n if (prop === 'corner')\n this._corner = value\n\n else if (prop === 'close')\n this._close = value\n\n else if (prop === 'points')\n this._points = value.map(v => new Vector3(v.position[0], v.position[1], v.position[2]))\n\n target[prop] = value // 更新值\n this._resetFence()\n this._resetFillArea()\n return true // 必须返回 true 表示操作成功\n },\n })\n }\n\n private _arrayMergeCustomizer(objValue, srcValue) {\n if (_.isArray(objValue) && srcValue)\n return srcValue\n }\n\n private _getCurrentStyle() {\n let currentFenceStyle = ''\n let currentFillAreaStyle = ''\n if (this.style === 'area_dynamic_mode') {\n currentFenceStyle = this._fence.uri\n currentFillAreaStyle = this._fillArea.uri\n }\n else {\n [currentFenceStyle, currentFillAreaStyle] = STYLE_DATA[this.style]\n }\n return { currentFenceStyle, currentFillAreaStyle }\n }\n}\n\nexport { Area }"],"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","_","Group","Vector3","ObjectLayer","FenceStrategy","base","_base","_callee","_callee$","_context","default","feeting","_feeting","_callee2","_callee2$","_context2","roll","_roll","_callee3","_callee3$","_context3","FillAreaStrategy","line","_line","_callee4","_callee4$","_context4","face","_face","_callee5","_callee5$","_context5","DEFAULT_OPTION","style","fence","uri","height","alpha","color","visible","fillArea","pos","surfaceSnap","posType","coordZType","path","points","position","corner","close","STYLE_DATA","area_base_01","area_feeting_01","area_roll_01","Area","_ObjectLayer","_inherits","_super","_createSuper","option","_this","_classCallCheck","_defineProperty","_assertThisInitialized","_initParam","_arrangePathParam","_path","_initializeMesh","_createClass","get","_mesh","_style","_fence","_fillArea","_surfaceSnap","set","_posType","_coordZType","_pathProxy","_resetFence","_resetFillArea","dispose","remove","_option","mergeWith","cloneDeep","_arrayMergeCustomizer","_this$_option","_createPathProxy","add","Array","isArray","_points","map","_corner","_close","console","_initializeMesh2","_callee6","_this$_option2","_this$_getCurrentStyl","currentFenceStyle","currentFillAreaStyle","_callee6$","_context6","_getCurrentStyle","_createFence","_fenceMesh","addReloadListener","createProxy","_createFillArea","_fillAreaMesh","_registerStrategy2","_callee7","StrategyManage","strategyClass","_callee7$","_context7","concat","_registerStrategy","_x","_x2","_createFence2","_callee8","Strategy","_callee8$","_context8","_objectSpread","_x3","_resetFence2","_callee9","_this$_getCurrentStyl2","_callee9$","_context9","_createFillArea2","_callee10","_this$_option3","mesh","_callee10$","_context10","_x4","_resetFillArea2","_callee11","_this$_getCurrentStyl3","_callee11$","_context11","_this2","Proxy","target","prop","objValue","srcValue","_STYLE_DATA$this$styl","_slicedToArray"],"sources":["../../../src/business/Area/index.ts"],"sourcesContent":["import _ from 'lodash'\nimport type { Mesh, Object3D } from '@anov/3d-core'\nimport { Group, Vector3, use } from '@anov/3d-core'\nimport ObjectLayer from '../Base/ObjectLayer'\nimport type { FenceOption, FillAreaOption, Option } from './type'\n\nconst FenceStrategy = {\n base: async () => (await import('./Fence/fence_base_01')).default,\n feeting: async () => (await import('./Fence/fence_feeting_01')).default,\n roll: async () => (await import('./Fence/fence_roll_01')).default,\n}\nconst FillAreaStrategy = {\n line: async () => (await import('./FillArea/fillArea_line_01')).default,\n face: async () => (await import('./FillArea/fillArea_face_01')).default,\n}\nconst DEFAULT_OPTION = {\n style: 'area_base_01',\n fence: {\n uri: 'base',\n height: 70,\n alpha: 1,\n color: '#006CBF',\n visible: true,\n },\n fillArea: {\n uri: 'face',\n visible: true,\n alpha: 1,\n color: '#006CBF',\n pos: 'bottom',\n },\n surfaceSnap: false,\n posType: 0,\n coordZType: 0,\n path: {\n points: [\n {\n position: [-100, 0, 100],\n },\n {\n position: [100, 0, 100],\n },\n {\n position: [100, 0.00, -100],\n },\n {\n position: [-100, 0.00, -100],\n },\n ],\n corner: 10, // 圆角默认 10\n close: true, // 默认闭合\n },\n}\nconst STYLE_DATA = {\n area_base_01: ['base', ''],\n area_feeting_01: ['feeting', ''],\n area_roll_01: ['roll', ''],\n}\nclass Area extends ObjectLayer {\n private _mesh!: Group\n private _option: Option\n\n private _fenceMesh: Mesh & any\n private _fillAreaMesh: Mesh & any\n\n private _style: string\n private _surfaceSnap: boolean\n private _posType: number\n private _coordZType: number\n private _fence: FenceOption\n private _fenceProxy: FenceOption\n private _fillArea: FillAreaOption\n private _path: Option['path']\n private _pathProxy: Option['path']\n private _points!: Vector3[]\n private _corner: number\n private _close: boolean\n constructor(option: Option) {\n super()\n this._initParam(option)\n this._arrangePathParam(this._path)\n this._initializeMesh()\n }\n\n get mesh() {\n return this._mesh\n }\n\n get style(): string {\n return this._style\n }\n\n get fence(): FenceOption {\n // return this._fenceProxy\n return this._fence\n }\n\n get fillArea(): FillAreaOption {\n return this._fillArea\n }\n\n get surfaceSnap(): boolean {\n return this._surfaceSnap\n }\n\n set surfaceSnap(value: boolean) {\n if (this._surfaceSnap === value)\n return\n this._surfaceSnap = value\n }\n\n get posType(): number {\n return this._posType\n }\n\n set posType(value: number) {\n if (this._posType === value)\n return\n this._posType = value\n }\n\n get coordZType(): number {\n return this._coordZType\n }\n\n set coordZType(value: number) {\n if (this._coordZType === value)\n return\n this._coordZType = value\n }\n\n // 设置 path 时,返回代理对象\n set path(value: Option['path']) {\n if (this._path === value)\n return\n this._arrangePathParam(value)\n this._resetFence()\n this._resetFillArea()\n }\n\n // 获取 path 时,返回代理对象\n get path(): Option['path'] {\n return this._pathProxy // 返回代理对象\n }\n\n // 销毁\n dispose() {\n this.remove(this._mesh)\n }\n\n private _initParam(option: Option) {\n this._option = _.mergeWith(\n _.cloneDeep(DEFAULT_OPTION),\n option,\n this._arrayMergeCustomizer,\n )\n\n const { fence, fillArea } = this._option\n this._fence = fence\n this._fillArea = fillArea\n this._style = this._option.style\n this._path = this._option.path\n this._surfaceSnap = this._option.surfaceSnap\n this._posType = this._option.posType\n this._coordZType = this._option.coordZType\n this._createPathProxy()\n this._mesh = new Group()\n this.add(this._mesh)\n // this._createFenceProxy()\n }\n\n private _arrangePathParam(value: Option['path']) {\n // 确保 value 符合预期结构\n if (value && Array.isArray(value.points) && value.points.length >= 3) {\n const { points, corner, close } = value\n\n this._path = value // 更新 _path\n this._points = points.map(v => new Vector3(v.position[0], v.position[1], v.position[2])) // 使用 points 创建 Vector3 对象\n this._corner = corner // 更新圆角\n this._close = close // 更新闭合状态\n }\n\n else { console.error('Invalid path data: Ensure points has at least 3 elements') }\n }\n\n private async _initializeMesh() {\n const { fence, fillArea } = this._option\n const { currentFenceStyle, currentFillAreaStyle } = this._getCurrentStyle()\n if (currentFenceStyle) {\n this._fenceMesh = await this._createFence(currentFenceStyle)\n this._fenceMesh.visible = fence.visible\n this._fenceMesh.addReloadListener(this._resetFence)\n this._mesh.add(this._fenceMesh)\n this._fence = this.createProxy(this._fence, this._fenceMesh)\n }\n if (currentFillAreaStyle) {\n this._fillAreaMesh = await this._createFillArea(currentFillAreaStyle)\n this._fillAreaMesh.visible = fillArea.visible\n this._fillAreaMesh.addReloadListener(this._resetFillArea)\n this._mesh.add(this._fillAreaMesh)\n this._fillArea = this.createProxy(this._fillArea, this._fillAreaMesh)\n }\n // 统一更新矩阵\n // this._mesh.updateWorldMatrix(true, true)\n }\n\n // 注册样式\n private async _registerStrategy(style: string, StrategyManage: Object) {\n const strategyClass = StrategyManage[style]\n if (strategyClass)\n return await strategyClass()\n\n else\n throw new Error(`Style ${style} not found`)\n }\n\n // 创建围栏\n private async _createFence(style: string) {\n const { fence } = this._option\n const Strategy = await this._registerStrategy(style, FenceStrategy)\n const option = {\n points: this._points,\n corner: this._corner,\n close: this._close,\n ...fence,\n }\n return new Strategy(option, this)\n }\n\n private async _resetFence() {\n if (this._fenceMesh) {\n this._mesh.remove(this._fenceMesh)\n const { currentFenceStyle } = this._getCurrentStyle()\n this._fenceMesh = await this._createFence(currentFenceStyle)\n this._mesh.add(this._fenceMesh)\n this._fence = this.createProxy(this._fence, this._fenceMesh)\n }\n }\n\n // 创建封底\n private async _createFillArea(style: string) {\n const { fillArea, fence } = this._option\n const Strategy = await this._registerStrategy(style, FillAreaStrategy)\n const option = {\n points: this._points,\n corner: this._corner,\n close: this._close,\n ...fillArea,\n }\n const mesh = new Strategy(option, this)\n mesh.position.y = fillArea.pos === 'bottom' ? 0 : fence.height\n return mesh\n }\n\n private async _resetFillArea() {\n if (this._fillAreaMesh) {\n this._mesh.remove(this._fillAreaMesh)\n const { currentFillAreaStyle } = this._getCurrentStyle()\n this._fillAreaMesh = await this._createFillArea(currentFillAreaStyle)\n this._mesh.add(this._fillAreaMesh)\n this._fillArea = this.createProxy(this._fillArea, this._fillAreaMesh)\n }\n }\n\n private _createPathProxy() {\n // 创建代理,拦截对 _path 的修改\n this._pathProxy = new Proxy(this._path, {\n set: (target, prop, value) => {\n if (prop === 'corner')\n this._corner = value\n\n else if (prop === 'close')\n this._close = value\n\n else if (prop === 'points')\n this._points = value.map(v => new Vector3(v.position[0], v.position[1], v.position[2]))\n\n target[prop] = value // 更新值\n this._resetFence()\n this._resetFillArea()\n return true // 必须返回 true 表示操作成功\n },\n })\n }\n\n private _arrayMergeCustomizer(objValue, srcValue) {\n if (_.isArray(objValue) && srcValue)\n return srcValue\n }\n\n private _getCurrentStyle() {\n let currentFenceStyle = ''\n let currentFillAreaStyle = ''\n if (this.style === 'area_dynamic_mode') {\n currentFenceStyle = this._fence.uri\n currentFillAreaStyle = this._fillArea.uri\n }\n else {\n [currentFenceStyle, currentFillAreaStyle] = STYLE_DATA[this.style]\n }\n return { currentFenceStyle, currentFillAreaStyle }\n }\n}\n\nexport { Area }"],"mappings":"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"}
|
|
@@ -6,7 +6,13 @@ export declare enum EMaterialType {
|
|
|
6
6
|
Glass = "Glass",// 玻璃材质
|
|
7
7
|
Iron = "Iron",// 金属材质
|
|
8
8
|
Moss = "Moss",// 苔藓材质
|
|
9
|
-
Emissive = "Emissive"
|
|
9
|
+
Emissive = "Emissive",// 发光材质(适用于夜晚窗户)
|
|
10
|
+
Dirt = "Dirt",// 土壤
|
|
11
|
+
Fabric = "Fabric",// 布料
|
|
12
|
+
Floor = "Floor",// 地板
|
|
13
|
+
Marble = "Marble",// 大理石
|
|
14
|
+
Metal = "Metal",// 金属
|
|
15
|
+
Road = "Road"
|
|
10
16
|
}
|
|
11
17
|
export declare class SurfaceMaterial {
|
|
12
18
|
private static cache;
|
|
@@ -19,8 +19,14 @@ export var EMaterialType = /*#__PURE__*/function (EMaterialType) {
|
|
|
19
19
|
EMaterialType["Iron"] = "Iron";
|
|
20
20
|
EMaterialType["Moss"] = "Moss";
|
|
21
21
|
EMaterialType["Emissive"] = "Emissive";
|
|
22
|
+
EMaterialType["Dirt"] = "Dirt";
|
|
23
|
+
EMaterialType["Fabric"] = "Fabric";
|
|
24
|
+
EMaterialType["Floor"] = "Floor";
|
|
25
|
+
EMaterialType["Marble"] = "Marble";
|
|
26
|
+
EMaterialType["Metal"] = "Metal";
|
|
27
|
+
EMaterialType["Road"] = "Road";
|
|
22
28
|
return EMaterialType;
|
|
23
|
-
}({}); //
|
|
29
|
+
}({}); // 道路
|
|
24
30
|
var SOURCE_PATH = {
|
|
25
31
|
Plaster: "".concat(SOURCE_BASE_PATH, "/material/plaster.glb"),
|
|
26
32
|
// 涂料
|
|
@@ -34,6 +40,18 @@ var SOURCE_PATH = {
|
|
|
34
40
|
// 金属材质
|
|
35
41
|
Moss: "".concat(SOURCE_BASE_PATH, "/material/moss.glb"),
|
|
36
42
|
// 苔藓材质
|
|
43
|
+
Dirt: "".concat(SOURCE_BASE_PATH, "/material/dirt.glb"),
|
|
44
|
+
// 土壤
|
|
45
|
+
Fabric: "".concat(SOURCE_BASE_PATH, "/material/fabric.glb"),
|
|
46
|
+
// 布料
|
|
47
|
+
Floor: "".concat(SOURCE_BASE_PATH, "/material/floor.glb"),
|
|
48
|
+
// 地板
|
|
49
|
+
Marble: "".concat(SOURCE_BASE_PATH, "/material/marble.glb"),
|
|
50
|
+
// 大理石
|
|
51
|
+
Metal: "".concat(SOURCE_BASE_PATH, "/material/metal.glb"),
|
|
52
|
+
// 金属
|
|
53
|
+
Road: "".concat(SOURCE_BASE_PATH, "/material/road.glb"),
|
|
54
|
+
// 道路
|
|
37
55
|
Emissive: "".concat(SOURCE_BASE_PATH, "/material/emissive.glb"),
|
|
38
56
|
// 发光材质(适用于夜晚窗户)
|
|
39
57
|
Fresnel_Transparent: "".concat(SOURCE_BASE_PATH, "/material/emissive2.glb")
|
|
@@ -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","_defineProperty","obj","_toPrimitive","String","toPrimitive","Number","LoaderModule","SOURCE_BASE_PATH","load","EMaterialType","SOURCE_PATH","Plaster","concat","Wood","Water","Glass","Iron","Moss","Emissive","Fresnel_Transparent","SurfaceMaterial","_getMaterial","_callee","id","material","_callee$","_context","capitalizeFirstLetter","cache","has","get","clone","loadModelMaterial","set","t0","console","getMaterial","_x","_getMaterialAll","_callee3","_this","materials","_callee3$","_context3","all","map","_ref","_callee2","_callee2$","_context2","_x2","getMaterialAll","_loadModelMaterial","_callee4","_mesh","uri","model","mesh","_callee4$","_context4","loadGLTF","url","draco","onLoad","gltf","scene","onError","traverse","child","_x3","str","toUpperCase","Map"],"sources":["../../../../src/core/Material/SurfaceMaterial/index.ts"],"sourcesContent":["import type { Mesh, MeshPhysicalMaterial, Object3D } from '@anov/3d-core'\nimport { LoaderModule, utils } from '@anov/3d-core'\nimport { SOURCE_BASE_PATH } from '../../../business/Utils/constant'\n\nconst load = new LoaderModule()\nexport enum EMaterialType {\n Plaster = 'Plaster', // 涂料\n Wood = 'Wood', // 木质材质\n Water = 'Water', // 水材质\n Glass = 'Glass', // 玻璃材质\n Iron = 'Iron', // 金属材质\n Moss = 'Moss', // 苔藓材质\n Emissive = 'Emissive', // 发光材质(适用于夜晚窗户)\n}\n\nconst SOURCE_PATH = {\n Plaster: `${SOURCE_BASE_PATH}/material/plaster.glb`, // 涂料\n Wood: `${SOURCE_BASE_PATH}/material/wood.glb`, // 木质材质\n Water: `${SOURCE_BASE_PATH}/material/water.glb`, // 水材质\n Glass: `${SOURCE_BASE_PATH}/material/glass.glb`, // 玻璃材质\n Iron: `${SOURCE_BASE_PATH}/material/iron.glb`, // 金属材质\n Moss: `${SOURCE_BASE_PATH}/material/moss.glb`, // 苔藓材质\n Emissive: `${SOURCE_BASE_PATH}/material/emissive.glb`, // 发光材质(适用于夜晚窗户)\n Fresnel_Transparent: `${SOURCE_BASE_PATH}/material/emissive2.glb`,\n}\n\nexport class SurfaceMaterial {\n private static cache = new Map<string, MeshPhysicalMaterial>()\n\n static async getMaterial(id: string) {\n id = this.capitalizeFirstLetter(id)\n if (this.cache.has(id))\n return this.cache.get(id).clone()!\n\n try {\n const material = await this.loadModelMaterial(id)\n this.cache.set(id, material)\n return material.clone()\n }\n catch (error) {\n console.error(`Failed to load material ${id}:`, error)\n throw error\n }\n }\n\n static async getMaterialAll() {\n const materials = await Promise.all(Object.keys(SOURCE_PATH).map(async key => await this.getMaterial(key)))\n return materials\n }\n\n static async loadModelMaterial(id: string): Promise<MeshPhysicalMaterial> {\n const uri = SOURCE_PATH[id]\n if (!uri)\n throw new Error(`Invalid material ID: ${id}`)\n\n const model = await new Promise<Object3D>((resolve, reject) => {\n load.loadGLTF({\n url: uri,\n draco: true,\n onLoad: gltf => resolve(gltf.scene.clone(true)),\n onError: err => reject(err),\n })\n })\n\n let mesh: Mesh | null = null\n model.traverse((child) => {\n if (!mesh && child.type === 'Mesh')\n mesh = child as Mesh\n })\n if (!mesh?.material)\n throw new Error(`No valid material found in ${id}`)\n\n return mesh.material as MeshPhysicalMaterial\n }\n\n static capitalizeFirstLetter(str) {\n if (!str)\n return ''\n return str.charAt(0).toUpperCase() + str.slice(1)\n }\n}\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","_defineProperty","obj","_toPrimitive","String","toPrimitive","Number","LoaderModule","SOURCE_BASE_PATH","load","EMaterialType","SOURCE_PATH","Plaster","concat","Wood","Water","Glass","Iron","Moss","Dirt","Fabric","Floor","Marble","Metal","Road","Emissive","Fresnel_Transparent","SurfaceMaterial","_getMaterial","_callee","id","material","_callee$","_context","capitalizeFirstLetter","cache","has","get","clone","loadModelMaterial","set","t0","console","getMaterial","_x","_getMaterialAll","_callee3","_this","materials","_callee3$","_context3","all","map","_ref","_callee2","_callee2$","_context2","_x2","getMaterialAll","_loadModelMaterial","_callee4","_mesh","uri","model","mesh","_callee4$","_context4","loadGLTF","url","draco","onLoad","gltf","scene","onError","traverse","child","_x3","str","toUpperCase","Map"],"sources":["../../../../src/core/Material/SurfaceMaterial/index.ts"],"sourcesContent":["import type { Mesh, MeshPhysicalMaterial, Object3D } from '@anov/3d-core'\nimport { LoaderModule, utils } from '@anov/3d-core'\nimport { SOURCE_BASE_PATH } from '../../../business/Utils/constant'\n\nconst load = new LoaderModule()\nexport enum EMaterialType {\n Plaster = 'Plaster', // 涂料\n Wood = 'Wood', // 木质材质\n Water = 'Water', // 水材质\n Glass = 'Glass', // 玻璃材质\n Iron = 'Iron', // 金属材质\n Moss = 'Moss', // 苔藓材质\n Emissive = 'Emissive', // 发光材质(适用于夜晚窗户)\n Dirt = 'Dirt', // 土壤\n Fabric = 'Fabric', // 布料\n Floor = 'Floor', // 地板\n Marble = 'Marble', // 大理石\n Metal = 'Metal', // 金属\n Road = 'Road', // 道路\n}\n\nconst SOURCE_PATH = {\n Plaster: `${SOURCE_BASE_PATH}/material/plaster.glb`, // 涂料\n Wood: `${SOURCE_BASE_PATH}/material/wood.glb`, // 木质材质\n Water: `${SOURCE_BASE_PATH}/material/water.glb`, // 水材质\n Glass: `${SOURCE_BASE_PATH}/material/glass.glb`, // 玻璃材质\n Iron: `${SOURCE_BASE_PATH}/material/iron.glb`, // 金属材质\n Moss: `${SOURCE_BASE_PATH}/material/moss.glb`, // 苔藓材质\n Dirt: `${SOURCE_BASE_PATH}/material/dirt.glb`, // 土壤\n Fabric: `${SOURCE_BASE_PATH}/material/fabric.glb`, // 布料\n Floor: `${SOURCE_BASE_PATH}/material/floor.glb`, // 地板\n Marble: `${SOURCE_BASE_PATH}/material/marble.glb`, // 大理石\n Metal: `${SOURCE_BASE_PATH}/material/metal.glb`, // 金属\n Road: `${SOURCE_BASE_PATH}/material/road.glb`, // 道路\n Emissive: `${SOURCE_BASE_PATH}/material/emissive.glb`, // 发光材质(适用于夜晚窗户)\n Fresnel_Transparent: `${SOURCE_BASE_PATH}/material/emissive2.glb`,\n}\n\nexport class SurfaceMaterial {\n private static cache = new Map<string, MeshPhysicalMaterial>()\n\n static async getMaterial(id: string) {\n id = this.capitalizeFirstLetter(id)\n if (this.cache.has(id))\n return this.cache.get(id).clone()!\n\n try {\n const material = await this.loadModelMaterial(id)\n this.cache.set(id, material)\n return material.clone()\n }\n catch (error) {\n console.error(`Failed to load material ${id}:`, error)\n throw error\n }\n }\n\n static async getMaterialAll() {\n const materials = await Promise.all(Object.keys(SOURCE_PATH).map(async key => await this.getMaterial(key)))\n return materials\n }\n\n static async loadModelMaterial(id: string): Promise<MeshPhysicalMaterial> {\n const uri = SOURCE_PATH[id]\n if (!uri)\n throw new Error(`Invalid material ID: ${id}`)\n\n const model = await new Promise<Object3D>((resolve, reject) => {\n load.loadGLTF({\n url: uri,\n draco: true,\n onLoad: gltf => resolve(gltf.scene.clone(true)),\n onError: err => reject(err),\n })\n })\n\n let mesh: Mesh | null = null\n model.traverse((child) => {\n if (!mesh && child.type === 'Mesh')\n mesh = child as Mesh\n })\n if (!mesh?.material)\n throw new Error(`No valid material found in ${id}`)\n\n return mesh.material as MeshPhysicalMaterial\n }\n\n static capitalizeFirstLetter(str) {\n if (!str)\n return ''\n return str.charAt(0).toUpperCase() + str.slice(1)\n }\n}\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import type { Mesh, Object3D, Vector3 } from '@anov/3d-core';
|
|
2
|
-
import ObjectLayer from '../../Base/ObjectLayer';
|
|
3
|
-
import type { FenceOption } from '../type';
|
|
4
|
-
declare class FenceBase extends ObjectLayer {
|
|
5
|
-
_mesh: Mesh;
|
|
6
|
-
_height: number;
|
|
7
|
-
_alpha: number;
|
|
8
|
-
_color: string;
|
|
9
|
-
_corner: number;
|
|
10
|
-
_close: boolean;
|
|
11
|
-
_points: Vector3[];
|
|
12
|
-
_uri: string;
|
|
13
|
-
_option: FenceOption;
|
|
14
|
-
_listeners: Set<unknown>;
|
|
15
|
-
private _areaInstance;
|
|
16
|
-
constructor(option: FenceOption, _areaInstance: Object3D);
|
|
17
|
-
get mesh(): Mesh<import("@anov/3d-core").BufferGeometry<import("@anov/3d-core").NormalBufferAttributes>, import("@anov/3d-core").Material | import("@anov/3d-core").Material[], import("@anov/3d-core").Object3DEventMap>;
|
|
18
|
-
get uri(): string;
|
|
19
|
-
set uri(value: string);
|
|
20
|
-
get height(): number;
|
|
21
|
-
set height(newValue: number);
|
|
22
|
-
get color(): string;
|
|
23
|
-
set color(newValue: string);
|
|
24
|
-
get alpha(): number;
|
|
25
|
-
set alpha(newValue: number);
|
|
26
|
-
get corner(): number;
|
|
27
|
-
set corner(newValue: number);
|
|
28
|
-
get close(): boolean;
|
|
29
|
-
set close(newValue: boolean);
|
|
30
|
-
_initParams(option: FenceOption): void;
|
|
31
|
-
delete(): void;
|
|
32
|
-
dispose(): void;
|
|
33
|
-
addReloadListener(callback: Function): void;
|
|
34
|
-
}
|
|
35
|
-
export default FenceBase;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { Mesh, Object3D, Vector3 } from '@anov/3d-core';
|
|
2
|
-
import { ShaderMaterial } from '@anov/3d-core';
|
|
3
|
-
import type { FenceOption } from '../type';
|
|
4
|
-
import FenceBase from './FenceBase';
|
|
5
|
-
declare class Fence_Base_01 extends FenceBase {
|
|
6
|
-
constructor(option: FenceOption, areaInstance: Object3D);
|
|
7
|
-
create(): void;
|
|
8
|
-
createFenceMesh(points: Vector3[], radius: number, close: boolean, height: number, color: string, alpha: number): Mesh<import("@anov/3d-core").BufferGeometry<import("@anov/3d-core").NormalBufferAttributes>, ShaderMaterial, import("@anov/3d-core").Object3DEventMap>;
|
|
9
|
-
createFenceMaterial(height: number, color: string, alpha: number): ShaderMaterial;
|
|
10
|
-
}
|
|
11
|
-
export default Fence_Base_01;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { Mesh, Object3D, Vector3 } from '@anov/3d-core';
|
|
2
|
-
import { ShaderMaterial } from '@anov/3d-core';
|
|
3
|
-
import type { FenceOption } from '../type';
|
|
4
|
-
import FenceBase from './FenceBase';
|
|
5
|
-
declare class Fence_Feeting_01 extends FenceBase {
|
|
6
|
-
constructor(option: FenceOption, areaInstance: Object3D);
|
|
7
|
-
create(): void;
|
|
8
|
-
createFenceMesh(points: Vector3[], radius: number, close: boolean, height: number, color: string, alpha: number): Mesh<import("@anov/3d-core").BufferGeometry<import("@anov/3d-core").NormalBufferAttributes>, ShaderMaterial, import("@anov/3d-core").Object3DEventMap>;
|
|
9
|
-
createFenceMaterial(height: number, color: string, alpha: number): ShaderMaterial;
|
|
10
|
-
}
|
|
11
|
-
export default Fence_Feeting_01;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { Mesh, Object3D, Vector3 } from '@anov/3d-core';
|
|
2
|
-
import { ShaderMaterial } from '@anov/3d-core';
|
|
3
|
-
import type { FenceOption } from '../type';
|
|
4
|
-
import FenceBase from './FenceBase';
|
|
5
|
-
declare class Fence_Roll_01 extends FenceBase {
|
|
6
|
-
constructor(option: FenceOption, areaInstance: Object3D);
|
|
7
|
-
create(): void;
|
|
8
|
-
createFenceMesh(points: Vector3[], radius: number, close: boolean, height: number, color: string, alpha: number): Mesh<import("@anov/3d-core").BufferGeometry<import("@anov/3d-core").NormalBufferAttributes>, ShaderMaterial, import("@anov/3d-core").Object3DEventMap>;
|
|
9
|
-
createFenceMaterial(height: number, color: string, alpha: number): ShaderMaterial;
|
|
10
|
-
}
|
|
11
|
-
export default Fence_Roll_01;
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import type { Line2, Mesh, Object3D, Vector3 } from '@anov/3d-core';
|
|
2
|
-
import ObjectLayer from '../../Base/ObjectLayer';
|
|
3
|
-
import type { FillAreaOption } from '../type';
|
|
4
|
-
declare class FillAreaBase extends ObjectLayer {
|
|
5
|
-
_mesh: Mesh | Line2;
|
|
6
|
-
_alpha: number;
|
|
7
|
-
_color: string;
|
|
8
|
-
_corner: number;
|
|
9
|
-
_close: boolean;
|
|
10
|
-
_points: Vector3[];
|
|
11
|
-
_uri: string;
|
|
12
|
-
_option: FillAreaOption;
|
|
13
|
-
_listeners: Set<unknown>;
|
|
14
|
-
private _areaInstance;
|
|
15
|
-
constructor(option: FillAreaOption, areaInstance: Object3D);
|
|
16
|
-
get mesh(): Mesh<import("@anov/3d-core").BufferGeometry<import("@anov/3d-core").NormalBufferAttributes>, import("@anov/3d-core").Material | import("@anov/3d-core").Material[], import("@anov/3d-core").Object3DEventMap> | Line2;
|
|
17
|
-
get uri(): string;
|
|
18
|
-
set uri(value: string);
|
|
19
|
-
get alpha(): number;
|
|
20
|
-
set alpha(newValue: number);
|
|
21
|
-
get color(): string;
|
|
22
|
-
set color(newValue: string);
|
|
23
|
-
get corner(): number;
|
|
24
|
-
set corner(newValue: number);
|
|
25
|
-
get close(): boolean;
|
|
26
|
-
set close(newValue: boolean);
|
|
27
|
-
_initParams(option: FillAreaOption): void;
|
|
28
|
-
delete(): void;
|
|
29
|
-
dispose(): void;
|
|
30
|
-
addReloadListener(callback: Function): void;
|
|
31
|
-
}
|
|
32
|
-
export default FillAreaBase;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { Object3D, Vector3 } from '@anov/3d-core';
|
|
2
|
-
import { ExtrudeGeometry, Mesh, MeshBasicMaterial } from '@anov/3d-core';
|
|
3
|
-
import * as THREE from '@anov/3d-core';
|
|
4
|
-
import type { FillAreaOption } from '../type';
|
|
5
|
-
import FillAreaBase from './FillAreaBase';
|
|
6
|
-
declare class FillArea_Face_01 extends FillAreaBase {
|
|
7
|
-
constructor(option: FillAreaOption, areaInstance: Object3D);
|
|
8
|
-
create(): void;
|
|
9
|
-
createMesh(points: Vector3[], color: string, alpha: number): Mesh<ExtrudeGeometry, MeshBasicMaterial, THREE.Object3DEventMap>;
|
|
10
|
-
}
|
|
11
|
-
export default FillArea_Face_01;
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { Line2, Vector3 } from '@anov/3d-core';
|
|
2
|
-
import * as THREE from '@anov/3d-core';
|
|
3
|
-
import type { FillAreaOption } from '../type';
|
|
4
|
-
import FillAreaBase from './FillAreaBase';
|
|
5
|
-
declare class FillArea_Line_01 extends FillAreaBase {
|
|
6
|
-
constructor(option: FillAreaOption, areaInstance: THREE.Object3D);
|
|
7
|
-
create(): void;
|
|
8
|
-
createMesh(points: Vector3[], color: string, alpha: number): Line2;
|
|
9
|
-
}
|
|
10
|
-
export default FillArea_Line_01;
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|