[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [15355] branches/apricot: svn merge -r15339:HEAD https://svn.blender.org/svnroot/bf-blender/trunk/ blender/

Campbell Barton ideasman42 at gmail.com
Wed Jun 25 18:25:18 CEST 2008


Revision: 15355
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=15355
Author:   campbellbarton
Date:     2008-06-25 18:25:01 +0200 (Wed, 25 Jun 2008)

Log Message:
-----------
svn merge -r15339:HEAD https://svn.blender.org/svnroot/bf-blender/trunk/blender/

Modified Paths:
--------------
    branches/apricot/projectfiles_vc7/gameengine/ketsji/KX_ketsji.vcproj
    branches/apricot/source/blender/blenkernel/BKE_ipo.h
    branches/apricot/source/blender/makesdna/DNA_actuator_types.h
    branches/apricot/source/blender/python/api2_2x/CurNurb.c
    branches/apricot/source/blender/python/api2_2x/doc/Curve.py
    branches/apricot/source/blender/src/buttons_editing.c
    branches/apricot/source/blender/src/buttons_logic.c
    branches/apricot/source/blender/src/editmesh_mods.c
    branches/apricot/source/blender/src/editsima.c
    branches/apricot/source/blender/src/space.c
    branches/apricot/source/gameengine/Converter/BL_BlenderDataConversion.cpp
    branches/apricot/source/gameengine/Converter/BL_ShapeDeformer.cpp
    branches/apricot/source/gameengine/Converter/BL_ShapeDeformer.h
    branches/apricot/source/gameengine/Converter/BL_SkinDeformer.cpp
    branches/apricot/source/gameengine/Converter/BL_SkinDeformer.h
    branches/apricot/source/gameengine/Converter/KX_ConvertActuators.cpp
    branches/apricot/source/gameengine/Ketsji/KX_BulletPhysicsController.cpp
    branches/apricot/source/gameengine/Ketsji/KX_BulletPhysicsController.h
    branches/apricot/source/gameengine/Ketsji/KX_GameObject.cpp
    branches/apricot/source/gameengine/Ketsji/KX_GameObject.h
    branches/apricot/source/gameengine/Ketsji/KX_IPhysicsController.h
    branches/apricot/source/gameengine/Ketsji/KX_ObjectActuator.cpp
    branches/apricot/source/gameengine/Ketsji/KX_ObjectActuator.h
    branches/apricot/source/gameengine/Ketsji/KX_Scene.cpp
    branches/apricot/source/gameengine/Ketsji/KX_SumoPhysicsController.h
    branches/apricot/source/gameengine/PyDoc/KX_GameObject.py

Added Paths:
-----------
    branches/apricot/source/gameengine/Ketsji/KX_SCA_DynamicActuator.cpp
    branches/apricot/source/gameengine/Ketsji/KX_SCA_DynamicActuator.h

Modified: branches/apricot/projectfiles_vc7/gameengine/ketsji/KX_ketsji.vcproj
===================================================================
--- branches/apricot/projectfiles_vc7/gameengine/ketsji/KX_ketsji.vcproj	2008-06-25 16:15:57 UTC (rev 15354)
+++ branches/apricot/projectfiles_vc7/gameengine/ketsji/KX_ketsji.vcproj	2008-06-25 16:25:01 UTC (rev 15355)
@@ -463,6 +463,9 @@
 					RelativePath="..\..\..\source\gameengine\Ketsji\KX_SCA_AddObjectActuator.cpp">
 				</File>
 				<File
+					RelativePath="..\..\..\source\gameengine\Ketsji\KX_SCA_DynamicActuator.cpp">
+				</File>
+				<File
 					RelativePath="..\..\..\source\gameengine\Ketsji\KX_SCA_EndObjectActuator.cpp">
 				</File>
 				<File
@@ -687,6 +690,9 @@
 					RelativePath="..\..\..\source\gameengine\Ketsji\KX_SCA_AddObjectActuator.h">
 				</File>
 				<File
+					RelativePath="..\..\..\source\gameengine\Ketsji\KX_SCA_DynamicActuator.h">
+				</File>
+				<File
 					RelativePath="..\..\..\source\gameengine\Ketsji\KX_SCA_EndObjectActuator.h">
 				</File>
 				<File

Modified: branches/apricot/source/blender/blenkernel/BKE_ipo.h
===================================================================
--- branches/apricot/source/blender/blenkernel/BKE_ipo.h	2008-06-25 16:15:57 UTC (rev 15354)
+++ branches/apricot/source/blender/blenkernel/BKE_ipo.h	2008-06-25 16:25:01 UTC (rev 15355)
@@ -31,6 +31,10 @@
 #ifndef BKE_IPO_H
 #define BKE_IPO_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 typedef struct CfraElem {
 	struct CfraElem *next, *prev;
 	float cfra;
@@ -111,5 +115,9 @@
 						short c,
 						float ctime);
 
