From 3dfe2108cfab31ba3ee5527e217d0d8e99a51162 Mon Sep 17 00:00:00 2001 From: git perforce import user Date: Tue, 25 Oct 2016 12:29:14 -0600 Subject: Initial commit: PhysX 3.4.0 Update @ 21294896 APEX 1.4.0 Update @ 21275617 [CL 21300167] --- .../PhysXAPI/files/classPxGeometryQuery.html | 512 +++++++++++++++++++++ 1 file changed, 512 insertions(+) create mode 100644 PhysX_3.4/Documentation/PhysXAPI/files/classPxGeometryQuery.html (limited to 'PhysX_3.4/Documentation/PhysXAPI/files/classPxGeometryQuery.html') diff --git a/PhysX_3.4/Documentation/PhysXAPI/files/classPxGeometryQuery.html b/PhysX_3.4/Documentation/PhysXAPI/files/classPxGeometryQuery.html new file mode 100644 index 00000000..fee67ecc --- /dev/null +++ b/PhysX_3.4/Documentation/PhysXAPI/files/classPxGeometryQuery.html @@ -0,0 +1,512 @@ + + + NVIDIA(R) PhysX(R) SDK 3.4 API Reference: PxGeometryQuery Class Reference + + + + + + + +
+

PxGeometryQuery Class Reference
+ +[Geomutils] +

Collection of geometry object queries (sweeps, raycasts, overlaps, ...). +More... +

+#include <PxGeometryQuery.h> +

+ +

+List of all members. + + + + + + + + + + + + + + + + + + + + + + + +

Static Public Member Functions

static PX_PHYSX_COMMON_API bool sweep (const PxVec3 &unitDir, const PxReal maxDist, const PxGeometry &geom0, const PxTransform &pose0, const PxGeometry &geom1, const PxTransform &pose1, PxSweepHit &sweepHit, PxHitFlags hitFlags=PxHitFlag::eDEFAULT, const PxReal inflation=0.f)
 Sweep a specified geometry object in space and test for collision with a given object.
static PX_PHYSX_COMMON_API bool overlap (const PxGeometry &geom0, const PxTransform &pose0, const PxGeometry &geom1, const PxTransform &pose1)
 Overlap test for two geometry objects.
static PX_PHYSX_COMMON_API PxU32 raycast (const PxVec3 &origin, const PxVec3 &unitDir, const PxGeometry &geom, const PxTransform &pose, PxReal maxDist, PxHitFlags hitFlags, PxU32 maxHits, PxRaycastHit *PX_RESTRICT rayHits)
 Raycast test against a geometry object.
static PX_PHYSX_COMMON_API bool computePenetration (PxVec3 &direction, PxF32 &depth, const PxGeometry &geom0, const PxTransform &pose0, const PxGeometry &geom1, const PxTransform &pose1)
 Compute minimum translational distance (MTD) between two geometry objects.
static PX_PHYSX_COMMON_API PxReal pointDistance (const PxVec3 &point, const PxGeometry &geom, const PxTransform &pose, PxVec3 *closestPoint=NULL)
 Computes distance between a point and a geometry object.
static PX_PHYSX_COMMON_API
+PxBounds3 
getWorldBounds (const PxGeometry &geom, const PxTransform &pose, float inflation=1.01f)
 get the bounds for a geometry object
static PX_PHYSX_COMMON_API bool isValid (const PxGeometry &geom)
 Checks if provided geometry is valid.
+


Detailed Description

+Collection of geometry object queries (sweeps, raycasts, overlaps, ...).

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
static PX_PHYSX_COMMON_API bool PxGeometryQuery::computePenetration (PxVec3 direction,
PxF32 &  depth,
const PxGeometry geom0,
const PxTransform pose0,
const PxGeometry geom1,
const PxTransform pose1 
) [static]
+
+
+ +

+Compute minimum translational distance (MTD) between two geometry objects. +

+All combinations of geom objects are supported except:

    +
  • plane/plane
  • plane/mesh
  • plane/heightfield
  • mesh/mesh
  • mesh/heightfield
  • heightfield/heightfield
+

+The function returns a unit vector ('direction') and a penetration depth ('depth').

+The depenetration vector D = direction * depth should be applied to the first object, to get out of the second object.

+Returned depth should always be positive or null.

+If objects do not overlap, the function can not compute the MTD and returns false.

+

Parameters:
+ + + + + + + +
[out] direction Computed MTD unit direction
[out] depth Penetration depth. Always positive or null.
[in] geom0 The first geometry object
[in] pose0 Pose of the first geometry object
[in] geom1 The second geometry object
[in] pose1 Pose of the second geometry object
+
+
Returns:
True if the MTD has successfully been computed, i.e. if objects do overlap.
+
See also:
PxGeometry PxTransform
+ +
+

+ +

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
static PX_PHYSX_COMMON_API PxBounds3 PxGeometryQuery::getWorldBounds (const PxGeometry geom,
const PxTransform pose,
float  inflation = 1.01f 
) [static]
+
+
+ +

+get the bounds for a geometry object +

+

