24 VertexWelding(uint32_t maxVertexCount, uint32_t maxBucketCount,
float gridCellSize,
float weldEpsilon,
float auxEpsilon,
LOCATE_CALLBACK clb);
45 int32_t ComputeHashBucketIndex(int32_t
x, int32_t
y, int32_t
z);
47 void AddVertexToBucket(
const Vertex& v, uint32_t bucket);
49 std::vector<int32_t> first;
50 std::vector<int32_t> next;
51 std::vector<Vertex> vertex;
53 const uint32_t maxVertexCount;
54 const uint32_t maxBucketCount;
55 const float gridCellSizeInv;
56 const float weldEpsilon;
57 const float auxEpsilon;
69 Mode() { ca = 0; cb = 0; ci = -1; };
70 Mode(int32_t a, int32_t b, int32_t c) : ca(a), cb(b), ci(c)
84 return Mode(1, 1, -1);
91 return Mode(1, 0, -1);
126 int32_t computeV03(
const PxVec3& point);
127 int32_t computeV30(
const PxVec3& point);
133 void computeRetained(
const Mesh* mesh,
const physx::PxBounds3& bMeshBoudning,
134 int32_t(
BooleanToolV2::*computeV3)(
const physx::PxVec3&), int32_t btC, int32_t btCI, int32_t parentFacetOffset,
136 struct FaceOrientation* fo =
nullptr,
const std::vector<bool>* validAdjacentFacet =
nullptr);
152 int32_t* projectedWinding1;
164 int32_t* projectedWinding2;
166 uint32_t* edgeFacetTestA;
167 uint32_t* edgeFacetTestB;
173 int32_t* edgeCrossCheckTest;
206 uint32_t facetListSize;
207 uint32_t pointIndicesList[1024];
210 physx::PxVec2 projectedPointList[1024];
211 uint32_t projectedPointCount;
213 uint32_t visitedFlagValue[1024];
214 uint32_t currentFlagValue;
222 uint32_t mInpEdgeCount;
223 uint32_t maxTriangleCount;
Definition: NvBlastExtRTGeometry.h:18
ProjectionDirections
Definition: NvBlastExtAuthoringInternalCommon.h:93
int32_t WeldVertex(const Vertex *v)
Definition: NvBlastExtRT.h:68
uint32_t * triangleIndices
Definition: NvBlastExtRTGeometry.h:198
Definition: NvBlastExtRT.h:144
Definition: NvBlastExtRTGeometry.h:189
SIMD_FORCE_INLINE const btScalar & x() const
Return the x value.
Definition: btVector3.h:275
uint32_t point
Definition: NvBlastExtRTGeometry.h:191
int32_t LocateVertexInBucket(const Vertex &v, uint32_t bucket, bool &isAllDataTheSame)
Definition: NvBlastExtAuthoringAccelerator.h:47
Definition: NvBlastExtAuthoringMesh.h:42
const Vertex * getVertices() const
Definition: NvBlastExtRTGeometry.h:26
Vertex * weldedVertices
Definition: NvBlastExtRTGeometry.h:196
Definition: NvBlastExtRTGeometry.h:180
Definition: NvBlastExtAuthoringPatternGenerator.h:85
uint32_t prevPoint
Definition: NvBlastExtRTGeometry.h:193
SIMD_FORCE_INLINE const btScalar & y() const
Return the y value.
Definition: btVector3.h:277
uint32_t getVerticesCount() const
Definition: NvBlastExtRTGeometry.h:30
int32_t(VertexWelding::* LOCATE_CALLBACK)(const Vertex &v, uint32_t bucket, bool &isAllDataTheSame)
Definition: NvBlastExtRTGeometry.h:22
uint32_t nextPoint
Definition: NvBlastExtRTGeometry.h:192
uint32_t weldedCount
Definition: NvBlastExtRTGeometry.h:197
uint32_t triangleCount
Definition: NvBlastExtRTGeometry.h:199
SIMD_FORCE_INLINE const btScalar & z() const
Return the z value.
Definition: btVector3.h:279
VertexWelding(uint32_t maxVertexCount, uint32_t maxBucketCount, float gridCellSize, float weldEpsilon, float auxEpsilon, LOCATE_CALLBACK clb)
Definition: NvBlastExtAuthoringTypes.h:57
Definition: NvBlastExtAuthoringTypes.h:67
Definition: NvBlastExtRT.h:126
Definition: NvBlastExtRT.h:120
Definition: NvBlastArray.h:37
int32_t LocateVertexInBucketOnlyPosition(const Vertex &v, uint32_t bucket, bool &isAllDataTheSame)