Changeset 15620 for trunk/Ohana/src/kapa2
- Timestamp:
- Nov 15, 2007, 9:29:21 AM (19 years ago)
- Location:
- trunk/Ohana/src/kapa2/src
- Files:
-
- 4 edited
-
LoadOverlay.c (modified) (1 diff)
-
PSOverlay.c (modified) (1 diff)
-
PaintOverlay.c (modified) (4 diffs)
-
bDrawOverlay.c (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Ohana/src/kapa2/src/LoadOverlay.c
r14590 r15620 75 75 j = image[0].overlay[overnum].Nobjects; 76 76 for (i = 0; i < Noverlay; i++, j++) { 77 image[0].overlay[overnum].objects[j].x = overlay[i].x; 78 image[0].overlay[overnum].objects[j].y = overlay[i].y; 79 image[0].overlay[overnum].objects[j].dx = overlay[i].dx; 80 image[0].overlay[overnum].objects[j].dy = overlay[i].dy; 81 image[0].overlay[overnum].objects[j].type = overlay[i].type; 82 image[0].overlay[overnum].objects[j].text = NULL; 77 image[0].overlay[overnum].objects[j].x = overlay[i].x; 78 image[0].overlay[overnum].objects[j].y = overlay[i].y; 79 image[0].overlay[overnum].objects[j].dx = overlay[i].dx; 80 image[0].overlay[overnum].objects[j].dy = overlay[i].dy; 81 image[0].overlay[overnum].objects[j].angle = overlay[i].angle; 82 image[0].overlay[overnum].objects[j].type = overlay[i].type; 83 image[0].overlay[overnum].objects[j].text = NULL; 83 84 } 84 85 -
trunk/Ohana/src/kapa2/src/PSOverlay.c
r13479 r15620 58 58 break; 59 59 } 60 // XXX add in the rotated ellipse version (rotate in PS space) 60 61 fprintf (f, " %6.1f %6.1f %6.1f C\n", X, Y, fabs(dX + extra)); 61 62 break; -
trunk/Ohana/src/kapa2/src/PaintOverlay.c
r13479 r15620 5 5 int i; 6 6 int dX, dY, dx, dy; 7 int X, Y, Xmin, Ymin, Xmax, Ymax, Xrange, Yrange;8 double expand, X0, Y0;7 int x, y, X, Y, Xmin, Ymin, Xmax, Ymax, Xrange, Yrange; 8 double t, expand, X0, Y0; 9 9 10 10 XSetForeground (graphic[0].display, graphic[0].gc, image[0].overlay[N].color); … … 43 43 switch (image[0].overlay[N].objects[i].type) { 44 44 case KII_OVERLAY_LINE: 45 // the angle makes no sense for a line... 45 46 XDrawLine (graphic[0].display, graphic[0].window, graphic[0].gc, X, Y, (X+dX), (Y+dY)); 46 47 break; 47 48 case KII_OVERLAY_TEXT: 49 // XXX currently we ignore the rectangle angle 48 50 XDrawString (graphic[0].display, graphic[0].window, graphic[0].gc, X, Y, image[0].overlay[N].objects[i].text, strlen(image[0].overlay[N].objects[i].text)); 49 51 break; … … 51 53 dx = MAX (abs(dX),2) / 2; 52 54 dy = MAX (abs(dY),2) / 2; 55 // XXX currently we ignore the rectangle angle 53 56 XDrawRectangle (graphic[0].display, graphic[0].window, graphic[0].gc, (X - dx), (Y - dy), 2*dx, 2*dy); 54 57 break; … … 56 59 dx = MAX (abs(dX),2); 57 60 dy = MAX (abs(dY),2); 58 XDrawArc (graphic[0].display, graphic[0].window, graphic[0].gc, (X - dx), (Y - dy), 2*dx, 2*dy, 0, 23040); 61 if (image[0].overlay[N].objects[i].angle == 0.0) { 62 XDrawArc (graphic[0].display, graphic[0].window, graphic[0].gc, (X - dx), (Y - dy), 2*dx, 2*dy, 0, 23040); 63 } else { 64 // very stupid rotate ellipse drawing: 65 double angle = image[0].overlay[N].objects[i].angle * RAD_DEG; 66 double cs = cos(angle); 67 double sn = sin(angle); 68 // XXX dt should be based on the size of the ellipse... 69 for (t = 0; t < 2*M_PI; t+=0.05) { 70 x = X + dx*cos(t)*cs + dy*sin(t)*sn; 71 y = Y - dx*cos(t)*sn + dy*sin(t)*cs; 72 XDrawPoint (graphic[0].display, graphic[0].window, graphic[0].gc, x, y); 73 } 74 } 59 75 break; 60 76 default: -
trunk/Ohana/src/kapa2/src/bDrawOverlay.c
r13479 r15620 72 72 dx = MAX (abs(dX),2); 73 73 dy = MAX (abs(dY),2); 74 bDrawArc (X, Y, dx, dy, 0, 360); 74 if (image[0].overlay[N].objects[i].angle == 0.0) { 75 bDrawArc (X, Y, dx, dy, 0, 360); 76 } else { 77 // very stupid rotate ellipse drawing: 78 double x, y, t; 79 double angle = image[0].overlay[N].objects[i].angle * RAD_DEG; 80 double cs = cos(angle); 81 double sn = sin(angle); 82 // XXX dt should be based on the size of the ellipse... 83 for (t = 0; t < 2*M_PI; t+=0.05) { 84 x = X + dx*cos(t)*cs + dy*sin(t)*sn; 85 y = Y - dx*cos(t)*sn + dy*sin(t)*cs; 86 bDrawPoint (x, y); 87 } 88 } 75 89 break; 76 90 default:
Note:
See TracChangeset
for help on using the changeset viewer.
