GEOS
3.14.0dev
include
geos
linearref
ExtractLineByLocation.h
1
/**********************************************************************
2
*
3
* GEOS - Geometry Engine Open Source
4
* http://geos.osgeo.org
5
*
6
* Copyright (C) 2005-2006 Refractions Research Inc.
7
* Copyright (C) 2001-2002 Vivid Solutions Inc.
8
*
9
* This is free software; you can redistribute and/or modify it under
10
* the terms of the GNU Lesser General Public Licence as published
11
* by the Free Software Foundation.
12
* See the COPYING file for more information.
13
*
14
**********************************************************************
15
*
16
* Last port: linearref/ExtractLineByLocation.java rev. 1.10
17
*
18
**********************************************************************/
19
20
#pragma once
21
22
#include <geos/geom/Coordinate.h>
23
#include <geos/geom/Geometry.h>
24
#include <geos/linearref/LinearLocation.h>
25
26
namespace
geos
{
27
namespace
linearref {
// geos::linearref
28
33
class
ExtractLineByLocation
{
34
35
private
:
36
const
geom::Geometry
* line;
37
std::unique_ptr<geom::Geometry> reverse(
const
geom::Geometry
* linear);
38
46
std::unique_ptr<geom::LineString> computeLine(
const
LinearLocation
& start,
const
LinearLocation
& end);
47
55
std::unique_ptr<geom::Geometry> computeLinear(
const
LinearLocation
& start,
const
LinearLocation
& end);
56
57
public
:
70
static
std::unique_ptr<geom::Geometry>
extract
(
const
geom::Geometry
* line,
const
LinearLocation
& start,
const
LinearLocation
& end);
71
72
ExtractLineByLocation
(
const
geom::Geometry
* line);
73
83
std::unique_ptr<geom::Geometry>
extract
(
const
LinearLocation
& start,
const
LinearLocation
& end);
84
85
};
86
87
}
88
}
geos::geom::Geometry
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Definition
Geometry.h:197
geos::linearref::ExtractLineByLocation
Extracts the subline of a linear Geometry between two LinearLocations on the line.
Definition
ExtractLineByLocation.h:33
geos::linearref::ExtractLineByLocation::extract
static std::unique_ptr< geom::Geometry > extract(const geom::Geometry *line, const LinearLocation &start, const LinearLocation &end)
Computes the subline of a LineString between two LinearLocations on the line.
geos::linearref::ExtractLineByLocation::extract
std::unique_ptr< geom::Geometry > extract(const LinearLocation &start, const LinearLocation &end)
Extracts a subline of the input.
geos::linearref::LinearLocation
Represents a location along a LineString or MultiLineString.
Definition
LinearLocation.h:43
geos
Basic namespace for all GEOS functionalities.
Definition
geos.h:39
Generated by
1.9.8