DGtal  1.5.beta
Knot_7_4.h
1 
17 #pragma once
18 
31 #if defined(Knot_7_4_RECURSES)
32 #error Recursive header files inclusion detected in Knot_7_4.h
33 #else // defined(Knot_7_4_RECURSES)
35 #define Knot_7_4_RECURSES
36 
37 #if !defined Knot_7_4_h
39 #define Knot_7_4_h
40 
42 // Inclusions
43 #include <iostream>
44 #include <cmath>
45 #include "DGtal/base/Common.h"
47 
48 namespace DGtal
49 {
50 
52 // class Knot_7_4
58 template <typename TSpace>
59 class Knot_7_4
60 {
61  // ----------------------- Standard services ------------------------------
62 public:
63  typedef TSpace Space;
64  typedef typename TSpace::RealPoint RealPoint;
65  typedef typename TSpace::Point Point;
66 
70  ~Knot_7_4() {}
71 
78  Knot_7_4 ( long double scale_1, long double scale_2, long double scale_3 );
79 
80 
81  // ----------------------- Interface --------------------------------------
82 public:
83 
89  RealPoint x ( long double t ) const;
90 
96  RealPoint xp ( long double t ) const;
97 
98 
103  void selfDisplay ( std::ostream & out ) const;
104 
109  bool isValid() const;
110 
111 
112  // ------------------------- Protected Datas ------------------------------
113 private:
114  // ------------------------- Private Datas --------------------------------
115 private:
116  long double scale[3];
117  // ------------------------- Hidden services ------------------------------
118 protected:
119 
125 
126 private:
127 
133  Knot_7_4 ( const Knot_7_4 & other );
134 
141  Knot_7_4 & operator= ( const Knot_7_4 & other );
142 
143 
144  // ------------------------- Internals ------------------------------------
145 private:
146 
147 }; // end of class Knot_7_4
148 
149 
156 template <typename T>
157 std::ostream&
158 operator<< ( std::ostream & out, const Knot_7_4<T> & object );
159 
160 
161 } // namespace DGtal
162 
163 
165 // Includes inline functions.
166 #if !defined(BUILD_INLINE)
167 #include "DGtal/geometry/curves/parametric/Knot_7_4.ih"
168 #endif
169 
170 
171 // //
173 
174 #endif // !defined Knot_7_4_h
175 
176 #undef Knot_7_4_RECURSES
177 #endif // else defined(Knot_7_4_RECURSES)
Aim: Implement a parametrized knot 7, 4.
Definition: Knot_7_4.h:60
TSpace::Point Point
Definition: Knot_7_4.h:65
TSpace::RealPoint RealPoint
Definition: Knot_7_4.h:64
void selfDisplay(std::ostream &out) const
RealPoint xp(long double t) const
bool isValid() const
Knot_7_4 & operator=(const Knot_7_4 &other)
RealPoint x(long double t) const
TSpace Space
Definition: Knot_7_4.h:63
Knot_7_4(const Knot_7_4 &other)
Knot_7_4(long double scale_1, long double scale_2, long double scale_3)
DGtal is the top-level namespace which contains all DGtal functions and types.
std::ostream & operator<<(std::ostream &out, const ATu0v1< TKSpace, TLinearAlgebra > &object)
MyPointD Point
Definition: testClone2.cpp:383
PointVector< 3, double > RealPoint