|
MeVisLab Toolbox Reference
|
Functions | |
| MLWEM_EXPORT bool | isPointInsideWEMPatch (const Vector3 &position, WEMPatch *wemPatch) |
| MLWEM_EXPORT bool | isLineIntersectingFace (const Vector3 &startPos, const Vector3 &endPos, WEMFace *face, WEMPatch *wemPatch=nullptr) |
| Returns whether the given line (from startPos to endPos) intersects the given WEMFace. The wemPatch parameter is not in use and per default NULL. | |
| MLWEM_EXPORT bool | isLineIntersectingFace (Vector3 &intersectionPoint, const Vector3 &startPos, const Vector3 &endPos, WEMFace *face, WEMPatch *wemPatch=nullptr) |
| Returns whether the given line (from startPos to endPos) intersects the given WEMFace and fills up the intersection point. | |
| MLWEM_EXPORT bool | pointInsidePolygon (const Vector3 &point, const Vector3 *polygon, unsigned int numPoints) |
| MLWEM_EXPORT bool | isPointOnEdgeOrNode (const Vector3 &position, WEMFace *face) |
| Returns whether the given point lies on any node or edge of the given face. | |
| MLWEM_EXPORT bool | isPointOnFace (const Vector3 &position, WEMFace *face) |
| Returns whether the given point lies on any face of the given face. | |
| MLWEM_EXPORT bool | isPointInsideFace (const Vector3 &point, const WEMFace *face) |
| Returns whether the given point is in the given face. | |
| MLWEM_EXPORT bool | checkForEdgeNodeCrossing (const Vector3 &rayStart, const Vector3 &rayEnd, WEMFace *face) |
| Returns whether the given ray crosses any edge or node of the given face. | |
| MLWEM_EXPORT double | computeSegmentSegmentDistance (const Vector3 &start0, const Vector3 &end0, const Vector3 &start1, const Vector3 &end1, Vector3 &intersectionPoint) |
| Returns the minimum distance between the two given segments. If this distance is 0, the intersectionPoint is valid. | |
| MLWEM_EXPORT double | computePointSegmentDistance (const Vector3 &point, const Vector3 &segmentStart, const Vector3 &segmentEnd) |
| Returns the shortest distance of a given point to a segment, given by its start and end point. | |
| MLWEM_EXPORT double | computePointPlaneDistance (const Vector3 &point, const WEMFace *face) |
| Returns the distance of the given point to a plane, defined by the WEMFace (first position and normal of the face). | |
| MLWEM_EXPORT double | computePointTriangleDistance (const Vector3 &point, const WEMTriangle *triangle) |
| Returns the distance of the given point to the given triangle. | |
| bool | doLineSegmentsIntersect2D (const Vector2 &s1, const Vector2 &e1, const Vector2 &s2, const Vector2 &e2) |
| bool | isOnSegmentFor2DSegmentIntersectionTest (double xi, double yi, double xj, double yj, double xk, double yk) |
| char | computeDirectionFor2DSegmentIntersectionTest (double xi, double yi, double xj, double yj, double xk, double yk) |
Tool namespace for performing geometric operations on a WEMPatch. If you are looking for fast WEM ray intersection, have a look at the WEMBoundingVolumeHierarchy class in the MLWEMAcceleration project.
| MLWEM_EXPORT bool ml::WEMGeometry::checkForEdgeNodeCrossing | ( | const Vector3 & | rayStart, |
| const Vector3 & | rayEnd, | ||
| WEMFace * | face ) |
Returns whether the given ray crosses any edge or node of the given face.
References checkForEdgeNodeCrossing(), and MLWEM_EXPORT.
Referenced by checkForEdgeNodeCrossing().
| char ml::WEMGeometry::computeDirectionFor2DSegmentIntersectionTest | ( | double | xi, |
| double | yi, | ||
| double | xj, | ||
| double | yj, | ||
| double | xk, | ||
| double | yk ) |
References computeDirectionFor2DSegmentIntersectionTest().
Referenced by computeDirectionFor2DSegmentIntersectionTest().
| MLWEM_EXPORT double ml::WEMGeometry::computePointPlaneDistance | ( | const Vector3 & | point, |
| const WEMFace * | face ) |
Returns the distance of the given point to a plane, defined by the WEMFace (first position and normal of the face).
References computePointPlaneDistance(), and MLWEM_EXPORT.
Referenced by computePointPlaneDistance().
| MLWEM_EXPORT double ml::WEMGeometry::computePointSegmentDistance | ( | const Vector3 & | point, |
| const Vector3 & | segmentStart, | ||
| const Vector3 & | segmentEnd ) |
Returns the shortest distance of a given point to a segment, given by its start and end point.
References computePointSegmentDistance(), and MLWEM_EXPORT.
Referenced by computePointSegmentDistance().
| MLWEM_EXPORT double ml::WEMGeometry::computePointTriangleDistance | ( | const Vector3 & | point, |
| const WEMTriangle * | triangle ) |
Returns the distance of the given point to the given triangle.
References computePointTriangleDistance(), and MLWEM_EXPORT.
Referenced by computePointTriangleDistance().
| MLWEM_EXPORT double ml::WEMGeometry::computeSegmentSegmentDistance | ( | const Vector3 & | start0, |
| const Vector3 & | end0, | ||
| const Vector3 & | start1, | ||
| const Vector3 & | end1, | ||
| Vector3 & | intersectionPoint ) |
Returns the minimum distance between the two given segments. If this distance is 0, the intersectionPoint is valid.
References computeSegmentSegmentDistance(), and MLWEM_EXPORT.
Referenced by computeSegmentSegmentDistance().
| bool ml::WEMGeometry::doLineSegmentsIntersect2D | ( | const Vector2 & | s1, |
| const Vector2 & | e1, | ||
| const Vector2 & | s2, | ||
| const Vector2 & | e2 ) |
References doLineSegmentsIntersect2D().
Referenced by doLineSegmentsIntersect2D().
| MLWEM_EXPORT bool ml::WEMGeometry::isLineIntersectingFace | ( | const Vector3 & | startPos, |
| const Vector3 & | endPos, | ||
| WEMFace * | face, | ||
| WEMPatch * | wemPatch = nullptr ) |
Returns whether the given line (from startPos to endPos) intersects the given WEMFace. The wemPatch parameter is not in use and per default NULL.
References isLineIntersectingFace(), and MLWEM_EXPORT.
Referenced by isLineIntersectingFace(), and isLineIntersectingFace().
| MLWEM_EXPORT bool ml::WEMGeometry::isLineIntersectingFace | ( | Vector3 & | intersectionPoint, |
| const Vector3 & | startPos, | ||
| const Vector3 & | endPos, | ||
| WEMFace * | face, | ||
| WEMPatch * | wemPatch = nullptr ) |
Returns whether the given line (from startPos to endPos) intersects the given WEMFace and fills up the intersection point.
References isLineIntersectingFace(), and MLWEM_EXPORT.
| bool ml::WEMGeometry::isOnSegmentFor2DSegmentIntersectionTest | ( | double | xi, |
| double | yi, | ||
| double | xj, | ||
| double | yj, | ||
| double | xk, | ||
| double | yk ) |
References isOnSegmentFor2DSegmentIntersectionTest().
Referenced by isOnSegmentFor2DSegmentIntersectionTest().
| MLWEM_EXPORT bool ml::WEMGeometry::isPointInsideFace | ( | const Vector3 & | point, |
| const WEMFace * | face ) |
Returns whether the given point is in the given face.
References isPointInsideFace(), and MLWEM_EXPORT.
Referenced by isPointInsideFace().
| MLWEM_EXPORT bool ml::WEMGeometry::isPointInsideWEMPatch | ( | const Vector3 & | position, |
| WEMPatch * | wemPatch ) |
Returns whether the given point is inside the given WEMPatch. A point is considered to be inside if it lies exactly on a node, edge, or face.
References isPointInsideWEMPatch(), and MLWEM_EXPORT.
Referenced by isPointInsideWEMPatch().
| MLWEM_EXPORT bool ml::WEMGeometry::isPointOnEdgeOrNode | ( | const Vector3 & | position, |
| WEMFace * | face ) |
Returns whether the given point lies on any node or edge of the given face.
References isPointOnEdgeOrNode(), and MLWEM_EXPORT.
Referenced by isPointOnEdgeOrNode().
| MLWEM_EXPORT bool ml::WEMGeometry::isPointOnFace | ( | const Vector3 & | position, |
| WEMFace * | face ) |
Returns whether the given point lies on any face of the given face.
References isPointOnFace(), and MLWEM_EXPORT.
Referenced by isPointOnFace().
| MLWEM_EXPORT bool ml::WEMGeometry::pointInsidePolygon | ( | const Vector3 & | point, |
| const Vector3 * | polygon, | ||
| unsigned int | numPoints ) |
Returns whether the given point lies inside the polygon, given by the list of points. Both, the point and the polygon, must be projected onto the x-y plane before.
References MLWEM_EXPORT, and pointInsidePolygon().
Referenced by pointInsidePolygon().