49 const AffineXf3f*
xf =
nullptr;
120 float feed = std::numeric_limits<float>::quiet_NaN();
122 float x = std::numeric_limits<float>::quiet_NaN();
123 float y = std::numeric_limits<float>::quiet_NaN();
124 float z = std::numeric_limits<float>::quiet_NaN();
126 Vector3f
arcCenter = Vector3f::diagonal( std::numeric_limits<float>::quiet_NaN() );
#define MRVOXELS_API
see explanation in MRMesh/MRMeshFwd.h
Definition MRVoxelsFwd.h:14
std::function< bool(float)> ProgressCallback
Definition MRMeshFwd.h:753
float eps
maximal deviation from given line
Definition MRToolPath.h:79
Axis
Definition MRAxis.h:9
Expected< ToolPathResult > constantCuspToolPath(const MeshPart &mp, const ConstantCuspParams ¶ms)
float toolpathExpansion
Definition MRToolPath.h:58
float safeZ
z-coordinate of plane where tool can move in any direction without touching the object
Definition MRToolPath.h:45
Contours3f * isolines
optional output, stores isolines without transits
Definition MRToolPath.h:61
float y
Definition MRToolPath.h:123
float critTransitionLength
Definition MRToolPath.h:33
float sectionStep
Definition MRToolPath.h:30
MeshPart * offsetMesh
Definition MRToolPath.h:67
FaceBitSet smoothSelection(Mesh &mesh, const FaceBitSet ®ion, float expandOffset, float shrinkOffset)
std::vector< GCommand > commands
constains type of movement and its feed
Definition MRToolPath.h:136
float baseFeed
speed of regular milling
Definition MRToolPath.h:43
float x
coordinates of destination point
Definition MRToolPath.h:122
std::shared_ptr< ObjectGcode > exportToolPathToGCode(const std::vector< GCommand > &commands)
generates G-Code for milling tool
ArcPlane arcPlane
Place for comment.
Definition MRToolPath.h:118
BypassDirection
Definition MRToolPath.h:17
Expected< ToolPathResult > lacingToolPath(const MeshPart &mp, const ToolPathParams ¶ms, Axis cutDirection)
Slices are built along the axis defined by cutDirection argument (can be Axis::X or Axis::Y)
Contours3< float > Contours3f
Definition MRMeshFwd.h:390
float retractFeed
speed of slow movement up
Definition MRToolPath.h:41
BypassDirection bypassDir
which direction isolines or sections should be passed in
Definition MRToolPath.h:47
float maxRadius
maximal radius of the arc
Definition MRToolPath.h:91
ProgressCallback cb
callback for reporting on progress
Definition MRToolPath.h:83
float maxLength
maximal length of the line
Definition MRToolPath.h:81
Contours3f * startContours
optional output, polyline containing start vertices for isolines
Definition MRToolPath.h:63
Expected< void > interpolateLines(std::vector< GCommand > &commands, const LineInterpolationParams ¶ms, Axis axis)
interpolates several points lying on the same straight line with one move
tl::expected< T, E > Expected
Definition MRExpected.h:31
float eps
maximal deviation of arc from given path
Definition MRToolPath.h:89
float voxelSize
size of voxel needed to offset mesh
Definition MRToolPath.h:27
float plungeLength
when the mill is moving down, it will be slowed down in this distance from mesh
Definition MRToolPath.h:35
float retractLength
when the mill is moving up, it will be slowed down in this distance from mesh
Definition MRToolPath.h:37
MoveType
Definition MRToolPath.h:97
Expected< ToolPathResult > constantZToolPath(const MeshPart &mp, const ToolPathParams ¶ms)
FaceBitSet modifiedRegion
selected region projected from the original mesh to the offset
Definition MRToolPath.h:134
float plungeFeed
speed of slow movement down
Definition MRToolPath.h:39
MoveType type
type of command GX (G0, G1, etc). By default - G1
Definition MRToolPath.h:116
float millRadius
radius of the milling tool
Definition MRToolPath.h:25
ProgressCallback cb
callback for reporting on progress
Definition MRToolPath.h:93
ProgressCallback cb
callback for reporting on progress
Definition MRToolPath.h:53
Vector3f arcCenter
if moveType is ArcCW or ArcCCW center of the arc shoult be specified
Definition MRToolPath.h:126
float feed
feedrate for move
Definition MRToolPath.h:120
Expected< void > interpolateArcs(std::vector< GCommand > &commands, const ArcInterpolationParams ¶ms, Axis axis)
interpolates given path with arcs
bool flatTool
if true then a tool path for a flat milling tool will be generated
Definition MRToolPath.h:51
std::vector< Vector3f > * startVertices
start vertices on the offset mesh used for calcutating isolines
Definition MRToolPath.h:65
ArcPlane
Definition MRToolPath.h:106
Mesh modifiedMesh
mesh after fixing undercuts and offset
Definition MRToolPath.h:132
bool fromCenterToBoundary
if true isolines will be processed from center point to the boundary (usually it means from up to dow...
Definition MRToolPath.h:73
float z
Definition MRToolPath.h:124
const AffineXf3f * xf
mesh can be transformed using xf parameter
Definition MRToolPath.h:49
@ CounterClockwise
Definition MRToolPath.h:19
@ Clockwise
Definition MRToolPath.h:18
@ Linear
Definition MREnums.h:13
@ Linear
Definition MRToolPath.h:100
@ FastLinear
Definition MRToolPath.h:99
@ ArcCW
Definition MRToolPath.h:101
@ ArcCCW
Definition MRToolPath.h:102
@ XZ
Definition MRToolPath.h:109
@ None
Definition MRToolPath.h:107
@ XY
= 2 cause main axis is z - [2]
Definition MRVoxelPath.h:32
@ YZ
= 0 cause main axis is x - [0]
Definition MRVoxelPath.h:30
@ None
special value not to limit path in one slice
Definition MRVoxelPath.h:33
only for bindings generation
Definition MRCameraOrientationPlugin.h:8
Definition MRToolPath.h:87
Definition MRToolPath.h:71
Definition MRToolPath.h:114
Definition MRToolPath.h:77