DATAKIT API  V2025.1
Dtk_Region Class Reference

This is the Region class. The region that designates areas of your model for special purposes, such as an area affected by a datum target. The region can contain a hatching and boundaries that are stored as geometries. More...

+ Inheritance diagram for Dtk_Region:

Public Types

enum  RegionType {
  RectangularType, CircularType, AnnularType, CylindricalType,
  ArbitraryType, UnknownType
}
 

Public Member Functions

virtual Dtk_ErrorStatus _Store (void *)
 
void AddAdditionnalGeometries (const Dtk_tab< Dtk_EntityPtr > &inAdditionnalGeometries)
 Adds some additionnal geometries to the Dtk_2dEntity. More...
 
void AddAdditionnalGeometry (const Dtk_EntityPtr &inAdditionnalGeometry)
 Adds an additionnal geometry to the Dtk_2dEntity. More...
 
void AddAdditionnalTexts (Dtk_CompositeText inAddtionnalTexts)
 Adds some additionnal texts to the Dtk_2dEntity. More...
 
Dtk_ErrorStatus AddLeader (const Dtk_LeaderPtr &leader)
 Adds a leader to the Dtk_Annotation. More...
 
Dtk_Int32 DtkDynamicType (const Dtk_Int32 &inId)
 Retrieves the dynamic entity type. More...
 
int DtkDynamicType (const int &inId)
 
virtual void dump (FILE *file=stdout)
 
Dtk_InfoPtr get_info () const
 
type_detk get_type_detk () const
 
const Dtk_tab< Dtk_EntityPtr > & GetAdditionnalGeometries () const
 Retrieves the additionnal geometries of the Dtk_2dEntity. More...
 
const Dtk_CompositeTextGetAdditionnalTexts () const
 Retrieves the additionnal texts of the Dtk_2dEntity. More...
 
Dtk_ErrorStatus GetAnchorPoints (Dtk_pnt(&outTabPnts)[DTK_NB_ANCHOR_TYPES]) const
 Processes all the Dtk_Annotation anchor points. More...
 
Dtk_ErrorStatus GetAnnularInnerDiameter (Dtk_Double64 &outDiameter)
 Gets the inner diameter of the annular Dtk_Region. More...
 
Dtk_ErrorStatus GetAnnularOuterDiameter (Dtk_Double64 &outDiameter)
 Gets the outer diameter of the annular Dtk_Region. More...
 
Dtk_ErrorStatus GetCircularDiameter (Dtk_Double64 &outDiameter)
 Gets the diameter of the circular Dtk_Region. More...
 
Dtk_tab< Dtk_EntityPtrGetGeometries () const
 Retrieves the Dtk_Grid geometries. More...
 
Dtk_HatchingPattern GetHatchingPattern ()
 Gets Hatching Pattern of the region Dtk_Region. More...
 
const Dtk_IDGetID () const
 Get Internal UniqueID. More...
 
Dtk_LeaderPtr GetLeader (const Dtk_Size_t &inPos) const
 Gets the i'th leader. More...
 
virtual Dtk_pnt GetLocation () const
 Get the annoation location point. More...
 
const Dtk_anchor_typeGetLocationAnchorType () const
 Gets the location anchor type - read only -. More...
 
Dtk_Size_t GetNumLeaders () const
 Retrieves the number of leaders. More...
 
Dtk_Double64 GetOffset () const
 Gets the annotation offset - read only -. More...
 
Dtk_ErrorStatus GetRectangularHeight (Dtk_Double64 &outHeight)
 Gets the height of the rectangular Dtk_Region. More...
 
Dtk_ErrorStatus GetRectangularWidth (Dtk_Double64 &outWidth)
 Gets the width of the rectangular Dtk_Region. More...
 
Dtk_Double64 GetRotationAngle (const Dtk_dir &inXAxis=Dtk_dir(1, 0, 0), const Dtk_dir &inYAxis=Dtk_dir(0, 1, 0)) const
 Gets the text rotation angle giving a reference base. More...
 
virtual Dtk_Size_t GetSize () const
 
RegionType GetType ()
 Gets the type of the region. More...
 
Dtk_dir GetXAxis () const
 Get the X Axis - read only -. More...
 
Dtk_dir GetYAxis () const
 Get the Y Axis - read only -. More...
 
Dtk_InfoPtrinfo ()
 
virtual std::ostream & operator<< (std::ostream &o) const
 
Dtk_Regionoperator= (const Dtk_Region &inToBeAssigned)
 Assignment Operator. More...
 
virtual void PrepareTransfo ()
 
virtual Dtk_ErrorStatus Reverse ()
 Reverses the Dtk_Annotation. More...
 
Dtk_ErrorStatus SetAnchorPoint (const Dtk_pnt &inNewLocation, const Dtk_anchor_type &inLocationAnchorType)
 Sets the Dtk_Annotation anchor point. More...
 
Dtk_ErrorStatus SetAnnularInnerDiameter (Dtk_Double64 inDiameter)
 Sets the inner diameter of the annular Dtk_Region. More...
 
Dtk_ErrorStatus SetAnnularOuterDiameter (Dtk_Double64 inDiameter)
 Sets the outer diameter of the annular Dtk_Region. More...
 
 SetAsDeprecated ("Undefined", "Use Dtk_TextStyle::Justification()") Dtk_justication_type GetJustification() const
 Get the justification type - read only -. More...
 
Dtk_ErrorStatus SetCircularDiameter (Dtk_Double64 inDiameter)
 Sets the diameter of the circular Dtk_Region. More...
 
Dtk_ErrorStatus SetLocation (const Dtk_pnt &inLocation)
 Sets the location point of the Dtk_Annotation. More...
 
Dtk_ErrorStatus SetLocation (const Dtk_pnt &location, const Dtk_anchor_type &inAnchorType)
 Sets the location point of the Dtk_Annotation. More...
 
Dtk_ErrorStatus SetOffset (const Dtk_Double64 &inOffset)
 Sets the offset of the Dtk_Annotation. More...
 
Dtk_ErrorStatus SetRectangularHeight (Dtk_Double64 inHeight)
 Sets the height of the rectangular Dtk_Region. More...
 
Dtk_ErrorStatus SetRectangularWidth (Dtk_Double64 inWidth)
 Sets the width of the rectangular Dtk_Region. More...
 
virtual Dtk_ErrorStatus SetRotationAngle (const Dtk_Double64 &inRotationAngle)
 Sets the annotation angle using the annotation base. More...
 
Dtk_ErrorStatus Transform (const Dtk_transfo &inTransfo)
 Applies a transformation matrix to the entity. //! More...
 

Static Public Member Functions

static Dtk_RegionPtr Create (RegionType inType, Dtk_HatchingPattern &inHatchingPattern, Dtk_tab< Dtk_EntityPtr > inGeometries)
 Copy Constructor. More...
 
static Dtk_RegionDtkDynamicCast (Dtk_Object *s)
 Performs a dynamic cast - doesn't need RTTI -. More...
 

Protected Types

enum  { _typeID = DTK_TYPE_2D_ENTITY }
 
enum  { _typeID = DTK_TYPE_ENTITY }
 
enum  { _typeID = DTK_TYPE_ANNOTATION }
 
enum  { _typeID = DTK_TYPE_REGION }
 

Protected Member Functions

void _Copy (const Dtk_2dEntity &s)
 
void _copy (const Dtk_Entity &s)
 
void _copy (const Dtk_Object &s)
 
void _init ()
 
void _reset ()
 
virtual Dtk_ObjectClone ()
 
 Dtk_Region (const Dtk_Region &s)
 Copy Constructor. More...
 
 Dtk_Region (RegionType inType, Dtk_HatchingPattern &inHatchingPattern, Dtk_tab< Dtk_EntityPtr > inGeometries)
 Base Constructor. More...
 
 ~Dtk_Region ()
 Destructor. More...
 

Protected Attributes

Dtk_Handle * _Private
 
unsigned long count_
 

Friends

class Dtk_SmartPtr< Dtk_Region >
 

Detailed Description

This is the Region class. The region that designates areas of your model for special purposes, such as an area affected by a datum target. The region can contain a hatching and boundaries that are stored as geometries.

Types of regions:

Here are different region types with their specificities

See also
Please use the Dtk_RegionPtr class to handle it...

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protectedinherited
Enumerator
_typeID 
1787  {
1789  };

◆ anonymous enum

anonymous enum
protectedinherited
Enumerator
_typeID 

◆ anonymous enum

