The main class for the path_simulate routine. More...
#include <path_simulate.h>
Public Member Functions | |
| bool | ConnectPaths_Feat (bool tool, bool robo, bool connection_type) |
| Computes output for the connection-part in all directions for the feature-based-strategy. | |
| bool | ConnectPaths_xy (bool outputstyle) |
| Computes output for the connection-part in xy-direction. | |
| bool | ConnectPaths_z (bool outputstyle) |
| Computes output for the connection-part in z-direction. | |
| bool | Correction (bool b) |
| computes path-correction after a tool-path-run | |
| int | Detect_FeatCurve (bool tool) |
| Returns the next curve-index for the feature-based-strategy. | |
| bool | Gen_Path () |
| Main routine for creating the simulation output for a single curve, including the synchronisation of master and slave CompPath() must have been called before using this function. | |
| bool | MakePathRobot () |
| Main function of the output-generation for the robot using the standard-strategy. | |
| bool | MakePathRobot_Feat (const std::vector< float > &flatAreas) |
| Main function of the output-generation for the robot using the feature-based-strategy. | |
| bool | MakePathSimulate () |
| Main function of the output-generation for the simulation using the standard-strategy. | |
| bool | MakePathSimulate_Feat (const std::vector< float > &flatAreas, bool spiral) |
| Main function of the output-generation for the simulation using the feature-based or spiral-based strategy. | |
| bool | MakePathSingle (bool outputstyle, double length, bool part, bool curveType) |
| Creates outputvectors for the simulation outputfor a single curve. | |
| bool | ParameterCalculation_Curve (double wirelength) |
| Computes all parameters of the velocity-function for the tool movement along a curve-segment. | |
| bool | ParameterCalculation_Line (double wirelength) |
| Computes all parameters of the velocity-function for the tool movement along a straight line. | |
| path_simulate (const std::vector< Handle_Geom_BSplineCurve > &BSplineTop, const std::vector< Handle_Geom_BSplineCurve > &BSplineBottom, struct CuttingToolsSettings &set) | |
| Constructor. | |
| bool | TimeCorrection () |
| Adds additional time-values to the output-vector of the waiting tool for synchronisation. | |
| bool | UpdateParam () |
| Updates actual parameter sets. | |
| bool | WriteOutput_Feat (ofstream &anOutputFile_1, ofstream &anOutputFile_2, int &c, bool outputstyle) |
| Writes output-vectors to file for the feature-based-strategy. | |
| bool | WriteOutputDouble (ofstream &anOutputFile_1, ofstream &nOutputFile_2, int &c1, int &c2, bool outputstyle, bool beamfl) |
| Writes output-vectors to file. | |
| bool | WriteOutputSingle (ofstream &anOutputFile, int &c, bool outputstyle, bool tool, bool beamfl) |
| Write start- and endtime for one tool-path-run (master & slave). | |
| ~path_simulate () | |
The main class for the path_simulate routine.
As it's input parameters it takes one respectivly two vectors of B-Spline Curves (describing the Tool-Paths for the IBU-simulation), two values a_max and v_max of type double, wich stands for the maximum allowable acceleration and velocity of the tool-movement and one value m_step of type double, specifying the step-length of the time-output-vector.
As output, it gives one respectivly two output-files for the simulation process containing a two-dimensional vector of time vs. velocity wich describes the tool-movement.
Definition at line 48 of file path_simulate.h.
| path_simulate::path_simulate | ( | const std::vector< Handle_Geom_BSplineCurve > & | BSplineTop, | |
| const std::vector< Handle_Geom_BSplineCurve > & | BSplineBottom, | |||
| struct CuttingToolsSettings & | set | |||
| ) |
Constructor.
| BSplineTop | vector of B-Spline-Curves describing the tool- paths of the master-tool | |
| BSplineBottom | vector of B-Spline-Curves describing the tool- paths of the slave-tool | |
| set | a struct wich also includes the parameters a_max and v_max |
Definition at line 38 of file path_simulate.cpp.
References CuttingToolsSettings::max_Acc, CuttingToolsSettings::max_Vel, draftTools::p, CuttingToolsSettings::sheet_thickness, and CuttingToolsSettings::spring_pretension.
| path_simulate::~path_simulate | ( | ) |
Definition at line 102 of file path_simulate.cpp.
| bool path_simulate::ConnectPaths_Feat | ( | bool | tool, | |
| bool | robo, | |||
| bool | connection_type | |||
| ) |
Computes output for the connection-part in all directions for the feature-based-strategy.
| tool | false: master true: slave | |
| robo | defines outputstyle (false: simulation true: robot) | |
| connection_type | false: in 3-steps true: in 2-steps |
Definition at line 963 of file path_simulate.cpp.
References Py::abs(), Sketcher::Distance, CuttingToolsSettings::master_radius, KDL::max(), ParameterCalculation_Line(), CuttingToolsSettings::slave_radius, TolDist, draftlibs::fcgeo::vec(), Base::Vector3< _Precision >::x, Base::Vector3< _Precision >::y, and Base::Vector3< _Precision >::z.
Referenced by MakePathRobot_Feat(), and MakePathSimulate_Feat().
| bool path_simulate::ConnectPaths_xy | ( | bool | outputstyle | ) |
Computes output for the connection-part in xy-direction.
| outputstyle | false: simulation, true: robot |
Definition at line 499 of file path_simulate.cpp.
References Py::int, KDL::max(), draftTools::p, ParameterCalculation_Line(), TolDist, Base::Vector3< _Precision >::x, Base::Vector3< _Precision >::y, and Base::Vector3< _Precision >::z.
Referenced by MakePathRobot(), MakePathRobot_Feat(), MakePathSimulate(), and MakePathSimulate_Feat().
| bool path_simulate::ConnectPaths_z | ( | bool | outputstyle | ) |
Computes output for the connection-part in z-direction.
| outputstyle | false: simulation, true: robot |
Definition at line 742 of file path_simulate.cpp.
References Py::int, KDL::max(), ParameterCalculation_Line(), TolDist, Base::Vector3< _Precision >::x, Base::Vector3< _Precision >::y, and Base::Vector3< _Precision >::z.
Referenced by MakePathRobot(), MakePathRobot_Feat(), MakePathSimulate(), and MakePathSimulate_Feat().
| bool path_simulate::Correction | ( | bool | b | ) |
computes path-correction after a tool-path-run
| b | false: master, true: slave |
Definition at line 1521 of file path_simulate.cpp.
References Sketcher::Distance, Py::int, ParameterCalculation_Line(), Base::Vector3< _Precision >::x, Base::Vector3< _Precision >::y, and Base::Vector3< _Precision >::z.
Referenced by Gen_Path().
| int path_simulate::Detect_FeatCurve | ( | bool | tool | ) |
Returns the next curve-index for the feature-based-strategy.
Definition at line 2665 of file path_simulate.cpp.
Referenced by MakePathRobot_Feat().
| bool path_simulate::Gen_Path | ( | ) |
Main routine for creating the simulation output for a single curve, including the synchronisation of master and slave
CompPath() must have been called before using this function.
Definition at line 1671 of file path_simulate.cpp.
References Correction(), RobotExample::l, MakePathSingle(), draftTools::p, and ParameterCalculation_Curve().
Referenced by MakePathSimulate(), and MakePathSimulate_Feat().
| bool path_simulate::MakePathRobot | ( | ) |
Main function of the output-generation for the robot using the standard-strategy.
Definition at line 2139 of file path_simulate.cpp.
References ConnectPaths_xy(), ConnectPaths_z(), MakePathSingle(), UpdateParam(), WriteOutputDouble(), and WriteOutputSingle().
Referenced by CamGui::Cutting::on_GenRobotOut_clicked().
| bool path_simulate::MakePathRobot_Feat | ( | const std::vector< float > & | flatAreas | ) |
Main function of the output-generation for the robot using the feature-based-strategy.
Definition at line 2468 of file path_simulate.cpp.
References ConnectPaths_Feat(), ConnectPaths_xy(), ConnectPaths_z(), Detect_FeatCurve(), SketcherExample::f, MakePathSingle(), CuttingToolsSettings::master_radius, MovieTool::run(), CuttingToolsSettings::sheet_thickness, CuttingToolsSettings::slave_radius, and WriteOutput_Feat().
Referenced by CamGui::Cutting::on_GenRobotOut_clicked().
| bool path_simulate::MakePathSimulate | ( | ) |
Main function of the output-generation for the simulation using the standard-strategy.
Definition at line 2729 of file path_simulate.cpp.
References Mod::PartDesign::Scripts::Gear::c1, ConnectPaths_xy(), ConnectPaths_z(), Gen_Path(), UpdateParam(), WriteOutputDouble(), and WriteOutputSingle().
Referenced by CamGui::Cutting::on_GenSimOut_clicked().
| bool path_simulate::MakePathSimulate_Feat | ( | const std::vector< float > & | flatAreas, | |
| bool | spiral | |||
| ) |
Main function of the output-generation for the simulation using the feature-based or spiral-based strategy.
| flatAreas | index-vector specifying the flat areas | |
| spiral | specifies the strategy (true: spiral-based, false: feature-based) |
Definition at line 2307 of file path_simulate.cpp.
References ConnectPaths_Feat(), ConnectPaths_xy(), ConnectPaths_z(), Gen_Path(), CuttingToolsSettings::master_radius, CuttingToolsSettings::sheet_thickness, CuttingToolsSettings::slave_radius, UpdateParam(), and WriteOutputDouble().
Referenced by CamGui::Cutting::on_GenSimOut_clicked().
| bool path_simulate::MakePathSingle | ( | bool | outputstyle, | |
| double | length, | |||
| bool | part, | |||
| bool | curveType | |||
| ) |
Creates outputvectors for the simulation outputfor a single curve.
| outputstyle | false: simulation, true: robot | |
| length | defines length of the path | |
| part | tells us that we are generating output for a critical part of the curve or not | |
| curveType |
Definition at line 1934 of file path_simulate.cpp.
References KDL::max(), ParameterCalculation_Curve(), TolDist, Base::Vector3< _Precision >::x, Base::Vector3< _Precision >::y, and Base::Vector3< _Precision >::z.
Referenced by Gen_Path(), MakePathRobot(), and MakePathRobot_Feat().
| bool path_simulate::ParameterCalculation_Curve | ( | double | wirelength | ) |
Computes all parameters of the velocity-function for the tool movement along a curve-segment.
| wirelength | arc-length of the curve-segment |
Definition at line 292 of file path_simulate.cpp.
References Py::abs(), zipios::min(), and KDL::sqrt().
Referenced by Gen_Path(), and MakePathSingle().
| bool path_simulate::ParameterCalculation_Line | ( | double | wirelength | ) |
Computes all parameters of the velocity-function for the tool movement along a straight line.
| wirelength | length of the straight line |
Definition at line 262 of file path_simulate.cpp.
References KDL::sqrt().
Referenced by ConnectPaths_Feat(), ConnectPaths_xy(), ConnectPaths_z(), and Correction().
| bool path_simulate::TimeCorrection | ( | ) |
Adds additional time-values to the output-vector of the waiting tool for synchronisation.
Definition at line 2215 of file path_simulate.cpp.
References KDL::max(), and draftlibs::fcgeo::vec().
Referenced by WriteOutputDouble().
| bool path_simulate::UpdateParam | ( | ) |
Updates actual parameter sets.
Definition at line 358 of file path_simulate.cpp.
Referenced by MakePathRobot(), MakePathSimulate(), and MakePathSimulate_Feat().
| bool path_simulate::WriteOutput_Feat | ( | ofstream & | anOutputFile_1, | |
| ofstream & | anOutputFile_2, | |||
| int & | c, | |||
| bool | outputstyle | |||
| ) |
Writes output-vectors to file for the feature-based-strategy.
| anOutputFile_1 | output-file for the master | |
| anOutputFile_2 | output-file for the slave | |
| c | startindex of the curve-id | |
| outputstyle | false: simulation, true: robot |
Definition at line 2832 of file path_simulate.cpp.
References MovieTool::x, CuttingToolsSettings::x_offset_robot, MovieTool::y, and CuttingToolsSettings::y_offset_robot.
Referenced by MakePathRobot_Feat().
| bool path_simulate::WriteOutputDouble | ( | ofstream & | anOutputFile_1, | |
| ofstream & | nOutputFile_2, | |||
| int & | c1, | |||
| int & | c2, | |||
| bool | outputstyle, | |||
| bool | beamfl | |||
| ) |
Writes output-vectors to file.
| anOutputFile_1 | output-file for the master | |
| nOutputFile_2 | output-file for the slave | |
| c1 | startindex of the curve-id for the master | |
| c2 | startindex of the curve-id for the slave | |
| outputstyle | false: simulation, true: robot | |
| beamfl | specifies an additional outputvalue using spring-pretension |
Definition at line 3157 of file path_simulate.cpp.
References TimeCorrection(), MovieTool::x, CuttingToolsSettings::x_offset_robot, and CuttingToolsSettings::y_offset_robot.
Referenced by MakePathRobot(), MakePathSimulate(), and MakePathSimulate_Feat().
| bool path_simulate::WriteOutputSingle | ( | ofstream & | anOutputFile, | |
| int & | c, | |||
| bool | outputstyle, | |||
| bool | tool, | |||
| bool | beamfl | |||
| ) |
Write start- and endtime for one tool-path-run (master & slave).
Writes output-vectors to file
| anOutputFile | output-file | |
| c | ||
| outputstyle | false: simulation, true: robot | |
| tool | false: master, true: slave | |
| beamfl | specifies an additional outputvalue wich determines the waiting-status of the tool movement |
Definition at line 3017 of file path_simulate.cpp.
References MovieTool::x, CuttingToolsSettings::x_offset_robot, and CuttingToolsSettings::y_offset_robot.
Referenced by MakePathRobot(), and MakePathSimulate().
1.6.1