GRASS Programmer's Manual  6.4.1(2011)
geos.c File Reference

Vector library - GEOS support. More...

#include <grass/config.h>
#include <grass/gis.h>
#include <grass/Vect.h>
#include <grass/glocale.h>
Include dependency graph for geos.c:

Go to the source code of this file.

Functions

GEOSGeometry * Vect_read_line_geos (struct Map_info *Map, int line, int *type)
 Read vector feature and stores it as GEOSGeometry instance.
GEOSGeometry * Vect_read_area_geos (struct Map_info *Map, int area)
 Read vector area and stores it as GEOSGeometry instance (polygon)
GEOSGeometry * Vect_line_to_geos (struct Map_info *Map, const struct line_pnts *points, int type)
 Create GEOSGeometry of given type from feature points.
GEOSCoordSequence * Vect_get_area_points_geos (struct Map_info *Map, int area)
 Returns the polygon array of points, i.e. outer ring (shell)
GEOSCoordSequence * Vect_get_isle_points_geos (struct Map_info *Map, int isle)
 Returns the polygon (isle) array of points (inner ring)

Detailed Description

Vector library - GEOS support.

Higher level functions for reading/writing/manipulating vectors.

(C) 2009 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:
Martin Landa <landa.martin gmail.com>

Definition in file geos.c.


Function Documentation

GEOSCoordSequence* Vect_get_area_points_geos ( struct Map_info *  Map,
int  area 
)

Returns the polygon array of points, i.e. outer ring (shell)

You should free allocated memory by GEOSCoordSeq_destroy().

See also Vect_get_area_points().

Parameters:
Mappointer to Map_info
areaarea id
Returns:
pointer to GEOSCoordSequence
empty GEOSCoordSequence for dead area
NULL on error

Definition at line 399 of file geos.c.

Referenced by Vect_read_area_geos().

GEOSCoordSequence* Vect_get_isle_points_geos ( struct Map_info *  Map,
int  isle 
)

Returns the polygon (isle) array of points (inner ring)

You should free allocated memory by GEOSCoordSeq_destroy().

See also Vect_get_isle_points().

Parameters:
Mappointer to Map_info
isleisel id
Returns:
pointer to GEOSGeometry
NULL on error or dead line

Definition at line 430 of file geos.c.

Referenced by Vect_read_area_geos().

GEOSGeometry* Vect_line_to_geos ( struct Map_info *  Map,
const struct line_pnts *  points,
int  type 
)

Create GEOSGeometry of given type from feature points.

Supported types:

  • GV_POINT -> POINT
  • GV_LINE -> LINESTRING
  • GV_BOUNDARY -> LINEARRING

You should free allocated memory by GEOSGeom_destroy().

Parameters:
Mappointer to Map_info structure
typefeature type (see supported types)
Returns:
pointer to GEOSGeometry instance
NULL on error

Definition at line 128 of file geos.c.

References Vect_is_3d().

GEOSGeometry* Vect_read_area_geos ( struct Map_info *  Map,
int  area 
)

Read vector area and stores it as GEOSGeometry instance (polygon)

You should free allocated memory by GEOSGeom_destroy().

Parameters:
Mappointer to Map_info structure
areaarea id
Returns:
pointer to GEOSGeometry instance
NULL on error

Definition at line 82 of file geos.c.

References Vect_get_area_isle(), Vect_get_area_num_isles(), Vect_get_area_points_geos(), and Vect_get_isle_points_geos().

GEOSGeometry* Vect_read_line_geos ( struct Map_info *  Map,
int  line,
int *  type 
)

Read vector feature and stores it as GEOSGeometry instance.

Supported feature types:

  • GV_POINT -> POINT
  • GV_LINE -> LINESTRING
  • GV_BOUNDARY -> LINESTRING / LINEARRING

You should free allocated memory by GEOSGeom_destroy().

Parameters:
Mappointer to Map_info structure
linefeature id
[out]typefeature type or NULL
Returns:
pointer to GEOSGeometry instance
empty GEOSGeometry for unsupported feature type
NULL on error

Definition at line 46 of file geos.c.

References Vect_get_full_name().

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines