#include <Prs3d_DimensionAspect.hxx>
+#include <Prs3d_ArrowAspect.hxx>
+#include <Prs3d_TextAspect.hxx>
+#include <Prs3d_LineAspect.hxx>
+
#include <Aspect_TypeOfLine.hxx>
#include <Graphic3d_AspectText3d.hxx>
-#include <Prs3d_LineAspect.hxx>
-#include <Prs3d_TextAspect.hxx>
-#include <Prs3d_ArrowAspect.hxx>
#include <Quantity_Color.hxx>
IMPLEMENT_STANDARD_HANDLE (Prs3d_DimensionAspect, Prs3d_BasicAspect)
//purpose :
//=======================================================================
-Prs3d_DimensionAspect::Prs3d_DimensionAspect ()
+Prs3d_DimensionAspect::Prs3d_DimensionAspect()
{
- // Text alignment
- myHorTextAlignment = Prs3d_HTA_Center;
- myVerTextAlignment = Prs3d_VTA_Center;
- // Arrow orientation, will be computed on further steps, by default it is internal.
- myArrowOrientation = Prs3d_DAO_Internal;
+ myTextHPosition = Prs3d_DTHP_Fit;
+ myTextVPosition = Prs3d_DTVP_Center;
+ myArrowOrientation = Prs3d_DAO_Fit;
+
myLineAspect = new Prs3d_LineAspect (Quantity_NOC_LAWNGREEN,Aspect_TOL_SOLID,1.);
myTextAspect = new Prs3d_TextAspect;
myTextAspect->Aspect()->SetTextZoomable (Standard_False);
myTextAspect->SetVerticalJustification (Graphic3d_VTA_CENTER);
myArrowAspect = new Prs3d_ArrowAspect;
myArrowAspect->SetColor (Quantity_NOC_LAWNGREEN);
- myArrowAspect->SetLength (6.);
+ myArrowAspect->SetLength (6.0);
+ myExtensionSize = 6.0;
}
//=======================================================================
//purpose :
//=======================================================================
-Prs3d_DimensionArrowOrientation Prs3d_DimensionAspect::GetArrowOrientation () const
+Prs3d_DimensionArrowOrientation Prs3d_DimensionAspect::ArrowOrientation() const
{
return myArrowOrientation;
}
//=======================================================================
-//function : VerticalTextAlignment
-//purpose :
-//=======================================================================
+//function : SetTextVerticalPosition
+//purpose :
+//=======================================================================
-Prs3d_VerticalTextAlignment Prs3d_DimensionAspect::VerticalTextAlignment () const
+void Prs3d_DimensionAspect::SetTextVerticalPosition (const Prs3d_DimensionTextVerticalPosition thePosition)
{
- return myVerTextAlignment;
+ myTextVPosition = thePosition;
}
-
-//=======================================================================
-//function : SetVerticalTextAlignment
-//purpose :
+
//=======================================================================
+//function : TextVerticalPosition
+//purpose :
+//=======================================================================
-void Prs3d_DimensionAspect::SetVerticalTextAlignment (const Prs3d_VerticalTextAlignment theVertTextAlignment)
+Prs3d_DimensionTextVerticalPosition Prs3d_DimensionAspect::TextVerticalPosition() const
{
- myVerTextAlignment = theVertTextAlignment;
+ return myTextVPosition;
}
//=======================================================================
-//function : HorizontalTextAlignment
+//function : SetTextHorizontalPosition
//purpose :
-//=======================================================================
+//=======================================================================
-Prs3d_HorizontalTextAlignment Prs3d_DimensionAspect::HorizontalTextAlignment () const
+void Prs3d_DimensionAspect::SetTextHorizontalPosition (const Prs3d_DimensionTextHorizontalPosition thePosition)
{
- return myHorTextAlignment;
+ myTextHPosition = thePosition;
}
-
+
//=======================================================================
-//function : SetHorizontalTextAlignment
+//function : TextHorizontalPosition
//purpose :
-//=======================================================================
+//=======================================================================
-void Prs3d_DimensionAspect::SetHorizontalTextAlignment (const Prs3d_HorizontalTextAlignment theHorTextAlignment)
+Prs3d_DimensionTextHorizontalPosition Prs3d_DimensionAspect::TextHorizontalPosition() const
{
- myHorTextAlignment = theHorTextAlignment;
+ return myTextHPosition;
}
//=======================================================================
{
myArrowAspect = theAspect;
}
+
+//=======================================================================
+//function : SetExtensioSize
+//purpose :
+//=======================================================================
+
+void Prs3d_DimensionAspect::SetExtensionSize (const Standard_Real theSize)
+{
+ myExtensionSize = theSize;
+}
+
+//=======================================================================
+//function : ExtensionSize
+//purpose :
+//=======================================================================
+
+Standard_Real Prs3d_DimensionAspect::ExtensionSize() const
+{
+ return myExtensionSize;
+}