1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
|
/*!
\file type.c
\brief Vector library - feature type
Higher level functions for reading/writing/manipulating vectors.
(C) 2001-2008 by the GRASS Development Team
This program is free software under the
GNU General Public License (>=v2).
Read the file COPYING that comes with GRASS
for details.
\author Radim Blazek
\date 2001
*/
#include <grass/gis.h>
#include <grass/Vect.h>
/*!
\brief Get types from options
\param type_opt Option structure
\return types
\return -1 on error
*/
int Vect_option_to_types(struct Option *type_opt)
{
int i = 0;
int type = 0;
while (type_opt->answers[i]) {
switch (type_opt->answers[i][0]) {
case 'p':
type |= GV_POINT;
break;
case 'l':
type |= GV_LINE;
break;
case 'b':
type |= GV_BOUNDARY;
break;
case 'c':
type |= GV_CENTROID;
break;
case 'f':
type |= GV_FACE;
break;
case 'k':
type |= GV_KERNEL;
break;
case 'a':
type |= GV_AREA;
break;
case 'v':
type |= GV_VOLUME;
break;
}
i++;
}
return type;
}
|