anonymous enum
protectedinherited
Enumerator
_typeID 
2542  {
2544  };

◆ anonymous enum

anonymous enum
protected
Enumerator
_typeID 
8377  {
8379  };

◆ RegionType

Enumerator
RectangularType 
CircularType 
AnnularType 
CylindricalType 
ArbitraryType 
UnknownType 
8365  {
8367  CircularType,
8368  AnnularType,
8370  ArbitraryType,
8371  UnknownType
8372  };

Constructor & Destructor Documentation

◆ Dtk_Region() [1/2]

Dtk_Region::Dtk_Region ( RegionType  inType,
Dtk_HatchingPattern inHatchingPattern,
Dtk_tab< Dtk_EntityPtr inGeometries 
)
protected

Base Constructor.

◆ Dtk_Region() [2/2]

Dtk_Region::Dtk_Region ( const Dtk_Region s)
protected

Copy Constructor.

◆ ~Dtk_Region()

Dtk_Region::~Dtk_Region ( )
protected

Destructor.

Member Function Documentation

◆ _Copy()

void Dtk_2dEntity::_Copy ( const Dtk_2dEntity s)
protectedinherited

◆ _copy() [1/2]

void Dtk_Entity::_copy ( const Dtk_Entity s)
protectedinherited

◆ _copy() [2/2]

void Dtk_Object::_copy ( const Dtk_Object s)
protectedinherited

◆ _init()

void Dtk_Entity::_init ( )
protectedinherited

◆ _reset()

void Dtk_Entity::_reset ( )
protectedinherited

◆ _Store()

◆ AddAdditionnalGeometries()

void Dtk_2dEntity::AddAdditionnalGeometries ( const Dtk_tab< Dtk_EntityPtr > &  inAdditionnalGeometries)
inherited

Adds some additionnal geometries to the Dtk_2dEntity.

Parameters
inAdditionnalGeometriesThe geometries to be added

◆ AddAdditionnalGeometry()

void Dtk_2dEntity::AddAdditionnalGeometry ( const Dtk_EntityPtr inAdditionnalGeometry)
inherited

Adds an additionnal geometry to the Dtk_2dEntity.

Parameters
inAdditionnalGeometryThe geometry to be added

◆ AddAdditionnalTexts()

void Dtk_2dEntity::AddAdditionnalTexts ( Dtk_CompositeText  inAddtionnalTexts)
inherited

Adds some additionnal texts to the Dtk_2dEntity.

Parameters
inAddtionnalTextsThe texts to be added

◆ AddLeader()

Dtk_ErrorStatus Dtk_Annotation::AddLeader ( const Dtk_LeaderPtr leader)
inherited

Adds a leader to the Dtk_Annotation.

Parameters
leaderThe leader to be added
Returns
dtkNoError is OK
Remarks
If Added leader is NULL, so no leader is added.

◆ Clone()

virtual Dtk_Object* Dtk_Region::Clone ( )
protectedvirtual

Implements Dtk_Annotation.

8391 { return new Dtk_Region(*this); }

◆ Create()

static Dtk_RegionPtr Dtk_Region::Create ( RegionType  inType,
Dtk_HatchingPattern inHatchingPattern,
Dtk_tab< Dtk_EntityPtr inGeometries 
)
static

Copy Constructor.

◆ DtkDynamicCast()

static Dtk_Region* Dtk_Region::DtkDynamicCast ( Dtk_Object s)
static

Performs a dynamic cast - doesn't need RTTI -.

◆ DtkDynamicType() [1/2]

Dtk_Int32 Dtk_Region::DtkDynamicType ( const Dtk_Int32 inId)

Retrieves the dynamic entity type.

◆ DtkDynamicType() [2/2]

◆ dump()

virtual void Dtk_Object::dump ( FILE *  file = stdout)
virtualinherited

◆ get_info()

Dtk_InfoPtr Dtk_Entity::get_info ( ) const
inherited

◆ get_type_detk()

type_detk Dtk_Region::get_type_detk ( ) const
virtual

Implements Dtk_Annotation.

8412 { return DTK_TYPE_REGION; }

◆ GetAdditionnalGeometries()

const Dtk_tab< Dtk_EntityPtr >& Dtk_2dEntity::GetAdditionnalGeometries ( ) const
inherited

