Go to the source code of this file.
Typedefs | |
| typedef struct MR_EdgePoint | MR_EdgePoint |
| typedef struct MR_FaceBitSet | MR_FaceBitSet |
| typedef struct MR_MeshTopology | MR_MeshTopology |
| typedef struct MR_NoInit | MR_NoInit |
| typedef struct MR_TriPointf | MR_TriPointf |
| typedef struct MR_std_array_MR_WeightedVertex_3 | MR_std_array_MR_WeightedVertex_3 |
| typedef struct MR_WeightedVertex | MR_WeightedVertex |
Generated from class MR::WeightedVertex. | |
| typedef struct MR_MeshTriPoint | MR_MeshTriPoint |
| typedef struct MR_EdgePoint MR_EdgePoint |
| typedef struct MR_FaceBitSet MR_FaceBitSet |
| typedef struct MR_MeshTopology MR_MeshTopology |
| typedef struct MR_MeshTriPoint MR_MeshTriPoint |
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 ) ) Generated from class MR::MeshTriPoint.
| typedef struct MR_std_array_MR_WeightedVertex_3 MR_std_array_MR_WeightedVertex_3 |
| typedef struct MR_TriPointf MR_TriPointf |
| typedef struct MR_WeightedVertex MR_WeightedVertex |
Generated from class MR::WeightedVertex.
| MRC_API bool MR_equal_MR_MeshTriPoint | ( | const MR_MeshTriPoint * | _this, |
| const MR_MeshTriPoint * | rhs ) |
returns true if two points are equal including equal not-unique representation Generated from a method of class MR::MeshTriPoint named operator==. Parameter _this can not be null. It is a single object. Parameter rhs can not be null. It is a single object.
| MRC_API bool MR_fromSameTriangle_MR_MeshTriPoint_ref | ( | const MR_MeshTopology * | topology, |
| MR_MeshTriPoint * | a, | ||
| MR_MeshTriPoint * | b ) |
returns true if points a and b are located insides or on a boundary of the same triangle; if true a.e and b.e are updated to have that triangle on the left Generated from function MR::fromSameTriangle. Parameter topology can not be null. It is a single object. Parameter a can not be null. It is a single object. Parameter b can not be null. It is a single object.
| MRC_API bool MR_fromSameTriangle_MR_MeshTriPoint_rvalue_ref | ( | const MR_MeshTopology * | topology, |
| MR_MeshTriPoint * | a, | ||
| MR_MeshTriPoint * | b ) |
returns true if points a and b are located insides or on a boundary of the same triangle; if true a.e and b.e are updated to have that triangle on the left Generated from function MR::fromSameTriangle. Parameter topology can not be null. It is a single object. Parameter a can not be null. It is a single object. In C++ this parameter takes an rvalue reference: it might invalidate the passed object, but if your pointer is owning, you must still destroy it manually later. Parameter b can not be null. It is a single object. In C++ this parameter takes an rvalue reference: it might invalidate the passed object, but if your pointer is owning, you must still destroy it manually later.
| MRC_API MR_MeshTriPoint * MR_getVertexAsMeshTriPoint | ( | const MR_MeshTopology * | topology, |
| MR_EdgeId | e, | ||
| MR_VertId | v ) |
returns MeshTriPoint representation of given vertex with given edge field; or invalid MeshTriPoint if it is not possible Generated from function MR::getVertexAsMeshTriPoint. Parameter topology can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshTriPoint_Destroy() to free it when you're done using it.
| MRC_API MR_MeshTriPoint * MR_MeshTriPoint_AssignFromAnother | ( | MR_MeshTriPoint * | _this, |
| const MR_MeshTriPoint * | _other ) |
Generated from a method of class MR::MeshTriPoint named operator=. Parameter _this can not be null. It is a single object. Parameter _other can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.
| MRC_API MR_MeshTriPoint * MR_MeshTriPoint_canonical | ( | const MR_MeshTriPoint * | _this, |
| const MR_MeshTopology * | topology ) |
represents the same point relative to the topology.edgeWithLeft( topology.left( e ) ) Generated from a method of class MR::MeshTriPoint named canonical. Parameter _this can not be null. It is a single object. Parameter topology can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshTriPoint_Destroy() to free it when you're done using it.
| MRC_API MR_MeshTriPoint * MR_MeshTriPoint_Construct_1_MR_EdgePoint | ( | const MR_EdgePoint * | ep | ) |
Generated from a constructor of class MR::MeshTriPoint. Parameter ep can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshTriPoint_Destroy() to free it when you're done using it.
| MRC_API MR_MeshTriPoint * MR_MeshTriPoint_Construct_1_MR_NoInit | ( | const MR_NoInit * | _1 | ) |
Generated from a constructor of class MR::MeshTriPoint. Parameter _1 can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshTriPoint_Destroy() to free it when you're done using it.
| MRC_API MR_MeshTriPoint * MR_MeshTriPoint_Construct_2_MR_EdgeId | ( | MR_EdgeId | e, |
| const MR_TriPointf * | bary ) |
Generated from a constructor of class MR::MeshTriPoint. Parameter bary can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshTriPoint_Destroy() to free it when you're done using it.
| MRC_API MR_MeshTriPoint * MR_MeshTriPoint_Construct_2_MR_MeshTopology | ( | const MR_MeshTopology * | topology, |
| MR_VertId | v ) |
Generated from a constructor of class MR::MeshTriPoint. Parameter topology can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshTriPoint_Destroy() to free it when you're done using it.
| MRC_API MR_MeshTriPoint * MR_MeshTriPoint_ConstructFromAnother | ( | const MR_MeshTriPoint * | _other | ) |
Generated from a constructor of class MR::MeshTriPoint. Parameter _other can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshTriPoint_Destroy() to free it when you're done using it.
| MRC_API bool MR_MeshTriPoint_ConvertTo_bool | ( | const MR_MeshTriPoint * | _this | ) |
Generated from a conversion operator of class MR::MeshTriPoint to type bool. Parameter _this can not be null. It is a single object.
| MRC_API MR_MeshTriPoint * MR_MeshTriPoint_DefaultConstruct | ( | void | ) |
Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshTriPoint_Destroy() to free it when you're done using it.
| MRC_API MR_MeshTriPoint * MR_MeshTriPoint_DefaultConstructArray | ( | size_t | num_elems | ) |
Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_MeshTriPoint_DestroyArray(). Use MR_MeshTriPoint_OffsetMutablePtr() and MR_MeshTriPoint_OffsetPtr() to access the array elements.
| MRC_API void MR_MeshTriPoint_Destroy | ( | const MR_MeshTriPoint * | _this | ) |
Destroys a heap-allocated instance of MR_MeshTriPoint. Does nothing if the pointer is null.
| MRC_API void MR_MeshTriPoint_DestroyArray | ( | const MR_MeshTriPoint * | _this | ) |
Destroys a heap-allocated array of MR_MeshTriPoint. Does nothing if the pointer is null.
| MRC_API bool MR_MeshTriPoint_fromTriangle | ( | const MR_MeshTriPoint * | _this, |
| const MR_MeshTopology * | topology, | ||
| MR_FaceId | f ) |
returns true if the point is inside or on the boundary of given triangular face Generated from a method of class MR::MeshTriPoint named fromTriangle. Parameter _this can not be null. It is a single object. Parameter topology can not be null. It is a single object.
| MRC_API const MR_TriPointf * MR_MeshTriPoint_Get_bary | ( | const MR_MeshTriPoint * | _this | ) |
barycentric coordinates
a in [0,1], a=0 => point is on next( e ) edge, a=1 => point is in dest( e ) b in [0,1], b=0 => point is on e edge, b=1 => point is in dest( next( e ) ) a+b in [0,1], a+b=0 => point is in org( e ), a+b=1 => point is on prev( e.sym() ) edge Returns a pointer to a member variable of class MR::MeshTriPoint named bary. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.
| MRC_API const MR_EdgeId * MR_MeshTriPoint_Get_e | ( | const MR_MeshTriPoint * | _this | ) |
left face of this edge is considered Modifies a member variable of class MR::MeshTriPoint named e. Parameter _this can not be null. It is a single object.
| MRC_API MR_TriPointf * MR_MeshTriPoint_GetMutable_bary | ( | MR_MeshTriPoint * | _this | ) |
barycentric coordinates
a in [0,1], a=0 => point is on next( e ) edge, a=1 => point is in dest( e ) b in [0,1], b=0 => point is on e edge, b=1 => point is in dest( next( e ) ) a+b in [0,1], a+b=0 => point is in org( e ), a+b=1 => point is on prev( e.sym() ) edge Returns a mutable pointer to a member variable of class MR::MeshTriPoint named bary. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.
| MRC_API MR_EdgeId * MR_MeshTriPoint_GetMutable_e | ( | MR_MeshTriPoint * | _this | ) |
| MRC_API MR_std_array_MR_WeightedVertex_3 * MR_MeshTriPoint_getWeightedVerts | ( | const MR_MeshTriPoint * | _this, |
| const MR_MeshTopology * | topology ) |
returns three weighted triangle's vertices with the sum of not-negative weights equal to 1, and the largest weight in the closest vertex Generated from a method of class MR::MeshTriPoint named getWeightedVerts. Parameter _this can not be null. It is a single object. Parameter topology can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_array_MR_WeightedVertex_3_Destroy() to free it when you're done using it.
| MRC_API bool MR_MeshTriPoint_inVertex_0 | ( | const MR_MeshTriPoint * | _this | ) |
returns true if the point is in a vertex Generated from a method of class MR::MeshTriPoint named inVertex. Parameter _this can not be null. It is a single object.
| MRC_API MR_VertId MR_MeshTriPoint_inVertex_1 | ( | const MR_MeshTriPoint * | _this, |
| const MR_MeshTopology * | topology ) |
returns valid vertex id if the point is in vertex, otherwise returns invalid id Generated from a method of class MR::MeshTriPoint named inVertex. Parameter _this can not be null. It is a single object. Parameter topology can not be null. It is a single object.
| MRC_API bool MR_MeshTriPoint_isBd | ( | const MR_MeshTriPoint * | _this, |
| const MR_MeshTopology * | topology, | ||
| const MR_FaceBitSet * | region ) |
returns true if the point is in vertex or on edge, and that location is on the boundary of the region Generated from a method of class MR::MeshTriPoint named isBd. Parameter _this can not be null. It is a single object. Parameter topology can not be null. It is a single object. Parameter region defaults to a null pointer in C++.
| MRC_API MR_MeshTriPoint * MR_MeshTriPoint_lnext | ( | const MR_MeshTriPoint * | _this, |
| const MR_MeshTopology * | topology ) |
represents the same point relative to next edge in the same triangle Generated from a method of class MR::MeshTriPoint named lnext. Parameter _this can not be null. It is a single object. Parameter topology can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshTriPoint_Destroy() to free it when you're done using it.
| MRC_API MR_MeshTriPoint * MR_MeshTriPoint_OffsetMutablePtr | ( | MR_MeshTriPoint * | ptr, |
| ptrdiff_t | i ) |
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element.
| MRC_API const MR_MeshTriPoint * MR_MeshTriPoint_OffsetPtr | ( | const MR_MeshTriPoint * | ptr, |
| ptrdiff_t | i ) |
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element.
| MRC_API MR_EdgePoint * MR_MeshTriPoint_onEdge | ( | const MR_MeshTriPoint * | _this, |
| const MR_MeshTopology * | topology ) |
returns valid value if the point is on edge and topology.left(result.e) == topology.left(this->e), otherwise returns invalid MeshEdgePoint Generated from a method of class MR::MeshTriPoint named onEdge. Parameter _this can not be null. It is a single object. Parameter topology can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_EdgePoint_Destroy() to free it when you're done using it.
| MRC_API void MR_MeshTriPoint_Set_bary | ( | MR_MeshTriPoint * | _this, |
| const MR_TriPointf * | value ) |
barycentric coordinates
a in [0,1], a=0 => point is on next( e ) edge, a=1 => point is in dest( e ) b in [0,1], b=0 => point is on e edge, b=1 => point is in dest( next( e ) ) a+b in [0,1], a+b=0 => point is in org( e ), a+b=1 => point is on prev( e.sym() ) edge Modifies a member variable of class MR::MeshTriPoint named bary. Parameter _this can not be null. It is a single object. Parameter value can not be null. It is a single object.
| MRC_API void MR_MeshTriPoint_Set_e | ( | MR_MeshTriPoint * | _this, |
| MR_EdgeId | value ) |
left face of this edge is considered Returns a mutable pointer to a member variable of class MR::MeshTriPoint named e. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.
| MRC_API bool MR_MeshTriPoint_valid | ( | const MR_MeshTriPoint * | _this | ) |
consider this valid if the edge ID is valid Generated from a method of class MR::MeshTriPoint named valid. Parameter _this can not be null. It is a single object.
| MRC_API bool MR_same_MR_MeshTriPoint | ( | const MR_MeshTopology * | topology, |
| const MR_MeshTriPoint * | lhs, | ||
| const MR_MeshTriPoint * | rhs ) |
returns true if two points are equal considering different representations Generated from function MR::same. Parameter topology can not be null. It is a single object. Parameter lhs can not be null. It is a single object. Parameter rhs can not be null. It is a single object.
| MRC_API MR_WeightedVertex * MR_WeightedVertex_AssignFromAnother | ( | MR_WeightedVertex * | _this, |
| const MR_WeightedVertex * | _other ) |
Generated from a method of class MR::WeightedVertex named operator=. Parameter _this can not be null. It is a single object. Parameter _other can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. left face of this edge is considered Returns a pointer to a member variable of class MR::MeshTriPoint named e. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.
| MRC_API MR_WeightedVertex * MR_WeightedVertex_ConstructFrom | ( | MR_VertId | v, |
| float | weight ) |
Constructs MR::WeightedVertex elementwise. Never returns null. Returns an instance allocated on the heap! Must call MR_WeightedVertex_Destroy() to free it when you're done using it.
| MRC_API MR_WeightedVertex * MR_WeightedVertex_ConstructFromAnother | ( | const MR_WeightedVertex * | _other | ) |
Generated from a constructor of class MR::WeightedVertex. Parameter _other can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_WeightedVertex_Destroy() to free it when you're done using it.
| MRC_API MR_WeightedVertex * MR_WeightedVertex_DefaultConstruct | ( | void | ) |
Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_WeightedVertex_Destroy() to free it when you're done using it.
| MRC_API MR_WeightedVertex * MR_WeightedVertex_DefaultConstructArray | ( | size_t | num_elems | ) |
Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_WeightedVertex_DestroyArray(). Use MR_WeightedVertex_OffsetMutablePtr() and MR_WeightedVertex_OffsetPtr() to access the array elements.
| MRC_API void MR_WeightedVertex_Destroy | ( | const MR_WeightedVertex * | _this | ) |
Destroys a heap-allocated instance of MR_WeightedVertex. Does nothing if the pointer is null.
| MRC_API void MR_WeightedVertex_DestroyArray | ( | const MR_WeightedVertex * | _this | ) |
Destroys a heap-allocated array of MR_WeightedVertex. Does nothing if the pointer is null.
| MRC_API const MR_VertId * MR_WeightedVertex_Get_v | ( | const MR_WeightedVertex * | _this | ) |
Returns a pointer to a member variable of class MR::WeightedVertex named v. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.
| MRC_API const float * MR_WeightedVertex_Get_weight | ( | const MR_WeightedVertex * | _this | ) |
Returns a pointer to a member variable of class MR::WeightedVertex named weight. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.
| MRC_API MR_VertId * MR_WeightedVertex_GetMutable_v | ( | MR_WeightedVertex * | _this | ) |
Returns a mutable pointer to a member variable of class MR::WeightedVertex named v. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.
| MRC_API float * MR_WeightedVertex_GetMutable_weight | ( | MR_WeightedVertex * | _this | ) |
Returns a mutable pointer to a member variable of class MR::WeightedVertex named weight. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.
| MRC_API MR_WeightedVertex * MR_WeightedVertex_OffsetMutablePtr | ( | MR_WeightedVertex * | ptr, |
| ptrdiff_t | i ) |
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element.
| MRC_API const MR_WeightedVertex * MR_WeightedVertex_OffsetPtr | ( | const MR_WeightedVertex * | ptr, |
| ptrdiff_t | i ) |
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element.
| MRC_API void MR_WeightedVertex_Set_v | ( | MR_WeightedVertex * | _this, |
| MR_VertId | value ) |
Modifies a member variable of class MR::WeightedVertex named v. Parameter _this can not be null. It is a single object.
| MRC_API void MR_WeightedVertex_Set_weight | ( | MR_WeightedVertex * | _this, |
| float | value ) |
Modifies a member variable of class MR::WeightedVertex named weight. Parameter _this can not be null. It is a single object.