[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [13446] trunk/blender/source/blender: === Mirror Tool ===
Martin Poirier
theeth at yahoo.com
Tue Jan 29 03:38:33 CET 2008
Revision: 13446
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=13446
Author: theeth
Date: 2008-01-29 03:38:26 +0100 (Tue, 29 Jan 2008)
Log Message:
-----------
=== Mirror Tool ===
Fix calls to new mirror in UV window (it would segfault with invalid arguments).
Reported by Matt in the tracker (#8176)
Modified Paths:
--------------
trunk/blender/source/blender/include/BIF_editsima.h
trunk/blender/source/blender/src/editsima.c
trunk/blender/source/blender/src/header_image.c
Modified: trunk/blender/source/blender/include/BIF_editsima.h
===================================================================
--- trunk/blender/source/blender/include/BIF_editsima.h 2008-01-29 02:24:37 UTC (rev 13445)
+++ trunk/blender/source/blender/include/BIF_editsima.h 2008-01-29 02:38:26 UTC (rev 13446)
@@ -65,7 +65,6 @@
void select_invert_tface_uv(void);
void select_swap_tface_uv(void);
void mirrormenu_tface_uv(void);
-void mirror_tface_uv(char mirroraxis);
void hide_tface_uv(int swap);
void reveal_tface_uv(void);
void stitch_limit_uv_tface(void);
Modified: trunk/blender/source/blender/src/editsima.c
===================================================================
--- trunk/blender/source/blender/src/editsima.c 2008-01-29 02:24:37 UTC (rev 13445)
+++ trunk/blender/source/blender/src/editsima.c 2008-01-29 02:38:26 UTC (rev 13446)
@@ -240,17 +240,12 @@
}
}
-void mirror_tface_uv(char mirroraxis)
-{
- if (mirroraxis == 'x')
- Mirror(1); /* global x */
- else if (mirroraxis == 'y')
- Mirror(2); /* global y */
-}
-
void mirrormenu_tface_uv(void)
{
+ float mat[3][3];
short mode= 0;
+
+ Mat3One(mat);
if( is_uv_tface_editing_allowed()==0 ) return;
@@ -258,8 +253,16 @@
if(mode==-1) return;
- if(mode==1) mirror_tface_uv('x');
- else if(mode==2) mirror_tface_uv('y');
+ if (mode == 1) {
+ initTransform(TFM_MIRROR, CTX_NO_PET|CTX_AUTOCONFIRM);
+ BIF_setSingleAxisConstraint(mat[0], " on X axis");
+ Transform();
+ }
+ else {
+ initTransform(TFM_MIRROR, CTX_NO_PET|CTX_AUTOCONFIRM);
+ BIF_setSingleAxisConstraint(mat[1], " on Y axis");
+ Transform();
+ }
BIF_undo_push("Mirror UV");
}
Modified: trunk/blender/source/blender/src/header_image.c
===================================================================
--- trunk/blender/source/blender/src/header_image.c 2008-01-29 02:24:37 UTC (rev 13445)
+++ trunk/blender/source/blender/src/header_image.c 2008-01-29 02:38:26 UTC (rev 13446)
@@ -52,6 +52,7 @@
#include "DNA_userdef_types.h"
#include "DNA_customdata_types.h" /* for UV layer menu */
+#include "BLI_arithb.h"
#include "BLI_blenlib.h"
#include "BDR_drawmesh.h"
@@ -870,12 +871,20 @@
static void do_image_uvs_mirrormenu(void *arg, int event)
{
+ float mat[3][3];
+
+ Mat3One(mat);
+
switch(event) {
case 0: /* X axis */
- mirror_tface_uv('x');
+ initTransform(TFM_MIRROR, CTX_NO_PET|CTX_AUTOCONFIRM);
+ BIF_setSingleAxisConstraint(mat[0], " on global X axis");
+ Transform();
break;
case 1: /* Y axis */
- mirror_tface_uv('y');
+ initTransform(TFM_MIRROR, CTX_NO_PET|CTX_AUTOCONFIRM);
+ BIF_setSingleAxisConstraint(mat[1], " on global Y axis");
+ Transform();
break;
}
More information about the Bf-blender-cvs
mailing list