|
| new unsafe ref float | maxError [get] |
| | Limit from above on the maximum distance from moved vertices to original contour.
|
| |
| new unsafe ref float | maxEdgeLen [get] |
| | Maximal possible edge length created during decimation.
|
| |
| new unsafe ref float | stabilizer [get] |
| |
| new unsafe ref bool | optimizeVertexPos [get] |
| |
| new unsafe ref int | maxDeletedVertices [get] |
| | Limit on the number of deleted vertices.
|
| |
| new unsafe MR.? VertBitSet | region [get, set] |
| |
| new unsafe ref bool | touchBdVertices [get] |
| |
| new unsafe MR.Std.Function_BoolFuncFromMREdgeIdConstMRVector3fRef | preCollapse [get, protected set] |
| | The user can provide this optional callback that is invoked immediately before edge collapse;.
|
| |
| new unsafe MR.Std.Function_VoidFuncFromMRUndirectedEdgeIdFloatRefMRVector3fRef | adjustCollapse [get, protected set] |
| | The user can provide this optional callback for adjusting error introduced by this edge collapse and the collapse position.
|
| |
| new unsafe MR.? Vector_MRQuadraticForm3f_MRVertId | vertForms [get, set] |
| | If not null, then on input: if the vector is not empty then it is taken for initialization instead of form computation for all vertices; on output: quadratic form for each remaining vertex is returned there.
|
| |
◆ DecimatePolylineSettings_MRVector3f() [1/5]
| unsafe MR.DecimatePolylineSettings_MRVector3f.DecimatePolylineSettings_MRVector3f |
( |
| ) |
|
|
inline |
Constructs an empty (default-constructed) instance.
◆ DecimatePolylineSettings_MRVector3f() [2/5]
| unsafe MR.DecimatePolylineSettings_MRVector3f.DecimatePolylineSettings_MRVector3f |
( |
float | maxError, |
|
|
float | maxEdgeLen, |
|
|
float | stabilizer, |
|
|
bool | optimizeVertexPos, |
|
|
int | maxDeletedVertices, |
|
|
MR.VertBitSet? | region, |
|
|
bool | touchBdVertices, |
|
|
MR.Std._ByValue_Function_BoolFuncFromMREdgeIdConstMRVector3fRef | preCollapse, |
|
|
MR.Std._ByValue_Function_VoidFuncFromMRUndirectedEdgeIdFloatRefMRVector3fRef | adjustCollapse, |
|
|
MR.Vector_MRQuadraticForm3f_MRVertId? | vertForms ) |
|
inline |
Constructs MR.DecimatePolylineSettings<MR.Vector3f> elementwise.
◆ DecimatePolylineSettings_MRVector3f() [3/5]
| unsafe MR.DecimatePolylineSettings_MRVector3f.DecimatePolylineSettings_MRVector3f |
( |
MR._ByValue_DecimatePolylineSettings_MRVector3f | _other | ) |
|
|
inline |
Generated from constructor MR.DecimatePolylineSettings<MR.Vector3f>::DecimatePolylineSettings.
◆ DecimatePolylineSettings_MRVector3f() [4/5]
| MR.DecimatePolylineSettings_MRVector3f.DecimatePolylineSettings_MRVector3f |
( |
Const_DecimatePolylineSettings_MRVector3f | _other | ) |
|
|
inline |
Generated from constructor MR.DecimatePolylineSettings<MR.Vector3f>::DecimatePolylineSettings.
◆ DecimatePolylineSettings_MRVector3f() [5/5]
Generated from constructor MR.DecimatePolylineSettings<MR.Vector3f>::DecimatePolylineSettings.
◆ assign()
Generated from method MR.DecimatePolylineSettings<MR.Vector3f>::operator=.
◆ adjustCollapse
| new unsafe MR.Std.Function_VoidFuncFromMRUndirectedEdgeIdFloatRefMRVector3fRef MR.DecimatePolylineSettings_MRVector3f.adjustCollapse |
|
getprotected set |
The user can provide this optional callback for adjusting error introduced by this edge collapse and the collapse position.
On input the callback gets the squared error and position computed by standard means, and callback can modify any of them. The larger the error, the later this edge will be collapsed. This callback can be called from many threads in parallel and must be thread-safe. This callback can be called many times for each edge before real collapsing, and it is important to make the same adjustment.
◆ maxDeletedVertices
| new unsafe ref int MR.DecimatePolylineSettings_MRVector3f.maxDeletedVertices |
|
get |
Limit on the number of deleted vertices.
◆ maxEdgeLen
| new unsafe ref float MR.DecimatePolylineSettings_MRVector3f.maxEdgeLen |
|
get |
Maximal possible edge length created during decimation.
◆ maxError
| new unsafe ref float MR.DecimatePolylineSettings_MRVector3f.maxError |
|
get |
Limit from above on the maximum distance from moved vertices to original contour.
◆ optimizeVertexPos
| new unsafe ref bool MR.DecimatePolylineSettings_MRVector3f.optimizeVertexPos |
|
get |
if true then after each edge collapse the position of remaining vertex is optimized to minimize local shape change, if false then the edge is collapsed in one of its vertices, which keeps its position
◆ preCollapse
| new unsafe MR.Std.Function_BoolFuncFromMREdgeIdConstMRVector3fRef MR.DecimatePolylineSettings_MRVector3f.preCollapse |
|
getprotected set |
The user can provide this optional callback that is invoked immediately before edge collapse;.
It receives the edge being collapsed: its destination vertex will disappear, and its origin vertex will get new position (provided as the second argument) after collapse; If the callback returns false, then the collapse is prohibited
◆ region
| new unsafe MR.? VertBitSet MR.DecimatePolylineSettings_MRVector3f.region |
|
getset |
Region of the polyline to be decimated, it is updated during the operation Remain nullptr to include the whole polyline
◆ stabilizer
| new unsafe ref float MR.DecimatePolylineSettings_MRVector3f.stabilizer |
|
get |
Stabilizer is dimensionless coefficient. The larger is stabilizer, the more Decimator will strive to retain the density of input points. If stabilizer is zero, then only the shape of input line will be preserved.
◆ touchBdVertices
| new unsafe ref bool MR.DecimatePolylineSettings_MRVector3f.touchBdVertices |
|
get |
Whether to allow collapsing edges with at least one vertex on the end of not-closed polyline (or on region boundary if region is given); if touchBdVertices is false then boundary vertices are strictly fixed
◆ vertForms
If not null, then on input: if the vector is not empty then it is taken for initialization instead of form computation for all vertices; on output: quadratic form for each remaining vertex is returned there.
The documentation for this class was generated from the following file: