2011-02-23 10:52:22 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*
  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								 *  * * * * *  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 , 
							 
						 
					
						
							
								
									
										
										
										
											2010-02-12 13:34:04 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *  Inc . ,  51  Franklin  Street ,  Fifth  Floor ,  Boston ,  MA  02110 - 1301 ,  USA . 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  The  Original  Code  is  Copyright  ( C )  2001 - 2002  by  NaN  Holding  BV . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  All  rights  reserved . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  The  Original  Code  is :  all  of  this  file . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Contributor ( s ) :  none  yet . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  * * * * *  END  GPL  LICENSE  BLOCK  * * * * * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-02-27 20:29:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/** \file blender/editors/transform/transform.h
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *   \ ingroup  edtransform 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# ifndef TRANSFORM_H 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TRANSFORM_H 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-07-08 16:17:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  "ED_transform.h" 
  
						 
					
						
							
								
									
										
										
										
											2010-02-20 20:29:09 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  "ED_numinput.h" 
  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-12-01 18:26:18 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  "DNA_listBase.h" 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-09-22 08:41:03 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  "BLI_editVert.h" 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								/* ************************** Types ***************************** */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  TransInfo ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  TransData ;  
						 
					
						
							
								
									
										
										
										
											2009-09-28 19:49:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  TransformOrientation ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								struct  TransSnap ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  NumInput ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  Object ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  View3D ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  ScrArea ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  Scene ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  bPose ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  bConstraint ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  BezTriple ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  wmOperatorType ;  
						 
					
						
							
								
									
										
										
										
											2009-01-03 22:15:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  wmOperator ;  
						 
					
						
							
								
									
										
											 
										
											
												2.5
Modal keymaps.
I've tried to make it as simple as possible, yet still using sufficient facilities to enable self-documenting UIs, saving/reading in files, and proper Python support.
The simplicity is: the 'modal keymap' just checks an event, uses event matching similarly to other keymap matching, and if there's a match it changes the event type, and sets the event value to what the modal keymap has defined. The event values are being defined using EnumPropertyItem structs, so the UI will be able to show all options in self-documenting way.
This system also allows to still handle hardcoded own events.
Tech doc:
1) define keymap
- Create map with unique name, WM_modalkeymap_add()
- Give map property definitions (EnumPropertyItem *)
  This only for UI, so user can get information on available options
2) items
- WM_modalkeymap_add_item(): give it an enum value for events
3) activate
- In keymap definition code, assign the modal keymap to operatortype
  WM_modalkeymap_assign()
4) event manager
- The event handler will check for modal keymap, if so:
  - If the modal map has a match:
    - Sets event->type to EVT_MODAL_MAP
    - Sets event->val to the enum value
5) modal handler
- If event type is EVT_MODAL_MAP:
  - Check event->val, handle it
