PathSegmentWalker processes a path a splits all movement commands into straight segments and calls the appropriate member of the provided PathSegmentVisitor. More...
#include <PathSegmentWalker.h>
Public Member Functions | |
PathSegmentWalker (const Toolpath &tp_) | |
void | walk (PathSegmentVisitor &cb, const Base::Vector3d &startPosition) |
PathSegmentWalker processes a path a splits all movement commands into straight segments and calls the appropriate member of the provided PathSegmentVisitor.
All non-movement commands are processed accordingly if they affect the movement commands.
Path::PathSegmentWalker::PathSegmentWalker | ( | const Toolpath & | tp_ | ) |
void Path::PathSegmentWalker::walk | ( | PathSegmentVisitor & | cb, |
const Base::Vector3d & | startPosition | ||
) |
References DraftVecUtils::angle(), Path::compensateRotation(), Path::PathSegmentVisitor::g0(), Path::PathSegmentVisitor::g1(), Path::PathSegmentVisitor::g23(), Path::PathSegmentVisitor::g38(), Path::PathSegmentVisitor::g8x(), App::GetApplication(), Path::Toolpath::getCenter(), Path::Command::getCenter(), Path::Toolpath::getCommand(), ParameterGrp::GetFloat(), App::Application::GetParameterGroupByPath(), Path::Command::getPlacement(), Base::Placement::getPosition(), Path::Toolpath::getSize(), Path::Command::getValue(), Path::Command::has(), Base::Rotation::multVec(), Path::Command::Name, Path::PathSegmentVisitor::setup(), Base::Vector3< _Precision >::x, Base::Vector3< double >::x, Base::Vector3< _Precision >::y, Base::Vector3< double >::y, Path::yawPitchRoll(), Base::Vector3< double >::z, and Base::Vector3< _Precision >::z.
Referenced by Path::Toolpath::getBoundBox().