Revision: 15749
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=15749
Author:   mxcurioni
Date:     2008-07-25 03:38:19 +0200 (Fri, 25 Jul 2008)

Log Message:
-----------
soc-2008-mxcurioni: fully implemented (but did not test) ViewEdge class. 
Modified functions accross API taking input boolean values.

Modified Paths:
--------------
    
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/python/BPy_Convert.cpp
    
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/python/BPy_Convert.h
    
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/python/BPy_StrokeAttribute.cpp
    
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/python/Interface1D/BPy_FEdge.cpp
    
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/python/Interface1D/BPy_ViewEdge.cpp

Modified: 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/python/BPy_Convert.cpp
===================================================================
--- 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/python/BPy_Convert.cpp
  2008-07-25 01:17:37 UTC (rev 15748)
+++ 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/python/BPy_Convert.cpp
  2008-07-25 01:38:19 UTC (rev 15749)
@@ -12,10 +12,11 @@
 #include "Iterator/BPy_Interface0DIterator.h"
 #include "Iterator/BPy_orientedViewEdgeIterator.h"
 #include "Iterator/BPy_StrokeVertexIterator.h"
-#include "BPy_SShape.h"
 #include "BPy_Nature.h"
 #include "BPy_MediumType.h"
+#include "BPy_SShape.h"
 #include "BPy_StrokeAttribute.h"
+#include "BPy_ViewShape.h"
 
 #ifdef __cplusplus
 extern "C" {
@@ -152,6 +153,13 @@
        return py_ss;   
 }
 
+PyObject * BPy_ViewShape_from_ViewShape( ViewShape& vs ) {
+       PyObject *py_vs = ViewShape_Type.tp_new( &ViewShape_Type, 0, 0 );
+       ((BPy_ViewShape *) py_vs)->vs = new ViewShape( vs );
+
+       return py_vs;
+}
+
 PyObject * BPy_orientedViewEdgeIterator_from_orientedViewEdgeIterator( 
ViewVertexInternal::orientedViewEdgeIterator& ove_it ) {
        PyObject *py_ove_it = orientedViewEdgeIterator_Type.tp_new( 
&orientedViewEdgeIterator_Type, 0, 0 );
        ((BPy_orientedViewEdgeIterator *) py_ove_it)->ove_it = new 
ViewVertexInternal::orientedViewEdgeIterator( ove_it );
@@ -173,6 +181,8 @@
        return py_sv_it;
 }
 
+
+
 
///////////////////////////////////////////////////////////////////////////////////////////
 
 #ifdef __cplusplus

Modified: 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/python/BPy_Convert.h
===================================================================
--- 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/python/BPy_Convert.h
    2008-07-25 01:17:37 UTC (rev 15748)
+++ 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/python/BPy_Convert.h
    2008-07-25 01:38:19 UTC (rev 15749)
@@ -65,6 +65,7 @@
 PyObject * BPy_SVertex_from_SVertex( SVertex& sv );
 PyObject * BPy_ViewVertex_from_ViewVertex_ptr( ViewVertex *vv );
 PyObject * BPy_ViewEdge_from_ViewEdge( ViewEdge& ve );
+PyObject * BPy_ViewShape_from_ViewShape( ViewShape& vs );
 
 PyObject * BPy_Interface0DIterator_from_Interface0DIterator( 
Interface0DIterator& if0D_it );
 PyObject * BPy_orientedViewEdgeIterator_from_orientedViewEdgeIterator( 
ViewVertexInternal::orientedViewEdgeIterator& ove_it );

Modified: 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/python/BPy_StrokeAttribute.cpp
===================================================================
--- 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/python/BPy_StrokeAttribute.cpp
  2008-07-25 01:17:37 UTC (rev 15748)
+++ 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/python/BPy_StrokeAttribute.cpp
  2008-07-25 01:38:19 UTC (rev 15749)
