|
||||
File indexing completed on 2025-01-18 10:04:03
0001 // Created on: 1993-01-09 0002 // Created by: CKY / Contract Toubro-Larsen ( SIVA ) 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 _IGESSolid_RightAngularWedge_HeaderFile 0018 #define _IGESSolid_RightAngularWedge_HeaderFile 0019 0020 #include <Standard.hxx> 0021 #include <Standard_Type.hxx> 0022 0023 #include <gp_XYZ.hxx> 0024 #include <IGESData_IGESEntity.hxx> 0025 class gp_Pnt; 0026 class gp_Dir; 0027 0028 0029 class IGESSolid_RightAngularWedge; 0030 DEFINE_STANDARD_HANDLE(IGESSolid_RightAngularWedge, IGESData_IGESEntity) 0031 0032 //! defines RightAngularWedge, Type <152> Form Number <0> 0033 //! in package IGESSolid 0034 //! A right angular wedge is a triangular/trapezoidal prism 0035 class IGESSolid_RightAngularWedge : public IGESData_IGESEntity 0036 { 0037 0038 public: 0039 0040 0041 Standard_EXPORT IGESSolid_RightAngularWedge(); 0042 0043 //! This method is used to set the fields of the class 0044 //! RightAngularWedge 0045 //! - aSize : the lengths along the local axes 0046 //! - lowX : the length at the smaller X-side 0047 //! - aCorner : the corner point coordinates 0048 //! default (0,0,0) 0049 //! - anXAxis : the unit vector defining local X-axis 0050 //! default (1,0,0) 0051 //! - anZAxis : the unit vector defining local Z-axis 0052 //! default (0,0,1) 0053 Standard_EXPORT void Init (const gp_XYZ& aSize, const Standard_Real lowX, const gp_XYZ& aCorner, const gp_XYZ& anXAxis, const gp_XYZ& anZAxis); 0054 0055 //! returns the size 0056 Standard_EXPORT gp_XYZ Size() const; 0057 0058 //! returns the length along the local X-axis 0059 Standard_EXPORT Standard_Real XBigLength() const; 0060 0061 //! returns the smaller length along the local X-direction at Y=LY 0062 Standard_EXPORT Standard_Real XSmallLength() const; 0063 0064 //! returns the length along the local Y-axis 0065 Standard_EXPORT Standard_Real YLength() const; 0066 0067 //! returns the length along the local Z-axis 0068 Standard_EXPORT Standard_Real ZLength() const; 0069 0070 //! returns the corner point coordinates 0071 Standard_EXPORT gp_Pnt Corner() const; 0072 0073 //! returns the corner point coordinates after applying 0074 //! TransformationMatrix 0075 Standard_EXPORT gp_Pnt TransformedCorner() const; 0076 0077 //! returns the direction defining the local X-axis 0078 Standard_EXPORT gp_Dir XAxis() const; 0079 0080 //! returns the direction defining the local X-axis 0081 //! after applying the TransformationMatrix 0082 Standard_EXPORT gp_Dir TransformedXAxis() const; 0083 0084 //! returns the direction defining the local Y-axis 0085 //! it is got by taking the cross product of ZAxis and XAxis 0086 Standard_EXPORT gp_Dir YAxis() const; 0087 0088 //! returns the direction defining the local Y-axis 0089 //! after applying the TransformationMatrix 0090 Standard_EXPORT gp_Dir TransformedYAxis() const; 0091 0092 //! returns the direction defining the local Z-axis 0093 Standard_EXPORT gp_Dir ZAxis() const; 0094 0095 //! returns the direction defining the local Z-axis 0096 //! after applying the TransformationMatrix 0097 Standard_EXPORT gp_Dir TransformedZAxis() const; 0098 0099 0100 0101 0102 DEFINE_STANDARD_RTTIEXT(IGESSolid_RightAngularWedge,IGESData_IGESEntity) 0103 0104 protected: 0105 0106 0107 0108 0109 private: 0110 0111 0112 gp_XYZ theSize; 0113 Standard_Real theXSmallLength; 0114 gp_XYZ theCorner; 0115 gp_XYZ theXAxis; 0116 gp_XYZ theZAxis; 0117 0118 0119 }; 0120 0121 0122 0123 0124 0125 0126 0127 #endif // _IGESSolid_RightAngularWedge_HeaderFile
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |