Major documentation updates. The original Freestyle API reference
(http://freestyle.sourceforge.net/doc/html/index.html) has been incorporated into the Blender/Freestyle Python API implementation in the form of Sphinx-based embedded docstrings. Some C++-specific descriptions of classes and functions were revised so that they are suitable for Python programmers. Missing docstrings were filled, and sparse descriptions were extended. By means of the new documentation system for Blender, an up-to-date Freestyle Python API reference will be part of the Blender 2.5 documentation.
This commit is contained in:
@@ -9,66 +9,31 @@ extern "C" {
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
/*--------------- Python API function prototypes for NonTVertex___init__ instance -----------*/
|
||||
static int NonTVertex___init__(BPy_NonTVertex *self, PyObject *args, PyObject *kwds);
|
||||
|
||||
static PyObject * NonTVertex_svertex( BPy_NonTVertex *self );
|
||||
static PyObject * NonTVertex_setSVertex( BPy_NonTVertex *self, PyObject *args);
|
||||
|
||||
/*----------------------NonTVertex instance definitions ----------------------------*/
|
||||
static PyMethodDef BPy_NonTVertex_methods[] = {
|
||||
// {"__copy__", ( PyCFunction ) NonTVertex___copy__, METH_NOARGS, "() Cloning method."},
|
||||
{"svertex", ( PyCFunction ) NonTVertex_svertex, METH_NOARGS, "() Returns the SVertex on top of which this NonTVertex is built. "},
|
||||
{"setSVertex", ( PyCFunction ) NonTVertex_setSVertex, METH_VARARGS, "(SVertex sv) Sets the SVertex on top of which this NonTVertex is built. "},
|
||||
{NULL, NULL, 0, NULL}
|
||||
};
|
||||
|
||||
/*-----------------------BPy_NonTVertex type definition ------------------------------*/
|
||||
|
||||
PyTypeObject NonTVertex_Type = {
|
||||
PyVarObject_HEAD_INIT(NULL, 0)
|
||||
"NonTVertex", /* tp_name */
|
||||
sizeof(BPy_NonTVertex), /* tp_basicsize */
|
||||
0, /* tp_itemsize */
|
||||
0, /* tp_dealloc */
|
||||
0, /* tp_print */
|
||||
0, /* tp_getattr */
|
||||
0, /* tp_setattr */
|
||||
0, /* tp_reserved */
|
||||
0, /* tp_repr */
|
||||
0, /* tp_as_number */
|
||||
0, /* tp_as_sequence */
|
||||
0, /* tp_as_mapping */
|
||||
0, /* tp_hash */
|
||||
0, /* tp_call */
|
||||
0, /* tp_str */
|
||||
0, /* tp_getattro */
|
||||
0, /* tp_setattro */
|
||||
0, /* tp_as_buffer */
|
||||
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */
|
||||
"NonTVertex objects", /* tp_doc */
|
||||
0, /* tp_traverse */
|
||||
0, /* tp_clear */
|
||||
0, /* tp_richcompare */
|
||||
0, /* tp_weaklistoffset */
|
||||
0, /* tp_iter */
|
||||
0, /* tp_iternext */
|
||||
BPy_NonTVertex_methods, /* tp_methods */
|
||||
0, /* tp_members */
|
||||
0, /* tp_getset */
|
||||
&ViewVertex_Type, /* tp_base */
|
||||
0, /* tp_dict */
|
||||
0, /* tp_descr_get */
|
||||
0, /* tp_descr_set */
|
||||
0, /* tp_dictoffset */
|
||||
(initproc)NonTVertex___init__, /* tp_init */
|
||||
0, /* tp_alloc */
|
||||
0, /* tp_new */
|
||||
};
|
||||
|
||||
//------------------------INSTANCE METHODS ----------------------------------
|
||||
|
||||
int NonTVertex___init__(BPy_NonTVertex *self, PyObject *args, PyObject *kwds)
|
||||
static char NonTVertex___doc__[] =
|
||||
"View vertex for corners, cusps, etc. associated to a single SVertex.\n"
|
||||
"Can be associated to 2 or more view edges.\n"
|
||||
"\n"
|
||||
".. method:: __init__()\n"
|
||||
"\n"
|
||||
" Default constructor.\n"
|
||||
"\n"
|
||||
".. method:: __init__(iBrother)\n"
|
||||
"\n"
|
||||
" Copy constructor.\n"
|
||||
"\n"
|
||||
" :arg iBrother: A NonTVertex object.\n"
|
||||
" :type iBrother: :class:`NonTVertex`\n"
|
||||
"\n"
|
||||
".. method:: __init__(iSVertex)\n"
|
||||
"\n"
|
||||
" Builds a NonTVertex from a SVertex.\n"
|
||||
"\n"
|
||||
" :arg iSVertex: An SVertex object.\n"
|
||||
" :type iSVertex: :class:`SVertex`\n";
|
||||
|
||||
static int NonTVertex___init__(BPy_NonTVertex *self, PyObject *args, PyObject *kwds)
|
||||
{
|
||||
|
||||
PyObject *obj = 0;
|
||||
@@ -94,7 +59,15 @@ int NonTVertex___init__(BPy_NonTVertex *self, PyObject *args, PyObject *kwds)
|
||||
return 0;
|
||||
}
|
||||
|
||||
PyObject * NonTVertex_svertex( BPy_NonTVertex *self ) {
|
||||
static char NonTVertex_svertex___doc__[] =
|
||||
".. method:: svertex()\n"
|
||||
"\n"
|
||||
" Returns the SVertex on top of which this NonTVertex is built.\n"
|
||||
"\n"
|
||||
" :return: The SVertex on top of which this NonTVertex is built.\n"
|
||||
" :rtype: :class:`SVertex`\n";
|
||||
|
||||
static PyObject * NonTVertex_svertex( BPy_NonTVertex *self ) {
|
||||
SVertex *v = self->ntv->svertex();
|
||||
if( v ){
|
||||
return BPy_SVertex_from_SVertex( *v );
|
||||
@@ -103,7 +76,15 @@ PyObject * NonTVertex_svertex( BPy_NonTVertex *self ) {
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
PyObject * NonTVertex_setSVertex( BPy_NonTVertex *self, PyObject *args) {
|
||||
static char NonTVertex_setSVertex___doc__[] =
|
||||
".. method:: setSVertex(iSVertex)\n"
|
||||
"\n"
|
||||
" Sets the SVertex on top of which this NonTVertex is built.\n"
|
||||
"\n"
|
||||
" :arg iSVertex: The SVertex on top of which this NonTVertex is built.\n"
|
||||
" :type iSVertex: :class:`SVertex`\n";
|
||||
|
||||
static PyObject * NonTVertex_setSVertex( BPy_NonTVertex *self, PyObject *args) {
|
||||
PyObject *py_sv;
|
||||
|
||||
if(!( PyArg_ParseTuple(args, "O!", &SVertex_Type, &py_sv) ))
|
||||
@@ -114,6 +95,55 @@ PyObject * NonTVertex_setSVertex( BPy_NonTVertex *self, PyObject *args) {
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
/*----------------------NonTVertex instance definitions ----------------------------*/
|
||||
static PyMethodDef BPy_NonTVertex_methods[] = {
|
||||
// {"__copy__", ( PyCFunction ) NonTVertex___copy__, METH_NOARGS, "() Cloning method."},
|
||||
{"svertex", ( PyCFunction ) NonTVertex_svertex, METH_NOARGS, NonTVertex_svertex___doc__},
|
||||
{"setSVertex", ( PyCFunction ) NonTVertex_setSVertex, METH_VARARGS, NonTVertex_setSVertex___doc__},
|
||||
{NULL, NULL, 0, NULL}
|
||||
};
|
||||
|
||||
/*-----------------------BPy_NonTVertex type definition ------------------------------*/
|
||||
PyTypeObject NonTVertex_Type = {
|
||||
PyVarObject_HEAD_INIT(NULL, 0)
|
||||
"NonTVertex", /* tp_name */
|
||||
sizeof(BPy_NonTVertex), /* tp_basicsize */
|
||||
0, /* tp_itemsize */
|
||||
0, /* tp_dealloc */
|
||||
0, /* tp_print */
|
||||
0, /* tp_getattr */
|
||||
0, /* tp_setattr */
|
||||
0, /* tp_reserved */
|
||||
0, /* tp_repr */
|
||||
0, /* tp_as_number */
|
||||
0, /* tp_as_sequence */
|
||||
0, /* tp_as_mapping */
|
||||
0, /* tp_hash */
|
||||
0, /* tp_call */
|
||||
0, /* tp_str */
|
||||
0, /* tp_getattro */
|
||||
0, /* tp_setattro */
|
||||
0, /* tp_as_buffer */
|
||||
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */
|
||||
NonTVertex___doc__, /* tp_doc */
|
||||
0, /* tp_traverse */
|
||||
0, /* tp_clear */
|
||||
0, /* tp_richcompare */
|
||||
0, /* tp_weaklistoffset */
|
||||
0, /* tp_iter */
|
||||
0, /* tp_iternext */
|
||||
BPy_NonTVertex_methods, /* tp_methods */
|
||||
0, /* tp_members */
|
||||
0, /* tp_getset */
|
||||
&ViewVertex_Type, /* tp_base */
|
||||
0, /* tp_dict */
|
||||
0, /* tp_descr_get */
|
||||
0, /* tp_descr_set */
|
||||
0, /* tp_dictoffset */
|
||||
(initproc)NonTVertex___init__, /* tp_init */
|
||||
0, /* tp_alloc */
|
||||
0, /* tp_new */
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
Reference in New Issue
Block a user