PxMeshQuery.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2008-2015, NVIDIA CORPORATION. All rights reserved.
3  *
4  * NVIDIA CORPORATION and its licensors retain all intellectual property
5  * and proprietary rights in and to this software, related documentation
6  * and any modifications thereto. Any use, reproduction, disclosure or
7  * distribution of this software and related documentation without an express
8  * license agreement from NVIDIA CORPORATION is strictly prohibited.
9  */
10 // Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved.
11 // Copyright (c) 2001-2004 NovodeX AG. All rights reserved.
12 
13 
14 #ifndef PX_PHYSICS_GEOMUTILS_PX_MESH_QUERY
15 #define PX_PHYSICS_GEOMUTILS_PX_MESH_QUERY
16 
22 #include "PxQueryReport.h"
23 
24 #ifndef PX_DOXYGEN
25 namespace physx
26 {
27 #endif
28 
29 class PxGeometry;
33 
34 class PxTriangle;
35 
37 {
38 public:
39 
54  PX_PHYSX_COMMON_API static void getTriangle(const PxTriangleMeshGeometry& triGeom, const PxTransform& transform, PxTriangleID triangleIndex, PxTriangle& triangle, PxU32* vertexIndices=NULL, PxU32* adjacencyIndices=NULL);
55 
56 
71  PX_PHYSX_COMMON_API static void getTriangle(const PxHeightFieldGeometry& hfGeom, const PxTransform& transform, PxTriangleID triangleIndex, PxTriangle& triangle, PxU32* vertexIndices=NULL, PxU32* adjacencyIndices=NULL);
72 
73 
91  PX_PHYSX_COMMON_API static PxU32 findOverlapTriangleMesh( const PxGeometry& geom, const PxTransform& geomPose,
92  const PxTriangleMeshGeometry& meshGeom, const PxTransform& meshPose,
93  PxU32* results, PxU32 maxResults, PxU32 startIndex, bool& overflow);
94 
112  PX_PHYSX_COMMON_API static PxU32 findOverlapHeightField(const PxGeometry& geom, const PxTransform& geomPose,
113  const PxHeightFieldGeometry& hfGeom, const PxTransform& hfPose,
114  PxU32* results, PxU32 maxResults, PxU32 startIndex, bool& overflow);
115 
148  PX_PHYSX_COMMON_API static bool sweep(const PxVec3& unitDir,
149  const PxReal distance,
150  const PxGeometry& geom,
151  const PxTransform& pose,
152  PxU32 triangleCount,
153  const PxTriangle* triangles,
154  PxSweepHit& sweepHit,
155  PxHitFlags hintFlags = PxHitFlag::eDEFAULT,
156  const PxU32* cachedIndex = NULL,
157  const PxReal inflation = 0.0f,
158  bool doubleSided = false);
159 };
160 
161 
162 #ifndef PX_DOXYGEN
163 }
164 #endif
165 
167 #endif


Copyright © 2008-2015 NVIDIA Corporation, 2701 San Tomas Expressway, Santa Clara, CA 95050 U.S.A. All rights reserved. www.nvidia.com