2.9 KiB
2.9 KiB
| outline | ||
|---|---|---|
|
ParametricGeometryBase
- 源文件:
packages/sdk/src/parametric/ParametricGeometryBase.ts - 文档位置:
packages/docs/api/parametric/ParametricGeometryBase.md
类:ParametricGeometryBase
- 作用:参数化几何体基类 提供碰撞检测和 CSG 操作的通用功能
- 继承/实现:
extends THREE.Mesh
构造函数
new ParametricGeometryBase()
-
作用:创建 ParametricGeometryBase 实例。
-
入参:无
-
出参:
ParametricGeometryBase -
返回说明:返回当前类实例。
方法
addCollisionTarget(target: THREE.Mesh, operationType?: CSGOperationType, maxCollisionCount?: number): void
-
作用:添加碰撞目标
-
入参:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
target |
THREE.Mesh |
是 | - 碰撞目标网格 |
operationType |
CSGOperationType |
否 | - CSG 操作类型,默认为 HOLLOW_SUBTRACTION |
maxCollisionCount |
number |
否 | - 最大碰撞处理次数,默认 1,-1 为无限碰撞 |
- 出参:
void - 返回说明:无返回值。
removeCollisionTarget(target: THREE.Mesh): void
-
作用:移除碰撞目标
-
入参:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
target |
THREE.Mesh |
是 | - 要移除的碰撞目标 |
- 出参:
void - 返回说明:无返回值。
clearCollisionTargets(): void
-
作用:清除所有碰撞目标
-
入参:无
-
出参:
void -
返回说明:无返回值。
getCollisionTargets(): THREE.Mesh<THREE.BufferGeometry<THREE.NormalBufferAttributes, THREE.BufferGeometryEventMap>, THREE.Material<THREE.MaterialEventMap> | THREE.Material<THREE.MaterialEventMap>[], THREE.Object3DEventMap>[]
-
作用:获取所有碰撞目标
-
入参:无
-
出参:
THREE.Mesh<THREE.BufferGeometry<THREE.NormalBufferAttributes, THREE.BufferGeometryEventMap>, THREE.Material<THREE.MaterialEventMap> \| THREE.Material<THREE.MaterialEventMap>[], THREE.Object3DEventMap>[] -
返回说明:返回数组结果,元素类型为
THREE.Mesh<THREE.BufferGeometry<THREE.NormalBufferAttributes, THREE.BufferGeometryEventMap>, THREE.Material<THREE.MaterialEventMap> | THREE.Material<THREE.MaterialEventMap>[], THREE.Object3DEventMap>。
resetProcessedTargets(): void
-
作用:重置碰撞处理计数 允许重新对目标执行 CSG 操作
-
入参:无
-
出参:
void -
返回说明:无返回值。
updateGeometry(): void
-
作用:抽象方法,子类必须实现
-
入参:无
-
出参:
void -
返回说明:无返回值。
dispose(): void
-
作用:释放资源并销毁当前实例。
-
入参:无
-
出参:
void -
返回说明:无返回值。
构造示例
- 当前 Demo 中没有直接展示
ParametricGeometryBase的构造调用。
函数示例
- 当前 Demo 中没有直接展示
ParametricGeometryBase的公开方法调用。