Added new method Stroke.remove_all_vertices() for removing all vertices from the stroke.
Patch from flokkievids in the BA Freestyle thread, thanks!
This commit is contained in:
@@ -218,6 +218,17 @@ static PyObject *Stroke_remove_vertex( BPy_Stroke *self, PyObject *args, PyObjec
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
PyDoc_STRVAR(Stroke_remove_all_vertices_doc,
|
||||
".. method:: remove_all_vertices()\n"
|
||||
"\n"
|
||||
" Removes all vertices from the Stroke.");
|
||||
|
||||
static PyObject *Stroke_remove_all_vertices(BPy_Stroke *self)
|
||||
{
|
||||
self->s->RemoveAllVertices();
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
PyDoc_STRVAR(Stroke_update_length_doc,
|
||||
".. method:: update_length()\n"
|
||||
"\n"
|
||||
@@ -285,6 +296,7 @@ static PyMethodDef BPy_Stroke_methods[] = {
|
||||
{"compute_sampling", (PyCFunction)Stroke_compute_sampling, METH_VARARGS | METH_KEYWORDS,
|
||||
Stroke_compute_sampling_doc},
|
||||
{"resample", (PyCFunction)Stroke_resample, METH_VARARGS | METH_KEYWORDS, Stroke_resample_doc},
|
||||
{"remove_all_vertices", (PyCFunction)Stroke_remove_all_vertices, METH_NOARGS, Stroke_remove_all_vertices_doc},
|
||||
{"remove_vertex", (PyCFunction)Stroke_remove_vertex, METH_VARARGS | METH_KEYWORDS, Stroke_remove_vertex_doc},
|
||||
{"insert_vertex", (PyCFunction)Stroke_insert_vertex, METH_VARARGS | METH_KEYWORDS, Stroke_insert_vertex_doc},
|
||||
{"update_length", (PyCFunction)Stroke_update_length, METH_NOARGS, Stroke_update_length_doc},
|
||||
|
||||
@@ -644,6 +644,15 @@ void Stroke::Resample(float iSampling)
|
||||
}
|
||||
}
|
||||
|
||||
void Stroke::RemoveAllVertices()
|
||||
{
|
||||
vertex_container::iterator it = _Vertices.begin(), itend = _Vertices.end();
|
||||
for (; it != itend; ++it)
|
||||
delete (*it);
|
||||
_Vertices.clear();
|
||||
UpdateLength();
|
||||
}
|
||||
|
||||
void Stroke::RemoveVertex(StrokeVertex *iVertex)
|
||||
{
|
||||
vertex_container::iterator it = _Vertices.begin(), itend = _Vertices.end();
|
||||
|
||||
@@ -589,6 +589,10 @@ public:
|
||||
*/
|
||||
void Resample(float iSampling);
|
||||
|
||||
/*! Removes all vertices from the Stroke.
|
||||
*/
|
||||
void RemoveAllVertices();
|
||||
|
||||
/*! Removes the stroke vertex iVertex
|
||||
* from the stroke.
|
||||
* The length and curvilinear abscissa are updated
|
||||
|
||||
Reference in New Issue
Block a user