MeshLib Documentation
Loading...
Searching...
No Matches
MR::PolylineSubdivideSettings Struct Reference

#include <MRPolylineSubdivide.h>

Public Attributes

float maxEdgeLen = 0
 Subdivision is stopped when all edges are not longer than this value.
 
int maxEdgeSplits = 1000
 Maximum number of edge splits allowed.
 
VertBitSet * region = nullptr
 
VertBitSet * newVerts = nullptr
 New vertices appeared during subdivision will be added here.
 
bool useCurvature = false
 
std::function< void(VertId)> onVertCreated
 this function is called each time a new vertex has been created
 
std::function< void(EdgeId e1, EdgeId e)> onEdgeSplit
 this function is called each time edge (e) is split into (e1->e)
 
ProgressCallback progressCallback = {}
 callback to report algorithm progress and cancel it by user request
 

Member Data Documentation

◆ maxEdgeLen

float MR::PolylineSubdivideSettings::maxEdgeLen = 0

Subdivision is stopped when all edges are not longer than this value.

◆ maxEdgeSplits

int MR::PolylineSubdivideSettings::maxEdgeSplits = 1000

Maximum number of edge splits allowed.

◆ newVerts

VertBitSet* MR::PolylineSubdivideSettings::newVerts = nullptr

New vertices appeared during subdivision will be added here.

◆ onEdgeSplit

std::function<void(EdgeId e1, EdgeId e)> MR::PolylineSubdivideSettings::onEdgeSplit

this function is called each time edge (e) is split into (e1->e)

◆ onVertCreated

std::function<void(VertId)> MR::PolylineSubdivideSettings::onVertCreated

this function is called each time a new vertex has been created

◆ progressCallback

ProgressCallback MR::PolylineSubdivideSettings::progressCallback = {}

callback to report algorithm progress and cancel it by user request

◆ region

VertBitSet* MR::PolylineSubdivideSettings::region = nullptr

Region on polyline to be subdivided: both edge vertices must be there to allow spitting, it is updated during the operation

◆ useCurvature

bool MR::PolylineSubdivideSettings::useCurvature = false

This option works best for natural lines, where all segments have similar size, and no sharp angles in between


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