Hide menu
Loading...
Searching...
No Matches
cadex::PMI::SurfaceTextureRequirementAttribute Class Reference

Defines a surface texture requirement. More...

#include <cadex/PMI/SemanticAttribute.hxx>

Inheritance diagram for cadex::PMI::SurfaceTextureRequirementAttribute:
cadex::PMI::SemanticAttribute cadex::BaseObject

Public Types

enum class  SpecificationLimitType { UndefinedLimit , Upper , Lower }
 
enum class  SurfaceParameterType {
  UndefinedParameter , Rp , Rv , Rz ,
  Rc , Rt , Ra , Rq ,
  Rsk , Rku , Wp = 100 , Wv ,
  Wz , Wc , Wt , Wa ,
  Wq , Wsk , Wku , Pp = 200 ,
  Pv , Pz , Pc , Pt ,
  Pa , Pq , Psk , Pku ,
  N1 = 300 , N2 , N3 , N4 ,
  N5 , N6 , N7 , N8 ,
  N9 , N10 , N11 , N12
}
 
enum class  ComparisonRuleType { SixteenPercent , Max }
 
- Public Types inherited from cadex::BaseObject
typedef std::shared_ptr< internal::BaseObjectImpl > ImplType
 

Public Member Functions

 SurfaceTextureRequirementAttribute ()
 Constructor.
 
 SurfaceTextureRequirementAttribute (size_t thePrecedence, SurfaceParameterType theParameter, double theLimitValue)
 Constructor.
 
void SetPrecedence (size_t thePrecedence)
 Sets the precedence.
 
size_t Precedence () const
 Returns the precedence value.
 
void SetSpecificationLimit (SpecificationLimitType theLimit)
 Sets the specification limit.
 
SpecificationLimitType SpecificationLimit () const
 Returns the specification limit.
 
void SetFilterName (const UTF16String &theFilterName)
 Sets the filter name.
 
const UTF16StringFilterName () const
 Returns filter name.
 
void SetShortWaveFilter (double theValue)
 Sets the short wave filter value.
 
double ShortWaveFilter () const
 Returns short wave filter value.
 
void SetLongWaveFilter (double theValue)
 Sets the long wave filter value.
 
double LongWaveFilter () const
 Returns the long wave filter value.
 
void SetSurfaceParameter (SurfaceParameterType theParameter)
 Sets the surface parameter.
 
SurfaceParameterType SurfaceParameter () const
 Returns the surface parameter.
 
void SetEvaluationLength (double theValue)
 Sets the evalution length.
 
double EvaluationLength () const
 Returns the evaluation length value.
 
void SetComparisonRule (ComparisonRuleType theRule)
 Sets the comparison rule.
 
ComparisonRuleType ComparisonRule () const
 Returns the comparison rule.
 
void SetLimitValue (double theValue)
 Sets the limit value.
 
double LimitValue () const
 Returns the limit value.
 
- Public Member Functions inherited from cadex::PMI::SemanticAttribute
void Accept (SemanticAttributeVisitor &theVisitor) const
 
- Public Member Functions inherited from cadex::BaseObject
size_t Id () const
 Return unique identifier of public object.
 
internal::BaseObjectImpl * Impl () const
 
bool IsNull () const
 
 operator bool () const
 
template<typename T >
bool IsOfType () const
 
template<typename T >
T * Impl () const
 Reserved for internal use.
 

Static Public Member Functions

static bool CompareType (const BaseObject &theObject)
 Returns true if theObject has the SurfaceTextureRequirementAttribute type.
 
- Static Public Member Functions inherited from cadex::PMI::SemanticAttribute
static bool CompareType (const BaseObject &theObject)
 Returns true if theObject has the SemanticAttribute type.
 

Protected Member Functions

 SurfaceTextureRequirementAttribute (const ImplType &theImpl)
 
- Protected Member Functions inherited from cadex::PMI::SemanticAttribute
 SemanticAttribute (const ImplType &theImpl)
 
- Protected Member Functions inherited from cadex::BaseObject
 BaseObject (const ImplType &theImpl)
 

Detailed Description

Defines a surface texture requirement.

A surface texture requirement is built from several different control elements, which can be part of the indication on the drawing or the textual indication. The elements are shown in the image below.

"Control elements in indication of surface texture requirements"

Experience has shown that all these elements are not necessary to form an unambiguous relation between the surface texture requirement and the function of the surface. The majority of them may be omitted if this does not introduce discrepancies (some characteristics have default values). There are no mandatory elements, all are optional, but at least one element should be specified.

In some cases it is necessary to indicate requirements for more than one surface texture parameter (profile or characteristic or both) in order to establish an unambiguous relation between the requirement on the drawing and the function of the surface. Thus, a surface finish component can have multiple surface texture requirement attributes. In this case the order (primary, secondary, etc) of surface texture requirement in surface finish component is controlled by Precedence() method.

Note
The development of data structures of surface texture requirement was carried out under the influence of ISO 1302:2002.

Examples of surface texture requirement in textual indication:

  • 0.0025-0.8/Rz 6.8
  • U Gaussian 0.08-0.8/Rz8max 3.3
See also
SemanticAttribute
Examples
exploring/pmi/Program.cs, and exploring/pmi/main.cxx.

Member Function Documentation

◆ ComparisonRule()

SurfaceTextureRequirementAttribute::ComparisonRuleType cadex::PMI::SurfaceTextureRequirementAttribute::ComparisonRule ( ) const

Returns the comparison rule.

Returns 16%-rule by default.

Examples
exploring/pmi/Program.cs, and exploring/pmi/main.cxx.

◆ EvaluationLength()

double cadex::PMI::SurfaceTextureRequirementAttribute::EvaluationLength ( ) const

Returns the evaluation length value.

Returns 5 by default.

Examples
exploring/pmi/Program.cs, and exploring/pmi/main.cxx.

◆ FilterName()

const UTF16String & cadex::PMI::SurfaceTextureRequirementAttribute::FilterName ( ) const

Returns filter name.

Returns 0 by default.

Examples
exploring/pmi/Program.cs, and exploring/pmi/main.cxx.

◆ LimitValue()

double cadex::PMI::SurfaceTextureRequirementAttribute::LimitValue ( ) const

Returns the limit value.

The returned value is given in micrometers or microinches (depends on the value of LengthUnitAttribute). Returns 0 by default.

Examples
exploring/pmi/Program.cs, and exploring/pmi/main.cxx.

◆ LongWaveFilter()

double cadex::PMI::SurfaceTextureRequirementAttribute::LongWaveFilter ( ) const

Returns the long wave filter value.

Returns 0 by default.

Examples
exploring/pmi/Program.cs, and exploring/pmi/main.cxx.

◆ Precedence()

size_t cadex::PMI::SurfaceTextureRequirementAttribute::Precedence ( ) const

Returns the precedence value.

Returns 1 by default.

Examples
exploring/pmi/Program.cs, and exploring/pmi/main.cxx.

◆ ShortWaveFilter()

double cadex::PMI::SurfaceTextureRequirementAttribute::ShortWaveFilter ( ) const

Returns short wave filter value.

Returns 0 by default.

Examples
exploring/pmi/Program.cs, and exploring/pmi/main.cxx.