+#ifdef __cplusplus
+};
 #endif
 
+#endif
+

Modified: branches/apricot/source/blender/makesdna/DNA_actuator_types.h
===================================================================
--- branches/apricot/source/blender/makesdna/DNA_actuator_types.h	2008-06-25 16:15:57 UTC (rev 15354)
+++ branches/apricot/source/blender/makesdna/DNA_actuator_types.h	2008-06-25 16:25:01 UTC (rev 15355)
@@ -81,7 +81,7 @@
 	char name[32];
 	float linVelocity[3]; /* initial lin. velocity on creation */
 	short localflag; /* flag for the lin. vel: apply locally   */
-	short pad;
+	short dyn_operation;
 } bEditObjectActuator;
 
 typedef struct bSceneActuator {
@@ -98,7 +98,8 @@
 } bPropertyActuator;
 
 typedef struct bObjectActuator {
-	int flag, type;
+	short flag, type;
+	int   damping;
 	float forceloc[3], forcerot[3];
 	float loc[3], rot[3];
 	float dloc[3], drot[3];
@@ -252,6 +253,7 @@
 #define ACT_ANG_VEL_LOCAL		32
 //#define ACT_ADD_LIN_VEL_LOCAL	64
 #define ACT_ADD_LIN_VEL			64
+#define ACT_CLAMP_VEL			128
 
 #define ACT_OBJECT_FORCE	0
 #define ACT_OBJECT_TORQUE	1
@@ -358,11 +360,12 @@
 /* editObjectActuator->type */
 #define ACT_EDOB_ADD_OBJECT		0
 #define ACT_EDOB_END_OBJECT		1
-#define ACT_EDOB_REPLACE_MESH	2
+#define ACT_EDOB_REPLACE_MESH		2
 #define ACT_EDOB_TRACK_TO		3
-#define ACT_EDOB_MAKE_CHILD		4
-#define ACT_EDOB_END_CHILD		5
+#define ACT_EDOB_DYNAMICS		4
 
+
+
 /* editObjectActuator->flag */
 #define ACT_TRACK_3D			1
 

Modified: branches/apricot/source/blender/python/api2_2x/CurNurb.c
===================================================================
--- branches/apricot/source/blender/python/api2_2x/CurNurb.c	2008-06-25 16:15:57 UTC (rev 15354)
+++ branches/apricot/source/blender/python/api2_2x/CurNurb.c	2008-06-25 16:25:01 UTC (rev 15355)
@@ -53,6 +53,8 @@
 static PyObject *CurNurb_getFlagV( BPy_CurNurb * self );
 static PyObject *CurNurb_oldsetFlagV( BPy_CurNurb * self, PyObject * args );
 static int CurNurb_setFlagV( BPy_CurNurb * self, PyObject * args );
+static PyObject *CurNurb_getOrderU( BPy_CurNurb * self );
+static int CurNurb_setOrderU( BPy_CurNurb * self, PyObject * args );
 static PyObject *CurNurb_getType( BPy_CurNurb * self );
 static PyObject *CurNurb_oldsetType( BPy_CurNurb * self, PyObject * args );
 static int CurNurb_setType( BPy_CurNurb * self, PyObject * args );
@@ -176,6 +178,9 @@
 	 (getter)CurNurb_getFlagV, (setter)CurNurb_setFlagV,
 	 "The knot type in the V direction",
 	 NULL},
+	{"orderU",
+	 (getter)CurNurb_getOrderU, (setter)CurNurb_setOrderU,
+	 "order setting for U direction", NULL},
 	{"type",
 	 (getter)CurNurb_getType, (setter)CurNurb_setType,
 	 "The curve type (poly: bezier, or NURBS)",
@@ -710,6 +715,35 @@
 	return 0;
 }
 
