15 #include "physxSegment.h" 16 #include "physxManager.h" 49 nassertv_always(!p.
is_nan());
73 nassertv_always(!p.
is_nan());
101 _segment.computeDirection(nDir);
102 PhysxManager::update_point3_from_nxVec3(dir, nDir);
114 return _segment.computeLength();
128 _segment.computePoint(nP, t);
129 PhysxManager::update_point3_from_nxVec3(p, nP);
141 return _segment.computeSquareLength();
153 nassertv_always(!origin.
is_nan());
154 nassertv_always(!direction.
is_nan());
static NxVec3 point3_to_nxVec3(const LPoint3f &p)
Converts from LPoint3f to NxVec3.
LPoint3f get_p0() const
Returns the start point of the segment.
This is a three-component vector distance (as opposed to a three-component point, which represents a ...
This is a three-component point in space (as opposed to a three-component vector, which represents a ...
bool is_nan() const
Returns true if any component of the vector is not-a-number, false otherwise.
float compute_square_length() const
Returns the square distance from the segment's start point to it's end point.
LPoint3f get_origin() const
Returns the start point of the segment.
float compute_length() const
Returns the distance from the segment's start point to it's end point.
void set_p0(LPoint3f p)
Sets the start point of the segment.
static NxVec3 vec3_to_nxVec3(const LVector3f &v)
Converts from LVector3f to NxVec3.
static LVector3f nxVec3_to_vec3(const NxVec3 &v)
Converts from NxVec3 to LVector3f.
LPoint3f get_p1() const
Returns the end point of the segment.
void set_p1(LPoint3f p)
Sets the end point of the segment.
void compute_point(LPoint3f &p, float t) const
Computes a point on the segment.
void compute_direction(LPoint3f &dir) const
Returns the direction vector from the segment's start point to it's end point.
static LPoint3f nxVec3_to_point3(const NxVec3 &p)
Converts from NxVec3 to LPoint3f.
void set_origin_direction(const LPoint3f &origin, const LVector3f &direction)
Setup this segment from origin (start point) and direction vector.