// class : Gestion des formes associees (Hexa 5)
-// Copyright (C) 2009-2013 CEA/DEN, EDF R&D
+// Copyright (C) 2009-2024 CEA, EDF
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
// License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+// version 2.1 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
#ifndef __SUB_SHAPE_H_
#define __SUB_SHAPE_H_
-
-
#include "HexEltBase.hxx"
-#ifndef NO_CASCADE
#include <TopoDS_Shape.hxx>
-#endif
BEGIN_NAMESPACE_HEXA
-class SubShape : public EltBase
+class HexaExport SubShape : public EltBase
{
public :
SubShape (NewShape* dad, int id, int dim);
cpchar getParentName () const;
int getIdent () { return sub_ident ; }
int getDim () { return sub_dim ; }
+ virtual EnumKindOfShape kindOf () { return kind_of ; }
- const string& getBrep ();
- const TopoDS_Shape& getShape ();
+ const std::string& getBrep ();
+ virtual const TopoDS_Shape& getShape ();
void saveXml (XmlWriter* xml);
void callXml (XmlWriter* xml);
int sub_ident;
int sub_dim; // 0 = point, 1 = arete, 2 = face;
- TopoDS_Shape geo_shape;
- string geo_brep;
- bool maj_brep, maj_shape;
+ TopoDS_Shape geo_shape;
+ std::string geo_brep;
+ bool maj_brep, maj_shape;
+ EnumKindOfShape kind_of;
};
END_NAMESPACE_HEXA
#endif