Back to home page

EIC code displayed by LXR

 
 

    


Warning, /include/opencascade/BOPDS_ShapeInfo.lxx is written in an unsupported language. File is not indexed.

0001 // Created by: Peter KURNEV
0002 // Copyright (c) 1999-2014 OPEN CASCADE SAS
0003 //
0004 // This file is part of Open CASCADE Technology software library.
0005 //
0006 // This library is free software; you can redistribute it and/or modify it under
0007 // the terms of the GNU Lesser General Public License version 2.1 as published
0008 // by the Free Software Foundation, with special exception defined in the file
0009 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
0010 // distribution for complete text of the license and disclaimer of any warranty.
0011 //
0012 // Alternatively, this file may be used under the terms of Open CASCADE
0013 // commercial license or contractual agreement.
0014 
0015 #include <BOPDS_Tools.hxx>
0016 
0017 //=======================================================================
0018 //function : 
0019 //purpose  : 
0020 //=======================================================================
0021 inline BOPDS_ShapeInfo::BOPDS_ShapeInfo()
0022 :
0023   
0024   myType(TopAbs_SHAPE),
0025   myReference(-1),
0026   myFlag(-1)
0027 {
0028 }
0029 //=======================================================================
0030 //function : 
0031 //purpose  : 
0032 //=======================================================================
0033 inline BOPDS_ShapeInfo::BOPDS_ShapeInfo
0034   (const Handle(NCollection_BaseAllocator)& theAllocator)
0035 :
0036   myType(TopAbs_SHAPE),
0037   mySubShapes(theAllocator),
0038   myReference(-1),
0039   myFlag(-1)
0040 {
0041 }
0042 //=======================================================================
0043 //function : ~
0044 //purpose  : 
0045 //=======================================================================
0046 inline BOPDS_ShapeInfo::~BOPDS_ShapeInfo()
0047 {
0048 }
0049 //=======================================================================
0050 //function : SetShape
0051 //purpose  : 
0052 //=======================================================================
0053 inline void BOPDS_ShapeInfo::SetShape(const TopoDS_Shape& theS)
0054 {
0055   myShape=theS;
0056 }
0057 //=======================================================================
0058 //function : Shape
0059 //purpose  : 
0060 //=======================================================================
0061 inline const TopoDS_Shape& BOPDS_ShapeInfo::Shape()const
0062 {
0063   return myShape;
0064 }
0065 //=======================================================================
0066 //function : SetShapeType
0067 //purpose  : 
0068 //=======================================================================
0069 inline void BOPDS_ShapeInfo::SetShapeType(const TopAbs_ShapeEnum theType)
0070 {
0071   myType=theType;
0072 }
0073 //=======================================================================
0074 //function : ShapeType
0075 //purpose  : 
0076 //=======================================================================
0077 inline TopAbs_ShapeEnum BOPDS_ShapeInfo::ShapeType()const
0078 {
0079   return myType;
0080 }
0081 //=======================================================================
0082 //function : SetBox
0083 //purpose  : 
0084 //=======================================================================
0085 inline void BOPDS_ShapeInfo::SetBox(const Bnd_Box& theBox)
0086 {
0087   myBox=theBox;
0088 }
0089 //=======================================================================
0090 //function : Box
0091 //purpose  : 
0092 //=======================================================================
0093 inline const Bnd_Box& BOPDS_ShapeInfo::Box()const
0094 {
0095   return myBox;
0096 }
0097 //=======================================================================
0098 //function : ChangeBox
0099 //purpose  : 
0100 //=======================================================================
0101 inline Bnd_Box& BOPDS_ShapeInfo::ChangeBox()
0102 {
0103   return myBox;
0104 }
0105 
0106 //=======================================================================
0107 //function : SubShapes
0108 //purpose  : 
0109 //=======================================================================
0110 inline const TColStd_ListOfInteger& BOPDS_ShapeInfo::SubShapes()const
0111 {
0112   return mySubShapes;
0113 }
0114 //=======================================================================
0115 //function : ChangeSubShapes
0116 //purpose  : 
0117 //=======================================================================
0118 inline TColStd_ListOfInteger& BOPDS_ShapeInfo::ChangeSubShapes()
0119 {
0120   return mySubShapes;
0121 }
0122 //=======================================================================
0123 //function : HasSubShape
0124 //purpose  : 
0125 //=======================================================================
0126 inline Standard_Boolean BOPDS_ShapeInfo::HasSubShape
0127   (const Standard_Integer theI)const
0128 {
0129   return mySubShapes.Contains (theI);
0130 }
0131 //=======================================================================
0132 //function : HasReference
0133 //purpose  : 
0134 //=======================================================================
0135 inline Standard_Boolean BOPDS_ShapeInfo::HasReference()const
0136 {
0137   return (myReference>=0);
0138 }
0139 //=======================================================================
0140 //function : SetReference
0141 //purpose  : 
0142 //=======================================================================
0143 inline void BOPDS_ShapeInfo::SetReference(const Standard_Integer theI)
0144 {
0145   myReference=theI;
0146 }
0147 //=======================================================================
0148 //function : Reference
0149 //purpose  : 
0150 //=======================================================================
0151 inline Standard_Integer BOPDS_ShapeInfo::Reference()const
0152 {
0153   return myReference;
0154 }
0155 //=======================================================================
0156 //function : HasBRep
0157 //purpose  : 
0158 //=======================================================================
0159 inline Standard_Boolean BOPDS_ShapeInfo::HasBRep()const
0160 {
0161   return (BOPDS_Tools::HasBRep(myType));
0162 }
0163 //=======================================================================
0164 //function : IsInterfering
0165 //purpose  : 
0166 //=======================================================================
0167 inline Standard_Boolean BOPDS_ShapeInfo::IsInterfering()const
0168 {
0169   return (HasBRep() || myType==TopAbs_SOLID);
0170 }
0171 //=======================================================================
0172 //function : HasFlag
0173 //purpose  : 
0174 //=======================================================================
0175 inline Standard_Boolean BOPDS_ShapeInfo::HasFlag()const
0176 {
0177   return (myFlag>=0);
0178 }
0179 //=======================================================================
0180 //function : HasFlag
0181 //purpose  : 
0182 //=======================================================================
0183 inline Standard_Boolean BOPDS_ShapeInfo::HasFlag
0184   (Standard_Integer& theFlag)const
0185 {
0186   theFlag=myFlag;
0187   return (myFlag>=0);
0188 }
0189 //=======================================================================
0190 //function : SetFlag
0191 //purpose  : 
0192 //=======================================================================
0193 inline void BOPDS_ShapeInfo::SetFlag(const Standard_Integer theFlag)
0194 {
0195   myFlag=theFlag;
0196 }
0197 //=======================================================================
0198 //function : Flag
0199 //purpose  : 
0200 //=======================================================================
0201 inline Standard_Integer BOPDS_ShapeInfo::Flag()const
0202 {
0203   return myFlag;
0204 }