Changes in src/Shapes/ShapeOps_impl.hpp [b94634:c67c65]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/Shapes/ShapeOps_impl.hpp
rb94634 rc67c65 17 17 #include "Shapes/Shape_impl.hpp" 18 18 #include "Shapes/ShapeExceptions.hpp" 19 #include "Shapes/ShapeType.hpp" 19 20 #include "LinearAlgebra/Vector.hpp" 20 21 #include "LinearAlgebra/RealSpaceMatrix.hpp" … … 28 29 ShapeOpsBase_impl(const Shape::impl_ptr&); 29 30 virtual ~ShapeOpsBase_impl(); 30 virtual bool isInside(const Vector &point); 31 virtual bool isOnSurface(const Vector &point); 32 virtual Vector getNormal(const Vector &point) throw (NotOnSurfaceException); 33 virtual LineSegmentSet getLineIntersections(const Line&); 31 virtual bool isInside(const Vector &point) const; 32 virtual bool isOnSurface(const Vector &point) const; 33 virtual Vector getNormal(const Vector &point) const throw (NotOnSurfaceException); 34 virtual Vector getCenter() const; 35 virtual double getRadius() const; 36 virtual LineSegmentSet getLineIntersections(const Line&) const; 37 virtual enum ShapeType getType() const; 34 38 virtual std::vector<Vector> getHomogeneousPointsOnSurface(const size_t N) const; 39 virtual std::vector<Vector> getHomogeneousPointsInVolume(const size_t N) const; 35 40 protected: 36 virtual Vector translateIn(const Vector &point) =0;37 virtual Vector translateOutPos(const Vector &point) =0;38 virtual Vector translateOutNormal(const Vector &point) =0;41 virtual Vector translateIn(const Vector &point) const=0; 42 virtual Vector translateOutPos(const Vector &point) const=0; 43 virtual Vector translateOutNormal(const Vector &point) const=0; 39 44 Shape::impl_ptr getArg() const; 40 45 private: … … 48 53 virtual ~Resize_impl(); 49 54 protected: 50 virtual Vector translateIn(const Vector &point); 51 virtual Vector translateOutPos(const Vector &point); 52 virtual Vector translateOutNormal(const Vector &point); 53 virtual std::string toString(); 54 virtual bool isInside(const Vector& point); 55 virtual double getVolume() const; 56 virtual double getSurfaceArea() const; 57 virtual Vector translateIn(const Vector &point) const; 58 virtual Vector translateOutPos(const Vector &point) const; 59 virtual Vector translateOutNormal(const Vector &point) const; 60 virtual std::string toString() const; 61 virtual bool isInside(const Vector& point) const; 55 62 virtual std::vector<Vector> getHomogeneousPointsOnSurface(const size_t N) const; 63 virtual std::vector<Vector> getHomogeneousPointsInVolume(const size_t N) const; 56 64 private: 57 65 double size; … … 64 72 virtual ~Translate_impl(); 65 73 protected: 66 virtual Vector translateIn(const Vector &point); 67 virtual Vector translateOutPos(const Vector &point); 68 virtual Vector translateOutNormal(const Vector &point); 69 virtual std::string toString(); 70 virtual bool isInside(const Vector& point); 74 virtual Vector getCenter() const; 75 virtual double getRadius() const; 76 virtual double getVolume() const; 77 virtual double getSurfaceArea() const; 78 virtual Vector translateIn(const Vector &point) const; 79 virtual Vector translateOutPos(const Vector &point) const; 80 virtual Vector translateOutNormal(const Vector &point) const; 81 virtual std::string toString() const; 82 virtual bool isInside(const Vector& point) const; 71 83 virtual std::vector<Vector> getHomogeneousPointsOnSurface(const size_t N) const; 84 virtual std::vector<Vector> getHomogeneousPointsInVolume(const size_t N) const; 72 85 private: 73 86 Vector offset; … … 77 90 { 78 91 public: 79 Stretch_impl(const Shape::impl_ptr&, const Vector&); 92 93 94 Stretch_impl(const Shape::impl_ptr&, const Vector&); 80 95 virtual ~Stretch_impl(); 81 96 protected: 82 virtual Vector translateIn(const Vector &point); 83 virtual Vector translateOutPos(const Vector &point); 84 virtual Vector translateOutNormal(const Vector &point); 85 virtual std::string toString(); 86 virtual bool isInside(const Vector& point); 97 virtual double getVolume() const; 98 virtual double getSurfaceArea() const; 99 virtual Vector translateIn(const Vector &point) const; 100 virtual Vector translateOutPos(const Vector &point) const; 101 virtual Vector translateOutNormal(const Vector &point) const; 102 virtual std::string toString() const; 103 virtual bool isInside(const Vector& point) const; 87 104 virtual std::vector<Vector> getHomogeneousPointsOnSurface(const size_t N) const; 105 virtual std::vector<Vector> getHomogeneousPointsInVolume(const size_t N) const; 88 106 private: 89 107 Vector factors; … … 97 115 virtual ~Transform_impl(); 98 116 protected: 99 virtual Vector translateIn(const Vector &point); 100 virtual Vector translateOutPos(const Vector &point); 101 virtual Vector translateOutNormal(const Vector &point); 102 virtual std::string toString(); 103 virtual bool isInside(const Vector& point); 117 virtual double getVolume() const; 118 virtual double getSurfaceArea() const; 119 virtual Vector translateIn(const Vector &point) const; 120 virtual Vector translateOutPos(const Vector &point) const; 121 virtual Vector translateOutNormal(const Vector &point) const; 122 virtual std::string toString() const; 123 virtual bool isInside(const Vector& point) const; 104 124 virtual std::vector<Vector> getHomogeneousPointsOnSurface(const size_t N) const; 125 virtual std::vector<Vector> getHomogeneousPointsInVolume(const size_t N) const; 105 126 private: 106 127 RealSpaceMatrix transformation;
Note:
See TracChangeset
for help on using the changeset viewer.