32 float GetConstant()
const {
return mNormalAndConstant.GetW(); }
74 a.
SplatW() * (b.
Swizzle<
SWIZZLE_Z,
SWIZZLE_X,
SWIZZLE_Y,
SWIZZLE_UNUSED>() *
c.
Swizzle<
SWIZZLE_Y,
SWIZZLE_Z,
SWIZZLE_X,
SWIZZLE_UNUSED>() - b.
Swizzle<
SWIZZLE_Y,
SWIZZLE_Z,
SWIZZLE_X,
SWIZZLE_UNUSED>() *
c.
Swizzle<
SWIZZLE_Z,
SWIZZLE_X,
SWIZZLE_Y,
SWIZZLE_UNUSED>())
75 + a.
Swizzle<
SWIZZLE_Y,
SWIZZLE_X,
SWIZZLE_X,
SWIZZLE_UNUSED>() * (b.
Swizzle<
SWIZZLE_W,
SWIZZLE_Z,
SWIZZLE_W,
SWIZZLE_UNUSED>() *
c.
Swizzle<
SWIZZLE_Z,
SWIZZLE_W,
SWIZZLE_Y,
SWIZZLE_UNUSED>() - b.
Swizzle<
SWIZZLE_Z,
SWIZZLE_W,
SWIZZLE_Y,
SWIZZLE_UNUSED>() *
c.
Swizzle<
SWIZZLE_W,
SWIZZLE_Z,
SWIZZLE_W,
SWIZZLE_UNUSED>())
76 + a.
Swizzle<
SWIZZLE_Z,
SWIZZLE_Z,
SWIZZLE_Y,
SWIZZLE_UNUSED>() * (b.
Swizzle<
SWIZZLE_Y,
SWIZZLE_W,
SWIZZLE_X,
SWIZZLE_UNUSED>() *
c.
Swizzle<
SWIZZLE_W,
SWIZZLE_X,
SWIZZLE_W,
SWIZZLE_UNUSED>() - b.
Swizzle<
SWIZZLE_W,
SWIZZLE_X,
SWIZZLE_W,
SWIZZLE_UNUSED>() *
c.
Swizzle<
SWIZZLE_Y,
SWIZZLE_W,
SWIZZLE_X,
SWIZZLE_UNUSED>());
83 Vec4 mNormalAndConstant;
#define JPH_NAMESPACE_END
Definition Core.h:367
#define JPH_NAMESPACE_BEGIN
Definition Core.h:361
AllocateFunction Allocate
Definition Memory.cpp:59
#define JPH_OVERRIDE_NEW_DELETE
Macro to override the new and delete functions.
Definition Memory.h:29
@ SWIZZLE_Z
Use the Z component.
Definition Swizzle.h:14
@ SWIZZLE_W
Use the W component.
Definition Swizzle.h:15
@ SWIZZLE_X
Use the X component.
Definition Swizzle.h:12
@ SWIZZLE_UNUSED
We always use the Z component when we don't specifically want to initialize a value,...
Definition Swizzle.h:16
@ SWIZZLE_Y
Use the Y component.
Definition Swizzle.h:13
Holds a 4x4 matrix of floats, but supports also operations on the 3x3 upper left part of the matrix.
Definition Mat44.h:13
An infinite plane described by the formula X . Normal + Constant = 0.
Definition Plane.h:11
Plane(Vec3Arg inNormal, float inConstant)
Definition Plane.h:18
Plane GetTransformed(Mat44Arg inTransform) const
Transform the plane by a matrix.
Definition Plane.h:39
void SetConstant(float inConstant)
Definition Plane.h:33
float GetConstant() const
Definition Plane.h:32
static Plane sFromPointAndNormal(DVec3Arg inPoint, Vec3Arg inNormal)
Create from point and normal, double precision version that more accurately calculates the plane cons...
Definition Plane.h:24
Vec3 GetNormal() const
Definition Plane.h:30
Plane(Vec4Arg inNormalAndConstant)
Definition Plane.h:17
float SignedDistance(Vec3Arg inPoint) const
Distance point to plane.
Definition Plane.h:46
void SetNormal(Vec3Arg inNormal)
Definition Plane.h:31
static Plane sFromPointAndNormal(Vec3Arg inPoint, Vec3Arg inNormal)
Create from point and normal.
Definition Plane.h:21
static bool sIntersectPlanes(const Plane &inP1, const Plane &inP2, const Plane &inP3, Vec3 &outPoint)
Returns intersection point between 3 planes.
Definition Plane.h:49
JPH_OVERRIDE_NEW_DELETE Plane()=default
Constructor.
static Plane sFromPointsCCW(Vec3Arg inV1, Vec3Arg inV2, Vec3Arg inV3)
Create from 3 counter clockwise points.
Definition Plane.h:27
Plane Offset(float inDistance) const
Offset the plane (positive value means move it in the direction of the plane normal)
Definition Plane.h:36
JPH_INLINE float Dot(Vec3Arg inV2) const
Dot product.
Definition Vec3.inl:637
static JPH_INLINE Vec3 sZero()
Vector with all zeros.
Definition Vec3.inl:107
JPH_INLINE Vec4 SplatW() const
Replicate the W component to all components.
Definition Vec4.inl:580
JPH_INLINE Vec4 Swizzle() const
Swizzle the elements in inV.