|
||||
File indexing completed on 2025-01-18 10:04:02
0001 // Created on: 1993-01-11 0002 // Created by: CKY / Contract Toubro-Larsen ( TCD ) 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 _IGESGraph_TextDisplayTemplate_HeaderFile 0018 #define _IGESGraph_TextDisplayTemplate_HeaderFile 0019 0020 #include <Standard.hxx> 0021 #include <Standard_Type.hxx> 0022 0023 #include <Standard_Integer.hxx> 0024 #include <gp_XYZ.hxx> 0025 #include <IGESData_IGESEntity.hxx> 0026 class IGESGraph_TextFontDef; 0027 class gp_Pnt; 0028 0029 0030 class IGESGraph_TextDisplayTemplate; 0031 DEFINE_STANDARD_HANDLE(IGESGraph_TextDisplayTemplate, IGESData_IGESEntity) 0032 0033 //! defines IGES TextDisplayTemplate Entity, 0034 //! Type <312>, form <0, 1> in package IGESGraph 0035 //! 0036 //! Used to set parameters for display of information 0037 //! which has been logically included in another entity 0038 //! as a parameter value 0039 class IGESGraph_TextDisplayTemplate : public IGESData_IGESEntity 0040 { 0041 0042 public: 0043 0044 0045 Standard_EXPORT IGESGraph_TextDisplayTemplate(); 0046 0047 //! This method is used to set the fields of the class 0048 //! TextDisplayTemplate 0049 //! - aWidth : Character box width 0050 //! - aHeight : Character box height 0051 //! - afontCode : Font code 0052 //! - aFontEntity : Text Font Definition Entity 0053 //! - aSlantAngle : Slant angle 0054 //! - aRotationAngle : Rotation angle 0055 //! - aMirrorFlag : Mirror Flag 0056 //! - aRotationFlag : Rotate internal text flag 0057 //! - aCorner : Lower left corner coordinates(Form No. 0), 0058 //! Increments from coordinates (Form No. 1) 0059 Standard_EXPORT void Init (const Standard_Real aWidth, const Standard_Real aHeight, const Standard_Integer aFontCode, const Handle(IGESGraph_TextFontDef)& aFontEntity, const Standard_Real aSlantAngle, const Standard_Real aRotationAngle, const Standard_Integer aMirrorFlag, const Standard_Integer aRotationFlag, const gp_XYZ& aCorner); 0060 0061 //! Sets <me> to be Incremental (Form 1) if <mode> is True, 0062 //! or Basolute (Form 0) else 0063 Standard_EXPORT void SetIncremental (const Standard_Boolean mode); 0064 0065 //! returns True if entity is Incremental (Form 1). 0066 //! False if entity is Absolute (Form 0). 0067 Standard_EXPORT Standard_Boolean IsIncremental() const; 0068 0069 //! returns Character Box Width. 0070 Standard_EXPORT Standard_Real BoxWidth() const; 0071 0072 //! returns Character Box Height. 0073 Standard_EXPORT Standard_Real BoxHeight() const; 0074 0075 //! returns False if theFontEntity is Null, True otherwise. 0076 Standard_EXPORT Standard_Boolean IsFontEntity() const; 0077 0078 //! returns the font code. 0079 Standard_EXPORT Standard_Integer FontCode() const; 0080 0081 //! returns Text Font Definition Entity used to define the font. 0082 Standard_EXPORT Handle(IGESGraph_TextFontDef) FontEntity() const; 0083 0084 //! returns slant angle of character in radians. 0085 Standard_EXPORT Standard_Real SlantAngle() const; 0086 0087 //! returns Rotation angle of text block in radians. 0088 Standard_EXPORT Standard_Real RotationAngle() const; 0089 0090 //! returns Mirror flag 0091 //! Mirror flag : 0 = no mirroring. 0092 //! 1 = mirror axis perpendicular to text base line. 0093 //! 2 = mirror axis is text base line. 0094 Standard_EXPORT Standard_Integer MirrorFlag() const; 0095 0096 //! returns Rotate internal text flag. 0097 //! Rotate internal text flag : 0 = text horizontal. 0098 //! 1 = text vertical. 0099 Standard_EXPORT Standard_Integer RotateFlag() const; 0100 0101 //! If IsIncremental() returns False, 0102 //! gets coordinates of lower left corner 0103 //! of first character box. 0104 //! If IsIncremental() returns True, 0105 //! gets increments from X, Y, Z coordinates 0106 //! found in parent entity. 0107 Standard_EXPORT gp_Pnt StartingCorner() const; 0108 0109 //! If IsIncremental() returns False, 0110 //! gets coordinates of lower left corner 0111 //! of first character box. 0112 //! If IsIncremental() returns True, 0113 //! gets increments from X, Y, Z coordinates 0114 //! found in parent entity. 0115 Standard_EXPORT gp_Pnt TransformedStartingCorner() const; 0116 0117 0118 0119 0120 DEFINE_STANDARD_RTTIEXT(IGESGraph_TextDisplayTemplate,IGESData_IGESEntity) 0121 0122 protected: 0123 0124 0125 0126 0127 private: 0128 0129 0130 Standard_Real theBoxWidth; 0131 Standard_Real theBoxHeight; 0132 Standard_Integer theFontCode; 0133 Handle(IGESGraph_TextFontDef) theFontEntity; 0134 Standard_Real theSlantAngle; 0135 Standard_Real theRotationAngle; 0136 Standard_Integer theMirrorFlag; 0137 Standard_Integer theRotateFlag; 0138 gp_XYZ theCorner; 0139 0140 0141 }; 0142 0143 0144 0145 0146 0147 0148 0149 #endif // _IGESGraph_TextDisplayTemplate_HeaderFile
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |