24#ifndef _SiShapeRay_h_Included_
25#define _SiShapeRay_h_Included_
109 double candidatePlane[sz];
115 for (
int i = 0; i != sz; i++)
120 candidatePlane[i] = minPt[i];
126 candidatePlane[i] = maxPt[i];
142 for (
int i = 0; i != sz; i++)
144 if (quadrant[i] != 0 &&
m_vecDir[i] != 0.)
151 for (
int i = 1; i != sz; i++)
153 if (maxT[whichPlane] < maxT[i])
157 if (maxT[whichPlane] < 0.)
162 for (
int i = 0; i != sz; i++)
167 if (coord[i] < minPt[i] || coord[i] > maxPt[i])
174 coord[i] = candidatePlane[i];
bool hasStartPoint(OdGePoint3d &startPoint) const
const OdGePoint3d & maxPoint() const
const OdGePoint3d & minPoint() const
OdGeVector3d direction() const
OdGePoint3d & transformBy(const OdGeMatrix3d &xfm)
OdGeVector3d & transformBy(const OdGeMatrix3d &xfm)
OdSiShapeRay(const OdGePoint3d &pointStart, const OdGeVector3d &vecDir)
virtual void transform(const OdGeMatrix3d &tf)
bool contains(const OdGeExtents3d &extents, bool planar, const OdGeTol &tol) const
virtual OdSiShape * clone() const
OdSiShapeRay(const OdGeRay3d &ray)
bool intersects(const OdGeExtents3d &extents, bool planar, const OdGeTol &tol) const