Retrieves the additionnal geometries of the Dtk_2dEntity.

Returns
The additionnal geometries array - read only -.

◆ GetAdditionnalTexts()

const Dtk_CompositeText& Dtk_2dEntity::GetAdditionnalTexts ( ) const
inherited

Retrieves the additionnal texts of the Dtk_2dEntity.

Returns
The additionnal texts - read only -.

◆ GetAnchorPoints()

Dtk_ErrorStatus Dtk_Region::GetAnchorPoints ( Dtk_pnt(&)  outTabPnts[DTK_NB_ANCHOR_TYPES]) const
virtual

Processes all the Dtk_Annotation anchor points.

Parameters
outTabPntsThe resulting anchor point array.
Returns
dtkNoError if OK

Implements Dtk_Annotation.

◆ GetAnnularInnerDiameter()

Dtk_ErrorStatus Dtk_Region::GetAnnularInnerDiameter ( Dtk_Double64 outDiameter)

Gets the inner diameter of the annular Dtk_Region.

This is a semantic information (will not modify geometries)

Parameters
outDiameterThe inner diameter
Returns
dtkNoError if OK, dtkErrorAttributeNotFound if it is not a annular region

◆ GetAnnularOuterDiameter()

Dtk_ErrorStatus Dtk_Region::GetAnnularOuterDiameter ( Dtk_Double64 outDiameter)

Gets the outer diameter of the annular Dtk_Region.

This is a semantic information (will not modify geometries)

Parameters
outDiameterThe outer diameter
Returns
dtkNoError if OK, dtkErrorAttributeNotFound if it is not a annular region

◆ GetCircularDiameter()

Dtk_ErrorStatus Dtk_Region::GetCircularDiameter ( Dtk_Double64 outDiameter)

Gets the diameter of the circular Dtk_Region.

This is a semantic information (will not modify geometries)

Parameters
outDiameterThe diameter
Returns
dtkNoError if OK, dtkErrorAttributeNotFound if it is not a circular region

◆ GetGeometries()

Dtk_tab< Dtk_EntityPtr > Dtk_Region::GetGeometries ( ) const

Retrieves the Dtk_Grid geometries.

Returns
All the associated geometries asked.

◆ GetHatchingPattern()

Dtk_HatchingPattern Dtk_Region::GetHatchingPattern ( )

Gets Hatching Pattern of the region Dtk_Region.

This is a semantic information (will not modify geometries)

Returns
the hatching patter if available

◆ GetID()

const Dtk_ID& Dtk_Entity::GetID ( ) const
inherited

Get Internal UniqueID.

Returns
InternalID

◆ GetLeader()

Dtk_LeaderPtr Dtk_Annotation::GetLeader ( const Dtk_Size_t inPos) const
inherited

Gets the i'th leader.

Parameters
inPosThe leader position - 0 indexed -
Returns
The inPos'th leader

◆ GetLocation()

virtual Dtk_pnt Dtk_Annotation::GetLocation ( ) const
virtualinherited

Get the annoation location point.

Returns
The location point

◆ GetLocationAnchorType()

const Dtk_anchor_type& Dtk_Annotation::GetLocationAnchorType ( ) const
inherited

Gets the location anchor type - read only -.

Returns
The location anchor type.

◆ GetNumLeaders()

Dtk_Size_t Dtk_Annotation::GetNumLeaders ( ) const
inherited

Retrieves the number of leaders.

Returns
The number of leaders

◆ GetOffset()

Dtk_Double64 Dtk_Annotation::GetOffset ( ) const
inherited

Gets the annotation offset - read only -.

Returns
The annotation offset.
Warning
For internal use only

◆ GetRectangularHeight()

Dtk_ErrorStatus Dtk_Region::GetRectangularHeight ( Dtk_Double64 outHeight)

Gets the height of the rectangular Dtk_Region.

This is a semantic information (will not modify geometries)

Parameters
outWidthThe height
Returns
dtkNoError if OK, dtkErrorAttributeNotFound if it is not a rectangular region

◆ GetRectangularWidth()

Dtk_ErrorStatus Dtk_Region::GetRectangularWidth ( Dtk_Double64 outWidth)

Gets the width of the rectangular Dtk_Region.

This is a semantic information (will not modify geometries)

