Index: branches/eam_branches/ipp-20110213/Ohana/src/kapa2/src/PSObjects.c
===================================================================
--- branches/eam_branches/ipp-20110213/Ohana/src/kapa2/src/PSObjects.c	(revision 30628)
+++ branches/eam_branches/ipp-20110213/Ohana/src/kapa2/src/PSObjects.c	(revision 30637)
@@ -270,5 +270,5 @@
   float *x, *y, *z;
   double mxi, mxj, myi, myj, bxi, bxj, byi, byj, bx, by;
-  double sx, sy, d, sx1, sy1, sx2, sy2;
+  double sx, sy, d, sx1, sy1, sx2, sy2, X0, Y0, X1, Y1;
 
   mxi = graph[0].axis[0].dfx / (object[0].x1 - object[0].x0);
@@ -432,4 +432,9 @@
     }
     if (object[0].ptype == 100) {	/* connect a pair of points */
+	X0 = graph[0].axis[0].fx;
+	X1 = graph[0].axis[0].fx + graph[0].axis[0].dfx;
+	Y0 = graph[0].axis[1].fy;
+	Y1 = graph[0].axis[1].fy + graph[0].axis[1].dfy;
+
       for (i = 0; i + 1 < object[0].Npts; i+=2) {
 	if (!(finite(x[i]) && finite(y[i]))) continue;
@@ -438,5 +443,5 @@
 	sx2 = x[i+1]*mxi + y[i+1]*mxj + bx;
 	sy2 = x[i+1]*myi + y[i+1]*myj + by;
-	DrawLine (sx1, sy1, sx2, sy2);
+	ClipLinePS (sx1, sy1, sx2, sy2, X0, Y0, X1, Y1, f);
       }
     }
@@ -585,4 +590,9 @@
     }
     if (object[0].ptype == 100) {	
+	X0 = graph[0].axis[0].fx;
+	X1 = graph[0].axis[0].fx + graph[0].axis[0].dfx;
+	Y0 = graph[0].axis[1].fy;
+	Y1 = graph[0].axis[1].fy + graph[0].axis[1].dfy;
+
       for (i = 0; i + 1 < object[0].Npts; i+=2) {
 	if (!(finite(x[i]) && finite(y[i]))) continue;
@@ -591,5 +601,5 @@
 	sx2 = x[i+1]*mxi + y[i+1]*mxj + bx;
 	sy2 = x[i+1]*myi + y[i+1]*myj + by;
-	DrawLine (sx1, sy1, sx2, sy2);
+	ClipLinePS (sx1, sy1, sx2, sy2, X0, Y0, X1, Y1, f);
       }
     }
Index: branches/eam_branches/ipp-20110213/Ohana/src/kapa2/src/bDrawObjects.c
===================================================================
--- branches/eam_branches/ipp-20110213/Ohana/src/kapa2/src/bDrawObjects.c	(revision 30628)
+++ branches/eam_branches/ipp-20110213/Ohana/src/kapa2/src/bDrawObjects.c	(revision 30637)
@@ -415,4 +415,10 @@
     }
     if (object[0].ptype == 100) {	/* connect a pair of points */
+
+      double X0 = graph[0].axis[0].fx;
+      double X1 = graph[0].axis[0].fx + graph[0].axis[0].dfx;
+      double Y0 = graph[0].axis[1].fy;
+      double Y1 = graph[0].axis[1].fy + graph[0].axis[1].dfy;
+
       for (i = 0; i + 1 < object[0].Npts; i+=2) {
 	if (!(finite(x[i]) && finite(y[i]))) continue;
@@ -421,5 +427,5 @@
 	sx2 = x[i+1]*mxi + y[i+1]*mxj + bx;
 	sy2 = x[i+1]*myi + y[i+1]*myj + by;
-	DrawLine (buffer, sx1, sy1, sx2, sy2);
+	bDrawClipLine (buffer, sx1, sy1, sx2, sy2, X0, Y0, X1, Y1);
       }
     }
@@ -561,4 +567,10 @@
     }
     if (object[0].ptype == 100) {	
+
+      double X0 = graph[0].axis[0].fx;
+      double X1 = graph[0].axis[0].fx + graph[0].axis[0].dfx;
+      double Y0 = graph[0].axis[1].fy;
+      double Y1 = graph[0].axis[1].fy + graph[0].axis[1].dfy;
+
       for (i = 0; i + 1 < object[0].Npts; i+=2) {
 	if (!(finite(x[i]) && finite(y[i]))) continue;
@@ -567,5 +579,5 @@
 	sx2 = x[i+1]*mxi + y[i+1]*mxj + bx;
 	sy2 = x[i+1]*myi + y[i+1]*myj + by;
-	DrawLine (buffer, sx1, sy1, sx2, sy2);
+	bDrawClipLine (buffer, sx1, sy1, sx2, sy2, X0, Y0, X1, Y1);
       }
     }