- Other events can just be handled still
Two examples added in the code:
editors/transform/transform.c: transform_modal_keymap()
editors/screen/screen_ops.c: keymap_modal_set()
Also: to support 'key release' the define KM_RELEASE now is officially
used in event manager, this is not '0', so don't check key events with
the old convention if(event->val) but use if(event->val==KM_PRESS)
											 
										 
										
											2009-07-21 11:03:07 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  wmWindowManager ;  
						 
					
						
							
								
									
										
										
										
											2009-12-21 17:23:44 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  wmKeyMap ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  wmKeyConfig ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								struct  bContext ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  wmEvent ;  
						 
					
						
							
								
									
										
										
										
											2009-02-16 03:01:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  wmTimer ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								struct  ARegion ;  
						 
					
						
							
								
									
										
										
										
											2009-09-28 19:49:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ReportList ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									The  ctrl  value  has  different  meaning : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										0 			:  No  value  has  been  typed 
							 
						 
					
						
							
								
									
										
										
										
											2009-07-12 02:01:13 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										otherwise ,  | value |  -  1  is  where  the  cursor  is  located  after  the  period 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										Positive 	:  number  is  positive 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										Negative 	:  number  is  negative 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								*/  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-12-01 18:26:18 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								typedef  struct  TransSnapPoint  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  TransSnapPoint  * next , * prev ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float  co [ 3 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  TransSnapPoint ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								typedef  struct  TransSnap  {  
						 
					
						
							
								
									
										
										
										
											2009-11-26 19:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									short 	mode ; 
							 
						 
					
						
							
								
									
										
										
										
											2009-12-03 19:18:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									short 	target ; 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									short 	modePoint ; 
							 
						 
					
						
							
								
									
										
										
										
											2009-11-26 19:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									short 	modeSelect ; 
							 
						 
					
						
							
								
									
										
										
										
											2009-03-29 19:52:53 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									short 	align ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-17 13:02:23 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									char 	project ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-27 07:22:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									char 	snap_self ; 
							 
						 
					
						
							
								
									
										
										
										
											2009-11-26 19:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									short 	peel ; 
							 
						 
					
						
							
								
									
										
										
										
											2009-03-29 19:52:53 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									short   	status ; 
							 
						 
					
						
							
								
									
										
										
										
											2009-03-17 21:26:09 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									float 	snapPoint [ 3 ] ;  /* snapping from this point */ 
							 
						 
					
						
							
								
									
										
										
										
											2009-04-20 15:06:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									float 	snapTarget [ 3 ] ;  /* to this point */ 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									float 	snapNormal [ 3 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float 	snapTangent [ 3 ] ; 
							 
						 
					
						
							
								
									
										
										
										
											2009-12-01 18:26:18 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									ListBase  points ; 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									float 	dist ;  // Distance from snapPoint to snapTarget
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									double 	last ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									void   ( * applySnap ) ( struct  TransInfo  * ,  float  * ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									void   ( * calcSnap ) ( struct  TransInfo  * ,  float  * ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									void   ( * targetSnap ) ( struct  TransInfo  * ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float   ( * distance ) ( struct  TransInfo  * ,  float  p1 [ 3 ] ,  float  p2 [ 3 ] ) ;  // Get the transform distance between two points (used by Closest snap)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  TransSnap ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								typedef  struct  TransCon  {  
						 
					
						
							
								
									
										
										
										
											2009-12-17 17:34:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									short  orientation ; 	 /**/ 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-22 09:30:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									char   text [ 50 ] ;       /* Description of the Constraint for header_print                            */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float  mtx [ 3 ] [ 3 ] ;      /* Matrix of the Constraint space                                            */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float  imtx [ 3 ] [ 3 ] ;     /* Inverse Matrix of the Constraint space                                    */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float  pmtx [ 3 ] [ 3 ] ;     /* Projection Constraint Matrix (same as imtx with some axis == 0)           */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float  center [ 3 ] ;      /* transformation center to define where to draw the view widget
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
															ALWAYS  in  global  space .  Unlike  the  transformation  center                   */ 
							 
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int    imval [ 2 ] ; 	     /* initial mouse value for visual calculation                                */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-22 09:30:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
														 /* the one in TransInfo is not garanty to stay the same (Rotates change it)  */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									int    mode ;           /* Mode flags of the Constraint                                              */ 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									void   ( * drawExtra ) ( struct  TransInfo  * ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														 /* For constraints that needs to draw differently from the other
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
															uses  this  instead  of  the  generic  draw  function 							  */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-22 09:30:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									void   ( * applyVec ) ( struct  TransInfo  * ,  struct  TransData  * ,  float  * ,  float  * ,  float  * ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														 /* Apply function pointer for linear vectorial transformation                */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														 /* The last three parameters are pointers to the in/out/printable vectors    */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									void   ( * applySize ) ( struct  TransInfo  * ,  struct  TransData  * ,  float  [ 3 ] [ 3 ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														 /* Apply function pointer for size transformation */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									void   ( * applyRot ) ( struct  TransInfo  * ,  struct  TransData  * ,  float  [ 3 ] ,  float  * ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														 /* Apply function pointer for rotation transformation */ 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								}  TransCon ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								typedef  struct  TransDataExtension  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float  drot [ 3 ] ; 		 /* Initial object drot */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-10-19 11:15:08 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									// float drotAngle;	 /* Initial object drotAngle,    TODO: not yet implimented */
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// float drotAxis[3];	 /* Initial object drotAxis, TODO: not yet implimented */
 
							 
						 
					
						
							
								
									
										
										
										
											2009-09-28 10:19:20 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									float  dquat [ 4 ] ; 		 /* Initial object dquat */ 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									float  dsize [ 3 ] ; 		 /* Initial object dsize */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-22 09:30:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									float  * rot ;           /* Rotation of the data to transform (Faculative)                                 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float   irot [ 3 ] ;       /* Initial rotation                                                               */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float  * quat ;          /* Rotation quaternion of the data to transform (Faculative)                      */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float   iquat [ 4 ] ; 	 /* Initial rotation quaternion                                                    */ 
							 
						 
					
						
							
								
									
										
										
										
											2009-10-22 02:14:11 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									float  * rotAngle ; 	 /* Rotation angle of the data to transform (Faculative) 						 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float   irotAngle ; 	 /* Initial rotation angle 												 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float  * rotAxis ; 		 /* Rotation axis of the data to transform (Faculative) 						 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float   irotAxis [ 4 ] ; 	 /* Initial rotation axis 													 */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-22 09:30:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									float  * size ;          /* Size of the data to transform (Faculative)                                     */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float   isize [ 3 ] ; 	 /* Initial size                                                                   */ 
							 
						 
					
						
							
								
									
										
										
										
											2009-07-12 02:01:13 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									float   obmat [ 4 ] [ 4 ] ; 	 /* Object matrix */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-10-24 06:16:44 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									float   l_smtx [ 3 ] [ 3 ] ;  /* use instead of td->smtx, It is the same but without the 'bone->bone_mat', see TD_PBONE_LOCAL_MTX_C */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-11-14 19:19:58 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int     rotOrder ; 	/* rotation mode,  as defined in eRotationModes (DNA_action_types.h) */ 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								}  TransDataExtension ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								typedef  struct  TransData2D  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float  loc [ 3 ] ; 		/* Location of data used to transform (x,y,0) */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float  * loc2d ; 		/* Pointer to real 2d location of data */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-05-06 19:54:43 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-10-21 01:33:06 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									float  * h1 ,  * h2 ;      /* Pointer to handle locations, if handles aren't being moved independently */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-05-06 19:54:43 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									float  ih1 [ 2 ] ,  ih2 [ 2 ] ; 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								}  TransData2D ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/* we need to store 2 handles for each transdata incase the other handle wasnt selected */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								typedef  struct  TransDataCurveHandleFlags  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									char  ih1 ,  ih2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									char  * h1 ,  * h2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  TransDataCurveHandleFlags ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-21 07:01:20 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/* for sequencer transform */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								typedef  struct  TransDataSeq  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  Sequence  * seq ; 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-23 23:14:02 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int  flag ; 		/* a copy of seq->flag that may be modified for nested strips */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-09-04 20:55:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int  start_offset ;  /* use this so we can have transform data at the strips start, but apply correctly to the start frame  */ 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-21 07:01:20 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									short  sel_flag ;  /* one of SELECT, SEQ_LEFTSEL and SEQ_RIGHTSEL */ 
							 
						 
					
						
							
								
									
										
										
										
											2009-07-12 02:01:13 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-21 07:01:20 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  TransDataSeq ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-06-09 11:26:45 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/* for NLA transform (stored in td->extra pointer) */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								typedef  struct  TransDataNla  {  
						 
					
						
							
								
									
										
										
										
											2009-07-12 03:42:39 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									ID  * id ; 						/* ID-block NLA-data is attached to */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									
							 
						 
					
						
							
								
									
										
										
										
											2009-07-07 05:41:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									struct  NlaTrack  * oldTrack ; 	/* Original NLA-Track that the strip belongs to */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  NlaTrack  * nlt ; 		/* Current NLA-Track that the strip belongs to */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  NlaStrip  * strip ; 		/* NLA-strip this data represents */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/* dummy values for transform to write in - must have 3 elements... */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float  h1 [ 3 ] ; 				/* start handle */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float  h2 [ 3 ] ; 				/* end handle */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									int  trackIndex ; 				/* index of track that strip is currently in */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									int  handle ; 					/* handle-index: 0 for dummy entry, -1 for start, 1 for end, 2 for both ends */ 
							 
						 
					
						
							
								
									
										
										
										
											2009-06-09 11:26:45 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  TransDataNla ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-09-22 08:41:03 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  LinkNode ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  EditEdge ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  EditVert ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  GHash ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								typedef  struct  TransDataSlideUv  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float  origuv [ 2 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float  * uv_up ,  * uv_down ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									//float *fuv[4];
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  LinkNode  * fuv_list ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  TransDataSlideUv ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								typedef  struct  TransDataSlideVert  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  EditEdge  * up ,  * down ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  EditVert  origvert ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  TransDataSlideVert ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								typedef  struct  SlideData  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									TransDataSlideUv  * slideuv ,  * suv_last ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									int  totuv ,  uvlay_tot ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  GHash  * vhash ,  * * uvhash ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  EditVert  * nearest ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  LinkNode  * edgelist ,  * vertlist ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int  start [ 2 ] ,  end [ 2 ] ; 
							 
						 
					
						
							
								
									
										
										
										
											2009-09-22 08:41:03 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  SlideData ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								typedef  struct  TransData  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float   dist ;          /* Distance needed to affect element (for Proportionnal Editing)                  */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float   rdist ;         /* Distance to the nearest element (for Proportionnal Editing)                    */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float   factor ;        /* Factor of the transformation (for Proportionnal Editing)                       */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-22 09:30:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									float  * loc ;           /* Location of the data to transform                                              */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float   iloc [ 3 ] ;       /* Initial location                                                               */ 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									float  * val ;           /* Value pointer for special transforms */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float   ival ;          /* Old value*/ 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-22 09:30:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									float   center [ 3 ] ; 	 /* Individual data center                                                         */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float   mtx [ 3 ] [ 3 ] ;     /* Transformation matrix from data space to global space                          */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float   smtx [ 3 ] [ 3 ] ;    /* Transformation matrix from global space to data space                          */ 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									float   axismtx [ 3 ] [ 3 ] ; /* Axis orientation matrix of the data                                            */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  Object  * ob ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  bConstraint  * con ; 	/* for objects/bones, the first constraint in its constraint stack */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									TransDataExtension  * ext ; 	/* for objects, poses. 1 single malloc per TransInfo! */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									TransDataCurveHandleFlags  * hdata ;  /* for curves, stores handle flags for modification/cancel */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									void   * extra ; 		 /* extra data (mirrored element pointer, in editmode mesh to EditVert) (editbone for roll fixing) (...) */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-22 09:30:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int   flag ;          /* Various flags */ 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									short   protectflag ; 	 /* If set, copy of Object or PoseChannel protection */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  TransData ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2008-12-29 20:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								typedef  struct  MouseInput  {  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									void 	( * apply ) ( struct  TransInfo  * ,  struct  MouseInput  * ,  const  int  [ 2 ] ,  float  [ 3 ] ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-09 01:19:32 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									void 	( * post ) ( struct  TransInfo  * ,  float  [ 3 ] ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2009-07-12 02:01:13 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int      imval [ 2 ] ;        	/* initial mouse position                */ 
							 
						 
					
						
							
								
									
										
										
										
											2009-07-12 02:01:13 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									char 	precision ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int      precision_mval [ 2 ] ; 	/* mouse position when precision key was pressed */ 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-29 20:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int 		center [ 2 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float 	factor ; 
							 
						 
					
						
							
								
									
										
										
										
											2009-09-21 00:48:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									void  	* data ;  /* additional data, if needed by the particular function */ 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-29 20:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  MouseInput ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								typedef  struct  TransInfo  {  
						 
					
						
							
								
									
										
										
										
											2010-03-22 09:30:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int          mode ;            /* current mode                         */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									int 	        flag ;            /* generic flags for special behaviors  */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									int 			modifiers ; 		/* special modifiers, by function, not key */ 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									short 		state ; 			/* current state (running, canceled,...)*/ 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-22 09:30:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int          options ;         /* current context/options for transform                      */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float        val ;             /* init value for some transformations (and rotation angle)  */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float        fac ;             /* factor for distance based transform  */ 
							 
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int        ( * transform ) ( struct  TransInfo  * ,  const  int  * ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-22 09:30:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
																/* transform function pointer           */ 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-29 20:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int        ( * handleEvent ) ( struct  TransInfo  * ,  struct  wmEvent  * ) ; 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
																/* event handler function pointer  RETURN 1 if redraw is needed */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-22 09:30:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int          total ;           /* total number of transformed data     */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									TransData   * data ;            /* transformed data (array)             */ 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									TransDataExtension  * ext ; 	/* transformed data extension (array)   */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									TransData2D  * data2d ; 		/* transformed data for 2d (array)      */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-22 09:30:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									TransCon     con ;             /* transformed constraint               */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									TransSnap 	tsnap ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									NumInput     num ;             /* numerical input                      */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									MouseInput 	mouse ; 			/* mouse input                          */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									char         redraw ;          /* redraw flag                          */ 
							 
						 
					
						
							
								
									
										
										
										
											2009-03-06 15:50:15 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									float 		prop_size ; 		/* proportional circle radius           */ 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									char 		proptext [ 20 ] ; 	/* proportional falloff text			*/ 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-22 09:30:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									float        center [ 3 ] ;       /* center of transformation             */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									int          center2d [ 2 ] ;     /* center in screen coordinates         */ 
							 
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int          imval [ 2 ] ;        /* initial mouse position               */ 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-28 15:39:39 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									short 		event_type ; 		/* event->type used to invoke transform */ 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									short        idx_max ; 		/* maximum index on the input vector	*/ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float 		snap [ 3 ] ; 		/* Snapping Gears						*/ 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-24 05:38:25 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									char 		frame_side ; 		/* Mouse side of the cfra, 'L', 'R' or 'B' */ 
							 
						 
					
						
							
								
									
										
										
										
											2009-07-12 02:01:13 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									float 		viewmat [ 4 ] [ 4 ] ; 	/* copy from G.vd, prevents feedback,   */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float 		viewinv [ 4 ] [ 4 ] ;   /* and to make sure we don't have to    */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float 		persmat [ 4 ] [ 4 ] ;   /* access G.vd from other space types   */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float 		persinv [ 4 ] [ 4 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									short 		persp ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									short 		around ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									char 		spacetype ; 		/* spacetype where transforming is      */ 
							 
						 
					
						
							
								
									
										
										
										
											2009-04-30 11:47:35 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									char 		helpline ; 		/* helpline modes (not to be confused with hotline) */ 
							 
						 
					
						
							
								
									
										
										
										
											2009-07-12 02:01:13 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									float 		vec [ 3 ] ; 			/* translation, to show for widget   	*/ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float 		mat [ 3 ] [ 3 ] ; 		/* rot/rescale, to show for widget   	*/ 
							 
						 
					
						
							
								
									
										
										
										
											2009-07-12 02:01:13 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									char 		* undostr ; 		/* if set, uses this string for undo		*/ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									float 		spacemtx [ 3 ] [ 3 ] ; 	/* orientation matrix of the current space	*/ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									char 		spacename [ 32 ] ; 	/* name of the current space				*/ 
							 
						 
					
						
							
								
									
										
										
										
											2009-07-12 02:01:13 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									struct  Object  * poseobj ; 		/* if t->flag & T_POSE, this denotes pose object */ 
							 
						 
					
						
							
								
									
										
										
										
											2009-07-12 02:01:13 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									void        * customData ; 		/* Per Transform custom data */ 
							 
						 
					
						
							
								
									
										
										
										
											2009-09-22 20:16:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									void   	  ( * customFree ) ( struct  TransInfo  * ) ;  /* if a special free function is needed */ 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/*************** NEW STUFF *********************/ 
							 
						 
					
						
							
								
									
										
										
										
											2009-12-17 17:50:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									short 		launch_event ;  	/* event type used to launch transform */ 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-03-06 15:50:15 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									short 		current_orientation ; 
							 
						 
					
						
							
								
									
										
										
										
											2009-12-17 17:50:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									short 		twtype ; 			/* backup from view3d, to restore on end */ 
							 
						 
					
						
							
								
									
										
										
										
											2009-03-06 15:50:15 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									short 		prop_mode ; 
							 
						 
					
						
							
								
									
										
										
										
											2009-10-15 21:54:22 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									short 		mirror ; 
							 
						 
					
						
							
								
									
										
										
										
											2009-03-06 15:50:15 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									float 		values [ 4 ] ; 
							 
						 
					
						
							
								
									
										
										
										
											2009-03-06 15:50:15 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									float 		auto_values [ 4 ] ; 
							 
						 
					
						
							
								
									
										
										
										
											2010-01-04 20:49:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									float 		axis [ 3 ] ; 
							 
						 
					
						
							
								
									
										
										
										
											2010-11-03 04:38:07 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									float 		axis_orig [ 3 ] ; 	/* TransCon can change 'axis', store the original value here */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-01-04 20:49:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									void 		* view ; 
							 
						 
					
						
							
								
									
										
										
										
											2010-11-20 21:43:16 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									struct  bContext  * context ;  /* Only valid (non null) during an operator called function. */ 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									struct  ScrArea 	* sa ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ARegion 	* ar ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  Scene 	* scene ; 
							 
						 
					
						
							
								
									
										
										
										
											2009-06-23 00:41:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									struct  ToolSettings  * settings ; 
							 
						 
					
						
							
								
									
										
										
										
											2009-02-16 03:01:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									struct  wmTimer  * animtimer ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int          mval [ 2 ] ;         /* current mouse position               */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-22 09:30:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									struct  Object    * obedit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									void 		* draw_handle_apply ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									void 		* draw_handle_view ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									void 		* draw_handle_pixel ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									void 		* draw_handle_cursor ; 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								}  TransInfo ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/* ******************** Macros & Prototypes *********************** */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/* transinfo->state */  
						 
					
						
							
								
									
										
										
										
											2009-11-12 19:49:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define TRANS_STARTING  0 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TRANS_RUNNING	1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TRANS_CONFIRM	2 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TRANS_CANCEL	3 
  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-02-03 21:01:41 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/* transinfo->redraw */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TREDRAW_NOTHING  	0 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TREDRAW_HARD		1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TREDRAW_SOFT		2 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								/* transinfo->flag */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define T_OBJECT		(1 << 0) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define T_EDIT			(1 << 1) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define T_POSE			(1 << 2) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define T_TEXTURE		(1 << 3) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define T_CAMERA		(1 << 4) 
  
						 
					
						
							
								
									
										
										
										
											2010-03-22 09:30:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										 // trans on points, having no rotation/scale
 
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# define T_POINTS		(1 << 6) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										// for manipulator exceptions, like scaling using center point, drawing help lines
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define T_USES_MANIPULATOR	(1 << 7) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/* restrictions flags */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define T_ALL_RESTRICTIONS	((1 << 8)|(1 << 9)|(1 << 10)) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define T_NO_CONSTRAINT		(1 << 8) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define T_NULL_ONE			(1 << 9) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define T_NO_ZERO			(1 << 10) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define T_PROP_EDIT			(1 << 11) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define T_PROP_CONNECTED	(1 << 12) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define T_V3D_ALIGN			(1 << 14) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/* for 2d views like uv or ipo */ 
							 
						 
					
						
							
								
									
										
										
										
											2009-07-12 02:01:13 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define T_2D_EDIT			(1 << 15) 
  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# define T_CLIP_UV			(1 << 16) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define T_FREE_CUSTOMDATA	(1 << 17) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/* auto-ik is on */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define T_AUTOIK			(1 << 18) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-03-06 15:50:15 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define T_MIRROR			(1 << 19) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define T_AUTOVALUES		(1 << 20) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/* to specificy if we save back settings at the end */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define	T_MODAL				(1 << 21) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-03-28 13:59:33 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/* no retopo */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define T_NO_PROJECT		(1 << 22) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-04-02 19:40:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define T_RELEASE_CONFIRM	(1 << 23) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-03 22:15:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/* TransInfo->modifiers */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define	MOD_CONSTRAINT_SELECT	0x01 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define	MOD_PRECISION			0x02 
  
						 
					
						
							
								
									
										
										
										
											2009-11-26 19:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define	MOD_SNAP				0x04 
  
						 
					
						
							
								
									
										
										
										
											2009-12-03 19:18:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define	MOD_SNAP_INVERT			0x08 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define	MOD_CONSTRAINT_PLANE	0x10 
  
						 
					
						
							
								
									
										
										
										
											2009-01-03 22:15:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								/* ******************************************************************************** */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-04-30 11:47:35 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/* transinfo->helpline */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define HLP_NONE		0 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define HLP_SPRING		1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define HLP_ANGLE		2 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define HLP_HARROW		3 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define HLP_VARROW		4 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define HLP_TRACKBALL	5 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								/* transinfo->con->mode */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define CON_APPLY		1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define CON_AXIS0		2 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define CON_AXIS1		4 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define CON_AXIS2		8 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define CON_SELECT		16 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define CON_NOFLIP		32	 /* does not reorient vector to face viewport when on */ 
  
						 
					
						
							
								
									
										
										
										
											2009-01-18 21:36:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define CON_USER		64 
  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/* transdata->flag */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TD_SELECTED			1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TD_ACTIVE			(1 << 1) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define	TD_NOACTION			(1 << 2) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define	TD_USEQUAT			(1 << 3) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TD_NOTCONNECTED		(1 << 4) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TD_SINGLESIZE		(1 << 5)	 /* used for scaling of MetaElem->rad */ 
  
						 
					
						
							
								
									
										
										
										
											2011-01-15 16:14:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*#define TD_TIMEONLY			(1 << 8) */  /*UNUSED*/  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# define TD_NOCENTER			(1 << 9) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TD_NO_EXT			(1 << 10)	 /* ext abused for particle key timing */ 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TD_SKIP				(1 << 11)	 /* don't transform this data */ 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TD_BEZTRIPLE		(1 << 12)	 /* if this is a bez triple, we need to restore the handles, if this is set transdata->misc.hdata needs freeing */ 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TD_NO_LOC			(1 << 13)	 /* when this is set, don't apply translation changes to this element */ 
  
						 
					
						
							
								
									
										
										
										
											2009-01-28 02:56:58 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define TD_NOTIMESNAP		(1 << 14)	 /* for Graph Editor autosnap, indicates that point should not undergo autosnapping */ 
  
						 
					
						
							
								
									
										
										
										
											2011-09-25 12:31:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define TD_INTVALUES		(1 << 15) 	 /* for Graph Editor - curves that can only have int-values need their keyframes tagged with this */ 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TD_MIRROR_EDGE		(1 << 16) 	 /* For editmode mirror, clamp to x = 0 */ 
  
						 
					
						
							
								
									
										
										
										
											2010-05-06 19:54:43 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define TD_MOVEHANDLE1		(1 << 17)	 /* For fcurve handles, move them along with their keyframes */ 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TD_MOVEHANDLE2		(1 << 18) 
  
						 
					
						
							
								
									
										
										
										
											2010-10-24 06:16:44 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define TD_PBONE_LOCAL_MTX_P (1 << 19)	 /* exceptional case with pose bone rotating when a parent bone has 'Local Location' option enabled and rotating also transforms it. */ 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TD_PBONE_LOCAL_MTX_C (1 << 20)	 /* same as above but for a child bone */ 
  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/* transsnap->status */  
						 
					
						
							
								
									
										
										
										
											2009-11-26 19:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define SNAP_FORCED		1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define TARGET_INIT		2 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define POINT_INIT		4 
  
						 
					
						
							
								
									
										
										
										
											2009-12-01 18:26:18 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define MULTI_POINTS	8 
  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-12-10 10:36:32 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  TRANSFORM_OT_transform ( struct  wmOperatorType  * ot ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-03-28 20:46:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  initTransform ( struct  bContext  * C ,  struct  TransInfo  * t ,  struct  wmOperator  * op ,  struct  wmEvent  * event ,  int  mode ) ;  
						 
					
						
							
								
									
										
										
										
											2009-01-03 22:15:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  saveTransform ( struct  bContext  * C ,  struct  TransInfo  * t ,  struct  wmOperator  * op ) ;  
						 
					
						
							
								
									
										
										
										
											2009-11-29 16:49:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int   transformEvent ( TransInfo  * t ,  struct  wmEvent  * event ) ;  
						 
					
						
							
								
									
										
										
										
											2010-11-20 21:43:16 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  transformApply ( struct  bContext  * C ,  TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2008-12-31 17:11:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int   transformEnd ( struct  bContext  * C ,  TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  setTransformViewMatrices ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  convertViewVec ( TransInfo  * t ,  float  * vec ,  int  dx ,  int  dy ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								void  projectIntView ( TransInfo  * t ,  float  * vec ,  int  * adr ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  projectFloatView ( TransInfo  * t ,  float  * vec ,  float  * adr ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-20 20:44:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  applyAspectRatio ( TransInfo  * t ,  float  * vec ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  removeAspectRatio ( TransInfo  * t ,  float  * vec ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initWarp ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								int  handleEventWarp ( TransInfo  * t ,  struct  wmEvent  * event ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  Warp ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initShear ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								int  handleEventShear ( TransInfo  * t ,  struct  wmEvent  * event ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  Shear ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initResize ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  Resize ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initTranslation ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  Translation ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initToSphere ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  ToSphere ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initRotation ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  Rotation ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initShrinkFatten ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  ShrinkFatten ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initTilt ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  Tilt ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initCurveShrinkFatten ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  CurveShrinkFatten ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initTrackball ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  Trackball ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initPushPull ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  PushPull ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initBevel ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								int  handleEventBevel ( TransInfo  * t ,  struct  wmEvent  * event ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  Bevel ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initBevelWeight ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  BevelWeight ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initCrease ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  Crease ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initBoneSize ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  BoneSize ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initBoneEnvelope ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  BoneEnvelope ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initBoneRoll ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  BoneRoll ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-09-22 08:41:03 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  initEdgeSlide ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  EdgeSlide ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
										
											2009-09-22 08:41:03 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								void  initTimeTranslate ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  TimeTranslate ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initTimeSlide ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  TimeSlide ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initTimeScale ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  TimeScale ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initBakeTime ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  BakeTime ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initMirror ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  Mirror ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initAlign ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  Align ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-12-21 17:23:44 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  initSeqSlide ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  SeqSlide ( TransInfo  * t ,  const  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
										
											2009-12-21 17:23:44 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-03-28 20:46:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  drawPropCircle ( const  struct  bContext  * C ,  TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2009-01-10 18:33:16 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-12-21 17:23:44 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  wmKeyMap  * transform_modal_keymap ( struct  wmKeyConfig  * keyconf ) ;  
						 
					
						
							
								
									
										
											 
										
											
												2.5
Modal keymaps.
I've tried to make it as simple as possible, yet still using sufficient facilities to enable self-documenting UIs, saving/reading in files, and proper Python support.
The simplicity is: the 'modal keymap' just checks an event, uses event matching similarly to other keymap matching, and if there's a match it changes the event type, and sets the event value to what the modal keymap has defined. The event values are being defined using EnumPropertyItem structs, so the UI will be able to show all options in self-documenting way.
This system also allows to still handle hardcoded own events.
Tech doc:
1) define keymap
- Create map with unique name, WM_modalkeymap_add()
- Give map property definitions (EnumPropertyItem *)
  This only for UI, so user can get information on available options
2) items
- WM_modalkeymap_add_item(): give it an enum value for events
3) activate
- In keymap definition code, assign the modal keymap to operatortype
  WM_modalkeymap_assign()
4) event manager
- The event handler will check for modal keymap, if so:
  - If the modal map has a match:
    - Sets event->type to EVT_MODAL_MAP
    - Sets event->val to the enum value
5) modal handler
- If event type is EVT_MODAL_MAP:
  - Check event->val, handle it
- Other events can just be handled still
Two examples added in the code:
editors/transform/transform.c: transform_modal_keymap()
editors/screen/screen_ops.c: keymap_modal_set()
Also: to support 'key release' the define KM_RELEASE now is officially
used in event manager, this is not '0', so don't check key events with
the old convention if(event->val) but use if(event->val==KM_PRESS)
											 
										 
										
											2009-07-21 11:03:07 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								/*********************** transform_conversions.c ********** */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  ListBase ;  
						 
					
						
							
								
									
										
										
										
											2009-01-28 02:56:58 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								void  flushTransGPactionData ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2009-01-28 02:56:58 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  flushTransGraphData ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  remake_graph_transdata ( TransInfo  * t ,  struct  ListBase  * anim_data ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								void  flushTransUVs ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  flushTransParticles ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								int  clipUVTransform ( TransInfo  * t ,  float  * vec ,  int  resize ) ;  
						 
					
						
							
								
									
										
										
										
											2009-01-04 01:08:01 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  flushTransNodes ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2009-01-21 07:01:20 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  flushTransSeq ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*********************** exported from transform_manipulator.c ********** */  
						 
					
						
							
								
									
										
										
										
											2009-11-29 18:20:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  gimbal_axis ( struct  Object  * ob ,  float  gmat [ ] [ 3 ] ) ;  /* return 0 when no gimbal for selection */  
						 
					
						
							
								
									
										
										
										
											2009-07-08 15:01:28 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  calc_manipulator_stats ( const  struct  bContext  * C ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*********************** TransData Creation and General Handling *********** */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  createTransData ( struct  bContext  * C ,  TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  sort_trans_data_dist ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  add_tdi_poin ( float  * poin ,  float  * old ,  float  delta ) ;  
						 
					
						
							
								
									
										
										
										
											2009-12-14 03:20:17 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  special_aftertrans_update ( struct  bContext  * C ,  TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  transform_autoik_update ( TransInfo  * t ,  short  mode ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-07-12 02:01:13 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  count_set_pose_transflags ( int  * out_mode ,  short  around ,  struct  Object  * ob ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								/* auto-keying stuff used by special_aftertrans_update */  
						 
					
						
							
								
									
										
										
										
											2009-12-14 03:20:17 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  autokeyframe_ob_cb_func ( struct  bContext  * C ,  struct  Scene  * scene ,  struct  View3D  * v3d ,  struct  Object  * ob ,  int  tmode ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  autokeyframe_pose_cb_func ( struct  bContext  * C ,  struct  Scene  * scene ,  struct  View3D  * v3d ,  struct  Object  * ob ,  int  tmode ,  short  targetless_ik ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*********************** Constraints *****************************/  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-10-16 14:32:17 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  drawConstraint ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2009-01-10 18:33:16 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								void  getConstraintMatrix ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  setConstraint ( TransInfo  * t ,  float  space [ 3 ] [ 3 ] ,  int  mode ,  const  char  text [ ] ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  setLocalConstraint ( TransInfo  * t ,  int  mode ,  const  char  text [ ] ) ;  
						 
					
						
							
								
									
										
										
										
											2009-10-07 20:55:14 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  setUserConstraint ( TransInfo  * t ,  short  orientation ,  int  mode ,  const  char  text [ ] ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  constraintNumInput ( TransInfo  * t ,  float  vec [ 3 ] ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								int  isLockConstraint ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								int  getConstraintSpaceDimension ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								char  constraintModeToChar ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  startConstraint ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  stopConstraint ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  initSelectConstraint ( TransInfo  * t ,  float  mtx [ 3 ] [ 3 ] ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  selectConstraint ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  postSelectConstraint ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  setNearestAxis ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*********************** Snapping ********************************/  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								typedef  enum  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									NO_GEARS  	=  0 , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									BIG_GEARS 	=  1 , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									SMALL_GEARS 	=  2 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  GearsType ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  snapGrid ( TransInfo  * t ,  float  * val ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  snapGridAction ( TransInfo  * t ,  float  * val ,  GearsType  action ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-12-03 19:18:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  activeSnap ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								int  validSnap ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-03-29 19:52:53 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  initSnapping ( struct  TransInfo  * t ,  struct  wmOperator  * op ) ;  
						 
					
						
							
								
									
										
										
										
											2009-10-12 22:33:32 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  applyProject ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								void  applySnapping ( TransInfo  * t ,  float  * vec ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  resetSnapping ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								int   handleSnapping ( TransInfo  * t ,  struct  wmEvent  * event ) ;  
						 
					
						
							
								
									
										
										
										
											2009-03-28 20:46:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  drawSnapping ( const  struct  bContext  * C ,  TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								int  usingSnappingNormal ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								int  validSnappingNormal ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-12-01 18:26:18 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  getSnapPoint ( TransInfo  * t ,  float  vec [ 3 ] ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  addSnapPoint ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  removeSnapPoint ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2008-12-29 20:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/********************** Mouse Input ******************************/  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								typedef  enum  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									INPUT_NONE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									INPUT_VECTOR , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									INPUT_SPRING , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									INPUT_SPRING_FLIP , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									INPUT_ANGLE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									INPUT_TRACKBALL , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									INPUT_HORIZONTAL_RATIO , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									INPUT_HORIZONTAL_ABSOLUTE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									INPUT_VERTICAL_RATIO , 
							 
						 
					
						
							
								
									
										
										
										
											2009-09-21 00:48:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									INPUT_VERTICAL_ABSOLUTE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									INPUT_CUSTOM_RATIO 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-29 20:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  MouseInputMode ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  initMouseInput ( TransInfo  * t ,  MouseInput  * mi ,  int  center [ 2 ] ,  int  mval [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
										
											2008-12-29 20:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  initMouseInputMode ( TransInfo  * t ,  MouseInput  * mi ,  MouseInputMode  mode ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								int  handleMouseInput ( struct  TransInfo  * t ,  struct  MouseInput  * mi ,  struct  wmEvent  * event ) ;  
						 
					
						
							
								
									
										
										
										
											2011-05-20 07:40:05 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  applyMouseInput ( struct  TransInfo  * t ,  struct  MouseInput  * mi ,  const  int  mval [ 2 ] ,  float  output [ 3 ] ) ;  
						 
					
						
							
								
									
										
										
										
											2008-12-29 20:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-05-12 16:47:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  setCustomPoints ( TransInfo  * t ,  MouseInput  * mi ,  int  start [ 2 ] ,  int  end [ 2 ] ) ;  
						 
					
						
							
								
									
										
										
										
											2010-03-09 01:19:32 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  setInputPostFct ( MouseInput  * mi ,  void 	( * post ) ( struct  TransInfo  * ,  float  [ 3 ] ) ) ;  
						 
					
						
							
								
									
										
										
										
											2009-09-21 00:48:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								/*********************** Generics ********************************/  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-03-28 20:46:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  initTransInfo ( struct  bContext  * C ,  TransInfo  * t ,  struct  wmOperator  * op ,  struct  wmEvent  * event ) ;  
						 
					
						
							
								
									
										
										
										
											2009-12-07 18:10:11 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  postTrans  ( struct  bContext  * C ,  TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								void  resetTransRestrictions ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-10 18:33:16 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  drawLine ( TransInfo  * t ,  float  * center ,  float  * dir ,  char  axis ,  short  options ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								TransDataCurveHandleFlags  * initTransDataCurveHandes ( TransData  * td ,  struct  BezTriple  * bezt ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/* DRAWLINE options flags */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define DRAWLIGHT	1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  applyTransObjects ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  restoreTransObjects ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
										
											2009-01-02 23:58:03 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  restoreTransNodes ( TransInfo  * t ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								void  recalcData ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  calculateCenter ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  calculateCenter2D ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  calculateCenterBound ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  calculateCenterMedian ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  calculateCenterCursor ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  calculateCenterCursor2D ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  calculatePropRatio ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  getViewVector ( TransInfo  * t ,  float  coord [ 3 ] ,  float  vec [ 3 ] ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-18 21:36:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*********************** Transform Orientations ******************************/  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-18 21:36:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  initTransformOrientation ( struct  bContext  * C ,  TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-09-28 19:49:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  TransformOrientation  * createObjectSpace ( struct  bContext  * C ,  struct  ReportList  * reports ,  char  * name ,  int  overwrite ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  TransformOrientation  * createMeshSpace ( struct  bContext  * C ,  struct  ReportList  * reports ,  char  * name ,  int  overwrite ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  TransformOrientation  * createBoneSpace ( struct  bContext  * C ,  struct  ReportList  * reports ,  char  * name ,  int  overwrite ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/* Those two fill in mat and return non-zero on success */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								int  createSpaceNormal ( float  mat [ 3 ] [ 3 ] ,  float  normal [ 3 ] ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								int  createSpaceNormalTangent ( float  mat [ 3 ] [ 3 ] ,  float  normal [ 3 ] ,  float  tangent [ 3 ] ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-09-28 19:49:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  TransformOrientation  * addMatrixSpace ( struct  bContext  * C ,  float  mat [ 3 ] [ 3 ] ,  char  name [ ] ,  int  overwrite ) ;  
						 
					
						
							
								
									
										
										
										
											2009-01-18 21:36:38 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  addObjectSpace ( struct  bContext  * C ,  struct  Object  * ob ) ;  
						 
					
						
							
								
									
										
										
										
											2009-09-28 19:49:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  applyTransformOrientation ( const  struct  bContext  * C ,  float  mat [ 3 ] [ 3 ] ,  char  * name ) ;  
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define ORIENTATION_NONE	0 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define ORIENTATION_NORMAL	1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define ORIENTATION_VERT	2 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define ORIENTATION_EDGE	3 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define ORIENTATION_FACE	4 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-07-08 15:01:28 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  getTransformOrientation ( const  struct  bContext  * C ,  float  normal [ 3 ] ,  float  plane [ 3 ] ,  int  activeOnly ) ;  
						 
					
						
							
								
									
										
										
										
											2009-11-06 10:38:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-09-22 08:41:03 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  freeSlideVerts ( TransInfo  * t ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
											
												2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
											 
										 
										
											2008-12-29 01:41:28 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# endif