X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=ModuleCall%2FGenSrc%2FbbSlicerModelMaker.h;fp=ModuleCall%2FGenSrc%2FbbSlicerModelMaker.h;h=05045b373d027966c5d05eb8e0e358448de7286a;hb=e7b4e2c9254e9e431f74acc92e3f0d40fc5e7ef6;hp=0000000000000000000000000000000000000000;hpb=cd590ce5fff20d69c7060340235a35e9c2a9ef86;p=creaCLI.git diff --git a/ModuleCall/GenSrc/bbSlicerModelMaker.h b/ModuleCall/GenSrc/bbSlicerModelMaker.h new file mode 100644 index 0000000..05045b3 --- /dev/null +++ b/ModuleCall/GenSrc/bbSlicerModelMaker.h @@ -0,0 +1,92 @@ +#ifndef __bbSlicerModelMaker_h_INCLUDED__ +#define __bbSlicerModelMaker_h_INCLUDED__ + +#include "bbSlicer_EXPORT.h" +#include "bbtkAtomicBlackBox.h" + +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +#include "CreationTool.h" + +namespace bbSlicer { + + class bbSlicer_EXPORT ModelMaker + : + public bbtk::AtomicBlackBox { + BBTK_BLACK_BOX_INTERFACE ( ModelMaker , bbtk::AtomicBlackBox ) ; + + // GENERATED ARGS + +BBTK_DECLARE_INPUT ( InputVolume , std::string ); +BBTK_DECLARE_INPUT ( ColorTable , std::string ); +BBTK_DECLARE_INPUT ( ModelSceneFile , std::string ); +BBTK_DECLARE_INPUT ( Name , std::string ); +BBTK_DECLARE_INPUT ( GenerateAll , bool ); +BBTK_DECLARE_INPUT ( Labels , std::vector ); +BBTK_DECLARE_INPUT ( StartLabel , int ); +BBTK_DECLARE_INPUT ( EndLabel , int ); +BBTK_DECLARE_INPUT ( SkipUnNamed , bool ); +BBTK_DECLARE_INPUT ( JointSmoothing , bool ); +BBTK_DECLARE_INPUT ( Smooth , int ); +BBTK_DECLARE_INPUT ( FilterType , std::string ); +BBTK_DECLARE_INPUT ( Decimate , float ); +BBTK_DECLARE_INPUT ( SplitNormals , bool ); +BBTK_DECLARE_INPUT ( PointNormals , bool ); +BBTK_DECLARE_INPUT ( Pad , bool ); +BBTK_DECLARE_INPUT ( SaveIntermediateModels , bool ); +BBTK_DECLARE_INPUT ( debug , bool ); + + // EO GENERATED ARGS + + BBTK_PROCESS ( Process ) ; + void Process ( ) ; + private: + void execute ( std::string lib , int _argc , char * _argv[] ) ; + } ; + + BBTK_BEGIN_DESCRIBE_BLACK_BOX ( ModelMaker , bbtk::AtomicBlackBox ) ; + BBTK_NAME ( "ModelMaker" ) ; + BBTK_AUTHOR ( "Nicole Aucoin, BWH Ron Kikinis, BWH, Bill Lorensen GE" ) ; + BBTK_DESCRIPTION ( "Create 3D surface models from segmented data. pModels are imported into Slicer under a model hierarchy node in a MRML scene. The model colors are set by the color table associated with the input volume these colours will only be visible if you load the model scene file. /ppbCreate Multiple:/b/pp If you specify a list of Labels, it will over ride any start/end label settings. /pp If you click iGenerate All/i it will over ride the list of lables and any start/end label settings. /ppbModel Maker Settings:/b/pp You can set the number of smoothing iterations, target reduction in number of polygons decimal percentage. Use 0 and 1 if you wish no smoothing nor decimation. brYou can set the flags to split normals or generate point normals in this pane as well. brYou can save a copy of the models after intermediate steps marching cubes, smoothing, and decimation if not joint smoothing, otherwise just after decimation; these models are not saved in the mrml file, turn off deleting temporary files first in the python window: brislicer.modules.modelmaker.cliModuleLogic.DeleteTemporaryFilesOff/i/p" ) ; + BBTK_CATEGORY ( "Surface Models" ) ; + + // GENERATED DESCRPTION + +BBTK_INPUT(ModelMaker , InputVolume , "InputVolume" , std::string, ""); +BBTK_INPUT(ModelMaker , ColorTable , "ColorTable" , std::string, ""); +BBTK_INPUT(ModelMaker , ModelSceneFile , "ModelSceneFile" , std::string, ""); +BBTK_INPUT(ModelMaker , Name , "Name" , std::string, ""); +BBTK_INPUT(ModelMaker , GenerateAll , "GenerateAll" , bool, ""); +BBTK_INPUT(ModelMaker , Labels , "Labels" , std::vector, ""); +BBTK_INPUT(ModelMaker , StartLabel , "StartLabel" , int, ""); +BBTK_INPUT(ModelMaker , EndLabel , "EndLabel" , int, ""); +BBTK_INPUT(ModelMaker , SkipUnNamed , "SkipUnNamed" , bool, ""); +BBTK_INPUT(ModelMaker , JointSmoothing , "JointSmoothing" , bool, ""); +BBTK_INPUT(ModelMaker , Smooth , "Smooth" , int, ""); +BBTK_INPUT(ModelMaker , FilterType , "FilterType" , std::string, ""); +BBTK_INPUT(ModelMaker , Decimate , "Decimate" , float, ""); +BBTK_INPUT(ModelMaker , SplitNormals , "SplitNormals" , bool, ""); +BBTK_INPUT(ModelMaker , PointNormals , "PointNormals" , bool, ""); +BBTK_INPUT(ModelMaker , Pad , "Pad" , bool, ""); +BBTK_INPUT(ModelMaker , SaveIntermediateModels , "SaveIntermediateModels" , bool, ""); +BBTK_INPUT(ModelMaker , debug , "debug" , bool, ""); + + // EO GENERATED DESCRIPTION + + BBTK_END_DESCRIBE_BLACK_BOX ( ModelMaker ) ; +} + +#endif // __bbSlicerModelMaker_h_INCLUDED__ + +