Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | Related Pages

geos::geom::util::GeometryEditor Class Reference

#include <GeometryEditor.h>

List of all members.

Public Member Functions

 GeometryEditor ()
 GeometryEditor (const GeometryFactory *newFactory)
Geometryedit (const Geometry *geometry, GeometryEditorOperation *operation)


Detailed Description

Supports creating a new Geometry which is a modification of an existing one. Geometry objects are intended to be treated as immutable. This class allows you to "modify" a Geometry by traversing it and creating a new Geometry with the same overall structure but possibly modified components.

The following kinds of modifications can be made:

Note that all changes must be consistent with the original Geometry's structure (e.g. a Polygon cannot be collapsed into a LineString).

The resulting Geometry is not checked for validity. If validity needs to be enforced, the new Geometry's isValid should be checked.

See also:
Geometry::isValid


Constructor & Destructor Documentation

geos::geom::util::GeometryEditor::GeometryEditor  ) 
 

Creates a new GeometryEditor object which will create an edited Geometry with the same GeometryFactory as the input Geometry.

geos::geom::util::GeometryEditor::GeometryEditor const GeometryFactory newFactory  ) 
 

Creates a new GeometryEditor object which will create the edited Geometry with the given GeometryFactory

Parameters:
newFactory the GeometryFactory to create the edited Geometry with


Member Function Documentation

Geometry* geos::geom::util::GeometryEditor::edit const Geometry geometry,
GeometryEditorOperation operation
 

Edit the input Geometry with the given edit operation. Clients will create subclasses of GeometryEditorOperation or CoordinateOperation to perform required modifications.

Parameters:
geometry the Geometry to edit
operation the edit operation to carry out
Returns:
a new Geometry which is the result of the editing


The documentation for this class was generated from the following file:
Generated on Sun Aug 21 23:21:02 2011 for GEOS by  doxygen 1.3.9.1