encodes a point on an edge of mesh or of polyline More...
#include <MREdgePoint.h>
Public Member Functions | |
EdgePoint ()=default | |
EdgePoint (EdgeId e, float a) | |
MRMESH_API | EdgePoint (const MeshTopology &topology, VertId v) |
MRMESH_API | EdgePoint (const PolylineTopology &topology, VertId v) |
MRMESH_API VertId | inVertex (const MeshTopology &topology) const |
returns valid vertex id if the point is in vertex, otherwise returns invalid id | |
MRMESH_API VertId | inVertex (const PolylineTopology &topology) const |
returns valid vertex id if the point is in vertex, otherwise returns invalid id | |
MRMESH_API VertId | getClosestVertex (const MeshTopology &topology) const |
returns one of two edge vertices, closest to this point | |
MRMESH_API VertId | getClosestVertex (const PolylineTopology &topology) const |
returns one of two edge vertices, closest to this point | |
bool | inVertex () const |
returns true if the point is in a vertex | |
MRMESH_API void | moveToClosestVertex () |
sets this to the closest end of the edge | |
MRMESH_API bool | isBd (const MeshTopology &topology, const FaceBitSet *region=nullptr) const |
returns true if the point is on the boundary of the region (or for whole mesh if region is nullptr) | |
bool | valid () const |
consider this valid if the edge ID is valid | |
operator bool () const | |
EdgePoint | sym () const |
represents the same point relative to sym edge in | |
bool | operator== (const EdgePoint &rhs) const =default |
returns true if two edge-points are equal including equal not-unique representation | |
Public Attributes | |
EdgeId | e |
SegmPointf | a |
a in [0,1], a=0 => point is in org( e ), a=1 => point is in dest( e ) | |
Related Symbols | |
(Note that these are not member symbols.) | |
MRMESH_API bool | fromSameTriangle (const MeshTopology &topology, EdgePoint &a, EdgePoint &b) |
bool | fromSameTriangle (const MeshTopology &topology, EdgePoint &&a, EdgePoint &&b) |
encodes a point on an edge of mesh or of polyline
|
nodiscarddefault |
|
inlinenodiscard |
|
nodiscard |
|
nodiscard |
|
nodiscard |
returns one of two edge vertices, closest to this point
|
nodiscard |
returns one of two edge vertices, closest to this point
|
inlinenodiscard |
returns true if the point is in a vertex
|
nodiscard |
returns valid vertex id if the point is in vertex, otherwise returns invalid id
|
nodiscard |
returns valid vertex id if the point is in vertex, otherwise returns invalid id
|
nodiscard |
returns true if the point is on the boundary of the region (or for whole mesh if region is nullptr)
MRMESH_API void MR::EdgePoint::moveToClosestVertex | ( | ) |
sets this to the closest end of the edge
|
inlineexplicitnodiscard |
|
nodiscarddefault |
returns true if two edge-points are equal including equal not-unique representation
|
inlinenodiscard |
represents the same point relative to sym edge in
|
inlinenodiscard |
consider this valid if the edge ID is valid
|
related |
returns true if points a and b are located on a boundary of the same triangle;
if true a.e and b.e are updated to have that triangle on the left
|
related |
returns true if points a and b are located on a boundary of the same triangle;
if true a.e and b.e are updated to have that triangle on the left
SegmPointf MR::EdgePoint::a |
a in [0,1], a=0 => point is in org( e ), a=1 => point is in dest( e )
EdgeId MR::EdgePoint::e |