REFERENCE MANUAL
#include <sprk_exchange.h>
Static Public Member Functions | |
static ModelFileImportOptionsKit | GetDefault () |
![]() | |
template<typename T > | |
static intptr_t | ClassID () |
Additional Inherited Members | |
![]() | |
enum | UpdateType { Synchronous, Asynchronous } |
The Exchange::ModelFileImportOptionsKit class is a user space object. It contains settings (potentially) controlling how data is imported via Exchange. This particular options kit is used when importing an A3DAsmModelFile directly (see Exchange::File::Import(void*,const ModelFileImportOptionsKit&)) and as such the options will only be used if the A3DAsmModelFile permits (e.g., tessellation options will only be used if tessellation needs to be generated and the A3DAsmModelFile has BRep data). Calling Exchange::ModelFileImportOptionsKit::GetDefault() will return an options kit with values found in here.
Exchange::ModelFileImportOptionsKit::ModelFileImportOptionsKit | ( | ) |
The default constructor creates an empty ModelFileImportOptionsKit object.
Exchange::ModelFileImportOptionsKit::ModelFileImportOptionsKit | ( | ModelFileImportOptionsKit const & | in_kit | ) |
The copy constructor creates a new ModelFileImportOptionsKit object that contains the same settings as the source ModelFileImportOptionsKit.
in_kit | The source ModelFileImportOptionsKit to copy. |
Exchange::ModelFileImportOptionsKit::ModelFileImportOptionsKit | ( | ModelFileImportOptionsKit && | in_that | ) |
The move constructor creates an ModelFileImportOptionsKit by transferring the underlying impl of the rvalue reference to this ModelFileImportOptionsKit thereby avoiding a copy and allocation.
in_that | An rvalue reference to an ModelFileImportOptionsKit to take the impl from. |
|
virtual |
Indicates whether this ModelFileImportOptionsKit has any values set on it.
Reimplemented from Object.
bool Exchange::ModelFileImportOptionsKit::Equals | ( | ModelFileImportOptionsKit const & | in_kit | ) | const |
Check if the source ModelFileImportOptionsKit is equivalent to this ModelFileImportOptionsKit.
in_kit | The source ModelFileImportOptionsKit to compare to this ModelFileImportOptionsKit. |
|
static |
Creates an ModelFileImportOptionsKit which contains the default settings. The returned object will not necessarily have values set for every option, but it will have settings for those options where it is reasonable to have a default. These values will be used for import unless an option is overridden by the options passed to File::Import(void*,const ModelFileImportOptionsKit&).
|
inlinevirtual |
This function returns the type the object, as declared. This does not necessarily give the true type of the underlying object.
Reimplemented from Object.
bool Exchange::ModelFileImportOptionsKit::operator!= | ( | ModelFileImportOptionsKit const & | in_kit | ) | const |
Check if the source ModelFileImportOptionsKit is not equivalent to this ModelFileImportOptionsKit.
in_kit | The source ModelFileImportOptionsKit to compare to this ModelFileImportOptionsKit. |
ModelFileImportOptionsKit& Exchange::ModelFileImportOptionsKit::operator= | ( | ModelFileImportOptionsKit && | in_that | ) |
The move assignment operator transfers the underlying impl of the rvalue reference to this ModelFileImportOptionsKit thereby avoiding a copy.
in_that | An rvalue reference to an ModelFileImportOptionsKit to take the impl from. |
ModelFileImportOptionsKit& Exchange::ModelFileImportOptionsKit::operator= | ( | ModelFileImportOptionsKit const & | in_kit | ) |
Copies the source ModelFileImportOptionsKit into this ModelFileImportOptionsKit.
in_kit | The source ModelFileImportOptionsKit to copy. |
bool Exchange::ModelFileImportOptionsKit::operator== | ( | ModelFileImportOptionsKit const & | in_kit | ) | const |
Check if the source ModelFileImportOptionsKit is equivalent to this ModelFileImportOptionsKit.
in_kit | The source ModelFileImportOptionsKit to compare to this ModelFileImportOptionsKit. |
void Exchange::ModelFileImportOptionsKit::Set | ( | ModelFileImportOptionsKit const & | in_kit | ) |
Copies the source ModelFileImportOptionsKit into this ModelFileImportOptionsKit.
in_kit | The source ModelFileImportOptionsKit to copy. |
ModelFileImportOptionsKit& Exchange::ModelFileImportOptionsKit::SetIFCEdges | ( | bool | in_state | ) |
Sets whether to import edges for IFC files When this is set to false the import time will decrease. It is still possible to achieve visual fidelity by turning on hard edge visibility.
in_state | Whether to import edges for an IFC file. |
ModelFileImportOptionsKit& Exchange::ModelFileImportOptionsKit::SetTessellationAccuracy | ( | Tessellation::Accuracy | in_type, |
bool | in_accurate_normals = true |
||
) |
Sets the accuracy of the tessellation that will be generated for BRep data.
in_type | The accuracy to use for tessellation generation. |
in_accurate_normals | Whether to compute surface normals when performing accurate tessellation. This only applies if in_type is set to Tessellation::Accuracy::Accurate. This correspond to the (negated) value that will be passed to A3DRWParamsTessellationData::m_bDoNotComputeNormalsInAccurateTessellation. |
ModelFileImportOptionsKit& Exchange::ModelFileImportOptionsKit::SetTessellationLevel | ( | Tessellation::Level | in_level | ) |
Sets the predefined quality of the tessellation that will be generated for BRep data. This corresponds to the value that will be passed to A3DRWParamsTessellationData::m_eTessellationLevelOfDetail.
in_level | The predefined quality of the tessellation that will be generated for BRep data. |
ModelFileImportOptionsKit& Exchange::ModelFileImportOptionsKit::SetTessellationLevel | ( | Tessellation::Chord::Limit | in_limit_type, |
double | in_limit, | ||
double | in_angle_tolerance | ||
) |
Sets the user defined quality of the tessellation that will be generated for BRep data. This implicitly sets A3DRWParamsTessellationData::m_eTessellationLevel to kA3DTessLODUserDefined.
in_limit_type | The type of the chord limit to be specified. |
in_limit | Either the ratio of the tessellation chord height to the bounding box height which should be in the range [50, 10000], or the maximum distance between the surface definition and the tessellation approximation, depending on the preceding argument. |
in_angle_tolerance | The maximum angle in degrees between two consecutive wire elements in the generated tessellation which should be in the range [10, 40]. This corresponds to the value that will be passed to A3DRWParamsTessellationData::m_dAngleToleranceDeg. |
ModelFileImportOptionsKit& Exchange::ModelFileImportOptionsKit::SetTessellationMaximumEdgeLength | ( | double | in_length | ) |
Sets the maximum length of triangle edges in the tessellation generated for BRep data. This corresponds to the value that will be passed to A3DRWParamsTessellationData::m_dMaximalTriangleEdgeLength.
in_length | The maximum length of triangle edges in the tessellation generated for BRep data. The value must be non-negative, and if set to 0.0, the length will not be used when generating the tessellation. |
ModelFileImportOptionsKit& Exchange::ModelFileImportOptionsKit::SetTessellationPreservesUVPoints | ( | bool | in_state | ) |
Sets whether to keep parametric points as texture coordinates when generating the tessellation for BRep data. This corresponds to the value that will be passed to A3DRWParamsTessellationData::m_bKeepUVPoints.
in_state | Whether to keep parametric points as texture coordinates when generating the tessellation for BRep data. |
void Exchange::ModelFileImportOptionsKit::Show | ( | ModelFileImportOptionsKit & | out_kit | ) | const |
Copies this ModelFileImportOptionsKit into the given ModelFileImportOptionsKit.
out_kit | The ModelFileImportOptionsKit to populate with the contents of this ModelFileImportOptionsKit. |
bool Exchange::ModelFileImportOptionsKit::ShowIFCEdges | ( | bool & | out_state | ) | const |
Shows the IFC edges setting.
out_state | Whether to import edges for an IFC file. |
bool Exchange::ModelFileImportOptionsKit::ShowTessellationAccuracy | ( | Tessellation::Accuracy & | out_type, |
bool & | out_accurate_normals | ||
) | const |
Shows the tessellation accuracy setting.
out_type | The type of the tessellation accuracy which was specified. |
out_accurate_normals | Whether to compute surface normals when performing accurate tessellation. This only applies if out_type is Tessellation::Accuracy::Accurate. |
bool Exchange::ModelFileImportOptionsKit::ShowTessellationLevel | ( | Tessellation::Type & | out_type, |
Tessellation::Level & | out_level, | ||
Tessellation::Chord::Limit & | out_limit_type, | ||
double & | out_limit, | ||
double & | out_angle_tolerance | ||
) | const |
Shows the tessellation level setting.
out_type | The type of the tessellation level setting which was specified. |
out_level | The predefined quality of the tessellation that will be generated for BRep data. This is only valid if out_type is Tessellation::Type::Standard. |
out_limit_type | The type of chord limit which was specified. This is only valid if out_type is Tessellation::Type::Custom. |
out_limit | The chord limit to use to generate tessellation for BRep data. Its interpretation depends on the preceding argument. This is only valid if out_type is Tessellation::Type::Custom. |
out_angle_tolerance | The maximum angle in degrees between two consecutive wire elements in the generated tessellation. This is only valid if out_type is Tessellation::Type::Custom. |
bool Exchange::ModelFileImportOptionsKit::ShowTessellationMaximumEdgeLength | ( | double & | out_length | ) | const |
Shows the tessellation maximum edge length setting.
out_lenth | The tessellation maximum edge length setting. |
bool Exchange::ModelFileImportOptionsKit::ShowTessellationPreservesUVPoints | ( | bool & | out_state | ) | const |
Shows the tessellation UV preservation setting.
out_state | Whether to keep parametric points as texture coordinates when generating the tessellation for BRep data. |
ModelFileImportOptionsKit& Exchange::ModelFileImportOptionsKit::UnsetEverything | ( | ) |
Removes all settings from this ModelFileImportOptionsKit.
ModelFileImportOptionsKit& Exchange::ModelFileImportOptionsKit::UnsetIFCEdges | ( | ) |
Removes the IFC edges setting.
ModelFileImportOptionsKit& Exchange::ModelFileImportOptionsKit::UnsetTessellationAccuracy | ( | ) |
Removes the tessellation accuracy setting.
ModelFileImportOptionsKit& Exchange::ModelFileImportOptionsKit::UnsetTessellationLevel | ( | ) |
Removes the tessellation level setting.
ModelFileImportOptionsKit& Exchange::ModelFileImportOptionsKit::UnsetTessellationMaximumEdgeLength | ( | ) |
Removes the tessellation maximum edge length setting.
ModelFileImportOptionsKit& Exchange::ModelFileImportOptionsKit::UnsetTessellationPreservesUVPoints | ( | ) |
Removes the tessellation UV preservation setting.