|
||||
File indexing completed on 2025-01-18 10:03:25
0001 // Created on: 1993-06-03 0002 // Created by: Jean-Louis FRENKEL 0003 // Copyright (c) 1993-1999 Matra Datavision 0004 // Copyright (c) 1999-2014 OPEN CASCADE SAS 0005 // 0006 // This file is part of Open CASCADE Technology software library. 0007 // 0008 // This library is free software; you can redistribute it and/or modify it under 0009 // the terms of the GNU Lesser General Public License version 2.1 as published 0010 // by the Free Software Foundation, with special exception defined in the file 0011 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT 0012 // distribution for complete text of the license and disclaimer of any warranty. 0013 // 0014 // Alternatively, this file may be used under the terms of Open CASCADE 0015 // commercial license or contractual agreement. 0016 0017 #ifndef _DsgPrs_LengthPresentation_HeaderFile 0018 #define _DsgPrs_LengthPresentation_HeaderFile 0019 0020 #include <Standard.hxx> 0021 #include <Standard_DefineAlloc.hxx> 0022 0023 #include <Prs3d_Drawer.hxx> 0024 #include <DsgPrs_ArrowSide.hxx> 0025 #include <Prs3d_Presentation.hxx> 0026 0027 class TCollection_ExtendedString; 0028 class gp_Pnt; 0029 class gp_Dir; 0030 class gp_Pln; 0031 class Geom_Surface; 0032 0033 //! Framework for displaying lengths. 0034 //! The length displayed is indicated by line segments 0035 //! and text alone or by a combination of line segment, 0036 //! text and arrows at either or both of its ends. 0037 class DsgPrs_LengthPresentation 0038 { 0039 public: 0040 0041 DEFINE_STANDARD_ALLOC 0042 0043 0044 //! Draws a line segment representing a length in the 0045 //! display aPresentation. 0046 //! This segment joins the points AttachmentPoint1 and 0047 //! AttachmentPoint2, along the direction aDirection. 0048 //! The text aText will be displayed at the offset point OffsetPoint. 0049 //! The line and text attributes are specified by the 0050 //! attribute manager aDrawer. 0051 Standard_EXPORT static void Add (const Handle(Prs3d_Presentation)& aPresentation, const Handle(Prs3d_Drawer)& aDrawer, const TCollection_ExtendedString& aText, const gp_Pnt& AttachmentPoint1, const gp_Pnt& AttachmentPoint2, const gp_Dir& aDirection, const gp_Pnt& OffsetPoint); 0052 0053 //! Draws a line segment representing a length in the 0054 //! display aPresentation. 0055 //! This segment joins the points AttachmentPoint1 and 0056 //! AttachmentPoint2, along the direction aDirection. 0057 //! The text aText will be displayed at the offset point 0058 //! OffsetPoint. The value of the enumeration ArrowSide 0059 //! controls whether arrows will be displayed at either or 0060 //! both ends of the length. 0061 //! The line, text and arrow attributes are specified by the 0062 //! attribute manager aDrawer. 0063 Standard_EXPORT static void Add (const Handle(Prs3d_Presentation)& aPresentation, const Handle(Prs3d_Drawer)& aDrawer, const TCollection_ExtendedString& aText, const gp_Pnt& AttachmentPoint1, const gp_Pnt& AttachmentPoint2, const gp_Dir& aDirection, const gp_Pnt& OffsetPoint, const DsgPrs_ArrowSide ArrowSide); 0064 0065 //! Draws a line segment representing a length in the 0066 //! display aPresentation. 0067 //! This segment joins the points AttachmentPoint1 and 0068 //! AttachmentPoint2, along the direction aDirection. 0069 //! The text aText will be displayed at the offset point 0070 //! OffsetPoint. The value of the enumeration ArrowSide 0071 //! controls whether arrows will be displayed at either or 0072 //! both ends of the length. 0073 //! The plane PlaneOfFaces is used if length is null. 0074 //! The line, text and arrow attributes are specified by the 0075 //! attribute manager aDrawer. 0076 Standard_EXPORT static void Add (const Handle(Prs3d_Presentation)& aPresentation, const Handle(Prs3d_Drawer)& aDrawer, const TCollection_ExtendedString& aText, const gp_Pnt& AttachmentPoint1, const gp_Pnt& AttachmentPoint2, const gp_Pln& PlaneOfFaces, const gp_Dir& aDirection, const gp_Pnt& OffsetPoint, const DsgPrs_ArrowSide ArrowSide); 0077 0078 //! Draws a line segment representing a length in the 0079 //! display aPresentation. 0080 //! This segment joins the points AttachmentPoint1 and 0081 //! AttachmentPoint2, along the direction 0082 //! aDirection. AttachmentPoint2 lies on the curvilinear 0083 //! faces SecondSurf. The text aText will be displayed at 0084 //! the offset point OffsetPoint. The value of the 0085 //! enumeration ArrowSide controls whether arrows will 0086 //! be displayed at either or both ends of the length. 0087 //! The line, text and arrow attributes are specified by the 0088 //! attribute manager aDrawer. 0089 Standard_EXPORT static void Add (const Handle(Prs3d_Presentation)& aPresentation, const Handle(Prs3d_Drawer)& aDrawer, const TCollection_ExtendedString& aText, const Handle(Geom_Surface)& SecondSurf, const gp_Pnt& AttachmentPoint1, const gp_Pnt& AttachmentPoint2, const gp_Dir& aDirection, const gp_Pnt& OffsetPoint, const DsgPrs_ArrowSide ArrowSide); 0090 0091 //! Draws a line segment representing a length in the 0092 //! display aPresentation. 0093 //! This segment joins the points AttachmentPoint1 and 0094 //! AttachmentPoint2, along the direction aDirection. 0095 //! The value of the enumeration ArrowSide controls 0096 //! whether arrows will be displayed at either or both ends of the length. 0097 //! The line and arrow attributes are specified by the attribute manager aDrawer. 0098 Standard_EXPORT static void Add (const Handle(Prs3d_Presentation)& aPresentation, const Handle(Prs3d_Drawer)& aDrawer, const gp_Pnt& Pt1, const gp_Pnt& Pt2, const DsgPrs_ArrowSide ArrowSide); 0099 0100 0101 0102 0103 protected: 0104 0105 0106 0107 0108 0109 private: 0110 0111 0112 0113 0114 0115 }; 0116 0117 0118 0119 0120 0121 0122 0123 #endif // _DsgPrs_LengthPresentation_HeaderFile
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |