51 #ifndef CGAL_AFF_TRANSFORMATION_2_H
52 #define CGAL_AFF_TRANSFORMATION_2_H
54 #ifndef CGAL_REP_CLASS_DEFINED
55 #error no representation class defined
56 #endif // CGAL_REP_CLASS_DEFINED
58 #if defined(CGAL_CFG_INCOMPLETE_TYPE_BUG_1) && \
59 !defined(CGAL_NO_LINE_TRANSFORM_IN_AT)
60 #define CGAL_NO_LINE_TRANSFORM_IN_AT
61 #endif // CGAL_CFG_INCOMPLETE_TYPE_BUG_1
65 #endif // CGAL_LINE_2_H
67 #ifdef CGAL_HOMOGENEOUS_H
68 #ifndef CGAL_AFF_TRANSFORMATIONH2_H
69 #include <CGAL/Aff_transformationH2.h>
70 #endif // CGAL_AFF_TRANSFORMATIONH2_H
71 #endif // CGAL_HOMOGENEOUS_H
73 #ifdef CGAL_CARTESIAN_H
74 #ifndef CGAL_AFF_TRANSFORMATIONC2_H
75 #include <CGAL/Cartesian/Aff_transformation_2.h>
76 #endif // CGAL_AFF_TRANSFORMATIONC2_H
77 #endif // CGAL_CARTESIAN_H
79 #ifdef CGAL_SIMPLE_CARTESIAN_H
81 #endif // CGAL_SIMPLE_CARTESIAN_H
91 typedef typename R::RT
RT;
92 typedef typename R::FT
FT;
119 const CGAL::Vector_2<R> &
v)
125 const CGAL::Direction_2<R> &
d,
140 const CGAL::Line_2<R>& l )
168 const RT & m21,
const RT & m22,
178 CGAL::Point_2<R>
transform(
const CGAL::Point_2<R> &p)
const
179 {
return RAff_transformation_2::transform(p); }
184 CGAL::Vector_2<R>
transform(
const CGAL::Vector_2<R> &
v)
const
185 {
return RAff_transformation_2::transform(v); }
190 CGAL::Direction_2<R>
transform(
const CGAL::Direction_2<R> &d)
const
191 {
return RAff_transformation_2::transform(d); }
193 CGAL::Direction_2<R>
operator()(
const CGAL::Direction_2<R> &d)
const
196 CGAL::Line_2<R>
transform(
const CGAL::Line_2<R> &l)
const
198 #ifndef CGAL_NO_LINE_TRANSFORM_IN_AT
199 return RAff_transformation_2::transform(l);
203 #endif // CGAL_NO_LINE_TRANSFORM_IN_AT
210 CGAL::Aff_transformation_2<R>
212 {
return RAff_transformation_2::inverse(); }
215 {
return RAff_transformation_2::is_even(); }
220 CGAL::Aff_transformation_2<R>
225 {
return RAff_transformation_2::cartesian(i,j); }
227 {
return RAff_transformation_2::homogeneous(i,j); }
229 {
return RAff_transformation_2::m(i,j); }
231 {
return RAff_transformation_2::hm(i,j); }
235 #ifndef NO_OSTREAM_INSERT_AFF_TRANSFORMATION_2
238 operator<<(std::ostream &os, const CGAL::Aff_transformation_2<R> &t)
240 typedef typename R::Aff_transformation_2_base RAff_transformation_2;
241 return os << (
const RAff_transformation_2&)t;
243 #endif // NO_OSTREAM_INSERT_AFF_TRANSFORMATION_2
245 #ifndef NO_ISTREAM_EXTRACT_AFF_TRANSFORMATION_2
248 operator>>(std::istream &is, CGAL::Aff_transformation_2<R> &t)
250 typedef typename R::Aff_transformation_2_base RAff_transformation_2;
251 return is >> (RAff_transformation_2&)t;
253 #endif // NO_ISTREAM_EXTRACT_AFF_TRANSFORMATION_2
258 #endif // CGAL_AFF_TRANSFORMATION_2_H
Vector_3< T > operator*(T t, const Vector_3< T > &v)
*********************************************************************Illinois Open Source License ****University of Illinois NCSA **Open Source License University of Illinois All rights reserved ****Developed free of to any person **obtaining a copy of this software and associated documentation to deal with the Software without including without limitation the rights to and or **sell copies of the and to permit persons to whom the **Software is furnished to do subject to the following this list of conditions and the following disclaimers ****Redistributions in binary form must reproduce the above **copyright this list of conditions and the following **disclaimers in the documentation and or other materials **provided with the distribution ****Neither the names of the Center for Simulation of Advanced the University of nor the names of its **contributors may be used to endorse or promote products derived **from this Software without specific prior written permission ****THE SOFTWARE IS PROVIDED AS WITHOUT WARRANTY OF ANY **EXPRESS OR INCLUDING BUT NOT LIMITED TO THE WARRANTIES **OF FITNESS FOR A PARTICULAR PURPOSE AND **NONINFRINGEMENT IN NO EVENT SHALL THE CONTRIBUTORS OR **COPYRIGHT HOLDERS BE LIABLE FOR ANY DAMAGES OR OTHER WHETHER IN AN ACTION OF TORT OR **ARISING OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE **USE OR OTHER DEALINGS WITH THE SOFTWARE v
#define CGAL_BEGIN_NAMESPACE
#define CGAL_END_NAMESPACE