// Alternatively, this file may be used under the terms of Open CASCADE
// commercial license or contractual agreement.
+#include <Prs3d_Text.hxx>
#include <gp_Pnt.hxx>
#include <Graphic3d_Group.hxx>
+#include <Graphic3d_Text.hxx>
#include <Graphic3d_Vertex.hxx>
#include <Prs3d_Presentation.hxx>
-#include <Prs3d_Text.hxx>
#include <Prs3d_TextAspect.hxx>
#include <TCollection_AsciiString.hxx>
#include <TCollection_ExtendedString.hxx>
-void Prs3d_Text::Draw (
- const Handle(Prs3d_Presentation)& aPresentation,
- const Handle(Prs3d_TextAspect)& anAspect,
- const TCollection_ExtendedString& aText,
- const gp_Pnt& AttachmentPoint) {
-
-
- Prs3d_Root::CurrentGroup(aPresentation)->SetPrimitivesAspect(anAspect->Aspect());
- Standard_Real x,y,z;
- AttachmentPoint.Coord(x,y,z);
+// =======================================================================
+// function : Draw
+// purpose :
+// =======================================================================
+Handle(Graphic3d_Text) Prs3d_Text::Draw (const Handle(Graphic3d_Group)& theGroup,
+ const Handle(Prs3d_TextAspect)& theAspect,
+ const TCollection_ExtendedString& theText,
+ const gp_Pnt& theAttachmentPoint)
+{
+ theGroup->SetPrimitivesAspect (theAspect->Aspect());
-
-// POP Graphic3d_Grup accepte de l'extended
- Prs3d_Root::CurrentGroup(aPresentation)->Text(
-// TCollection_AsciiString(aText).ToCString(),
- aText,
- Graphic3d_Vertex(x,y,z),
- anAspect->Height(),
- anAspect->Angle(),
- anAspect->Orientation(),
- anAspect->HorizontalJustification(),
- anAspect->VerticalJustification());
+ Handle(Graphic3d_Text) aText = new Graphic3d_Text ((Standard_ShortReal)theAspect->Height());
+ aText->SetText (theText.ToExtString());
+ aText->SetPosition (theAttachmentPoint);
+ aText->SetHorizontalAlignment (theAspect->HorizontalJustification());
+ aText->SetVerticalAlignment (theAspect->VerticalJustification());
+ theGroup->AddText (aText);
+ return aText;
}
-
-void Prs3d_Text::Draw (
- const Handle(Prs3d_Presentation)& aPresentation,
- const Handle(Prs3d_Drawer)& aDrawer,
- const TCollection_ExtendedString& aText,
- const gp_Pnt& AttachmentPoint) {
-
-
- Prs3d_Text::Draw(aPresentation,aDrawer->TextAspect(),aText,AttachmentPoint);
- }
-
// =======================================================================
// function : Draw
// purpose :
// =======================================================================
-void Prs3d_Text::Draw (const Handle(Prs3d_Presentation)& thePresentation,
- const Handle(Prs3d_TextAspect)& theAspect,
- const TCollection_ExtendedString& theText,
- const gp_Ax2& theOrientation)
+Handle(Graphic3d_Text) Prs3d_Text::Draw (const Handle(Graphic3d_Group)& theGroup,
+ const Handle(Prs3d_TextAspect)& theAspect,
+ const TCollection_ExtendedString& theText,
+ const gp_Ax2& theOrientation,
+ const Standard_Boolean theHasOwnAnchor)
{
- Prs3d_Root::CurrentGroup (thePresentation)->SetPrimitivesAspect (theAspect->Aspect());
- Prs3d_Root::CurrentGroup (thePresentation)->Text (theText,
- theOrientation,
- theAspect->Height(),
- theAspect->Angle(),
- theAspect->Orientation(),
- theAspect->HorizontalJustification(),
- theAspect->VerticalJustification());
+ theGroup->SetPrimitivesAspect (theAspect->Aspect());
+
+ Handle(Graphic3d_Text) aText = new Graphic3d_Text ((Standard_ShortReal)theAspect->Height());
+ aText->SetText (theText.ToExtString());
+ aText->SetOrientation (theOrientation);
+ aText->SetOwnAnchorPoint (theHasOwnAnchor);
+ aText->SetHorizontalAlignment (theAspect->HorizontalJustification());
+ aText->SetVerticalAlignment (theAspect->VerticalJustification());
+ theGroup->AddText (aText);
+ return aText;
}