00001 00014 /* This library is free software; you can redistribute it and/or 00015 modify it under the terms of the GNU Lesser General Public 00016 License as published by the Free Software Foundation; either 00017 version 2.1 of the License, or (at your option) any later version. 00018 00019 This library is distributed in the hope that it will be useful, 00020 but WITHOUT ANY WARRANTY; without even the implied warranty of 00021 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00022 Lesser General Public License for more details. 00023 00024 You should have received a copy of the GNU Lesser General Public 00025 License along with this library; if not, write to the Free Software 00026 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00027 */ 00028 00029 #ifndef _GAN_4X4MATRIX_NORM_H 00030 #define _GAN_4X4MATRIX_NORM_H 00031 00032 #include <gandalf/linalg/4x4matrix.h> 00033 00034 #ifdef __cplusplus 00035 extern "C" { 00036 #endif 00037 00038 #define GAN_MAT_NORMALISE gan_mat44_normalize 00039 #define GAN_MATT_NORMALISE gan_mat44T_normalize 00040 #define GAN_MATTYPE Gan_Matrix44 00041 #define GAN_SQUMATTYPE Gan_SquMatrix44 00042 00043 /* 00044 * File: $RCSfile: mat_norm_noc.h,v $ 00045 * Module: Fixed size matrix projective normalisation 00046 * Part of: Gandalf Library 00047 * 00048 * Revision: $Revision: 1.7 $ 00049 * Last edited: $Date: 2005/08/22 08:52:18 $ 00050 * Author: $Author: jps $ 00051 * Copyright: (c) 2000 Imagineer Software Limited 00052 * 00053 * Notes: Not to be compiled separately 00054 */ 00055 00056 /* This library is free software; you can redistribute it and/or 00057 modify it under the terms of the GNU Lesser General Public 00058 License as published by the Free Software Foundation; either 00059 version 2.1 of the License, or (at your option) any later version. 00060 00061 This library is distributed in the hope that it will be useful, 00062 but WITHOUT ANY WARRANTY; without even the implied warranty of 00063 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00064 Lesser General Public License for more details. 00065 00066 You should have received a copy of the GNU Lesser General Public 00067 License along with this library; if not, write to the Free Software 00068 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00069 */ 00070 00071 /* normalises an array of matrices B */ 00072 Gan_Bool gan_mat44_normalize ( Gan_Matrix44 *B, int n, double term_threshold, 00073 int max_iterations, Gan_SquMatrix44 *Lp ); 00074 Gan_Bool gan_mat44T_normalize ( Gan_Matrix44 *B, int n, double term_threshold, 00075 int max_iterations, Gan_SquMatrix44 *Lp ); 00076 00077 #undef GAN_MAT_NORMALISE 00078 #undef GAN_MATT_NORMALISE 00079 #undef GAN_MATTYPE 00080 #undef GAN_SQUMATTYPE 00081 00082 #ifdef __cplusplus 00083 } 00084 #endif 00085 00086 #endif /* #ifndef _GAN_4X4MATRIX_NORM_H */