00001 /* -- 00002 OpenFX version 1.4 - Modelling, Animation and Rendering Package 00003 Copyright (C) 2000 - 2005 OpenFX Development Team 00004 00005 This program is free software; you can redistribute it and/or 00006 modify it under the terms of the GNU General Public License 00007 as published by the Free Software Foundation; either version 2 00008 of the License, or (at your option) any later version. 00009 00010 This program is distributed in the hope that it will be useful, 00011 but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 GNU General Public License for more details. 00014 00015 You should have received a copy of the GNU General Public License 00016 along with this program; if not, write to the Free Software 00017 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 00018 00019 You may contact the OpenFX development team via elecronic mail 00020 at core@openfx.org, or visit our website at http://openfx.org for 00021 further information and support details. 00022 -- */ 00023 00024 /* UTILS.H utility functions for image processing external processes */ 00025 00026 extern long GetActorsID(void *, HWND); 00027 extern char *GetActorsName(void *, long); 00028 extern BOOL XimageFileName(void *, char *, char *, char *, char *, HWND); 00029 extern void CentreDialogOnScreen(HWND hwnd); 00030 00031 #define FARAWAY 1.0e30 00032 00033 void TransformIntoView( 00034 double t4[4][4], /* viewing transform as passed to process */ 00035 double x, double y, double z, /* input co-ordinates (world) */ 00036 double *xx, /* output co-ords, relative to camera */ 00037 double *yy, /* camera is located at (0,0,0) */ 00038 double *zz /* and points in (0,1,0) ie. forwards */ 00039 ){ 00040 *xx=t4[0][0]*x+t4[0][1]*y+t4[0][2]*z+t4[0][3]; 00041 *yy=t4[1][0]*x+t4[1][1]*y+t4[1][2]*z+t4[1][3]; 00042 *zz=t4[2][0]*x+t4[2][1]*y+t4[2][2]*z+t4[2][3]; 00043 return; 00044 } 00045