Add Aff_transformation_3::is_translation() which checks the rep
This commit is contained in:
@@ -161,6 +161,9 @@ public:
|
||||
bool is_even() const { return this->Ptr()->is_even(); }
|
||||
bool is_odd() const { return ! (this->Ptr()->is_even()); }
|
||||
|
||||
bool is_translation() const { return this->Ptr()->is_translation(); }
|
||||
|
||||
|
||||
FT cartesian(int i, int j) const { return this->Ptr()->cartesian(i,j); }
|
||||
FT homogeneous(int i, int j) const { return cartesian(i,j); }
|
||||
FT m(int i, int j) const { return cartesian(i,j); }
|
||||
|
||||
@@ -54,6 +54,7 @@ public:
|
||||
virtual Aff_transformation_3 inverse() const = 0;
|
||||
virtual Aff_transformation_3 transpose() const = 0;
|
||||
virtual bool is_even() const = 0;
|
||||
virtual bool is_translation() const = 0;
|
||||
virtual FT cartesian(int i, int j) const = 0;
|
||||
virtual std::ostream &print(std::ostream &os) const = 0;
|
||||
};
|
||||
@@ -144,6 +145,12 @@ public:
|
||||
t31, t32, t33) == POSITIVE;
|
||||
}
|
||||
|
||||
|
||||
virtual bool is_translation() const
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
virtual FT cartesian(int i, int j) const
|
||||
{
|
||||
switch (i)
|
||||
|
||||
@@ -121,6 +121,12 @@ public:
|
||||
return true;
|
||||
}
|
||||
|
||||
virtual bool is_translation() const
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
virtual FT cartesian(int i, int j) const
|
||||
{
|
||||
if (i!=j) return FT(0);
|
||||
|
||||
@@ -125,6 +125,11 @@ public:
|
||||
return true;
|
||||
}
|
||||
|
||||
virtual bool is_translation() const
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
virtual FT cartesian(int i, int j) const
|
||||
{
|
||||
if (j==i) return FT(1);
|
||||
|
||||
Reference in New Issue
Block a user