This is an intermediary class. Concrete classes will simply instantiate the various guide enums in their constructor. More...
#include <LVQDTargetCalculator.hpp>
Public Member Functions | |
virtual | ~LVQDTargetCalculator () |
virtual destructor ensures use of polymorphism during destruction More... | |
virtual void | compute_target_matrices (PatchData &pd, MsqError &err) |
void | compute_target_matrices (PatchData &pd, PatchData &ref_pd, MsqError &err) |
Function called by compute_target_matrices(PatchData& pd, MsqError& err) to compute the matrices after the reference PatchData has been created. More... | |
virtual | ~LVQDTargetCalculator () |
virtual destructor ensures use of polymorphism during destruction More... | |
virtual void | compute_target_matrices (PatchData &pd, MsqError &err) |
This function provides the corner matrices for all elements on the Patch. More... | |
void | compute_target_matrices (PatchData &pd, PatchData &ref_pd, MsqError &err) |
Function called by compute_target_matrices(PatchData& pd, MsqError& err) to compute the matrices after the reference PatchData has been created. More... | |
Public Member Functions inherited from TargetCalculator | |
TargetCalculator () | |
virtual | ~TargetCalculator () |
virtual destructor ensures use of polymorphism during destruction More... | |
void | compute_guide_matrices (enum guide_type type, PatchData &ref_pd, size_t elem_ind, Matrix3D A[], int num, MsqError &err) |
Computes the guide corner matrices A for a given element index in the reference patch. More... | |
Matrix3D | compute_V_3D (const Matrix3D &A, MsqError &err) |
Matrix3D | compute_Q_3D (const Matrix3D &A, MsqError &err) |
Matrix3D | compute_Delta_3D (const Matrix3D &A, MsqError &err) |
void | compute_default_target_matrices (PatchData &pd, MsqError &err) |
Compute the default "isotropic" target matrices that are often used in the computation of reference-based target matrices. More... | |
void | compute_reference_corner_matrices (PatchData &pd, MsqError &err) |
Compute the corner matrices for the reference mesh refMesh. More... | |
void | compute_target_matrices_and_check_det (PatchData &pd, MsqError &err) |
This function wraps compute_target_matrices and checks that the determinant of each target is positive. More... | |
void | reset_reference_meshset (MsqError &err) |
Reset the reference mesh so it starts from the first vertex again. More... | |
virtual double | loop_over_mesh (MeshSet &ms, MsqError &err) |
This is the "run" function of PatchDataUser. It can do anything really. More... | |
virtual msq_std::string | get_name () |
Returns the algorithm name. More... | |
virtual AlgorithmType | get_algorithm_type () |
Return the algorithm type (to avoid RTTI use). More... | |
TargetCalculator () | |
virtual | ~TargetCalculator () |
virtual destructor ensures use of polymorphism during destruction More... | |
void | compute_guide_matrices (enum guide_type type, PatchData &ref_pd, size_t elem_ind, Matrix3D A[], int num, MsqError &err) |
Computes the guide corner matrices A for a given element index in the reference patch. More... | |
Matrix3D | compute_V_3D (const Matrix3D &A, MsqError &err) |
Matrix3D | compute_Q_3D (const Matrix3D &A, MsqError &err) |
Matrix3D | compute_Delta_3D (const Matrix3D &A, MsqError &err) |
void | compute_default_target_matrices (PatchData &pd, MsqError &err) |
Compute the default "isotropic" target matrices that are often used in the computation of reference-based target matrices. More... | |
void | compute_reference_corner_matrices (PatchData &pd, MsqError &err) |
Compute the corner matrices for the reference mesh refMesh. More... | |
void | compute_target_matrices_and_check_det (PatchData &pd, MsqError &err) |
This function wraps compute_target_matrices and checks that the determinant of each target is positive. More... | |
void | reset_reference_meshset (MsqError &err) |
Reset the reference mesh so it starts from the first vertex again. More... | |
virtual double | loop_over_mesh (MeshSet &ms, MsqError &err) |
This is the "run" function of PatchDataUser. It can do anything really. More... | |
virtual msq_std::string | get_name () |
Returns the algorithm name. More... | |
virtual AlgorithmType | get_algorithm_type () |
Return the algorithm type (to avoid RTTI use). More... | |
Public Member Functions inherited from PatchDataUser | |
virtual | ~PatchDataUser () |
virtual void | set_patch_type (PatchData::PatchType patch_type, MsqError &err, int param1=0, int param2=0) |
Sets the Patch Type. More... | |
PatchData::PatchType | get_patch_type () |
Returns the Patch Type. More... | |
int | get_nb_layers (MsqError &err) |
Returns number of layers (if relevant for partition algorythm). More... | |
void | add_culling_method (enum PatchData::culling_method cm) |
Sets on the culling method passed as argument. More... | |
void | no_culling_method () |
Sets off all culling methods. More... | |
void | remove_culling_method (enum PatchData::culling_method cm) |
Sets off the culling method passed as argument. More... | |
long unsigned int | get_culling_method_bits () |
Returns the bitset containing culling methods flags. More... | |
void | set_all_parameters (PatchDataParameters ¶ms) |
PatchDataParameters & | get_all_parameters () |
Returns the PatchDataParameters object. More... | |
void | set_global_patch (PatchData *pd, MsqError &err) |
Sets the Global Patch, so that it can be use by contiguoug PatchDataUser. More... | |
PatchData * | get_global_patch () |
Returns the Global Patch. More... | |
void | no_global_patch () |
Sets the Global Patch pointer to NULL. More... | |
virtual | ~PatchDataUser () |
virtual void | set_patch_type (PatchData::PatchType patch_type, MsqError &err, int param1=0, int param2=0) |
Sets the Patch Type. More... | |
PatchData::PatchType | get_patch_type () |
Returns the Patch Type. More... | |
int | get_nb_layers (MsqError &err) |
Returns number of layers (if relevant for partition algorythm). More... | |
void | add_culling_method (enum PatchData::culling_method cm) |
Sets on the culling method passed as argument. More... | |
void | no_culling_method () |
Sets off all culling methods. More... | |
void | remove_culling_method (enum PatchData::culling_method cm) |
Sets off the culling method passed as argument. More... | |
long unsigned int | get_culling_method_bits () |
Returns the bitset containing culling methods flags. More... | |
void | set_all_parameters (PatchDataParameters ¶ms) |
PatchDataParameters & | get_all_parameters () |
Returns the PatchDataParameters object. More... | |
void | set_global_patch (PatchData *pd, MsqError &err) |
Sets the Global Patch, so that it can be use by contiguoug PatchDataUser. More... | |
PatchData * | get_global_patch () |
Returns the Global Patch. More... | |
void | no_global_patch () |
Sets the Global Patch pointer to NULL. More... | |
Protected Member Functions | |
LVQDTargetCalculator () | |
the constructor is protected since this is not intended to be a concrete class. More... | |
LVQDTargetCalculator () | |
the constructor is protected since this is not intended to be a concrete class. More... | |
Protected Member Functions inherited from PatchDataUser | |
PatchDataUser () | |
PatchDataUser () | |
Protected Attributes | |
enum Lambda_type | lambdaBase |
enum guide_type | guideLambda |
enum guide_type | guideV |
enum guide_type | guideQ |
enum guide_type | guideDelta |
Protected Attributes inherited from TargetCalculator | |
MeshSet * | refMesh |
This is an intermediary class. Concrete classes will simply instantiate the various guide enums in their constructor.
Definition at line 49 of file includeLinks/LVQDTargetCalculator.hpp.
|
inlineprotected |
the constructor is protected since this is not intended to be a concrete class.
Concrete classes will instantiate the various guide enums in their constructor.
Definition at line 54 of file includeLinks/LVQDTargetCalculator.hpp.
|
inlinevirtual |
virtual destructor ensures use of polymorphism during destruction
Definition at line 59 of file includeLinks/LVQDTargetCalculator.hpp.
|
inlineprotected |
the constructor is protected since this is not intended to be a concrete class.
Concrete classes will instantiate the various guide enums in their constructor.
Definition at line 54 of file src/TargetCalculator/LVQDTargetCalculator.hpp.
|
inlinevirtual |
virtual destructor ensures use of polymorphism during destruction
Definition at line 59 of file src/TargetCalculator/LVQDTargetCalculator.hpp.
The type of targets computed by this function is selected by the constructor of the base classes.
Implements TargetCalculator.
Definition at line 49 of file TargetCalculator/LVQDTargetCalculator.cpp.
References PatchDataUser::get_all_parameters(), MeshSet::get_next_patch(), MsqError::INVALID_STATE, MSQ_ERRRTN, MSQ_FUNCTION_TIMER, MSQ_SETERR, and TargetCalculator::refMesh.
This function provides the corner matrices for all elements on the Patch.
Useful functionality includes: MsqMeshEntity::set_tag, MsqTag::target_matrix, MsqTag::scalar .
Implements TargetCalculator.
Function called by compute_target_matrices(PatchData& pd, MsqError& err) to compute the matrices after the reference PatchData has been created.
Function called by compute_target_matrices(PatchData& pd, MsqError& err) to compute the matrices after the reference PatchData has been created.
Definition at line 63 of file TargetCalculator/LVQDTargetCalculator.cpp.
References TargetCalculator::AVERAGE, TargetCalculator::compute_Delta_3D(), TargetCalculator::compute_guide_matrices(), TargetCalculator::compute_Lambda(), TargetCalculator::compute_Q_3D(), TargetCalculator::compute_V_3D(), PatchData::get_average_Lambda_3d(), PatchData::get_element_array(), LVQDTargetCalculator::guideDelta, LVQDTargetCalculator::guideLambda, LVQDTargetCalculator::guideQ, LVQDTargetCalculator::guideV, i, MsqError::INVALID_STATE, LVQDTargetCalculator::lambdaBase, MSQ_ERRRTN, Mesquite::MSQ_MAX_NUM_VERT_PER_ENT, MSQ_SETERR, PatchData::num_elements(), PatchData::num_vertices(), TargetCalculator::REGULAR, PatchData::targetMatrices, and MsqMeshEntity::vertex_count().
|
protected |
Definition at line 77 of file includeLinks/LVQDTargetCalculator.hpp.
Referenced by LVQDTargetCalculator::compute_target_matrices(), DeformingDomainGuides843::DeformingDomainGuides843(), DeformingDomainGuides844::DeformingDomainGuides844(), RezoneGuides832::RezoneGuides832(), ShapeGuides812::ShapeGuides812(), ShapeSizeGuides821::ShapeSizeGuides821(), ShapeSizeGuides822::ShapeSizeGuides822(), ShapeSizeGuides823::ShapeSizeGuides823(), and ShapeSizeGuides824::ShapeSizeGuides824().
|
protected |
Definition at line 74 of file includeLinks/LVQDTargetCalculator.hpp.
Referenced by LVQDTargetCalculator::compute_target_matrices(), DeformingDomainGuides843::DeformingDomainGuides843(), DeformingDomainGuides844::DeformingDomainGuides844(), RezoneGuides832::RezoneGuides832(), ShapeGuides812::ShapeGuides812(), ShapeSizeGuides821::ShapeSizeGuides821(), ShapeSizeGuides822::ShapeSizeGuides822(), ShapeSizeGuides823::ShapeSizeGuides823(), and ShapeSizeGuides824::ShapeSizeGuides824().
|
protected |
Definition at line 76 of file includeLinks/LVQDTargetCalculator.hpp.
Referenced by LVQDTargetCalculator::compute_target_matrices(), DeformingDomainGuides843::DeformingDomainGuides843(), DeformingDomainGuides844::DeformingDomainGuides844(), RezoneGuides832::RezoneGuides832(), ShapeGuides812::ShapeGuides812(), ShapeSizeGuides821::ShapeSizeGuides821(), ShapeSizeGuides822::ShapeSizeGuides822(), ShapeSizeGuides823::ShapeSizeGuides823(), and ShapeSizeGuides824::ShapeSizeGuides824().
|
protected |
Definition at line 75 of file includeLinks/LVQDTargetCalculator.hpp.
Referenced by LVQDTargetCalculator::compute_target_matrices(), DeformingDomainGuides843::DeformingDomainGuides843(), DeformingDomainGuides844::DeformingDomainGuides844(), RezoneGuides832::RezoneGuides832(), ShapeGuides812::ShapeGuides812(), ShapeSizeGuides821::ShapeSizeGuides821(), ShapeSizeGuides822::ShapeSizeGuides822(), ShapeSizeGuides823::ShapeSizeGuides823(), and ShapeSizeGuides824::ShapeSizeGuides824().
|
protected |
Definition at line 73 of file includeLinks/LVQDTargetCalculator.hpp.
Referenced by LVQDTargetCalculator::compute_target_matrices(), DeformingDomainGuides843::DeformingDomainGuides843(), DeformingDomainGuides844::DeformingDomainGuides844(), RezoneGuides832::RezoneGuides832(), ShapeGuides812::ShapeGuides812(), ShapeSizeGuides821::ShapeSizeGuides821(), ShapeSizeGuides822::ShapeSizeGuides822(), ShapeSizeGuides823::ShapeSizeGuides823(), and ShapeSizeGuides824::ShapeSizeGuides824().