+static PyObject *CurNurb_getOrderU( BPy_CurNurb * self )
+{
+	return PyInt_FromLong( ( long ) self->nurb->orderu );
+}
+
+static int CurNurb_setOrderU( BPy_CurNurb * self, PyObject * args )
+{
+	int order;
+
+	args = PyNumber_Int( args );
+	if( !args )
+		return EXPP_ReturnIntError( PyExc_TypeError,
+			   "expected integer argument" );
+
+	order = ( int )PyInt_AS_LONG( args );
+	Py_DECREF( args );
+
+	if( order < 2 ) order = 2;
+	else if( order > 6 ) order = 6;
+
+	if( self->nurb->pntsu < order )
+		order = self->nurb->pntsu;
+
+	self->nurb->orderu = (short)order;
+	makeknots( self->nurb, 1, self->nurb->flagu >> 1 );
+
+	return 0;
+}
+
 /*
  * CurNurb_getIter
  *

Modified: branches/apricot/source/blender/python/api2_2x/doc/Curve.py
===================================================================
--- branches/apricot/source/blender/python/api2_2x/doc/Curve.py	2008-06-25 16:15:57 UTC (rev 15354)
+++ branches/apricot/source/blender/python/api2_2x/doc/Curve.py	2008-06-25 16:25:01 UTC (rev 15355)
@@ -535,6 +535,8 @@
 	@type flagU: int
 	@ivar flagV: The CurNurb knot flag V.  See L{setFlagU} for description.
 	@type flagV: int
+	@ivar orderU: The CurNurb knot order U, for nurbs curves only, this is clamped by the number of points, so the orderU will never be greater.
+	@type orderU: int
 	@ivar type: The type of the curve (Poly: 0, Bezier: 1, NURBS: 4)
 	@type type: int
 	@ivar knotsU: The knot vector in the U direction. The tuple will be empty

Modified: branches/apricot/source/blender/src/buttons_editing.c
===================================================================
--- branches/apricot/source/blender/src/buttons_editing.c	2008-06-25 16:15:57 UTC (rev 15354)
+++ branches/apricot/source/blender/src/buttons_editing.c	2008-06-25 16:25:01 UTC (rev 15355)
@@ -6221,7 +6221,7 @@
 		uiDefButBitS(block, TOG, TF_TILES, B_REDR_3D_IMA, "Tiles",	660,160,60,19, &tf->mode, 0, 0, 0, 0, "Use tilemode for face");
 		uiDefButBitS(block, TOG, TF_LIGHT, REDRAWVIEW3D, "Light",	720,160,60,19, &tf->mode, 0, 0, 0, 0, "Use light for face");
 		uiDefButBitS(block, TOG, TF_INVISIBLE, REDRAWVIEW3D, "Invisible",780,160,60,19, &tf->mode, 0, 0, 0, 0, "Make face invisible");
-		uiDefButBitS(block, TOG, TF_DYNAMIC, REDRAWVIEW3D, "Collision", 840,160,60,19, &tf->mode, 0, 0, 0, 0, "Use face for collision detection");
+		uiDefButBitS(block, TOG, TF_DYNAMIC, REDRAWVIEW3D, "Collision", 840,160,60,19, &tf->mode, 0, 0, 0, 0, "Use face for collision and ray-sensor detection");
 
 		uiBlockBeginAlign(block);
 		uiDefButBitS(block, TOG, TF_SHAREDCOL, REDRAWVIEW3D, "Shared",	600,135,60,19, &tf->mode, 0, 0, 0, 0, "Blend vertex colors across face when vertices are shared");

Modified: branches/apricot/source/blender/src/buttons_logic.c
===================================================================
--- branches/apricot/source/blender/src/buttons_logic.c	2008-06-25 16:15:57 UTC (rev 15354)
+++ branches/apricot/source/blender/src/buttons_logic.c	2008-06-25 16:25:01 UTC (rev 15355)
@@ -1602,7 +1602,7 @@
 	
 	float *fp;
 	short ysize = 0, wval;
-	char *str, name[32];
+	char *str;
 	int myline, stbit;
 
 	/* yco is at the top of the rect, draw downwards */
