home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Professional / OS2PRO194.ISO / os2 / graphic / csg_rt / sphere.h < prev    next >
C/C++ Source or Header  |  1993-01-12  |  843b  |  28 lines

  1. /*
  2.  
  3. SPHERE.H  Interface to sphere logic
  4.  
  5. */
  6.  
  7. typedef struct { double a, b, c, d; } SPHERE;
  8.  
  9. #ifndef _SPHERE_
  10.  
  11. extern SPHERE *create_sphere(double r);
  12. extern SPHERE *copy_sphere(SPHERE *sphere);
  13. extern void destroy_sphere(SPHERE *sphere);
  14.  
  15. extern void trans_x_sphere(SPHERE *sphere, double t);
  16. extern void trans_y_sphere(SPHERE *sphere, double t);
  17. extern void trans_z_sphere(SPHERE *sphere, double t);
  18. extern void scale_sphere(SPHERE *sphere, double factor);
  19. extern void rot_x_sphere(SPHERE *sphere, double angle);
  20. extern void rot_y_sphere(SPHERE *sphere, double angle);
  21. extern void rot_z_sphere(SPHERE *sphere, double angle);
  22.  
  23. extern int isects_reqd_sphere(SPHERE *sphere);
  24. extern void intersect_sphere(SPHERE *sphere, VECTOR p, VECTOR q, SIL *sil);
  25. extern VECTOR normal_to_sphere(SPHERE *sphere, VECTOR p);
  26.  
  27. #endif
  28.