HDK
|
#include <capsuleMeshGenerator.h>
Static Public Member Functions | |
static GEOMUTIL_API size_t | ComputeNumPoints (const size_t numRadial, const size_t numCapAxial, const bool closedSweep=true) |
static GEOMUTIL_API PxOsdMeshTopology | GenerateTopology (const size_t numRadial, const size_t numCapAxial, const bool closedSweep=true) |
template<typename PointIterType , typename ScalarType , typename Enabled = typename _EnableIfGfVec3Iterator<PointIterType>::type> | |
static void | GeneratePoints (PointIterType iter, const size_t numRadial, const size_t numCapAxial, const ScalarType radius, const ScalarType height, const GfMatrix4d *framePtr=nullptr) |
template<typename PointIterType , typename ScalarType , typename Enabled = typename _EnableIfGfVec3Iterator<PointIterType>::type> | |
static void | GeneratePoints (PointIterType iter, const size_t numRadial, const size_t numCapAxial, const ScalarType bottomRadius, const ScalarType topRadius, const ScalarType height, const ScalarType sweepDegrees, const GfMatrix4d *framePtr=nullptr) |
![]() | |
template<typename PointIterType , typename Enabled = typename _EnableIfNotGfVec3Iterator<PointIterType>::type> | |
static void | GeneratePoints (PointIterType iter,...) |
Static Public Attributes | |
static constexpr size_t | minNumRadial = 3 |
static constexpr size_t | minNumCapAxial = 1 |
Additional Inherited Members | |
![]() | |
enum | _CapStyle { CapStyleNone, CapStyleSharedEdge, CapStyleSeparateEdge } |
![]() | |
static PxOsdMeshTopology | _GenerateCappedQuadTopology (const size_t numRadial, const size_t numQuadStrips, const _CapStyle bottomCapStyle, const _CapStyle topCapStyle, const bool closedSweep) |
static size_t | _ComputeNumRadialPoints (const size_t numRadial, const bool closedSweep) |
This class provides an implementation for generating topology and point positions on a capsule. The simplest form takes a radius and height and is a cylinder capped by two hemispheres that is centered at the origin. The generated capsule is made up of circular cross-sections in the XY plane. Each cross-section has numRadial segments. Successive cross-sections for each of the hemispheres are generated at numCapAxial locations along the Z and -Z axes respectively. The height is aligned with the Z axis and represents the height of just the cylindrical portion.
An optional transform may be provided to GeneratePoints to orient the capsule as necessary (e.g., whose height is along the Y axis) .
An additional overload of GeneratePoints is provided to specify different radii and heights for the bottom and top caps, as well as the sweep angle for the capsule about the +Z axis. When the sweep is less than 360 degrees, the generated geometry is not closed.
Usage:
Definition at line 69 of file capsuleMeshGenerator.h.
|
static |
|
inlinestatic |
Definition at line 92 of file capsuleMeshGenerator.h.
|
inlinestatic |
Definition at line 112 of file capsuleMeshGenerator.h.
|
static |
|
static |
Definition at line 74 of file capsuleMeshGenerator.h.
|
static |
Definition at line 73 of file capsuleMeshGenerator.h.