@@ -395,17 +395,19 @@
 }
 
 PyObject * StrokeAttribute_setVisible( BPy_StrokeAttribute *self, PyObject 
*args ) {
-       int i = 0;
+       PyObject *py_b;
 
-       if(!( PyArg_ParseTuple(args, "i", &i) )) {
+       if(!( PyArg_ParseTuple(args, "O", &py_b) && PyBool_Check(py_b) )) {
                cout << "ERROR: StrokeAttribute_setVisible" << endl;
                Py_RETURN_NONE;
        }
 
-       self->sa->setVisible( i );
+       self->sa->setVisible( bool_from_PyBool(py_b) );
+
        Py_RETURN_NONE;
 }
 
+
 PyObject * StrokeAttribute_setAttributeReal( BPy_StrokeAttribute *self, 
PyObject *args ) {
        char *s = 0;
        double d = 0;

Modified: 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/python/Interface1D/BPy_FEdge.cpp
===================================================================
--- 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/python/Interface1D/BPy_FEdge.cpp
        2008-07-25 01:17:37 UTC (rev 15748)
+++ 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/python/Interface1D/BPy_FEdge.cpp
        2008-07-25 01:38:19 UTC (rev 15749)
@@ -337,14 +337,14 @@
 
 
 PyObject *FEdge_setSmooth( BPy_FEdge *self , PyObject *args) {
-       int b;
+       PyObject *py_b;
 
-       if(!( PyArg_ParseTuple(args, "i", &b) )) {
+       if(!( PyArg_ParseTuple(args, "O", &py_b) && PyBool_Check(py_b) )) {
                cout << "ERROR: FEdge_setSmooth" << endl;
                Py_RETURN_NONE;
        }
 
-       self->fe->setSmooth( (bool) b );
+       self->fe->setSmooth( bool_from_PyBool(py_b) );
 
        Py_RETURN_NONE;
 }

Modified: 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/python/Interface1D/BPy_ViewEdge.cpp
===================================================================
--- 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/python/Interface1D/BPy_ViewEdge.cpp
     2008-07-25 01:17:37 UTC (rev 15748)
+++ 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/python/Interface1D/BPy_ViewEdge.cpp
     2008-07-25 01:38:19 UTC (rev 15749)
@@ -1,6 +1,12 @@
 #include "BPy_ViewEdge.h"
 
 #include "../BPy_Convert.h"
+#include "../BPy_Id.h"
+#include "../Interface0D/BPy_ViewVertex.h"
+#include "../Interface1D/BPy_FEdge.h"
+#include "../Interface1D/BPy_ViewEdge.h"
+#include "../BPy_Nature.h"
+#include "../BPy_ViewShape.h"
 
 #ifdef __cplusplus
 extern "C" {
@@ -13,13 +19,54 @@
 
 static PyObject * ViewEdge_A( BPy_ViewEdge *self );
 static PyObject * ViewEdge_B( BPy_ViewEdge *self );
+static PyObject * ViewEdge_fedgeA( BPy_ViewEdge *self ) ;
+static PyObject * ViewEdge_fedgeB( BPy_ViewEdge *self ) ;
+static PyObject * ViewEdge_viewShape( BPy_ViewEdge *self ) ;
+static PyObject * ViewEdge_aShape( BPy_ViewEdge *self ) ;
+static PyObject * ViewEdge_isClosed( BPy_ViewEdge *self );
+static PyObject * ViewEdge_getChainingTimeStamp( BPy_ViewEdge *self );
+static PyObject * ViewEdge_setChainingTimeStamp( BPy_ViewEdge *self, PyObject 
*args) ;
+static PyObject * ViewEdge_setA( BPy_ViewEdge *self , PyObject *args) ;
+static PyObject * ViewEdge_setB( BPy_ViewEdge *self , PyObject *args);
+static PyObject * ViewEdge_setNature( BPy_ViewEdge *self, PyObject *args );
+static PyObject * ViewEdge_setFEdgeA( BPy_ViewEdge *self, PyObject *args ) ;
+static PyObject * ViewEdge_setFEdgeB( BPy_ViewEdge *self, PyObject *args ) ;
+static PyObject * ViewEdge_setShape( BPy_ViewEdge *self, PyObject *args ) ;
+static PyObject * ViewEdge_setId( BPy_ViewEdge *self, PyObject *args ) ;
+static PyObject * ViewEdge_UpdateFEdges( BPy_ViewEdge *self );
+static PyObject * ViewEdge_setaShape( BPy_ViewEdge *self, PyObject *args );
+static PyObject * ViewEdge_setQI( BPy_ViewEdge *self, PyObject *args );
+static PyObject * ViewEdge_verticesBegin( BPy_ViewEdge *self );
+static PyObject * ViewEdge_verticesEnd( BPy_ViewEdge *self );
+static PyObject * ViewEdge_pointsBegin( BPy_ViewEdge *self, PyObject *args );
+static PyObject * ViewEdge_pointsEnd( BPy_ViewEdge *self, PyObject *args );
 
 
 /*----------------------ViewEdge instance definitions 
----------------------------*/
 static PyMethodDef BPy_ViewEdge_methods[] = {  
-
        {"A", ( PyCFunction ) ViewEdge_A, METH_NOARGS, "() Returns the first 
ViewVertex."},
        {"B", ( PyCFunction ) ViewEdge_B, METH_NOARGS, "() Returns the second 
ViewVertex."},
+       {"fedgeA", ( PyCFunction ) ViewEdge_fedgeA, METH_NOARGS, "() Returns 
the first FEdge that constitues this ViewEdge."},
+       {"fedgeB", ( PyCFunction ) ViewEdge_fedgeB, METH_NOARGS, "() Returns 
the last FEdge that constitues this ViewEdge."},
+       {"viewShape", ( PyCFunction ) ViewEdge_viewShape, METH_NOARGS, "() 
Returns the ViewShape to which this ViewEdge belongs to . "},
+       {"aShape", ( PyCFunction ) ViewEdge_aShape, METH_NOARGS, "() Returns 
the shape that is occluded by the ViewShape to which this ViewEdge belongs to. 
If no object is occluded, 0 is returned."},
+       {"isClosed", ( PyCFunction ) ViewEdge_isClosed, METH_NOARGS, "() Tells 
whether this ViewEdge forms a closed loop or not."},
+       {"getChainingTimeStamp", ( PyCFunction ) ViewEdge_getChainingTimeStamp, 
METH_NOARGS, "() Returns the time stamp of this ViewEdge."},
+       {"setChainingTimeStamp", ( PyCFunction ) ViewEdge_setChainingTimeStamp, 
METH_VARARGS, "(int ts) Sets the time stamp value."},
+       {"setA", ( PyCFunction ) ViewEdge_setA, METH_VARARGS, "(ViewVertex sv) 
Sets the first ViewVertex of the ViewEdge."},
+       {"setB", ( PyCFunction ) ViewEdge_setB, METH_VARARGS, "(ViewVertex sv) 
Sets the last ViewVertex of the ViewEdge."},
+       {"setNature", ( PyCFunction ) ViewEdge_setNature, METH_VARARGS, 
"(Nature n) Sets the nature of the ViewEdge."},
+       {"setFEdgeA", ( PyCFunction ) ViewEdge_setFEdgeA, METH_VARARGS, "(FEdge 
fe) Sets the first FEdge of the ViewEdge."},
+       {"setFEdgeB", ( PyCFunction ) ViewEdge_setFEdgeB, METH_VARARGS, "(FEdge 
fe) Sets the last FEdge of the ViewEdge."},
+       {"setShape", ( PyCFunction ) ViewEdge_setShape, METH_VARARGS, 
"(ViewShape vs) Sets the ViewShape to which this ViewEdge belongs to."},
+       {"setId", ( PyCFunction ) ViewEdge_setId, METH_VARARGS, "(Id id) Sets 
the ViewEdge id."},
+       {"UpdateFEdges", ( PyCFunction ) ViewEdge_UpdateFEdges, METH_NOARGS, 
"() Sets ViewEdge to this for all embedded fedges"},
+       {"setaShape", ( PyCFunction ) ViewEdge_setaShape, METH_VARARGS, 
"(ViewShape vs) Sets the occluded ViewShape"},
+       {"setQI", ( PyCFunction ) ViewEdge_setQI, METH_VARARGS, "(int qi) Sets 
the quantitative invisibility value."},
+       {"verticesBegin", ( PyCFunction ) ViewEdge_verticesBegin, METH_NOARGS, 
"() Returns an Interface0DIterator to iterate over the SVertex constituing the 
embedding of this ViewEdge. The returned Interface0DIterator points to the 
first SVertex of the ViewEdge."},
+       {"verticesEnd", ( PyCFunction ) ViewEdge_verticesEnd, METH_NOARGS, "() 
Returns an Interface0DIterator to iterate over the SVertex constituing the 
embedding of this ViewEdge. The returned Interface0DIterator points after the 
last SVertex of the ViewEdge."},
+       {"pointsBegin", ( PyCFunction ) ViewEdge_pointsBegin, METH_VARARGS, 
"(float t=0) Returns an Interface0DIterator to iterate over the points of this 
ViewEdge at a given resolution t. The returned Interface0DIterator points on 
the first Point of the ViewEdge."},
+       {"pointsEnd", ( PyCFunction ) ViewEdge_pointsEnd, METH_VARARGS, "(float 
t=0) Returns an Interface0DIterator to iterate over the points of this ViewEdge 
at a given resolution t. The returned Interface0DIterator points after the last 
Point of the ViewEdge."},
        {NULL, NULL, 0, NULL}
 };
 
@@ -120,196 +167,235 @@
 
 
 PyObject * ViewEdge_A( BPy_ViewEdge *self ) {  
-       // if( self->ve->A() ){
-       //      return BPy_ViewVertex_from_ViewVertex_ptr( self->ve->A() );
-       // }
-       //      
+       if( self->ve->A() ){
+               return BPy_ViewVertex_from_ViewVertex_ptr( self->ve->A() );
+       }
+               

@@ Diff output truncated at 10240 characters. @@

_______________________________________________
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to