r348: fix linefeed problem
[ctsim.git] / libctsupport / clip.cpp
index 9c2abbc79a069ce6ecf07f1a5e928436b0cc10bc..e11e33442faf6802b024320ad5bc63c9c37f421e 100644 (file)
@@ -14,7 +14,7 @@
 **  This is part of the CTSim program
 **  Copyright (C) 1983-2000 Kevin Rosenberg
 **
-**  $Id: clip.cpp,v 1.2 2000/06/19 19:04:05 kevin Exp $
+**  $Id: clip.cpp,v 1.7 2001/01/02 16:02:13 kevin Exp $
 **
 **  This program is free software; you can redistribute it and/or modify
 **  it under the terms of the GNU General Public License (version 2) as
@@ -42,7 +42,7 @@
  *    double u,v               Dimensions of segment
  */
 
-int 
+bool
 clip_segment (double& x1, double& y1, double& x2, double& y2, const double u, const double v)
 {
   double xc1 = x1 * u;
@@ -88,7 +88,7 @@ clip_segment (double& x1, double& y1, double& x2, double& y2, const double u, co
  *    double u,v               Size of sector
  */
 
-int 
+bool 
 clip_sector (double& x1, double& y1, double& x2, double& y2, const double u, const double v)
 {
   double xc1 = x1 * u;
@@ -124,7 +124,7 @@ clip_sector (double& x1, double& y1, double& x2, double& y2, const double u, con
  *    double t1,t2             Starting & stopping angles of clipping
  */
 
-int 
+bool 
 clip_circle (double& x1, double& y1, double& x2, double& y2, const double cx, const double cy, const double radius, double t1, double t2)
 {
   double xc1 = x1;
@@ -151,8 +151,8 @@ clip_circle (double& x1, double& y1, double& x2, double& y2, const double cx, co
   xform_mtx2 (rotmtx, ccx, ccy);
   t1 += theta;                 // rotate start and stop angles 
   t2 += theta;
-  t1 = norm_ang (t1);
-  t2 = norm_ang (t2);
+  t1 = normalizeAngle (t1);
+  t2 = normalizeAngle (t2);
 
   if (xc2 < -D_EPSILON || fabs(yc2) > F_EPSILON) {
     sys_error (ERR_SEVERE, "Internal error in clip_circle\n x1=%6.2f, y1=%6.2f, x2=%6.2f, y2=%6.2f, xc2=%6.2f, yc2=%6.2f, theta=%6.2f", x1, y1, x2, y2, xc2, yc2, theta);
@@ -241,7 +241,7 @@ clip_circle (double& x1, double& y1, double& x2, double& y2, const double cx, co
 
 static int tcode (const double x, const double y, const double m, const double b, const int clip_xaxis);
 
-int 
+bool 
 clip_triangle (double& x1, double& y1, double& x2, double& y2, const double u, const double v, const int clip_xaxis)
 {
   double m = v / u;     // slope of triangle lines
@@ -251,8 +251,7 @@ clip_triangle (double& x1, double& y1, double& x2, double& y2, const double u, c
   int c2 = tcode (x2, y2, m, b, clip_xaxis);
 
 #ifdef DEBUG
-  crt_set_cpos (1,1);
-  printf ("x1:%6.2f  y1:%6.2f  code1:%2d  x2:%6.2f  y2:%6.2f code2:%2d",
+  printf ("x1:%6.2f  y1:%6.2f  code1:%2d  x2:%6.2f  y2:%6.2f code2:%2d\n",
           x1, y1, c1, x2, y2, c2);
 #endif
   while ( c1 || c2 ) {
@@ -294,8 +293,7 @@ clip_triangle (double& x1, double& y1, double& x2, double& y2, const double u, c
       x2=x; y2=y; c2=tcode (x2,y2,m,b,clip_xaxis);
     }
 #ifdef DEBUG
-    crt_set_cpos (1,1);
-    printf ("x1:%6.2f  y1:%6.2f  code1:%2d  x2:%6.2f  y2:%6.2f code2:%2d", x1, y1, c1, x2, y2, c2);
+    printf ("x1:%6.2f  y1:%6.2f  code1:%2d  x2:%6.2f  y2:%6.2f code2:%2d\n", x1, y1, c1, x2, y2, c2);
 #endif
   }
 
@@ -333,7 +331,7 @@ tcode (const double x, const double y, const double m, const double b, const int
 
 static int rectcode (double x, double y, const double rect[4]);
 
-int 
+bool
 clip_rect (double& x1, double& y1, double& x2, double& y2, const double rect[4])
 {
   double x = 0, y = 0;