home *** CD-ROM | disk | FTP | other *** search
/ Enter 2005 March / ENTER.ISO / files / fwp-0.0.6-win32-installer.exe / vector.h < prev    next >
Encoding:
C/C++ Source or Header  |  2001-06-16  |  2.5 KB  |  59 lines

  1. /* -*- c -*- */
  2. #ifndef INCLUDED_LIB3DS_VECTOR_H
  3. #define INCLUDED_LIB3DS_VECTOR_H
  4. /*
  5.  * The 3D Studio File Format Library
  6.  * Copyright (C) 1996-2001 by J.E. Hoffmann <je-h@gmx.net>
  7.  * All rights reserved.
  8.  *
  9.  * This program is  free  software;  you can redistribute it and/or modify it
  10.  * under the terms of the  GNU Lesser General Public License  as published by 
  11.  * the  Free Software Foundation;  either version 2.1 of the License,  or (at 
  12.  * your option) any later version.
  13.  *
  14.  * This  program  is  distributed in  the  hope that it will  be useful,  but
  15.  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
  16.  * or  FITNESS FOR A  PARTICULAR PURPOSE.  See the  GNU Lesser General Public  
  17.  * License for more details.
  18.  *
  19.  * You should  have received  a copy of the GNU Lesser General Public License
  20.  * along with  this program;  if not, write to the  Free Software Foundation,
  21.  * Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  22.  *
  23.  * $Id: vector.h,v 1.5 2001/06/16 14:00:50 jeh Exp $
  24.  */
  25.  
  26. #ifndef INCLUDED_LIB3DS_TYPES_H
  27. #include <lib3ds/types.h>
  28. #endif
  29.  
  30. #ifdef __cplusplus
  31. extern "C" {
  32. #endif
  33.  
  34. extern LIB3DSAPI void lib3ds_vector_zero(Lib3dsVector c);
  35. extern LIB3DSAPI void lib3ds_vector_copy(Lib3dsVector dest, Lib3dsVector src);
  36. extern LIB3DSAPI void lib3ds_vector_neg(Lib3dsVector c);
  37. extern LIB3DSAPI void lib3ds_vector_add(Lib3dsVector c, Lib3dsVector a, Lib3dsVector b);
  38. extern LIB3DSAPI void lib3ds_vector_sub(Lib3dsVector c, Lib3dsVector a, Lib3dsVector b);
  39. extern LIB3DSAPI void lib3ds_vector_scalar(Lib3dsVector c, Lib3dsFloat k);
  40. extern LIB3DSAPI void lib3ds_vector_cross(Lib3dsVector c, Lib3dsVector a, Lib3dsVector b);
  41. extern LIB3DSAPI Lib3dsFloat lib3ds_vector_dot(Lib3dsVector a, Lib3dsVector b);
  42. extern LIB3DSAPI Lib3dsFloat lib3ds_vector_squared(Lib3dsVector c);
  43. extern LIB3DSAPI Lib3dsFloat lib3ds_vector_length(Lib3dsVector c);
  44. extern LIB3DSAPI void lib3ds_vector_normalize(Lib3dsVector c);
  45. extern LIB3DSAPI void lib3ds_vector_normal(Lib3dsVector n, Lib3dsVector a,
  46.   Lib3dsVector b, Lib3dsVector c);
  47. extern LIB3DSAPI void lib3ds_vector_transform(Lib3dsVector c, Lib3dsMatrix m, Lib3dsVector a);
  48. extern LIB3DSAPI void lib3ds_vector_cubic(Lib3dsVector c, Lib3dsVector a, Lib3dsVector p,
  49.   Lib3dsVector q, Lib3dsVector b, Lib3dsFloat t);
  50. extern LIB3DSAPI void lib3ds_vector_min(Lib3dsVector c, Lib3dsVector a);
  51. extern LIB3DSAPI void lib3ds_vector_max(Lib3dsVector c, Lib3dsVector a);
  52. extern LIB3DSAPI void lib3ds_vector_dump(Lib3dsVector c);
  53.  
  54. #ifdef __cplusplus
  55. };
  56. #endif
  57. #endif
  58.  
  59.