如何在JavaJTS中找到给定线段的平行线(位于源代码行上方和下方的平行线)?

如何在JavaJTS中找到给定线段的平行线(位于源代码行上方和下方的平行线)?,java,geometry,jts,Java,Geometry,Jts,如何在Java JTS(JTS拓扑套件)中找到给定线段的平行线(源线上方和下方的平行线)? 输入:我有我的源代码行的点(长和宽) 坐标1(长,横向)-坐标2(长,横向) 坐标[]坐标=新坐标(新坐标(长,纬度),新坐标(长,纬度)) 源行-> LineSegment sourceLine =new GeometryFactory().createLineString(coordinate); 现在我必须找到一条与源线平行的线,在它的上面和下面。计算起点处的方位B0 将轴承旋转90度B01=B0

如何在Java JTS(JTS拓扑套件)中找到给定线段的平行线(源线上方和下方的平行线)? 输入:我有我的源代码行的点(长和宽) 坐标1(长,横向)-坐标2(长,横向)

坐标[]坐标=新坐标(新坐标(长,纬度),新坐标(长,纬度))

源行->

LineSegment sourceLine =new GeometryFactory().createLineString(coordinate);

现在我必须找到一条与源线平行的线,在它的上面和下面。

计算起点处的方位
B0
将轴承旋转90度
B01=B0+90
并在轴承
B1

对端点执行相同操作(注意轴承略有不同),获取点
P11
<代码>PO1-P11是第一行

对由
-90
保护的轴承执行相同操作,构建第二行


为了获得具有给定距离和方向角的方向角和点

为此,在
线段
上有一个
pointAlongOffset(双段长度分数,双偏移距离)
方法。例如:

// source line from given start and end coordinate
LineSegment sourceLine = new LineSegment(startCoordinate, endCoordinate);

// left from start- to end-point (note negative offset distance!)
Coordinate startLeft = sourceLine.pointAlongOffset(0, -parallelDistance);
Coordinate endLeft = sourceLine.pointAlongOffset(1, -parallelDistance);
LineString leftLine = new GeometryFactory().createLineString(new Coordinate[]{startLeft, endLeft});
// right from start- to end-point (note positive offset distance!)
Coordinate startRight = sourceLine.pointAlongOffset(0, parallelDistance);
Coordinate endRight = sourceLine.pointAlongOffset(1, parallelDistance);
LineString rightLine = new GeometryFactory().createLineString(new Coordinate[]{startRight, endRight});