ShellOptimizationOptionsKit

class HPS::ShellOptimizationOptionsKit : public HPS::Kit

The ShellOptimizationOptionsKit class is a user space object. It is used for setting options for a shell optimization operation. Calling HPS::ShellOptimizationOptionsKit::GetDefault() will return an options kit with values found in this table.

Public Functions

void Consume(ShellOptimizationOptionsKit &in_kit)

Copies the source ShellOptimizationOptionsKit into this ShellOptimizationOptionsKit and resets the source kit.

Parameters

in_kit – The source ShellOptimizationOptionsKit to consume.

virtual bool Empty() const

Indicates whether this ShellOptimizationOptionsKit has any values set on it.

Returns

true if no values are set on this ShellOptimizationOptionsKit, false otherwise.

bool Equals(ShellOptimizationOptionsKit const &in_kit) const

Check if the source ShellOptimizationOptionsKit is equivalent to this ShellOptimizationOptionsKit.

Parameters

in_kit – The source ShellOptimizationOptionsKit to compare to this ShellOptimizationOptionsKit.

Returns

true if the objects are equivalent, false otherwise.

inline virtual HPS::Type ObjectType() const

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Returns

The declared type of the object in question, which may differ from the true, underlying type.

bool operator!=(ShellOptimizationOptionsKit const &in_kit) const

Check if the source ShellOptimizationOptionsKit is not equivalent to this ShellOptimizationOptionsKit.

Parameters

in_kit – The source ShellOptimizationOptionsKit to compare to this ShellOptimizationOptionsKit.

Returns

true if the objects are not equivalent, false otherwise.

ShellOptimizationOptionsKit &operator=(ShellOptimizationOptionsKit &&in_that)

The move assignment operator transfers the underlying impl of the rvalue reference to this ShellOptimizationOptionsKit thereby avoiding a copy.

Parameters

in_that – An rvalue reference to a ShellOptimizationOptionsKit to take the impl from.

Returns

A reference to this ShellOptimizationOptionsKit.

ShellOptimizationOptionsKit &operator=(ShellOptimizationOptionsKit const &in_kit)

Copies the source ShellOptimizationOptionsKit into this ShellOptimizationOptionsKit.

Parameters

in_kit – The source ShellOptimizationOptionsKit to copy.

Returns

A reference to this ShellOptimizationOptionsKit.

bool operator==(ShellOptimizationOptionsKit const &in_kit) const

Check if the source ShellOptimizationOptionsKit is equivalent to this ShellOptimizationOptionsKit.

Parameters

in_kit – The source ShellOptimizationOptionsKit to compare to this ShellOptimizationOptionsKit.

Returns

true if the objects are equivalent, false otherwise.

void Set(ShellOptimizationOptionsKit const &in_kit)

Copies the source ShellOptimizationOptionsKit into this ShellOptimizationOptionsKit.

Parameters

in_kit – The source ShellOptimizationOptionsKit to copy.

ShellOptimizationOptionsKit &SetHandednessOptimization(Shell::HandednessOptimization in_handedness_option)

Sets whether the optimization procedure should impact the shell’s face handedness, and if so, in which way.

Parameters
  • in_handedness_optimization – Whether handedness should be altered during optimization.

  • in_handedness_option – Whether the faces’ handedness should be fixed or reversed.

Returns

A reference to this object.

ShellOptimizationOptionsKit &SetNormalTolerance(float in_normal_tolerance)

Sets the tolerance to use when deciding if two normals can be merged.

Parameters

in_normal_tolerance – The tolerance to use during optimization, specified in degrees.

Returns

A reference to this object.

ShellOptimizationOptionsKit &SetOrphanElimination(bool in_orphan_elimination)

Sets whether orphan elimination can be used during optimization. Orphan elimination removes points that are not referenced by any face.

Parameters

in_orphan_elimination – Whether orphaned points can be eliminated during optimization.

Returns

