10/10/03
CHAPTER 4 HP-GL/2 - 29
10 ' - Fill Wedge -
20 WIDTH "LPT1:", 255
30 LPRINT CHR$(27); "E";
40 LPRINT CHR$(27); "%0B";
50 LPRINT "IN;SP2;FT3,100;"
60 LPRINT "PA2000,5000;"
70 LPRINT "WG1250,90,180,5;"
80 LPRINT "SP3;EW1250,90,180,5;"
90 LPRINT "SP4;FT4,100,45;"
100 LPRINT "WG1250,270,120;"
110 LPRINT "SP3;EW1250,270,120;"
120 LPRINT "SP1;FT1;"
130 LPRINT "WG1250,30,60;"
140 LPRINT "SP3;EW1250,30,60;"
150 LPRINT CHR$(27); "%0A";
160 LPRINT CHR$(27); "E";
170 END
<Sample 36>
FP - Fill polygon
FP [;]
FP [ n ] [;]
n ; fill method
• This command fills the polygon currently stored in the polygon buffer.
• The command does not clear the buffer or alter the data at all.
• The command fills between points defined when the pen was up or down.
• If a polygon is composed of sub-polygons, the command fills alternate areas.
• On completion of the plot the cursor returns to the original position.
• The command performs a fill irrespective of whether the pen is currently up or down.
• You can specify the fill method. There are two types of fill method.
• 0 specifies the even/odd fill method.
Places a point within the polygon and draws a straight line from it to the outside of polygon. If the cross
point of the straight line and polygon edges are an odd count, the polygon which includes the start point is
filled.
*
*
*
2 time
s
1 time
• 1 specifies Non-zero winding fill method.
10 '- Fill Polygon -
20 WIDTH "LPT1:",255
30 LPRINT CHR$(27); "E";
40 LPRINT CHR$(27); "%0B";
50 LPRINT "IN;SP1;";
60 LPRINT "PA1500,1500;PM0;CI1000,60;PM1;"
70 LPRINT "CI500;PM1;PM2;"
80 LPRINT "LT4;FT3,50,45;"
90 LPRINT "FP;"
100 LPRINT CHR$(27); "%0A";
110 LPRINT CHR$(27); "E";
120 END
<Sample 37>