Parameters:
+ + + + +
[in] geom The geometry object
[in] pose Pose of the geometry object
[in] inflation Scale factor for computed world bounds. Box extents are multiplied by this value.
+
+
Returns:
The bounds of the object
+
See also:
PxGeometry PxTransform
+ +

Referenced by PxShapeExt::getWorldBounds().

+ +
+

+ +

+
+ + + + + + + + + +
static PX_PHYSX_COMMON_API bool PxGeometryQuery::isValid (const PxGeometry geom  )  [static]
+
+
+ +

+Checks if provided geometry is valid. +

+

Parameters:
+ + +
[in] geom The geometry object.
+
+
Returns:
True if geometry is valid.
+
See also:
PxGeometry PxSphereGeometry, PxCapsuleGeometry, PxBoxGeometry, PxConvexGeometry
+ +
+

+ +

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
static PX_PHYSX_COMMON_API bool PxGeometryQuery::overlap (const PxGeometry geom0,
const PxTransform pose0,
const PxGeometry geom1,
const PxTransform pose1 
) [static]
+
+
+ +

+Overlap test for two geometry objects. +

+All combinations are supported except:

+
Parameters:
+ + + + + +
[in] geom0 The first geometry object
[in] pose0 Pose of the first geometry object
[in] geom1 The second geometry object
[in] pose1 Pose of the second geometry object
+
+
Returns:
True if the two geometry objects overlap
+
See also:
PxGeometry PxTransform
+ +

Referenced by PxShapeExt::overlap().

+ +
+

+ +

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
static PX_PHYSX_COMMON_API PxReal PxGeometryQuery::pointDistance (const PxVec3 point,
const PxGeometry geom,
const PxTransform pose,
PxVec3 closestPoint = NULL 
) [static]
+
+
+ +

+Computes distance between a point and a geometry object. +

+Currently supported geometry objects: box, sphere, capsule, convex.

+

Parameters:
+ + + + + +
[in] point The point P
[in] geom The geometry object
[in] pose Pose of the geometry object
[out] closestPoint Optionally returned closest point to P on the geom object. Only valid when returned distance is strictly positive.
+
+
Returns:
Square distance between the point and the geom object, or 0.0 if the point is inside the object, or -1.0 if the geometry type is not supported.
+
See also:
PxGeometry PxTransform
+ +
+

+ +

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
static PX_PHYSX_COMMON_API PxU32 PxGeometryQuery::raycast (const PxVec3 origin,
const PxVec3 unitDir,
const PxGeometry geom,
const PxTransform pose,
PxReal  maxDist,
PxHitFlags  hitFlags,
PxU32  maxHits,
PxRaycastHit *PX_RESTRICT  rayHits 
) [static]
+
+
+ +

+Raycast test against a geometry object. +

+

Parameters:
+ + + + + + + + + +
[in] origin The origin of the ray to test the geometry object against
[in] unitDir Normalized direction of the ray to test the geometry object against
[in] geom The geometry object to test the ray against
[in] pose Pose of the geometry object
[in] maxDist Maximum ray length, has to be in the [0, inf) range
[in] hitFlags Specification of the kind of information to retrieve on hit. Combination of PxHitFlag flags
[in] maxHits max number of returned hits = size of 'rayHits' buffer
[out] rayHits Raycast hits information
+
+
Returns:
Number of hits between the ray and the geometry object
+
See also:
PxRaycastHit PxGeometry PxTransform
+ +

Referenced by PxShapeExt::raycast().

+ +
+

+ +

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
static PX_PHYSX_COMMON_API bool PxGeometryQuery::sweep (const PxVec3 unitDir,
const PxReal  maxDist,
const PxGeometry geom0,
const PxTransform pose0,
const PxGeometry geom1,
const PxTransform pose1,
PxSweepHit sweepHit,
PxHitFlags  hitFlags = PxHitFlag::eDEFAULT,
const PxReal  inflation = 0.f 
) [static]
+
+
+ +

+Sweep a specified geometry object in space and test for collision with a given object. +

+The following combinations are supported.

+

+
Parameters:
+ + + + + + + + + + +
[in] unitDir Normalized direction along which object geom0 should be swept
[in] maxDist Maximum sweep distance, has to be in the [0, inf) range
[in] geom0 The geometry object to sweep. Supported geometries are PxSphereGeometry, PxCapsuleGeometry, PxBoxGeometry and PxConvexMeshGeometry
[in] pose0 Pose of the geometry object to sweep
[in] geom1 The geometry object to test the sweep against
[in] pose1 Pose of the geometry object to sweep against
[out] sweepHit The sweep hit information. Only valid if this method returns true.
[in] hitFlags Specify which properties per hit should be computed and written to result hit array. Combination of PxHitFlag flags
[in] inflation Surface of the swept shape is additively extruded in the normal direction, rounding corners and edges.
+
+
Returns:
True if the swept geometry object geom0 hits the object geom1
+
See also:
PxSweepHit PxGeometry PxTransform
+ +

Referenced by PxShapeExt::sweep().

+ +
+

+


The documentation for this class was generated from the following file: +
+ +

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