1SFWRLD(3NCARG) NCAR GRAPHICS SFWRLD(3NCARG)
2
3
4
6 SFWRLD - The subroutines SFWRLD and SFNORM are used to fill that
7 portion of the plotter frame inside the area defined by a given
8 polygonal boundary.
9
11 CALL SFWRLD (XRA,YRA,NRA,DST,NST,IND,NND)
12
13 CALL SFNORM (XRA,YRA,NRA,DST,NST,IND,NND)
14
16 #include <ncarg/ncargC.h>
17
18 void c_sfwrld (float *xra, float *yra, int nra,
19 float *dst, int nst, int *ind, int nnd)
20
21 void c_sfnorm (float *xra, float *yra, int nra,
22 float *dst, int nst, int *ind, int nnd)
23
25 XRA (an input/output array of type REAL, dimensioned NRA)
26 contains the X coordinates of the points defining the area
27 to be filled, in the user coordinate system (if SFWRLD is
28 called) or in the fractional coordinate system (if SFNORM
29 is called). Upon return from SFWRLD, the contents of XRA
30 will have been converted to the fractional coordinate
31 system.
32
33 YRA (an input/output array of type REAL, dimensioned NRA)
34 contains the Y coordinates of the points defining the area
35 to be filled, in the user coordinate system (if SFWRLD is
36 called) or in the fractional coordinate system (if SFNORM
37 is called). Upon return from SFWRLD, the contents of YRA
38 will have been converted to the fractional coordinate
39 system.
40
41 NRA (an input expression of type INTEGER) is the number of
42 points defining the area to be filled. NRA must be greater
43 than two.
44
45 DST(NST) (a scratch array of type REAL, dimensioned NST or greater)
46 is for use by the fill algorithm.
47
48 NST (an input expression of type INTEGER) is the length of the
49 array DST. It must be greater than or equal to NRA + NIM,
50 where NIM is the largest number of intersection points of
51 any fill line with the boundary lines. To be sure DST is
52 large enough, use NIM = NRA; in practice, NIM rarely needs
53 to be that large. For a convex polygon, for example, NIM =
54 2 suffices.
55
56 IND (a scratch array of type INTEGER, dimensioned NND or
57 greater) is for use by the fill algorithm.
58
59 NND (an input expression of type INTEGER) is the length of the
60 array IND. It must be greater than or equal to NRA + 2 *
61 NIM, where NIM is as defined above.
62
64 The C-binding argument descriptions are the same as the FORTRAN
65 argument descriptions.
66
68 Both SFWRLD and SFNORM fill the area defined by the points
69 (XRA(I),YRA(I)), for I from 1 to NRA. The lines connecting point 1 to
70 point 2, point 2 to point 3, ..., point NRA-1 to point NRA, and point
71 NRA to point 1 bound the area to be filled. The default values of
72 SOFTFILL's internal parameters cause fill to be done with solid,
73 horizontal lines .00125 normalized-device-coordinate units apart.
74
75 Use SFWRLD if the arrays XRA and YRA contain world coordinates. Use
76 SFNORM if XRA and YRA contain normalized device coordinates. Since
77 SFWRLD transforms XRA and YRA from world coordinates to normalized
78 device coordinates, any subsequent calls with those arrays should be to
79 SFNORM (for example, to create a cross-hatched effect).
80
82 Use the ncargex command to see the following relevant examples: cmptit,
83 agex12, cpex01, cpex02, cpex03, sfex01, vvex01, tsoftf, fsfwrld.
84
86 To use SFWRLD, SFNORM, c_sfwrld, or c_sfnorm, load the NCAR Graphics
87 libraries ncarg, ncarg_gks, and ncarg_c, preferably in that order. in
88 that order.
89
91 See the softfill man page for a description of all Softfill error
92 messages and/or informational messages.
93
95 Online: softfill, softfill_params, sfgetc, sfgeti, sfgetp, sfgetr,
96 sfsetc, sfseti, sfsetp, sfsetr, sfsgfa, ncarg_cbind
97
98 Hardcopy: NCAR Graphics Fundamentals, UNIX Version
99
101 Copyright (C) 1987-2007
102 University Corporation for Atmospheric Research
103
104 This documentation is free software; you can redistribute it and/or
105 modify it under the terms of the GNU General Public License as
106 published by the Free Software Foundation; either version 2 of the
107 License, or (at your option) any later version.
108
109 This software is distributed in the hope that it will be useful, but
110 WITHOUT ANY WARRANTY; without even the implied warranty of
111 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
112 General Public License for more details.
113
114 You should have received a copy of the GNU General Public License along
115 with this software; if not, write to the Free Software Foundation,
116 Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
117
118
119
120UNIX March 1993 SFWRLD(3NCARG)