NAME

s.in.ascii - Converts an ASCII listing of site locations and their descriptions into a GRASS site list file.
(GRASS Sites Program)

SYNOPSIS

s.in.ascii
s.in.ascii help
s.in.ascii sites=name [input=name] [d=value] [fs=character|space|tab]

DESCRIPTION

s.in.ascii converts an ASCII listing of site locations and category labels into a file in GRASS site list file format.

Input can be entered via standard input or from the file input=name. Each line of input should contain the easting, northing, and (optionally) the category label associated with a site. The fs=name option (where name is either a character, a space, or a tab) can be used to specify the use of a particular field separator between these three input fields. This is useful when input is obtained from other programs (see NOTES, below). Output is stored in the file sites=name and placed in the site_lists directory under the user's current mapset.

The GRASS program s.out.ascii can be used to perform the reverse function, converting a file in GRASS site list format into an ASCII listing of eastings, northings, and category labels associated with site locations.

Parameters:

sites=name
Name of the new GRASS site list file to be output.
input=name
Name of an existing ASCII file containing site locations and labels.
d=value
number of dimensions (default=2)
"fs=character|space|tab"
The field separator separating the easting, northing, and category label in each line of the input file. The field separator can be a character, a space, or a tab.
Default: space

s.in.ascii can be run either non-interactively or interactively. The program will be run non-interactively if the user specifies a name to be assigned to the sites file output, the name of an existing ASCII file containing input, and (optionally) a field separator fs appearing in the input file, using the form:

s.in.ascii sites=name [input=name] [fs=character|space|tab]

Alternately, the user can simply type s.in.ascii on the command line, without program arguments. In this case, the user will be prompted for parameter values using the standard GRASS parser interface described in the manual entry for parser. If the user does not specify the name of an input file containing site locations and (optionally) category labels, these should be entered to the program via standard input. The parameter d allows to specify that more than 2 dimensions will be imported. Otherwise the third (or further) column in input file is treated as attribute.

GRASS 5.0 internal sites format in "sites_list/"

If the user wants to directly generate site files, the following information can be used:
Each line of the ascii input file should contain either two or three coordinates (x,y and optionally z) separated by a user-selectable field-delimiting character. After the coordinates there are optional attribute fields separated from the coordinates and from each other with the same user-selectable field delimiter.

The attribute field may be a category number, a decimal value or a string. Category numbers must be preceded by the "#" character and string values must be preceded by the "@" character. Floating point values may be preceded by the "%" character but if there is no "#" or "@" preceding the attribute then it is assumed to be a floating point value. Also, string values that contain blanks must be quoted or the part of the string following the first blank will be parsed as a separate field, which may cause an error.

easting|northing|[z|[d4|]...][#category_int] [ [@attr_text OR %flt] ... ]

such as:

739865.8|4279785.5|#2965 %396685 %194919 %160392 %10941 %2.473222 @"St.Louis" @MO @city

There can be many dimensions between pipes (|), but no #%@.

There can be only one cat, preceded by #, then there may be many FP or text attributes.

NOTES

Other GRASS programs can be used to produce output in a format suitable for input to s.in.ascii. For example, the user might pipe output produced by d.where into s.in.ascii to create a site list file called my.sites containing site locations pointed to with the mouse, as illustrated below. In this example it was unnecessary to specify the field separator used in the input, since d.where output separates the easting and northing values with spaces, and spaces are the default field separator assumed by s.in.ascii.

d.where | s.in.ascii sites=my.sites

SEE ALSO

d.points
d.sites
d.what.rast
d.where
s.out.ascii
parser

AUTHOR

Michael Shapiro, U.S. Army Construction Engineering Research Laboratory