21 #ifndef GEOS_LINEARREF_LENGTHLOCATIONMAP_H
22 #define GEOS_LINEARREF_LENGTHLOCATIONMAP_H
24 #include <geos/geom/Coordinate.h>
25 #include <geos/geom/Geometry.h>
26 #include <geos/linearref/LinearLocation.h>
37 class LengthLocationMap
42 const geom::Geometry *linearGeom;
44 LinearLocation getLocationForward(
double length)
const;
46 LinearLocation resolveHigher(
const LinearLocation& loc)
const;
63 static LinearLocation
getLocation(
const geom::Geometry *linearGeom,
double length)
65 LengthLocationMap locater(linearGeom);
66 return locater.getLocation(length);
80 static LinearLocation
getLocation(
const geom::Geometry *linearGeom,
double length,
bool resolveLower)
82 LengthLocationMap locater(linearGeom);
83 return locater.getLocation(length, resolveLower);
94 static double getLength(
const geom::Geometry *linearGeom,
const LinearLocation& loc);
96 LengthLocationMap(
const geom::Geometry *linearGeom);
110 LinearLocation
getLocation(
double length,
bool resolveLower)
const;
125 double getLength(
const LinearLocation& loc)
const;