ExtendedTriangle
是Three.bvh-mesh
中用于表示三角形的类。它扩展了Triangle
类,使其包含更多的属性和方法。 ExtendedTriangle
类的目的是减少代码冗余并增强性能。
ExtendedTriangle
类拥有Triangle
类的所有属性,此处不再赘述。此外,它还有以下属性:
aabb
: 一个包围盒,表示该三角形的边界范围。
centroid
: 三角形的质心,用于计算该三角形的中心点位置。
uv
: 一个数组,包含了每个顶点的映射到纹理(uv坐标系)上的点的坐标。
ExtendedTriangle
类拥有Triangle
类的所有方法和构造函数,此处不再赘述。此外,它还有以下方法:
intersectRay(ray: Ray, target: Vector3): number
: 用于检测一条给定的射线与该三角形是否相交。如果相交,这个方法会返回一个表示距离的数值。否则,返回-1
。
toString(): string
: 用于以字符串形式返回三角形的顶点、法线和uv坐标等信息。