MeshLib C++ Docs
Loading...
Searching...
No Matches

#include <MRMesh/MRMeshTriPoint.h>

Public Member Functions

 MeshTriPoint ()=default
 MeshTriPoint (NoInit)
 MeshTriPoint (EdgeId e, TriPointf bary)
 MeshTriPoint (const MeshEdgePoint &ep)
 MeshTriPoint (const MeshTopology &topology, VertId v)
template<typename T>
 MeshTriPoint (EdgeId e, const Vector3< T > &p, const Vector3< T > &v0, const Vector3< T > &v1, const Vector3< T > &v2)
 given a point coordinates computes its barycentric coordinates
VertId inVertex (const MeshTopology &topology) const
 returns valid vertex id if the point is in vertex, otherwise returns invalid id
bool inVertex () const
 returns true if the point is in a vertex
MeshEdgePoint onEdge (const MeshTopology &topology) const
bool isBd (const MeshTopology &topology, const FaceBitSet *region=nullptr) const
 returns true if the point is in vertex or on edge, and that location is on the boundary of the region
bool fromTriangle (const MeshTopology &topology, FaceId f) const
 returns true if the point is inside or on the boundary of given triangular face
bool valid () const
 consider this valid if the edge ID is valid
 operator bool () const
MeshTriPoint lnext (const MeshTopology &topology) const
 represents the same point relative to next edge in the same triangle
MeshTriPoint canonical (const MeshTopology &topology) const
 represents the same point relative to the topology.edgeWithLeft( topology.left( e ) )
std::array< WeightedVertex, 3 > getWeightedVerts (const MeshTopology &topology) const
 returns three weighted triangle's vertices with the sum of not-negative weights equal to 1, and the largest weight in the closest vertex
bool operator== (const MeshTriPoint &rhs) const =default
 returns true if two points are equal including equal not-unique representation

Public Attributes

EdgeId e
TriPointf bary

(Note that these are not member symbols.)

bool same (const MeshTopology &topology, const MeshTriPoint &lhs, const MeshTriPoint &rhs)
 returns true if two points are equal considering different representations
bool fromSameTriangle (const MeshTopology &topology, MeshTriPoint &a, MeshTriPoint &b)
bool fromSameTriangle (const MeshTopology &topology, MeshTriPoint &&a, MeshTriPoint &&b)
MeshTriPoint getVertexAsMeshTriPoint (const MeshTopology &topology, EdgeId e, VertId v)
 returns MeshTriPoint representation of given vertex with given edge field; or invalid MeshTriPoint if it is not possible

Detailed Description

encodes a point inside a triangular mesh face using barycentric coordinates

Notations used below:
v0 - the value in org( e )
v1 - the value in dest( e )
v2 - the value in dest( next( e ) )


The documentation for this struct was generated from the following file: