JTS User's Guide

Contents

1. Introduction


Layout of this Document
Design Philosophies

Part 1 - Geometry Model


Basic Geometric Classes
Coordinate
Envelope
LineSegment
Triangle

Coordinate Sequence API
CoordinateSequence
CoordinateSequenceFactory
CoordinateArraySequence
PackedCoordinateSequence

Precision Models
Robustness
Geometry API
Point
LineString
LinearRing
Polygon
MultiPoint
MultiLineString
MultiPolygon
GeometryCollection

Part 2 - Geometry Operations

Validation
isValid()
Spatial Predicates
The Dimensionally Extended 9-Intersection Model
intersects()
contains()
within()
covers()
equals()
Boolean Operations
intersection()
union()
difference()
symDifference()
Buffering

Metrics - Distance, Length and Area
distance()
getArea()
getLength()

Geometry Comparison
equalsExact()
normalize()

Geometry Accessing & Editing
2. Input and Output
WKTWriter
WKTReader
WKBWriter
WKBReader

Part 3 - Further Geometric Processing


Detailed Validation
Polygonization
Line Merging
Linear Referencing
Geometry Simplification
Coverages

Part 4 - Algorithms and Data Structures


Basic Algorithms
Orientation
Point-In-Ring
Length
Area

Line Segment Intersection
Spatial Indexing
Quadtree
STR Tree
BinTree

Noding
Basic Noding
Indexed Noding
Snap-Rounding

Planar Graphs
Structure
Algorithms

Topology
Structure
Operations

Part 5 - Case Studies


Unique Segments
Geometry Diff
Linear Overlay

References

Egenhofer
O'Rourke
Preparata & Shamos
STR tree
Samet - Quadtree
SoftSurfer
JUMP
OGC SFS
Douglas-Peucker
Yap or someone - Robustness
DeVilliers
Snap-Rounding