Blame | Last modification | View Log | RSS feed
#ifndef BOB_GEOMETRY_INCLUDED
#define BOB_GEOMETRY_INCLUDED
#include "geometry.h"
template <class Ty>
class point3d : public geometry::point3d<Ty>
{
public:
point3d()
: geometry::point3d<value_type>()
{ }
point3d(const geometry::point3d<value_type>& pt)
: geometry::point3d<value_type>(pt)
{ }
point3d(value_type x, value_type y, value_type z)
: geometry::point3d<value_type>(x, y, z)
{ }
bool load(ibinaryfilestream& is)
{
is >> x >> y >> z;
return !is.fail();
}
bool toFile(obinaryfilestream& os) const
{
os << x << y << z;
return !os.fail();
}
bool toFile(otextfilestream& os) const
{
os << x << y << z;
return !os.fail();
}
};
template <class Ty>
class point2d : public geometry::point2d<Ty>
{
public:
public:
point2d()
: geometry::point2d<value_type>()
{ }
point2d(const geometry::point2d<value_type>& pt)
: geometry::point2d<value_type>(pt)
{ }
point2d(value_type x, value_type y)
: geometry::point2d<value_type>(x, y)
{ }
bool load(ibinaryfilestream& is)
{
is >> x >> y;
return !is.fail();
}
bool toFile(obinaryfilestream& os) const
{
os << x << y;
return !os.fail();
}
bool toFile(otextfilestream& os) const
{
os << x << y;
return !os.fail();
}
};
/*
class vertex : public point3d<int>
{
public:
vertex()
: point3d<value_type>()
{ }
vertex(const point3d<value_type>& pt)
: point3d<value_type>(pt)
{ }
vertex(int x, int y, int z)
: point3d<value_type>(x, y, z)
{ }
bool toFile(otextfilestream& os) const
{
os << x << y << z;
return !os.fail();
}
};
class vector : public point3d<double>
{
public:
typedef point3d<value_type> base;
vector()
: point3d<value_type>()
{ }
vector(const point3d<value_type>& pt)
: point3d<value_type>(pt)
{ }
vector(double x, double y, double z)
: point3d<value_type>(x, y, z)
{ }
bool toFile(otextfilestream& os) const
{
os << x << y << z;
return !os.fail();
}
bool toFile(obinaryfilestream& os) const { return base::toFile(os); }
};
*/
typedef point3d<int> vertex;
typedef point3d<double> vector;
typedef vector normal_vector;
typedef vertex position3d;
#endif // !defined(BOB_GEOMETRY_INCLUDED)