add methods to import to set positions and normals from doubles
This commit is contained in:
@@ -91,6 +91,9 @@ public:
|
|||||||
// add a vertex with coordinate \c _point
|
// add a vertex with coordinate \c _point
|
||||||
virtual VertexHandle add_vertex(const Vec3f& _point) = 0;
|
virtual VertexHandle add_vertex(const Vec3f& _point) = 0;
|
||||||
|
|
||||||
|
// add a vertex with coordinate \c _point
|
||||||
|
virtual VertexHandle add_vertex(const Vec3d& _point) { return add_vertex(Vec3f(_point)); }
|
||||||
|
|
||||||
// add a vertex without coordinate. Use set_point to set the position deferred
|
// add a vertex without coordinate. Use set_point to set the position deferred
|
||||||
virtual VertexHandle add_vertex() = 0;
|
virtual VertexHandle add_vertex() = 0;
|
||||||
|
|
||||||
@@ -122,6 +125,9 @@ public:
|
|||||||
// set vertex normal
|
// set vertex normal
|
||||||
virtual void set_normal(VertexHandle _vh, const Vec3f& _normal) = 0;
|
virtual void set_normal(VertexHandle _vh, const Vec3f& _normal) = 0;
|
||||||
|
|
||||||
|
// set vertex normal
|
||||||
|
virtual void set_normal(VertexHandle _vh, const Vec3d& _normal) { set_normal(_vh, Vec3f(_normal)); }
|
||||||
|
|
||||||
// set vertex color
|
// set vertex color
|
||||||
virtual void set_color(VertexHandle _vh, const Vec3uc& _color) = 0;
|
virtual void set_color(VertexHandle _vh, const Vec3uc& _color) = 0;
|
||||||
|
|
||||||
|
|||||||
@@ -97,6 +97,11 @@ public:
|
|||||||
return mesh_.add_vertex(vector_cast<Point>(_point));
|
return mesh_.add_vertex(vector_cast<Point>(_point));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
virtual VertexHandle add_vertex(const Vec3d& _point) override
|
||||||
|
{
|
||||||
|
return mesh_.add_vertex(vector_cast<Point>(_point));
|
||||||
|
}
|
||||||
|
|
||||||
virtual VertexHandle add_vertex() override
|
virtual VertexHandle add_vertex() override
|
||||||
{
|
{
|
||||||
return mesh_.new_vertex();
|
return mesh_.new_vertex();
|
||||||
@@ -222,6 +227,17 @@ public:
|
|||||||
halfedgeNormals_[_vh] = vector_cast<Normal>(_normal);
|
halfedgeNormals_[_vh] = vector_cast<Normal>(_normal);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
virtual void set_normal(VertexHandle _vh, const Vec3d& _normal) override
|
||||||
|
{
|
||||||
|
if (mesh_.has_vertex_normals())
|
||||||
|
mesh_.set_normal(_vh, vector_cast<Normal>(_normal));
|
||||||
|
|
||||||
|
//saves normals for half edges.
|
||||||
|
//they will be written, when the face is added
|
||||||
|
if (mesh_.has_halfedge_normals())
|
||||||
|
halfedgeNormals_[_vh] = vector_cast<Normal>(_normal);
|
||||||
|
}
|
||||||
|
|
||||||
virtual void set_color(VertexHandle _vh, const Vec4uc& _color) override
|
virtual void set_color(VertexHandle _vh, const Vec4uc& _color) override
|
||||||
{
|
{
|
||||||
if (mesh_.has_vertex_colors())
|
if (mesh_.has_vertex_colors())
|
||||||
|
|||||||
Reference in New Issue
Block a user