A reference to this object.

ShellOptimizationOptionsKit &SetTolerance(float in_tolerance, Shell::ToleranceUnits in_tolerance_units)

Sets the tolerance to use when deciding if two vertices can be merged.

Parameters
  • in_tolerance – The tolerance to use during optimization.

  • in_tolerance_units – The units in_tolerance is specified in.

Returns

A reference to this object.

ShellOptimizationOptionsKit()

The default constructor creates an empty ShellOptimizationOptionsKit object.

ShellOptimizationOptionsKit(ShellOptimizationOptionsKit &&in_that)

The move constructor creates a ShellOptimizationOptionsKit by transferring the underlying impl of the rvalue reference to this ShellOptimizationOptionsKit thereby avoiding a copy and allocation.

Parameters

in_that – An rvalue reference to a ShellOptimizationOptionsKit to take the impl from.

ShellOptimizationOptionsKit(ShellOptimizationOptionsKit const &in_kit)

The copy constructor creates a new ShellOptimizationOptionsKit object that contains the same settings as the source ShellOptimizationOptionsKit.

Parameters

in_kit – The source ShellOptimizationOptionsKit to copy.

void Show(ShellOptimizationOptionsKit &out_kit) const

Copies this ShellOptimizationOptionsKit into the given ShellOptimizationOptionsKit.

Parameters

out_kit – The ShellOptimizationOptionsKit to populate with the contents of this ShellOptimizationOptionsKit.

bool ShowHandednessOptimization(Shell::HandednessOptimization &out_handedness_option) const

Shows the value of the handedness options for this ShellOptimizationOptionsKit.

Parameters
Returns

true if fix handedness was set, false otherwise.

bool ShowNormalTolerance(float &out_normal_tolerance) const

Shows the value of the normal tolerance for this ShellOptimizationOptionsKit.

Parameters

out_normal_tolerance – The normal tolerance for this ShellOptimizationOptionsKit.

Returns

true if normal tolerance was set, false otherwise.

bool ShowOrphanElimination(bool &out_orphan_elimination) const

Shows the value of orphan elimination for this ShellOptimizationOptionsKit.

Parameters

out_orphan_elimination – The orphan elimination value for this ShellOptimizationOptionsKit.

Returns

true if orphan elimination was set, false otherwise.

bool ShowTolerance(float &out_tolerance, Shell::ToleranceUnits &out_tolerance_units) const

Shows the value of the tolerance and its units for this ShellOptimizationOptionsKit.

Parameters
  • out_tolerance – The tolerance for this ShellOptimizationOptionsKit.

  • out_tolerance_units – The units out_tolerance is specified in.

Returns

true if tolerance was set, false otherwise.

ShellOptimizationOptionsKit &UnsetEverything()

Removes all settings from this ShellOptimizationOptionsKit.

Returns

A reference to this ShellOptimizationOptionsKit.

ShellOptimizationOptionsKit &UnsetHandednessOptimization()

Removes the fix handedness value for this ShellOptimizationOptionsKit.

Returns

A reference to this object.

ShellOptimizationOptionsKit &UnsetNormalTolerance()

Removes the normal tolerance value for this ShellOptimizationOptionsKit.

Returns

A reference to this object.

ShellOptimizationOptionsKit &UnsetOrphanElimination()

Removes the orphan elimination value for this ShellOptimizationOptionsKit.

Returns

A reference to this object.

ShellOptimizationOptionsKit &UnsetTolerance()

Removes the tolerance value for this ShellOptimizationOptionsKit.

Returns

A reference to this object.

virtual ~ShellOptimizationOptionsKit()

Public Static Functions

static ShellOptimizationOptionsKit GetDefault()

Creates a ShellOptimizationOptionsKit 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.

Returns

A ShellOptimizationOptionsKit with the default settings.

Public Static Attributes

static const HPS::Type staticType = HPS::Type::ShellOptimizationOptionsKit