1 /* 2 * TransformMode.h 3 * 4 * Copyright (C) 1999 Stephen F. White, 2002 J. "MUFTI" Scheurich 5 * 6 * This program is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published by 8 * the Free Software Foundation; either version 2 of the License, or 9 * (at your option) any later version. 10 * 11 * This program is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 * GNU General Public License for more details. 15 * 16 * You should have received a copy of the GNU General Public License 17 * along with this program (see the file "COPYING" for details); if 18 * not, write to the Free Software Foundation, Inc., 675 Mass Ave, 19 * Cambridge, MA 02139, USA. 20 */ 21 22 #pragma once 23 24 typedef enum { 25 TM_TRANSLATE, 26 TM_ROTATE, 27 TM_SCALE, 28 TM_UNIFORM_SCALE, 29 TM_CENTER, 30 TM_6D, 31 TM_6DLOCAL, 32 TM_ROCKET, 33 TM_HOVER 34 } TMode; 35 36 typedef enum { 37 TM_1D, 38 TM_2D, 39 TM_3D 40 } TDimension; 41 42 typedef enum { 43 TM_UP_DOWN, 44 TM_NEAR_FAR 45 } T2axes; 46 47 class TransformMode { 48 public: 49 TMode tmode; 50 TDimension tdimension; 51 T2axes t2axes; TransformMode(TMode tm,TDimension td,T2axes t2)52 TransformMode(TMode tm, TDimension td, T2axes t2) { 53 tmode=tm; 54 tdimension=td; 55 t2axes=t2; 56 } 57 bool hasRotation(void); 58 bool hasTranslation(void); 59 bool isLocal(void); getMode(void)60 int getMode(void) { return tmode; } 61 }; 62 63