[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [19478] trunk/blender/source/blender: [ #18439] Controlling the bevel shape for a text object with a curve no longer works .

Campbell Barton ideasman42 at gmail.com
Tue Mar 31 08:22:25 CEST 2009


Revision: 19478
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=19478
Author:   campbellbarton
Date:     2009-03-31 08:22:25 +0200 (Tue, 31 Mar 2009)

Log Message:
-----------
[#18439] Controlling the bevel shape for a text object with a curve no longer works.
own fault, broke rev16702.
Curves created by fonts didnt have their radius set. Forgot do do this when making radius calculated with the curve (like tilt)

Revision Links:
--------------
    http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=16702

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/BKE_curve.h
    trunk/blender/source/blender/blenkernel/intern/curve.c
    trunk/blender/source/blender/blenlib/intern/freetypefont.c
    trunk/blender/source/blender/blenlib/intern/psfont.c

Modified: trunk/blender/source/blender/blenkernel/BKE_curve.h
===================================================================
--- trunk/blender/source/blender/blenkernel/BKE_curve.h	2009-03-31 00:58:02 UTC (rev 19477)
+++ trunk/blender/source/blender/blenkernel/BKE_curve.h	2009-03-31 06:22:25 UTC (rev 19478)
@@ -46,6 +46,10 @@
 #define SEGMENTSU(nu)	    ( ((nu)->flagu & CU_CYCLIC) ? (nu)->pntsu : (nu)->pntsu-1 )
 #define SEGMENTSV(nu)	    ( ((nu)->flagv & CU_CYCLIC) ? (nu)->pntsv : (nu)->pntsv-1 )
 
+#define CU_DO_TILT(cu, nu) (((nu->type & CU_2D) && (cu->flag & CU_3D)==0) ? 0 : 1)
+#define CU_DO_RADIUS(cu, nu) ((CU_DO_TILT(cu, nu) || cu->bevobj) ? 1:0)
+
+
 void unlink_curve( struct Curve *cu);
 void free_curve( struct Curve *cu);
 struct Curve *add_curve(char *name, int type);

Modified: trunk/blender/source/blender/blenkernel/intern/curve.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/curve.c	2009-03-31 00:58:02 UTC (rev 19477)
+++ trunk/blender/source/blender/blenkernel/intern/curve.c	2009-03-31 06:22:25 UTC (rev 19478)
@@ -1535,8 +1535,8 @@
 	while(nu) {
 		
 		/* check if we will calculate tilt data */
-		do_tilt = ((nu->type & CU_2D) && (cu->flag & CU_3D)==0) ? 0 : 1;
-		do_radius = (do_tilt || cu->bevobj) ? 1 : 0; /* normal display uses the radius, better just to calculate them */
+		do_tilt = CU_DO_TILT(cu, nu);
+		do_radius = CU_DO_RADIUS(cu, nu); /* normal display uses the radius, better just to calculate them */
 		
 		/* check we are a single point? also check we are not a surface and that the orderu is sane,
 		 * enforced in the UI but can go wrong possibly */

Modified: trunk/blender/source/blender/blenlib/intern/freetypefont.c
===================================================================
--- trunk/blender/source/blender/blenlib/intern/freetypefont.c	2009-03-31 00:58:02 UTC (rev 19477)
+++ trunk/blender/source/blender/blenlib/intern/freetypefont.c	2009-03-31 06:22:25 UTC (rev 19478)
@@ -178,6 +178,7 @@
 						bezt->vec[2][1] = (dy +	(2 * ftoutline.points[l+1].y)* scale) / 3.0;
 
 						bezt->h1= bezt->h2= HD_ALIGN;
+						bezt->radius= 1.0f;
 						bezt++;
 					}
 				}
@@ -264,6 +265,7 @@
 					{
 						bezt->h1= bezt->h2= HD_ALIGN;
 					}
+					bezt->radius= 1.0f;
 					bezt++;
 				}
 			}

Modified: trunk/blender/source/blender/blenlib/intern/psfont.c
===================================================================
--- trunk/blender/source/blender/blenlib/intern/psfont.c	2009-03-31 00:58:02 UTC (rev 19477)
+++ trunk/blender/source/blender/blenlib/intern/psfont.c	2009-03-31 06:22:25 UTC (rev 19478)
@@ -2094,6 +2094,7 @@
 						while(a--) {
 							if(bezt->h1!=HD_ALIGN && bezt->h2==HD_ALIGN) bezt->h2= 0;
 							else if(bezt->h2!=HD_ALIGN && bezt->h1==HD_ALIGN) bezt->h1= 0;
+							bezt->radius= 1.0f;
 							bezt++;
 						}
 						





More information about the Bf-blender-cvs mailing list