home *** CD-ROM | disk | FTP | other *** search
/ Big Green CD 8 / BGCD_8_Dev.iso / Rhapsody / Graphics / Morph-2.0a / algebra.c next >
Encoding:
C/C++ Source or Header  |  1998-01-01  |  577 b   |  40 lines

  1. /**********************************************************
  2.  * © 1994, Martin Wennerberg
  3.  **********************************************************/
  4. #include "algebra.h"
  5.  
  6. NSPoint
  7. PT_sum (NSPoint p1, NSPoint p2)
  8. {
  9.     p1.x += p2.x;
  10.     p1.y += p2.y;
  11.     return p1;
  12. }
  13.  
  14. NSPoint
  15. PT_sub (NSPoint p1, NSPoint p2)
  16. {
  17.     p1.x -= p2.x;
  18.     p1.y -= p2.y;
  19.     return p1;
  20. }
  21.  
  22. NSPoint
  23. PT_scale (float k, NSPoint p)
  24. {
  25.     p.x *= k;
  26.     p.y *= k;
  27.     return p;
  28. }
  29.  
  30. /* returns a vector perpendicular to and the same length as p */
  31. NSPoint
  32. PT_perp (NSPoint p)
  33. {
  34.     NSPoint res;
  35.     
  36.     res.x = p.y;
  37.     res.y = -p.x;
  38.     return res;
  39. }
  40.