SFSETP(3NCARG)
β¨ SFSETP β¨ β the 3NCARG manual page, bestie edition π
okay so you found the SFSETP(3NCARG) page, welcome, pull up a chair π
πΈ NAME πΈ
SFSETP β defines a new dot pattern. that's it, that's the whole job, and she does it flawlessly π
π¦ SYNOPSIS π¦
CALL SFSETP (IDP)
β¨ C-BINDING SYNOPSIS β¨
#include <ncarg/ncargC.h>
void c_sfsetp (int idp[8][8])
π DESCRIPTION π
IDPβ an input array of typeINTEGER, dimensioned8x8, and she's holding nothing but0s and1s π«Ά these specify the dot pattern that gets transferred into the internal arrayLDPfor use bySFWRLDandSFNORM.
so here's the vibe: when dot fill is selected, each fill line is drawn using dots that are the same distance apart along the line as the lines are from each other. the dots therefore land on the intersection points of a square grid. each dot is associated with a particular element of LDP. if that element is a 1, the dot gets drawn; if it's a 0, the dot does not get drawn. and the association is done in such a way as to replicate the pattern specified by LDP across the entire filled area. periodt β¨
if the fill angle is 0 (which is the default, btw), then incrementing the first subscript of LDP corresponds to a horizontal motion across the plot from left to right, and incrementing the second subscript of LDP corresponds to a vertical motion across the plot from top to bottom. this means you can declare the contents of IDP in a DATA statement that literally creates a "picture" of the pattern πΈ iconic behaviour honestly.
for example, these FORTRAN statements:
DIMENSION IDP(8,8)
...
DATA IDP / 0,0,0,0,0,0,0,0,
+ 0,1,1,1,1,1,1,0,
+ 0,1,0,0,0,0,0,1,
+ 0,1,0,0,0,0,0,1,
+ 0,1,1,1,1,1,1,0,
+ 0,1,0,0,0,1,0,0,
+ 0,1,0,0,0,0,1,0,
+ 0,1,0,0,0,0,0,1/
create the letter "R", with the correct orientation. like, she draws a whole letter out of a DATA statement. main character energy fr fr π
the contents of the array IDP are transferred to the internal array LDP. the new dot pattern is used until a subsequent call to SFSETP changes the contents of LDP again. so basically, whatever you set sticks around until you say otherwise πββοΈ
the default dot pattern consists of all 1s. so if you never touch this routine, every dot is getting drawn, no skips, no gaps, we're full coverage babes π
π C-BINDING DESCRIPTION π
the C-binding argument description is the same as the FORTRAN argument description. literally identical, no notes π
π₯ USAGE π₯
this routine allows you to set the current value of Softfill's dot pattern. for a description of Softfill's dot pattern parameter, see the softfill_params man page. go read her, she has lore π
π EXAMPLES π
use the ncargex command to see the following relevant examples: sfex01, tsoftf. yes bestie, go run them, treat yourself π§
π ACCESS π
to use SFSETP or c_sfsetp, load the NCAR Graphics libraries ncarg, ncarg_gks, and ncarg_c, preferably in that order. the order matters, don't do your own thing here, trust the process π
π« SEE ALSO π«
- Online:
softfill,softfill_params,sfgetc,sfgeti,sfgetp,sfgetr,sfsetc,sfseti,sfsetr,sfsgfa,sfwrld,ncarg_cbind - Hardcopy: NCAR Graphics Fundamentals, UNIX Version
π COPYRIGHT π
Copyright (C) 1987-2009 University Corporation for Atmospheric Research The use of this Software is governed by a License Agreement.
legal girlies stay winning, always read the License Agreement π
okay that's the whole page bestie, mwah, go draw some dots πβ¨ππ¦πΈπ«Ά
this was SFSETP(3NCARG) from the UNIX manual, dated March 1993 β yeah she's vintage, she's a classic, and she still slays β
π¦ where this page comes from
- debian bookworm: libncarg-dev 6.6.2.dfsg.1-1
- debian trixie: libncarg-dev 6.6.2.dfsg.1-10+b2
- ubuntu jammy: libncarg-dev 6.6.2-10build2
- ubuntu questing: libncarg-dev 6.6.2.dfsg.1-10build2
- ubuntu resolute: libncarg-dev 6.6.2.dfsg.1-12
- ubuntu stonking: libncarg-dev 6.6.2.dfsg.1-12build2
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms