11 class PropertyBrepData;
12 class PropertyBrepDataSet;
35 LX_GEOM_EXTERN
template class LX_GEOM_EXPORT std::weak_ptr<const Geom::BrepData>;
36 LX_GEOM_EXTERN
template class LX_GEOM_EXPORT std::weak_ptr<const Geom::BrepFace>;
37 LX_GEOM_EXTERN
template class LX_GEOM_EXPORT std::enable_shared_from_this<const Geom::BrepData>;
38 LX_GEOM_EXTERN
template class LX_GEOM_EXPORT std::enable_shared_from_this<const Geom::BrepFace>;
46 class LX_GEOM_EXPORT
BrepEdge :
public std::enable_shared_from_this<const Geom::BrepEdge>
68 class LX_GEOM_EXPORT
BrepFace :
public std::enable_shared_from_this<const Geom::BrepFace>
73 std::vector<int> getModel()
const;
76 std::vector<pConstBrepLoop> getInnerLoops()
const;
80 BrepFaceP* _pimpl =
nullptr;
89 void getPolygon(std::vector<Geom::Pnt>& poly)
const;
90 std::vector<const Geom::Pnt*> getPolygonPtr()
const;
91 const std::vector<int>& getModel()
const;
95 BrepLoopP* _pimpl =
nullptr;
116 class LX_GEOM_EXPORT
BrepData :
public std::enable_shared_from_this<const Geom::BrepData>
138 BrepData::BrepData(
const BrepData& p);
141 std::vector<Geom::Pnt> getPoints()
const;
142 int64_t getUniquePointsCnt()
const;
143 std::vector<int> getModel()
const;
144 void setModel(
const std::vector<int>& model);
146 bool checkLoop(
const std::vector<int>& model)
const;
147 bool hasDegeneratedLoops()
const;
154 int addModelIndex(
int idx);
156 int getModelIndexAt(
int idx)
const;
158 const Geom::Pnt* getPointAt(
int idx)
const;
165 bool isEmpty()
const;
167 int getFaceCount()
const;
170 std::vector<pConstBrepFace> getFaces()
const;
174 bool hasVoids()
const;
186 void addFace(std::vector<int> index);
188 size_t getHash()
const;
196 int64_t addUniquePointCheckIsNew(
const Geom::Pnt& p,
bool& r_is_new);
204 void _addPointAtIndex(
const Geom::Pnt& p,
int idx);
214 #pragma warning(disable : 4251) 217 std::vector<int> model;
Definition: PointMapWithTolerance.h:9
Defines a non-persistent 3D Cartesian point.
Definition: Pnt.h:43
friend class BrepFace
Definition: BrepData.h:129
constexpr bool operator!=(const basic_hashed_string< Char > &lhs, const basic_hashed_string< Char > &rhs) ENTT_NOEXCEPT
Compares two hashed strings.
Definition: entt.hpp:570
std::shared_ptr< Geom::BrepData > pBrepData
Definition: BrepData.h:28
friend class BrepLoop
Definition: BrepData.h:130
std::shared_ptr< const Geom::BrepFace > pConstBrepFace
Definition: BrepData.h:32
void transform(Container container, OutputIt out, BinaryFunction function)
Definition: Algorithms.h:29
std::shared_ptr< Geom::BrepFace > pBrepFace
Definition: BrepData.h:29
std::shared_ptr< Geom::BrepFace > pBrepLoop
Definition: BrepData.h:30
std::shared_ptr< const Geom::BrepData > pConstBrepData
Definition: BrepData.h:31
The BrepData class holds the boundary representation of a FacetedBrep in the form of a model descript...
Definition: BrepData.h:116
std::shared_ptr< const Geom::BrepLoop > pConstBrepLoop
Definition: BrepData.h:33
Definition: BrepData.h:51
Defines a non-persistent vector in 3D space.
Definition: Vec.h:44
Definition: BrepData.h:68
Definition: BrepData.h:46
Definition: BrepData.h:58
double getModelingTolerance() const
Returns the modeling tolerance of the Brep.
Definition: BrepData.h:172
Definition: PropertyBrepData.h:41
Definition: BrepData.h:84
Definition: PropertyBrepData.h:12