Merge branch 'master' of gitlab.navinfo.com:CollectVehicle/OneMapQS

This commit is contained in:
2023-10-25 09:22:06 +08:00
16 changed files with 194 additions and 61 deletions

View File

@@ -1561,7 +1561,6 @@
<!-- 杆状物 -->
<m v="OMDB_POLE">
<!-- <line stroke="#000000" width="2" cap="butt"></line>-->
<symbol src="assets:omdb/icon_pole_3006.svg" symbol-height="56" symbol-width="56"></symbol>
</m>
@@ -1653,6 +1652,10 @@
</m>
<m k="boundaryType" v="2">
<!--标线-->
<m k="markType" v="0">
<line stroke="#eccc68" use="boundaryType" />
</m>
<!--标线-->
<m k="markType" v="1">
<m k="markColor" v="1">

View File

@@ -33,6 +33,7 @@ enum class DataCodeEnum(var tableName: String, var code: String) {
OMDB_RAMP_7("高速直连出口匝道高速出入口匝道", "2037-7"),
OMDB_MULTI_DIGITIZED("上下线分离", "2040"),
OMDB_LANE_NUM("车道数", "2041"),
OMDB_PHY_LANENUM("物理车道数", "2097"),
OMDB_VIADUCT("高架", "2043"),
OMDB_RDBOUND_BOUNDARYTYPE("道路边界类型", "2083"),
OMDB_LANE_CONSTRUCTION("车道施工", "2090"),

View File

@@ -1531,6 +1531,35 @@ public class GeometryTools {
return "";
}
/**
* @param dist 0.00001为一米 大于0为左侧小于0为右侧
* @param wkt 几何
* @return
*/
public static String computeLine(Double dist,String wkt){
if(!TextUtils.isEmpty(wkt)){
Geometry lineString1 = GeometryTools.createGeometry(wkt);
BufferParameters parameters1 = new BufferParameters();
parameters1.setJoinStyle(BufferParameters.CAP_FLAT);
parameters1.setEndCapStyle(BufferParameters.CAP_FLAT);
parameters1.setSingleSided(true);
Geometry buffer = BufferOp.bufferOp(lineString1, dist, parameters1);
int coorsLength = lineString1.getCoordinates().length;
List<Coordinate> list = new ArrayList<>();
for (int i = coorsLength; i < buffer.getCoordinates().length-1; i++) {
list.add(buffer.getCoordinates()[i]);
}
Coordinate[] coordinates = new Coordinate[list.size()];
for (int i = 0; i < list.size(); i++) {
coordinates[i] = list.get(i);
}
String lineString = createLineString(coordinates).toString();
return lineString;
}
return "";
}
public static FootAndDistance pointToLineDistance(GeoPoint point, Geometry geometry) {
//定义垂线
FootAndDistance pointPairDistance = new FootAndDistance(point);