|
|
|||
File indexing completed on 2026-09-28 09:20:33
0001 // Created on: 1993-01-11 0002 // Created by: CKY / Contract Toubro-Larsen ( Niraj RANGWALA ) 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 _IGESDraw_RectArraySubfigure_HeaderFile 0018 #define _IGESDraw_RectArraySubfigure_HeaderFile 0019 0020 #include <Standard.hxx> 0021 #include <Standard_Type.hxx> 0022 0023 #include <gp_XYZ.hxx> 0024 #include <Standard_Integer.hxx> 0025 #include <NCollection_Array1.hxx> 0026 #include <NCollection_HArray1.hxx> 0027 #include <IGESData_IGESEntity.hxx> 0028 class gp_Pnt; 0029 0030 //! Defines IGES Rectangular Array Subfigure Instance Entity, 0031 //! Type <412> Form Number <0> in package IGESDraw 0032 //! Used to produce copies of object called the base entity, 0033 //! arranging them in equally spaced rows and columns 0034 class IGESDraw_RectArraySubfigure : public IGESData_IGESEntity 0035 { 0036 0037 public: 0038 Standard_EXPORT IGESDraw_RectArraySubfigure(); 0039 0040 //! This method is used to set the fields of the class 0041 //! RectArraySubfigure 0042 //! - aBase : a base entity which is replicated 0043 //! - aScale : Scale Factor 0044 //! - aCorner : lower left hand corner for the entire array 0045 //! - nbCols : Number of columns of the array 0046 //! - nbRows : Number of rows of the array 0047 //! - hDisp : Column separations 0048 //! - vtDisp : Row separation 0049 //! - rotationAngle : Rotation angle specified in radians 0050 //! - allDont : DO-DON'T flag to control which portion 0051 //! to display 0052 //! - allNumPos : List of positions to be or not to be 0053 //! displayed 0054 Standard_EXPORT void Init(const occ::handle<IGESData_IGESEntity>& aBase, 0055 const double aScale, 0056 const gp_XYZ& aCorner, 0057 const int nbCols, 0058 const int nbRows, 0059 const double hDisp, 0060 const double vtDisp, 0061 const double rotationAngle, 0062 const int doDont, 0063 const occ::handle<NCollection_HArray1<int>>& allNumPos); 0064 0065 //! returns the base entity, copies of which are produced 0066 Standard_EXPORT occ::handle<IGESData_IGESEntity> BaseEntity() const; 0067 0068 //! returns the scale factor 0069 Standard_EXPORT double ScaleFactor() const; 0070 0071 //! returns coordinates of lower left hand corner for the entire array 0072 Standard_EXPORT gp_Pnt LowerLeftCorner() const; 0073 0074 //! returns Transformed coordinates of lower left corner for the array 0075 Standard_EXPORT gp_Pnt TransformedLowerLeftCorner() const; 0076 0077 //! returns number of columns in the array 0078 Standard_EXPORT int NbColumns() const; 0079 0080 //! returns number of rows in the array 0081 Standard_EXPORT int NbRows() const; 0082 0083 //! returns horizontal distance between columns 0084 Standard_EXPORT double ColumnSeparation() const; 0085 0086 //! returns vertical distance between rows 0087 Standard_EXPORT double RowSeparation() const; 0088 0089 //! returns rotation angle in radians 0090 Standard_EXPORT double RotationAngle() const; 0091 0092 //! returns True if (ListCount = 0) i.e., all elements to be displayed 0093 Standard_EXPORT bool DisplayFlag() const; 0094 0095 //! returns 0 if all replicated entities to be displayed 0096 Standard_EXPORT int ListCount() const; 0097 0098 //! returns 0 if half or fewer of the elements of the array are defined 0099 //! 1 if half or more of the elements are defined 0100 Standard_EXPORT bool DoDontFlag() const; 0101 0102 //! returns whether Index is to be processed (DO) 0103 //! or not to be processed(DON'T) 0104 //! if (ListCount = 0) return theDoDontFlag 0105 Standard_EXPORT bool PositionNum(const int Index) const; 0106 0107 //! returns the Index'th value position 0108 //! raises exception if Index <= 0 or Index > ListCount() 0109 Standard_EXPORT int ListPosition(const int Index) const; 0110 0111 DEFINE_STANDARD_RTTIEXT(IGESDraw_RectArraySubfigure, IGESData_IGESEntity) 0112 0113 private: 0114 occ::handle<IGESData_IGESEntity> theBaseEntity; 0115 double theScaleFactor; 0116 gp_XYZ theLowerLeftCorner; 0117 int theNbColumns; 0118 int theNbRows; 0119 double theColumnSeparation; 0120 double theRowSeparation; 0121 double theRotationAngle; 0122 bool theDoDontFlag; 0123 occ::handle<NCollection_HArray1<int>> thePositions; 0124 }; 0125 0126 #endif // _IGESDraw_RectArraySubfigure_HeaderFile
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|