API Documentation
Loading...
Searching...
No Matches
FactoryOptions Class Reference

#include <FactoryOptions.h>

Inheritance diagram for FactoryOptions:
[legend]
Collaboration diagram for FactoryOptions:
[legend]

Public Types

enum  NormalGenerationModel { e_flat , e_smooth }
 
enum class  IncludeProperties : uint01 {
  e_ignore = 0 , e_include_default_precision = 1 , e_include_high_precision = 2 , e_generate_default_precision = 3 ,
  e_generate_high_precision = 4 , e_not_supported
}
 
enum class  ImportMergeProperties {
  e_duplicate , e_ignore_import , e_replace , e_remap_imported ,
  e_merge_and_replace_from_file , e_merge_and_ignore_from_file
}
 
enum class  GeoReferenceProperties {
  e_data_geo_referenced , e_user_place_with_cursor , e_user_geo_reference_dialog , e_prompt_user_all ,
  e_prompt_user_no_existing_reference
}
 

Public Member Functions

 FactoryOptions ()
 
 ~FactoryOptions ()
 
void prepareForINI (INIFactory &factory) override
 
virtual void getINI (INIFactory &factory) override
 
void finishReadingINI (INIFactory &factory) override
 
void setToDefaultUnits ()
 
bool useHighPrecision (VertexProperty property) const
 
bool useValue (VertexProperty property) const
 
bool generateValue (VertexProperty property) const
 
bool useHighPrecision (GeometryType property) const
 
bool useValue (GeometryType property) const
 
bool generateValue (GeometryType property) const
 
bool operator== (const FactoryOptions &options) const
 
bool operator!= (const FactoryOptions &options) const
 
void setupDefaultMaterial (GeometryType type, Material &mat) const
 
void postProcess (Model &model, ProgressInfo *progress, const void *lock) const
 
- Public Member Functions inherited from INIInterface
 INIInterface (const File &default_ini)
 
virtual ~INIInterface ()
 
virtual void writeToLog (ProgressInfo *log, uint01 log_level=2U)
 
virtual void writeToLog (const String &title, ProgressInfo *log, uint01 log_level=2U)
 
void setDefaultINIFile (const File &file)
 
virtual bool readINIOptions ()
 
virtual bool readINIOptions (File &ini_file)
 
virtual bool saveINIOptions (bool multithead=false)
 
virtual bool saveINIOptions (File &ini_file, bool multithead=false)
 

Public Attributes

AsciiOptions ascii
 
Buffer< Stringexclusion_model_types
 
Dictionary< String, GenericOptionGroupcustom_options
 
Matrix< fltp08transform
 
String name
 
String icon
 
String user_password
 
String owner_password
 
UnitManager units
 
NormalGenerationModel normal_generation_mode = e_smooth
 
Angle< fltp08normal_smooth_angle = Angle<fltp08>(DEGREES, 30.0)
 
WindingMode wind_triangles = WindingMode::e_no_winding
 
RGBColor default_color
 
UUID default_coord_projection = Constant<UUID>::NaN
 
fltp04 default_point_size = 20.0
 
fltp04 default_line_thickness = 1.0
 
fltp04 default_mesh_thickness = 1.0
 
CompressionMode compression_mode = CompressionMode::e_default_compression
 
ImportMergeProperties duplicate_name_behavior
 
ImportMergeProperties duplicate_uuid_behavior
 
GeoReferenceProperties geo_reference_behavior
 
bool flatten_model = false
 
bool center_model = false
 
bool multithread = true
 
bool tree_is_visible = true
 
bool application_locked = false
 
bool convert_degenerates = false
 
bool optimize_meshes = false
 
bool combine_mesh_instances = false
 
bool optimize_model_heirarchy = false
 
bool find_invalid_data = false
 
bool join_identical_vertices = false
 
bool fix_inward_normals = false
 
bool generate_UV_mappings = false
 
bool generate_trees = true
 
bool flip_UV_coordinates = false
 
bool ignore_invisible = false
 
bool two_sided = false
 
bool wireframe = false
 
bool triangulate = false
 
bool validitate_geometry = false
 
bool preserve_high_precision_values = false
 
bool use_cameras = true
 
bool is_auto_save = false
 
Vector< cast< uint01 >(VertexProperty::Vertex_Property_Size), IncludePropertiesvector_properties
 
Vector< cast< uint01 >(GeometryType::e_geometry_type_size), IncludePropertiesgeometry_properties
 

Static Public Attributes

static ApplicationOption< bool > DefaultExportOnlyVisible
 

Protected Member Functions

bool canPostProcessVertices () const
 

Additional Inherited Members

- Protected Attributes inherited from INIInterface
File m_default_ini
 

Member Enumeration Documentation

◆ GeoReferenceProperties

enum class GeoReferenceProperties
strong
Enumerator
e_data_geo_referenced 
e_user_place_with_cursor 
e_user_geo_reference_dialog 
e_prompt_user_all 
e_prompt_user_no_existing_reference 

◆ ImportMergeProperties

enum class ImportMergeProperties
strong
Enumerator
e_duplicate 
e_ignore_import 
e_replace 
e_remap_imported 
e_merge_and_replace_from_file 
e_merge_and_ignore_from_file 

◆ IncludeProperties

enum class IncludeProperties : uint01
strong
Enumerator
e_ignore 
e_include_default_precision 
e_include_high_precision 
e_generate_default_precision 
e_generate_high_precision 
e_not_supported 

◆ NormalGenerationModel

Enumerator
e_flat 
e_smooth 

Constructor & Destructor Documentation

◆ FactoryOptions()

◆ ~FactoryOptions()

Member Function Documentation

◆ canPostProcessVertices()

bool canPostProcessVertices ( ) const
protected

◆ finishReadingINI()

void finishReadingINI ( INIFactory & factory)
overridevirtual

Reimplemented from INIInterface.

◆ generateValue() [1/2]

bool generateValue ( GeometryType property) const

◆ generateValue() [2/2]

bool generateValue ( VertexProperty property) const
inline

◆ getINI()

void getINI ( INIFactory & factory)
overridevirtual

Implements INIInterface.

◆ operator!=()

bool operator!= ( const FactoryOptions & options) const
inline

◆ operator==()

bool operator== ( const FactoryOptions & options) const

◆ postProcess()

void postProcess ( Model & model,
ProgressInfo * progress,
const void * lock ) const

◆ prepareForINI()

void prepareForINI ( INIFactory & factory)
overridevirtual

Reimplemented from INIInterface.

◆ setToDefaultUnits()

void setToDefaultUnits ( )

◆ setupDefaultMaterial()

void setupDefaultMaterial ( GeometryType type,
Material & mat ) const

◆ useHighPrecision() [1/2]

bool useHighPrecision ( GeometryType property) const

◆ useHighPrecision() [2/2]

bool useHighPrecision ( VertexProperty property) const

◆ useValue() [1/2]

bool useValue ( GeometryType property) const
inline

◆ useValue() [2/2]

bool useValue ( VertexProperty property) const
inline

Member Data Documentation

◆ application_locked

bool application_locked = false

◆ ascii

AsciiOptions ascii

◆ center_model

bool center_model = false

◆ combine_mesh_instances

bool combine_mesh_instances = false

◆ compression_mode

◆ convert_degenerates

bool convert_degenerates = false

◆ custom_options

◆ default_color

RGBColor default_color

◆ default_coord_projection

UUID default_coord_projection = Constant<UUID>::NaN

◆ default_line_thickness

fltp04 default_line_thickness = 1.0

◆ default_mesh_thickness

fltp04 default_mesh_thickness = 1.0

◆ default_point_size

fltp04 default_point_size = 20.0

◆ DefaultExportOnlyVisible

ApplicationOption< bool > DefaultExportOnlyVisible
static

◆ duplicate_name_behavior

ImportMergeProperties duplicate_name_behavior

◆ duplicate_uuid_behavior

ImportMergeProperties duplicate_uuid_behavior

◆ exclusion_model_types

Buffer<String> exclusion_model_types
Initial value:
= {
"scanner"
, "bounding_box"
, "grips_model"
, "camera"
, "boretrak_model"
, "deployment_models"
, "calibration_ring"
, "text"
, "void_scanner"
, "cals_scanner"
, "qt_bounding_box"
, "station_decoration"
, "image_model"
}

◆ find_invalid_data

bool find_invalid_data = false

◆ fix_inward_normals

bool fix_inward_normals = false

◆ flatten_model

bool flatten_model = false

◆ flip_UV_coordinates

bool flip_UV_coordinates = false

◆ generate_trees

bool generate_trees = true

◆ generate_UV_mappings

bool generate_UV_mappings = false

◆ geo_reference_behavior

GeoReferenceProperties geo_reference_behavior

◆ geometry_properties

◆ icon

String icon

◆ ignore_invisible

bool ignore_invisible = false

◆ is_auto_save

bool is_auto_save = false

◆ join_identical_vertices

bool join_identical_vertices = false

◆ multithread

bool multithread = true

◆ name

String name

◆ normal_generation_mode

NormalGenerationModel normal_generation_mode = e_smooth

◆ normal_smooth_angle

Angle<fltp08> normal_smooth_angle = Angle<fltp08>(DEGREES, 30.0)

◆ optimize_meshes

bool optimize_meshes = false

◆ optimize_model_heirarchy

bool optimize_model_heirarchy = false

◆ owner_password

String owner_password

◆ preserve_high_precision_values

bool preserve_high_precision_values = false

◆ transform

Matrix<fltp08> transform

◆ tree_is_visible

bool tree_is_visible = true

◆ triangulate

bool triangulate = false

◆ two_sided

bool two_sided = false

◆ units

UnitManager units

◆ use_cameras

bool use_cameras = true

◆ user_password

String user_password

◆ validitate_geometry

bool validitate_geometry = false

◆ vector_properties

◆ wind_triangles

◆ wireframe

bool wireframe = false

The documentation for this class was generated from the following files: