home *** CD-ROM | disk | FTP | other *** search
/ vis-ftp.cs.umass.edu / vis-ftp.cs.umass.edu.tar / vis-ftp.cs.umass.edu / pub / Software / ASCENDER / ascendMar8.tar / UMass / BoldtOld / MERGE / geometry2d.h < prev    next >
Text File  |  1995-04-14  |  702b  |  18 lines

  1. /*  GEOMETRY2D.H  - 2d point and line geometry definitions    */
  2.  
  3. typedef struct {float x,y;} POINT2D;
  4. typedef struct {float a,b,c;} LINE2D;
  5.  
  6. POINT2D *set_point2d(POINT2D *point, float xval, float yval);
  7. POINT2D *copy_point2d(POINT2D *to, POINT2D *from);
  8. void swap_points2d(POINT2D *a, POINT2D *b);
  9. double distance_pp2d(POINT2D *a, POINT2D *b);
  10.  
  11. LINE2D *copy_line2d(LINE2D *to, LINE2D *from);
  12. LINE2D *set_line2d(LINE2D *line, float aval, float bval, float cval);
  13. LINE2D *set_line2d_from_endpoints(LINE2D *line, POINT2D *pt1, POINT2D *pt2);
  14. float distance_pl2d(POINT2D *point, LINE2D *line);
  15. float signed_distance_pl2d(POINT2D *point, LINE2D *line);
  16. float sin_angle_ll2d(LINE2D *line1, LINE2D *line2);
  17.  
  18.