home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 October: Mac OS SDK / Dev.CD Oct 96 SDK / Dev.CD Oct 96 SDK2.toast / Development Kits (Disc 2) / OpenDoc / OpenDoc Development / Debugging Support / OpenDoc Source Code / Imaging / Matrix.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-04-22  |  1.3 KB  |  49 lines  |  [TEXT/MPS ]

  1. /*
  2.     File:        Matrix.h
  3.  
  4.     Contains:    Matrix math [private] for ODTransforms.
  5.  
  6.     Owned by:    Jens Alfke (conversion to OpenDoc)
  7.     Written by:    Based on QuickDraw GX code by Cary Clark, Michael Fairman,
  8.                 Robert Johnson, Keith McGreggor, Oliver Steele, David Van Brink
  9.  
  10.     Copyright:    © 1987-1994 by Apple Computer, Inc., all rights reserved.
  11.  
  12.     Change History (most recent first):
  13.     
  14.          <1>     6/15/94    jpa        first checked in
  15.          ---------------------------Moved to ODSOM project.
  16.          <1>      5/9/94    jpa        first checked in
  17.     To Do:
  18. */
  19.  
  20.  
  21. #ifndef _MATRIX_
  22. #define _MATRIX_
  23.  
  24. #ifndef _ODTYPES_
  25. #include "ODTypes.h"
  26. #endif
  27.  
  28.  
  29. extern const ODMatrix kODIdentityMatrix;
  30.  
  31.  
  32. ODTransformType MxType( const ODMatrix* );
  33.  
  34. ODBoolean    MxNormalize( ODMatrix* );
  35. ODBoolean    MxInverse( const ODMatrix*, register ODTransformType,
  36.                        ODMatrix *imatrix);
  37. ODBoolean    MxMul( const ODMatrix*, ODTransformType,
  38.                    ODPoint *vector, ODSLong cnt);
  39. ODBoolean    MxConcat( const ODMatrix *a, ODTransformType aFlags,
  40.                       ODMatrix *b, ODTransformType bFlags );        // b = b * a
  41. ODBoolean    MxMove( ODMatrix*, ODTransformType, ODFixed tx, ODFixed ty );
  42. ODBoolean    MxMoveTo( ODMatrix*, ODTransformType, ODFixed x, ODFixed y);
  43. ODBoolean    MxScale( ODMatrix*, ODFixed sx, ODFixed sy);
  44. ODBoolean    MxSkew( ODMatrix*, ODFixed sx, ODFixed sy);
  45. ODBoolean    MxRotate( ODMatrix*, ODFixed angle );
  46.  
  47.  
  48. #endif /*_MATRIX_*/
  49.