Parameters
outWidthThe width
Returns
dtkNoError if OK, dtkErrorAttributeNotFound if it is not a rectangular region

◆ GetRotationAngle()

Dtk_Double64 Dtk_Annotation::GetRotationAngle ( const Dtk_dir inXAxis = Dtk_dir(1, 0, 0),
const Dtk_dir inYAxis = Dtk_dir(0, 1, 0) 
) const
inherited

Gets the text rotation angle giving a reference base.

Parameters
inXAxisThe reference X Axis - default value = (1,0,0) -
inYAxisThe reference Y Axis - default value = (0,1,0) -
Returns
The rotation angle.

◆ GetSize()

◆ GetType()

RegionType Dtk_Region::GetType ( )

Gets the type of the region.

Returns
the type of region

◆ GetXAxis()

Dtk_dir Dtk_Annotation::GetXAxis ( ) const
inherited

Get the X Axis - read only -.

Returns
The X Axis.

◆ GetYAxis()

Dtk_dir Dtk_Annotation::GetYAxis ( ) const
inherited

Get the Y Axis - read only -.

Returns
The Y Axis.

◆ info()

Dtk_InfoPtr& Dtk_Entity::info ( )
inherited

◆ operator<<()

virtual std::ostream& Dtk_2dEntity::operator<< ( std::ostream &  o) const
virtualinherited
1846  {
1847  return o << "Dtk_2dEntity Base class";
1848  }

◆ operator=()

Dtk_Region& Dtk_Region::operator= ( const Dtk_Region inToBeAssigned)

Assignment Operator.

Parameters
inToBeAssignedObject to copy.

◆ PrepareTransfo()

virtual void Dtk_Entity::PrepareTransfo ( )
virtualinherited

Reimplemented in Dtk_OffsetSurface.

◆ Reverse()

virtual Dtk_ErrorStatus Dtk_Annotation::Reverse ( )
virtualinherited

Reverses the Dtk_Annotation.

Reimplemented in Dtk_DatumTarget.

◆ SetAnchorPoint()

Dtk_ErrorStatus Dtk_Region::SetAnchorPoint ( const Dtk_pnt inNewLocation,
const Dtk_anchor_type inLocationAnchorType 
)
virtual

Sets the Dtk_Annotation anchor point.

Parameters
inNewLocationThe new location point.
inLocationAnchorTypeThe anchor type related to the new location.
Returns
dtkNoError if OK

Implements Dtk_Annotation.

◆ SetAnnularInnerDiameter()

Dtk_ErrorStatus Dtk_Region::SetAnnularInnerDiameter ( Dtk_Double64  inDiameter)

Sets the inner diameter of the annular Dtk_Region.

This is a semantic information (will not modify geometries)

Parameters
inDiameterThe inner diameter
Returns
dtkNoError if OK, dtkErrorAttributeNotFound if it is not a annular region

◆ SetAnnularOuterDiameter()

Dtk_ErrorStatus Dtk_Region::SetAnnularOuterDiameter ( Dtk_Double64  inDiameter)

Sets the outer diameter of the annular Dtk_Region.

This is a semantic information (will not modify geometries)

Parameters
inDiameterThe outer diameter
Returns
dtkNoError if OK, dtkErrorAttributeNotFound if it is not a annular region

◆ SetAsDeprecated()

Dtk_Annotation::SetAsDeprecated ( "Undefined"  ,
"Use Dtk_TextStyle::Justification()"   
) const
inherited

Get the justification type - read only -.

Returns
The justification type
Deprecated:
use the Dtk_TextStyle::Justification() instead

◆ SetCircularDiameter()

Dtk_ErrorStatus Dtk_Region::SetCircularDiameter ( Dtk_Double64  inDiameter)

Sets the diameter of the circular Dtk_Region.

This is a semantic information (will not modify geometries)

Parameters
inDiameterThe diameter
Returns
dtkNoError if OK, dtkErrorAttributeNotFound if it is not a circular region

◆ SetLocation() [1/2]

Dtk_ErrorStatus Dtk_Region::SetLocation ( const Dtk_pnt inLocation)
virtual

Sets the location point of the Dtk_Annotation.

The location point is related to the anchor type

Parameters
inLocationthe location point
Returns
dtkNoError if OK

Implements Dtk_Annotation.

◆ SetLocation() [2/2]

