Noether  0.0.0
Loading...
Searching...
No Matches
noether::TPPWidget Class Reference

Basic tool path planning widget. More...

Detailed Description

Allows the user to laod a mesh from file, configure a tool path planning pipeline, and generate tool paths from the input mesh

#include <tpp_widget.h>

Inheritance diagram for noether::TPPWidget:

Public Member Functions

 TPPWidget (std::shared_ptr< const WidgetFactory > factory, QWidget *parent=nullptr)
 
void setMeshFile (const QString &file)
 Sets the file path for the mesh to use for tool path planning.
 
void configure (const QString &file)
 Configures the GUI tool path planning pipeline from a YAML configuration file.
 
void plan ()
 Invokes the planning of a tool path based on the current mesh file and tool path planner configuration.
 
void saveModifiedMeshes (const QDir &save_dir)
 Saves the modified meshes created during the planning of a tool path to a directory.
 
std::vector< ToolPathsgetToolPaths () const
 Get the planned tool paths.
 
void saveToolPaths (const QString &file)
 Saves the created tool paths to a YAML file.
 
void showOriginalMesh (const bool)
 
void showModifiedMesh (const bool)
 
void showUnmodifiedToolPath (const bool)
 
void showUnmodifiedConnectedPath (const bool)
 
void showModifiedToolPath (const bool)
 
void showModifiedConnectedPath (const bool)
 
void showAxes (const bool)
 

Protected Member Functions

void onLoadMesh (const bool)
 
void onSaveModifiedMeshes (const bool)
 
void onSaveToolPaths (const bool)
 
void render ()
 

Protected Attributes

std::string mesh_file_
 
Ui::TPP * ui_
 
ConfigurableTPPPipelineWidgetpipeline_widget_
 
QVTKOpenGLNativeWidget * render_widget_
 
vtkSmartPointer< vtkRenderer > renderer_
 
vtkSmartPointer< vtkPolyDataMapper > mesh_mapper_
 
vtkSmartPointer< vtkActor > mesh_actor_
 
vtkSmartPointer< vtkAssembly > tool_path_actor_
 
vtkSmartPointer< vtkAssembly > connected_path_actor_
 
vtkSmartPointer< vtkAssembly > unmodified_tool_path_actor_
 
vtkSmartPointer< vtkAssembly > unmodified_connected_path_actor_
 
vtkSmartPointer< vtkAssembly > mesh_fragment_actor_
 
vtkSmartPointer< vtkAxes > axes_
 
vtkSmartPointer< vtkAxesActor > axes_actor_
 
vtkSmartPointer< vtkTubeFilter > tube_filter_
 
std::vector< ToolPathstool_paths_
 

Member Function Documentation

◆ getToolPaths()

std::vector< ToolPaths > noether::TPPWidget::getToolPaths ( ) const
inline

The highest level vector represents the tool paths generated for each mesh "fragment" generated by the mesh modifier in the tool path planning pipeline