svn merge -r39057:39286 https://svn.blender.org/svnroot/bf-blender/trunk/blender
This commit is contained in:
@@ -42,7 +42,6 @@ set(SRC
|
||||
transform_generics.c
|
||||
transform_input.c
|
||||
transform_manipulator.c
|
||||
transform_ndofinput.c
|
||||
transform_ops.c
|
||||
transform_orientations.c
|
||||
transform_snap.c
|
||||
|
||||
@@ -1010,11 +1010,6 @@ int transformEvent(TransInfo *t, wmEvent *event)
|
||||
else view_editmove(event->type);
|
||||
t->redraw= 1;
|
||||
break;
|
||||
#if 0
|
||||
case NDOF_MOTION:
|
||||
// should have been caught by tranform_modal
|
||||
return OPERATOR_PASS_THROUGH;
|
||||
#endif
|
||||
default:
|
||||
handled = 0;
|
||||
break;
|
||||
|
||||
@@ -70,14 +70,6 @@ struct ARegion;
|
||||
struct ReportList;
|
||||
struct SmallHash;
|
||||
|
||||
typedef struct NDofInput {
|
||||
int flag;
|
||||
int axis;
|
||||
float fval[7];
|
||||
float factor[3];
|
||||
} NDofInput;
|
||||
|
||||
|
||||
/*
|
||||
The ctrl value has different meaning:
|
||||
0 : No value has been typed
|
||||
@@ -285,7 +277,6 @@ typedef struct TransInfo {
|
||||
TransCon con; /* transformed constraint */
|
||||
TransSnap tsnap;
|
||||
NumInput num; /* numerical input */
|
||||
NDofInput ndof; /* ndof input */
|
||||
MouseInput mouse; /* mouse input */
|
||||
char redraw; /* redraw flag */
|
||||
float prop_size; /* proportional circle radius */
|
||||
@@ -352,9 +343,6 @@ typedef struct TransInfo {
|
||||
|
||||
/* ******************** Macros & Prototypes *********************** */
|
||||
|
||||
/* NDOFINPUT FLAGS */
|
||||
#define NDOF_INIT 1
|
||||
|
||||
/* transinfo->state */
|
||||
#define TRANS_STARTING 0
|
||||
#define TRANS_RUNNING 1
|
||||
@@ -695,20 +683,6 @@ void calculatePropRatio(TransInfo *t);
|
||||
|
||||
void getViewVector(TransInfo *t, float coord[3], float vec[3]);
|
||||
|
||||
/*********************** NDofInput ********************************/
|
||||
|
||||
void initNDofInput(NDofInput *n);
|
||||
int hasNDofInput(NDofInput *n);
|
||||
void applyNDofInput(NDofInput *n, float *vec);
|
||||
int handleNDofInput(NDofInput *n, struct wmEvent *event);
|
||||
|
||||
/* handleNDofInput return values */
|
||||
#define NDOF_REFRESH 1
|
||||
#define NDOF_NOMOVE 2
|
||||
#define NDOF_CONFIRM 3
|
||||
#define NDOF_CANCEL 4
|
||||
|
||||
|
||||
/*********************** Transform Orientations ******************************/
|
||||
|
||||
void initTransformOrientation(struct bContext *C, TransInfo *t);
|
||||
|
||||
@@ -1167,7 +1167,6 @@ int initTransInfo (bContext *C, TransInfo *t, wmOperator *op, wmEvent *event)
|
||||
|
||||
setTransformViewMatrices(t);
|
||||
initNumInput(&t->num);
|
||||
initNDofInput(&t->ndof);
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -1,162 +0,0 @@
|
||||
/*
|
||||
* $Id$
|
||||
*
|
||||
* ***** BEGIN GPL LICENSE BLOCK *****
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version 2
|
||||
* of the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*
|
||||
* The Original Code is: all of this file.
|
||||
*
|
||||
* Contributor(s): Martin Poirier
|
||||
*
|
||||
* ***** END GPL LICENSE BLOCK *****
|
||||
*/
|
||||
|
||||
/** \file blender/editors/transform/transform_ndofinput.c
|
||||
* \ingroup edtransform
|
||||
*/
|
||||
|
||||
|
||||
#include <math.h> /* fabs */
|
||||
#include <stdio.h> /* for sprintf */
|
||||
|
||||
#include "BLI_utildefines.h"
|
||||
|
||||
#include "BKE_global.h" /* for G */
|
||||
/* ABS */
|
||||
|
||||
#include "WM_types.h"
|
||||
|
||||
#include "transform.h"
|
||||
|
||||
#if 0
|
||||
static int updateNDofMotion(NDofInput *n); // return 0 when motion is null
|
||||
#endif
|
||||
static void resetNDofInput(NDofInput *n);
|
||||
|
||||
void initNDofInput(NDofInput *n)
|
||||
{
|
||||
int i;
|
||||
|
||||
n->flag = 0;
|
||||
n->axis = 0;
|
||||
|
||||
resetNDofInput(n);
|
||||
|
||||
for(i = 0; i < 3; i++)
|
||||
{
|
||||
n->factor[i] = 1.0f;
|
||||
}
|
||||
}
|
||||
|
||||
static void resetNDofInput(NDofInput *n)
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < 6; i++)
|
||||
{
|
||||
n->fval[i] = 0.0f;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
int handleNDofInput(NDofInput *UNUSED(n), wmEvent *UNUSED(event))
|
||||
{
|
||||
int retval = 0;
|
||||
// TRANSFORM_FIX_ME
|
||||
#if 0
|
||||
switch(event)
|
||||
{
|
||||
case NDOFMOTION:
|
||||
if (updateNDofMotion(n) == 0)
|
||||
{
|
||||
retval = NDOF_NOMOVE;
|
||||
}
|
||||
else
|
||||
{
|
||||
retval = NDOF_REFRESH;
|
||||
}
|
||||
break;
|
||||
case NDOFBUTTON:
|
||||
if (val == 1)
|
||||
{
|
||||
retval = NDOF_CONFIRM;
|
||||
}
|
||||
else if (val == 2)
|
||||
{
|
||||
retval = NDOF_CANCEL;
|
||||
resetNDofInput(n);
|
||||
n->flag &= ~NDOF_INIT;
|
||||
}
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
return retval;
|
||||
}
|
||||
|
||||
int hasNDofInput(NDofInput *n)
|
||||
{
|
||||
return (n->flag & NDOF_INIT) == NDOF_INIT;
|
||||
}
|
||||
|
||||
void applyNDofInput(NDofInput *n, float *vec)
|
||||
{
|
||||
if (hasNDofInput(n))
|
||||
{
|
||||
int i, j;
|
||||
|
||||
for (i = 0, j = 0; i < 6; i++)
|
||||
{
|
||||
if (n->axis & (1 << i))
|
||||
{
|
||||
vec[j] = n->fval[i] * n->factor[j];
|
||||
j++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// TRANSFORM_FIX_ME
|
||||
#if 0
|
||||
|
||||
static int updateNDofMotion(NDofInput *n)
|
||||
{
|
||||
float fval[7];
|
||||
int i;
|
||||
int retval = 0;
|
||||
|
||||
getndof(fval);
|
||||
|
||||
if (G.vd->ndoffilter)
|
||||
filterNDOFvalues(fval);
|
||||
|
||||
for(i = 0; i < 6; i++)
|
||||
{
|
||||
if (!retval && fval[i] != 0.0f)
|
||||
{
|
||||
retval = 1;
|
||||
}
|
||||
|
||||
n->fval[i] += fval[i] / 1024.0f;
|
||||
}
|
||||
|
||||
n->flag |= NDOF_INIT;
|
||||
|
||||
return retval;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -360,17 +360,14 @@ static int transform_modal(bContext *C, wmOperator *op, wmEvent *event)
|
||||
|
||||
TransInfo *t = op->customdata;
|
||||
|
||||
#if 0
|
||||
#if 0
|
||||
// stable 2D mouse coords map to different 3D coords while the 3D mouse is active
|
||||
// in other words, 2D deltas are no longer good enough!
|
||||
// disable until individual 'transformers' behave better
|
||||
|
||||
if (event->type == NDOF_MOTION)
|
||||
{
|
||||
/* puts("transform_modal: passing through NDOF_MOTION"); */
|
||||
return OPERATOR_PASS_THROUGH;
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* XXX insert keys are called here, and require context */
|
||||
t->context= C;
|
||||
|
||||
Reference in New Issue
Block a user