|
|
ym = (int) (dy2 + backlen * sin( phi + beta )); | ym = (int) (dy2 + backlen * sin( phi + beta )); |
} | } |
#ifdef PM3D | #ifdef PM3D |
if (curr_arrow_headfilled==2) { |
if (curr_arrow_headfilled==2 && !clip_point(ex,ey)) { |
/* draw filled forward arrow head */ | /* draw filled forward arrow head */ |
filledhead[0].x = ex + xm; | filledhead[0].x = ex + xm; |
filledhead[0].y = ey + ym; | filledhead[0].y = ey + ym; |
|
|
filledhead[3].y = ey + y2; | filledhead[3].y = ey + y2; |
filledhead[4].x = ex + xm; | filledhead[4].x = ex + xm; |
filledhead[4].y = ey + ym; | filledhead[4].y = ey + ym; |
(*t->filled_polygon) (5, filledhead); |
if (t->filled_polygon) |
|
(*t->filled_polygon) (5, filledhead); |
} | } |
#endif | #endif |
/* draw outline of forward arrow head */ | /* draw outline of forward arrow head */ |
|
|
} | } |
if (head == 2) { /* backward arrow head */ | if (head == 2) { /* backward arrow head */ |
#ifdef PM3D | #ifdef PM3D |
if (curr_arrow_headfilled==2) { |
if (curr_arrow_headfilled==2 && !clip_point(sx,sy)) { |
/* draw filled backward arrow head */ | /* draw filled backward arrow head */ |
filledhead[0].x = sx - xm; | filledhead[0].x = sx - xm; |
filledhead[0].y = sy - ym; | filledhead[0].y = sy - ym; |
|
|
filledhead[3].y = sy - y2; | filledhead[3].y = sy - y2; |
filledhead[4].x = sx - xm; | filledhead[4].x = sx - xm; |
filledhead[4].y = sy - ym; | filledhead[4].y = sy - ym; |
(*t->filled_polygon) (5, filledhead); |
if (t->filled_polygon) |
|
(*t->filled_polygon) (5, filledhead); |
} | } |
#endif | #endif |
/* draw outline of backward arrow head */ | /* draw outline of backward arrow head */ |