2008-12-11 18:17:57 by Greg Troxel | Files touched by this commit (2) |
Log message:
Update to 3.0.3. Add TEST_TARGET. From NEWS:
Changes in 3.0.3
- Bug fixes.
|
2008-10-18 01:04:17 by Greg Troxel | Files touched by this commit (3) |
Log message:
Update to 3.0.2.
From NEWS:
Changes in 3.0.1
- To be added
|
2008-02-16 02:29:00 by Greg Troxel | Files touched by this commit (4) |
Log message:
revbump due to geography/geos shlib major bump
|
2008-02-16 02:23:28 by Greg Troxel | Files touched by this commit (3) | |
Log message:
Update to 3.0.0.
Changes in 3.0.0
These are mostly ABI breaking changes.
In few cases the API also changed, but the most external one
(the documented one) should be unchanged.
- New things:
- Added geom::BinaryOp class performing a binary operation
using different heuristics to reduce probability of robustness
issues. Both C-API and XMLTester now use this class for
binary operations.
- Added covers() and coveredBy() predicates to Geometry class
- Added overlay::overlayOp() adapter class
- Added GEOSSimplify() and GEOSTopologyPreserveSimplify()
to the C API
- Added closed ring checks in IsValidOp
- Multi-input support in XMLTester
- HEXWKB I/O
- Envelope(string) ctor
- Ruby interface
- New ShortCircuitedGeometryVisitor class
- New operation/predicate package
- Added CGAlgorithms::isPointInRing() version working with
Coordinate::ConstVect type (faster!)
- Added getAt(int pos, Coordinate &to) funtion to CoordinateSequence
class.
- Moved GetNumGeometries() and GetGeometryN() interfaces
from GeometryCollection to Geometry class.
- New planarSubgraph class
- New ConnectedSubgraphFinder class.
- New LineSequencer class
- New WKTWriter::toLineString and ::toPoint convenience methods
- New IsValidOp::setSelfTouchingRingFormingHoleValid method
- New WKTWriter::toLineString and ::toPoint convenience methods
- New IsValidOp::setSelfTouchingRingFormingHoleValid method
- New Envelope::centre()
- New Envelope::intersection(Envelope)
- New Envelope::expandBy(distance, [ydistance])
- New LineString::reverse()
- New MultiLineString::reverse()
- New Geometry::buffer(distance, quadSeg, endCapStyle)
- New SnapRounding code
- New size() and operator[] interfaces to CoordinateSequence
- New ScaledNoder class
- New unit tests (make check rule)
- Optimizations:
- WKT parser speedup
- Function inlining
- Coordinate copies reduction
- Heap allocations reduction
- More classes made final
- Better use of standard containers
- Use of singletons when appropriate
- Removed many function calls in loops' end conditions
- Improved XMLTester output and user interface
- Improved memory use in geos::geom::util::PolygonExtractor
- Ported JTS-1.7 version of ConvexHull with big attention to
memory usage optimizations.
- Changed CoordinateArrayFilter to reduce memory copies
- Changed UniqueCoordinateArrayFilter to reduce memory copies
- Added rectangle-based optimizations of intersects() and
contains() ops
- Inlined all planarGraphComponent class
- More iterators returning methods and inlining in planargraph.
- Obsoleted toInternalGeometry/fromInternalGeometry
- Improved buffering speed and robustness by using Snap Rounding
- Semantic changes
- SegmentString: getCoordinates() doesn't return a clone
anymore, getCoordinatesRO() obsoleted.
- JTS packages mapped to geos:: sub-namespaces
- Geometry::getInteriorPoint() returns NULL if called
against an EMPTY geom
- LineString::get{Start,End}Point return NULL for
EMPTY geoms
- GEOSException is now derived by std::runtim_exception
and thrown by const reference.
- Geometry constructors made protected, to force use
of a GeometryFactory.
- Correctness:
- More const-correct signatures
- Stronger methods typing (removed some void * args).
- Changed index-related funx signatures to use size_t
rather then int
- More const-correctness in Buffer "package"
- Bugfix in LineString::getCoordinate() failing to return
NULL from getCoordinat() when empty.
- Use unsigned int for indexes and sizes.
- Layout changes:
- Namespaces mapping JTS packages
- Renamed classes after JTS names (namespaces use made this possible
w/out name clashes)
- Splitted headers, for build speedup and possible API reduction.
- Moved source/bigtest and source/test to tests/bigtest
and test/xmltester
- Moved C-API in it's own top-level dir capi/
- Reworked automake scripts to produce a static lib for each subdir
and then link all subsystem's libs togheter
- Renamed DefaultCoordinateSequence to CoordinateArraySequence.
- Renamed OverlayOp opcodes by prepending the 'op' prefix, and
given the enum a name (OpCode) for type-safety.
- Bug fixes:
- Fixed bug causing redundant linestrings to be returned in the
result of overlaying polygons containing touching holes (#13)
- Fixed integer conversion bug
- Fixed PointLocator handling of LinearRings
- Added missing ::clone() methods for Multi* geoms
- (Partial) Detailed list of changes:
- Changed SegmentNode to contain a *real* Coordinate (not a pointer)
to reduce construction costs.
- Changed geomgraph nodeMap to use Coordinate pointers as keys
- Envelope destructor made non-virtual to give compiler more static
binding options.
- Changed BufferSubgraph::computeDepths to use a set instead of a
vector for checking visited Edges.
- Made LineIntersector a concrete type
- Node::isIncidentEdgeInResult() method made virtual
- Const-correct signatures in LineMerger package
- Changed operation/valid/*NestedRingTester classes interface
to use Coordinate pointers instead of copies.
- Changed EdgeIntersectionList to use a set instead of a vector
- Changed DepthSegment to store a real Coordinate rather then a pointer.
- Changed SubgraphDepthLocater to store real containers rather then
pointers.
- Changed BufferSubgraph to store a real RightmostEdgeFinder and real
containers rather then pointers.
- CoordinateSequence API changes:
- point index and size related functions
use unsigned int rather then int
- Changed EdgeEndStar to maintain a single container for EdgeEnds
- Changed PlanarGraph::addEdges to take a const vector by ref
rathern then a non-const vector by pointer
- Changed EdgeList::addAll to take a const vector by ref
rather then a non-const vector by pointer
- Added apply_rw(CoordinateFilter *) and apply_ro(CoordinateFilter *)
const to CoordinateSequence
- LineBuilder::lineEdgesList made a real vector, rather then pointer
(private member)
- SegmentString::eiList made a real SegmentNodeList, rather then
a pointer (private member)
- Removed coordinate copies in ElevationMatrix::elevate
- Changed CoordinateFilter interface to have a const method
for filter_rw, updated interfaces using this to take
const CoordinateFilter (apply_rw).
|
2007-08-16 02:23:09 by Joerg Sonnenberger | Files touched by this commit (1) |
Log message:
Supports DESTDIR.
|
2006-11-30 22:42:28 by Juan Romero Pardines | Files touched by this commit (4) | |
Log message:
Remove stalled patches from previous update. (hi gdt)
|
2006-11-10 22:18:54 by Greg Troxel | Files touched by this commit (1) |
Log message:
bump required version (geos-config has a new option).
No PKGREVISION++ (riding upgrade < 1 hour ago).
|
2006-11-10 22:00:23 by Greg Troxel | Files touched by this commit (4) |
Log message:
Update to 2.2.3. (Minor and irrelevant changes omitted.)
Take maintainership.
Changes in 2.2.3
- CAPI: multiple finishGEOS() calls made harmless.
Changes in 2.2.2
- Added LinearRing::clone
- Added GEOSArea(), GEOSLength(), GEOSEnvelope(), and GEOSGeomType() to C API
- Cleanups in C-API
- Support for gcc-4
- Fixed Polygon::equalsExact
- Fixed bug in NULL-factory Geometry constructor
- Cleanups in SWIG wrappers
- New Ruby bindings
- Enumerated SweepLineEvent's DELETE and INSERT labels
renamed to DELETE_EVENT and INSERT_EVENT.
- Fixed geos-config to use system-specific libs path
- Accept correct WKT format for MultiPoints
- SRID support in (E)WKB reader.
Changes in 2.2.0
- Higher dimensions interface for CoordinateSequence
- Added getCoordinatesRO for Point class
- NEW WKB IO
- NEW Simplified and stabler C API
Changes in 2.1.4
- Severe BUGFIX in BufferSubgraphGT and other functions used
as StrictWeakOrdering predicates for sort()
Changes in 2.1.3
- XMLTester installed by default
- New Node::isIncidentEdgeInResult() method
Changes in 2.1.2
- Added multipolygon buffering test in source/test/testLeaksBig
- Ported JTS robustness patch for RobustLineIntersector
- Removed useless Coordinate copies in OverlayOp::mergeZ()
- Avoided throws by IsValid on invalid input
- Stricter C++ syntax (math.h=>cmath, ieeefp.h in "C" block, \
ostringstream
instead of sprintf)
- Better support for older compilers (Polygonizer::LineStringAdder friendship)
- Removed useless Coordinate copies in CGAlgorithms::isOnLine()
- Added support for polygonize and parametrized buffer tests in XMLTester
- Fixed Z interpolation in LineIntersector
- Made polygon::getBoundary() always OGC-valid (no LinearRings)
- Input checking and promoting in GeometryFactory::createMultiLineString()
- Segfault fix in GeometryEditor::editPolygon()
Changes in 2.1.1
- Fixed uninitialized Coordinate in TopologyException
- Added install of version.h, platform.h and timeval.h
- Z interpolation in overlay operations
Changes in 2.1.0
- Added Polygonizer and LineMerger classes.
- python wrapper examples
- Z support in overlay operations.
|
2006-09-20 18:01:48 by Greg Troxel | Files touched by this commit (3) |
Log message:
Add @LDFLAGS@ to tools/geos-config.in, so that 'geos-config --libs'
prints
-L/usr/pkg/lib -Wl,-R/usr/pkg/lib -lgeos
instead of
-L/usr/pkg/lib -lgeos
|
2006-08-24 20:30:25 by Thomas Klausner | Files touched by this commit (2) |
Log message:
Fix build with gcc4. Patch provided by Brook Milligan
in PR 34273.
|