DGtal 1.4.0
Loading...
Searching...
No Matches
Knot_3_1.h
1
17#pragma once
18
31#if defined(Knot_3_1_RECURSES)
32#error Recursive header files inclusion detected in Knot_3_1.h
33#else // defined(Knot_3_1_RECURSES)
35#define Knot_3_1_RECURSES
36
37#if !defined Knot_3_1_h
39#define Knot_3_1_h
40
42// Inclusions
43#include <iostream>
44#include <cmath>
45#include "DGtal/base/Common.h"
47
48namespace DGtal
49{
50
52// class Knot_3_1
58template <typename TSpace>
60{
61 // ----------------------- Standard services ------------------------------
62public:
63 typedef TSpace Space;
64 typedef typename TSpace::RealPoint RealPoint;
65 typedef typename TSpace::Point Point;
66
71
78 Knot_3_1 ( long double scale_1, long double scale_2, long double scale_3 );
79
80
81 // ----------------------- Interface --------------------------------------
82public:
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 ------------------------------
113private:
114 // ------------------------- Private Datas --------------------------------
115private:
116 long double scale[3];
117 // ------------------------- Hidden services ------------------------------
118protected:
119
125
126private:
127
133 Knot_3_1 ( const Knot_3_1 & other );
134
141 Knot_3_1 & operator= ( const Knot_3_1 & other );
142
143
144 // ------------------------- Internals ------------------------------------
145private:
146
147}; // end of class Knot_3_1
148
149
156template <typename T>
157std::ostream&
158operator<< ( std::ostream & out, const Knot_3_1<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_3_1.ih"
168#endif
169
170
171// //
173
174#endif // !defined Knot_3_1_h
175
176#undef Knot_3_1_RECURSES
177#endif // else defined(Knot_3_1_RECURSES)
Aim: Implement a parametrized knot 3, 1.
Definition Knot_3_1.h:60
TSpace::RealPoint RealPoint
Definition Knot_3_1.h:64
Knot_3_1 & operator=(const Knot_3_1 &other)
bool isValid() const
RealPoint xp(long double t) const
RealPoint x(long double t) const
Knot_3_1(const Knot_3_1 &other)
Knot_3_1(long double scale_1, long double scale_2, long double scale_3)
void selfDisplay(std::ostream &out) const
TSpace::Point Point
Definition Knot_3_1.h:65
DGtal is the top-level namespace which contains all DGtal functions and types.
std::ostream & operator<<(std::ostream &out, const ClosedIntegerHalfPlane< TSpace > &object)