OpenLexocad  27.1
Clipping.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <Geom/Bnd_Box.h>
4 #include <Geom/Pln.h>
5 
6 #include <vector>
7 
8 namespace Geom
9 {
10 class LX_GEOM_EXPORT Clipping
11 {
12 public:
13  Clipping();
14  Clipping(const std::vector<Geom::Pln>& planes);
15 
16  bool isClipped(const Geom::Pnt& p) const;
17  bool isClipped(const Geom::Bnd_Box& b) const;
18  void clear();
19 
20  void setGap(double e);
21 
22  std::vector<Geom::Pln> getPlanes() const;
23 
24  void transform(Geom::Trsf tr);
25  Geom::Bnd_Box asBBox();
26 
27 private:
28  Clipping(Geom::Pln pl0, Geom::Pln pl1, Geom::Pln pl2, Geom::Pln pl3, Geom::Pln pl4, Geom::Pln pl5);
29  std::vector<Geom::Pln> _planes;
30  double _gap;
31 };
32 
33 } // namespace Geom
Definition: Variant.h:60
Definition: Pln.h:57
Defines a non-persistent 3D Cartesian point.
Definition: Pnt.h:43
Definition: Clipping.h:10
Definition: Bnd_Box.h:63
void transform(Container container, OutputIt out, BinaryFunction function)
Definition: Algorithms.h:29
Definition: Trsf.h:57