Dtk_ErrorStatus Dtk_Annotation::SetLocation ( const Dtk_pnt location,
const Dtk_anchor_type inAnchorType 
)
inherited

Sets the location point of the Dtk_Annotation.

The location point is related to the anchor type

Parameters
locationthe location point
inAnchorTypeThe anchor type related to the new location.
Returns
dtkNoError if OK

◆ SetOffset()

Dtk_ErrorStatus Dtk_Region::SetOffset ( const Dtk_Double64 inOffset)
virtual

Sets the offset of the Dtk_Annotation.

The Offset is used to process bounding frames.

Parameters
inOffsetThe offset
Returns
dtkNoError if OK

Implements Dtk_Annotation.

◆ SetRectangularHeight()

Dtk_ErrorStatus Dtk_Region::SetRectangularHeight ( Dtk_Double64  inHeight)

Sets the height of the rectangular Dtk_Region.

This is a semantic information (will not modify geometries)

Parameters
inWidthThe height
Returns
dtkNoError if OK, dtkErrorAttributeNotFound if it is not a rectangular region

◆ SetRectangularWidth()

Dtk_ErrorStatus Dtk_Region::SetRectangularWidth ( Dtk_Double64  inWidth)

Sets the width of the rectangular Dtk_Region.

This is a semantic information (will not modify geometries)

Parameters
inWidthThe width
Returns
dtkNoError if OK, dtkErrorAttributeNotFound if it is not a rectangular region

◆ SetRotationAngle()

virtual Dtk_ErrorStatus Dtk_Annotation::SetRotationAngle ( const Dtk_Double64 inRotationAngle)
virtualinherited

Sets the annotation angle using the annotation base.

Parameters
inRotationAngleThe rotation angle to be set
Returns
dtkNoError if OK

Reimplemented in Dtk_Symbol, Dtk_GeometricalTolerance, Dtk_Table, Dtk_DatumTarget, Dtk_Welding, and Dtk_Roughness.

◆ Transform()

Dtk_ErrorStatus Dtk_Region::Transform ( const Dtk_transfo inTransfo)
virtual

Applies a transformation matrix to the entity. //!

Parameters
inTransfoThe transformation matrix to apply.

Implements Dtk_Annotation.

Friends And Related Function Documentation

◆ Dtk_SmartPtr< Dtk_Region >

friend class Dtk_SmartPtr< Dtk_Region >
friend

Field Documentation

◆ _Private

Dtk_Handle* Dtk_Region::_Private
protected

◆ count_

unsigned long Dtk_Object::count_
protectedinherited
Dtk_Region::CircularType
@ CircularType
Definition: util_draw_dtk.hpp:8367
Dtk_Region::ArbitraryType
@ ArbitraryType
Definition: util_draw_dtk.hpp:8370
DTK_TYPE_ANNOTATION
@ DTK_TYPE_ANNOTATION
Definition: define.h:436
DTK_TYPE_ENTITY
@ DTK_TYPE_ENTITY
Definition: define.h:466
Dtk_Region::_typeID
@ _typeID
Definition: util_draw_dtk.hpp:8378
DTK_TYPE_REGION
@ DTK_TYPE_REGION
Definition: define.h:559
Dtk_Region::RectangularType
@ RectangularType
Definition: util_draw_dtk.hpp:8366
Dtk_Region::AnnularType
@ AnnularType
Definition: util_draw_dtk.hpp:8368
Dtk_Annotation::_typeID
@ _typeID
Definition: util_draw_dtk.hpp:2543
Dtk_Region::CylindricalType
@ CylindricalType
Definition: util_draw_dtk.hpp:8369
Dtk_Entity::_typeID
@ _typeID
Definition: util_ent_dtk.hpp:333
Dtk_Region::UnknownType
@ UnknownType
Definition: util_draw_dtk.hpp:8371
Dtk_2dEntity::_typeID
@ _typeID
Definition: util_draw_dtk.hpp:1788
Dtk_Region::Dtk_Region
Dtk_Region(RegionType inType, Dtk_HatchingPattern &inHatchingPattern, Dtk_tab< Dtk_EntityPtr > inGeometries)
Base Constructor.
DTK_TYPE_2D_ENTITY
@ DTK_TYPE_2D_ENTITY
Definition: define.h:471