@@ -1613,7 +1613,7 @@
 	{
 	case ACT_OBJECT:
 		{
-			ysize= 129;
+			ysize= 152;
 			
 			glRects(xco, yco-ysize, xco+width, yco);
 			uiEmboss((float)xco, (float)yco-ysize, (float)xco+width, (float)yco, 1);
@@ -1651,14 +1651,18 @@
 			uiDefButF(block, NUM, 0, "",		xco+45+wval, yco-125, wval, 19, oa->angularvelocity+1, -10000.0, 10000.0, 10, 0, "");
 			uiDefButF(block, NUM, 0, "",		xco+45+2*wval, yco-125, wval, 19, oa->angularvelocity+2, -10000.0, 10000.0, 10, 0, "");
 			
-			uiDefButBitI(block, TOG, ACT_FORCE_LOCAL, 0, "L",		xco+45+3*wval, yco-22, 15, 19, &oa->flag, 0.0, 0.0, 0, 0, "Local transformation");
-			uiDefButBitI(block, TOG, ACT_TORQUE_LOCAL, 0, "L",		xco+45+3*wval, yco-41, 15, 19, &oa->flag, 0.0, 0.0, 0, 0, "Local transformation");
-			uiDefButBitI(block, TOG, ACT_DLOC_LOCAL, 0, "L",		xco+45+3*wval, yco-64, 15, 19, &oa->flag, 0.0, 0.0, 0, 0, "Local transformation");
-			uiDefButBitI(block, TOG, ACT_DROT_LOCAL, 0, "L",		xco+45+3*wval, yco-83, 15, 19, &oa->flag, 0.0, 0.0, 0, 0, "Local transformation");
-			uiDefButBitI(block, TOG, ACT_LIN_VEL_LOCAL, 0, "L",		xco+45+3*wval, yco-106, 15, 19, &oa->flag, 0.0, 0.0, 0, 0, "Local transformation");
-			uiDefButBitI(block, TOG, ACT_ANG_VEL_LOCAL, 0, "L",		xco+45+3*wval, yco-125, 15, 19, &oa->flag, 0.0, 0.0, 0, 0, "Local transformation");
+			uiDefBut(block, LABEL, 0, "damp",	xco, yco-148, 45, 19, NULL, 0, 0, 0, 0, "Number of frames to reach the target velocity");
+			uiDefButI(block, NUM, 0, "",		xco+45, yco-148, wval, 19, &oa->damping, 0.0, 1000.0, 100, 0, "");
+			uiDefButBitS(block, TOG, ACT_CLAMP_VEL, 0, "clamp",xco+45+wval, yco-148, wval, 19, &oa->flag, 0.0, 0.0, 0, 0, "Toggles between SET and CLAMP Velocity");
+
+			uiDefButBitS(block, TOG, ACT_FORCE_LOCAL, 0, "L",		xco+45+3*wval, yco-22, 15, 19, &oa->flag, 0.0, 0.0, 0, 0, "Local transformation");
+			uiDefButBitS(block, TOG, ACT_TORQUE_LOCAL, 0, "L",		xco+45+3*wval, yco-41, 15, 19, &oa->flag, 0.0, 0.0, 0, 0, "Local transformation");
+			uiDefButBitS(block, TOG, ACT_DLOC_LOCAL, 0, "L",		xco+45+3*wval, yco-64, 15, 19, &oa->flag, 0.0, 0.0, 0, 0, "Local transformation");
+			uiDefButBitS(block, TOG, ACT_DROT_LOCAL, 0, "L",		xco+45+3*wval, yco-83, 15, 19, &oa->flag, 0.0, 0.0, 0, 0, "Local transformation");
+			uiDefButBitS(block, TOG, ACT_LIN_VEL_LOCAL, 0, "L",		xco+45+3*wval, yco-106, 15, 19, &oa->flag, 0.0, 0.0, 0, 0, "Local transformation");
+			uiDefButBitS(block, TOG, ACT_ANG_VEL_LOCAL, 0, "L",		xco+45+3*wval, yco-125, 15, 19, &oa->flag, 0.0, 0.0, 0, 0, "Local transformation");
 			
-			uiDefButBitI(block, TOG, ACT_ADD_LIN_VEL, 0, "add",xco+45+3*wval+15, yco-106, 35, 19, &oa->flag, 0.0, 0.0, 0, 0, "Toggles between ADD and SET linV");
+			uiDefButBitS(block, TOG, ACT_ADD_LIN_VEL, 0, "add",xco+45+3*wval+15, yco-106, 35, 19, &oa->flag, 0.0, 0.0, 0, 0, "Toggles between ADD and SET linV");
 			
 			yco-= ysize;
 			break;
@@ -1936,8 +1940,15 @@

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list