增加物理车道数渲染及屏蔽物理车道数道路属性
This commit is contained in:
parent
1d0611b7e9
commit
2f513c8b43
@ -65,8 +65,8 @@
|
|||||||
"table": "OMDB_LINK_NAME",
|
"table": "OMDB_LINK_NAME",
|
||||||
"code": 2011,
|
"code": 2011,
|
||||||
"name": "道路名",
|
"name": "道路名",
|
||||||
"zoomMin": 18,
|
"zoomMin": 15,
|
||||||
"zoomMax": 20,
|
"zoomMax": 17,
|
||||||
"checkLinkId": false,
|
"checkLinkId": false,
|
||||||
"transformer": [
|
"transformer": [
|
||||||
{
|
{
|
||||||
@ -246,7 +246,18 @@
|
|||||||
"2097": {
|
"2097": {
|
||||||
"table": "OMDB_PHY_LANENUM",
|
"table": "OMDB_PHY_LANENUM",
|
||||||
"code": 2097,
|
"code": 2097,
|
||||||
"name": "物理车道数"
|
"name": "物理车道数",
|
||||||
|
"zoomMin": 15,
|
||||||
|
"zoomMax": 18,
|
||||||
|
"catch": true,
|
||||||
|
"transformer": [
|
||||||
|
{
|
||||||
|
"k": "geometry",
|
||||||
|
"v": "~",
|
||||||
|
"klib": "geometry",
|
||||||
|
"vlib": "generatePhyName()"
|
||||||
|
}
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"2201": {
|
"2201": {
|
||||||
"table": "OMDB_BRIDGE",
|
"table": "OMDB_BRIDGE",
|
||||||
|
@ -740,6 +740,15 @@ class ImportPreProcess {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生成默认物理车道数据
|
||||||
|
* */
|
||||||
|
fun generatePhyName(renderEntity: RenderEntity) {
|
||||||
|
// 物理车道数
|
||||||
|
if (renderEntity.properties.containsKey("laneS2e")&&renderEntity.properties.containsKey("laneE2s")) {
|
||||||
|
renderEntity.properties["name"] = "${renderEntity.properties["laneS2e"]}|${renderEntity.properties["laneE2s"]}"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 生成默认道路名数据
|
* 生成默认道路名数据
|
||||||
@ -1224,6 +1233,8 @@ class ImportPreProcess {
|
|||||||
if (renderEntity.properties.containsKey("maxSpeed") && renderEntity.properties.containsKey("minSpeed")) {
|
if (renderEntity.properties.containsKey("maxSpeed") && renderEntity.properties.containsKey("minSpeed")) {
|
||||||
renderEntity.properties["ref"] =
|
renderEntity.properties["ref"] =
|
||||||
"${renderEntity.properties["maxSpeed"]}|${renderEntity.properties["minSpeed"]}"
|
"${renderEntity.properties["maxSpeed"]}|${renderEntity.properties["minSpeed"]}"
|
||||||
|
renderEntity.propertiesDb =
|
||||||
|
DeflaterUtil.zipString(JSON.toJSONString(renderEntity.properties))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1243,13 +1254,11 @@ class ImportPreProcess {
|
|||||||
val linkGeometry =
|
val linkGeometry =
|
||||||
GeometryTools.createGeometry(zLevelObject.optString("linkGeometry"))
|
GeometryTools.createGeometry(zLevelObject.optString("linkGeometry"))
|
||||||
val coordinates = linkGeometry!!.coordinates
|
val coordinates = linkGeometry!!.coordinates
|
||||||
val referenceEntityList = mutableListOf<ReferenceEntity>()
|
|
||||||
// 判断当前数据的startEnd,如果是0则向前和向后都绘制线,如果是1(起点)则只绘制前两个点组成的线,如果是2(终点)则只绘制后两个点组成的线
|
// 判断当前数据的startEnd,如果是0则向前和向后都绘制线,如果是1(起点)则只绘制前两个点组成的线,如果是2(终点)则只绘制后两个点组成的线
|
||||||
if (startEnd == 0 || startEnd == 1) { // 处理向后的线
|
if (startEnd == 0 || startEnd == 1) { // 处理向后的线
|
||||||
val zLevelReference = createZLevelReference(renderEntity)
|
val zLevelReference = createZLevelReference(renderEntity)
|
||||||
zLevelReference.properties["type"] = "zlevelLine"
|
zLevelReference.properties["type"] = "zlevelLine"
|
||||||
// zLevelReference.properties["name"] = zLevel.toString()
|
zLevelReference.propertiesDb = DeflaterUtil.zipString(JSON.toJSONString(zLevelReference.properties))
|
||||||
// 根据shpSeqNum获取对应的点位
|
|
||||||
if (shpSeqNum < coordinates.size - 1) {
|
if (shpSeqNum < coordinates.size - 1) {
|
||||||
val currentCoordinate = coordinates[shpSeqNum]
|
val currentCoordinate = coordinates[shpSeqNum]
|
||||||
var nextCoordinate = coordinates[shpSeqNum + 1]
|
var nextCoordinate = coordinates[shpSeqNum + 1]
|
||||||
@ -1279,26 +1288,25 @@ class ImportPreProcess {
|
|||||||
), GeoPoint(nextCoordinate.y, nextCoordinate.x)
|
), GeoPoint(nextCoordinate.y, nextCoordinate.x)
|
||||||
)
|
)
|
||||||
).toString()
|
).toString()
|
||||||
|
renderEntity.referenceEntitys.add(zLevelReference)
|
||||||
referenceEntityList.add(zLevelReference)
|
|
||||||
|
|
||||||
val zLevelNameReference = createZLevelReference(renderEntity)
|
val zLevelNameReference = createZLevelReference(renderEntity)
|
||||||
zLevelNameReference.properties["type"] = "zlevelName"
|
zLevelNameReference.properties["type"] = "zlevelName"
|
||||||
zLevelNameReference.properties["name"] = zLevel.toString()
|
zLevelNameReference.properties["name"] = zLevel.toString()
|
||||||
|
zLevelNameReference.propertiesDb = DeflaterUtil.zipString(JSON.toJSONString(zLevelNameReference.properties))
|
||||||
zLevelNameReference.geometry = GeometryTools.createGeometry(
|
zLevelNameReference.geometry = GeometryTools.createGeometry(
|
||||||
GeoPoint(
|
GeoPoint(
|
||||||
nextCoordinate.y,
|
nextCoordinate.y,
|
||||||
nextCoordinate.x
|
nextCoordinate.x
|
||||||
)
|
)
|
||||||
).toString()
|
).toString()
|
||||||
referenceEntityList.add(zLevelNameReference)
|
renderEntity.referenceEntitys.add(zLevelNameReference)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (startEnd == 0 || startEnd == 2) { // 处理向前的线
|
if (startEnd == 0 || startEnd == 2) { // 处理向前的线
|
||||||
val zLevelReference = createZLevelReference(renderEntity)
|
val zLevelReference = createZLevelReference(renderEntity)
|
||||||
zLevelReference.properties["type"] = "zlevelLine"
|
zLevelReference.properties["type"] = "zlevelLine"
|
||||||
// zLevelReference.properties["name"] = zLevel.toString()
|
zLevelReference.propertiesDb = DeflaterUtil.zipString(JSON.toJSONString(zLevelReference.properties))
|
||||||
// 根据shpSeqNum获取对应的点位
|
// 根据shpSeqNum获取对应的点位
|
||||||
if (shpSeqNum < coordinates.size && shpSeqNum > 0) {
|
if (shpSeqNum < coordinates.size && shpSeqNum > 0) {
|
||||||
val currentCoordinate = coordinates[shpSeqNum]
|
val currentCoordinate = coordinates[shpSeqNum]
|
||||||
@ -1320,7 +1328,6 @@ class ImportPreProcess {
|
|||||||
// 计算偏移后的点
|
// 计算偏移后的点
|
||||||
preCoordinate =
|
preCoordinate =
|
||||||
Coordinate(currentCoordinate.getX() + dx, currentCoordinate.getY() + dy)
|
Coordinate(currentCoordinate.getX() + dx, currentCoordinate.getY() + dy)
|
||||||
// }
|
|
||||||
zLevelReference.geometry = GeometryTools.createLineString(
|
zLevelReference.geometry = GeometryTools.createLineString(
|
||||||
arrayListOf(
|
arrayListOf(
|
||||||
GeoPoint(
|
GeoPoint(
|
||||||
@ -1329,19 +1336,17 @@ class ImportPreProcess {
|
|||||||
), GeoPoint(preCoordinate.y, preCoordinate.x)
|
), GeoPoint(preCoordinate.y, preCoordinate.x)
|
||||||
)
|
)
|
||||||
).toString()
|
).toString()
|
||||||
referenceEntityList.add(zLevelReference)
|
renderEntity.referenceEntitys.add(zLevelReference)
|
||||||
|
|
||||||
val zLevelNameReference = createZLevelReference(renderEntity)
|
val zLevelNameReference = createZLevelReference(renderEntity)
|
||||||
zLevelNameReference.properties["type"] = "zlevelName"
|
zLevelNameReference.properties["type"] = "zlevelName"
|
||||||
zLevelNameReference.properties["name"] = zLevel.toString()
|
zLevelNameReference.properties["name"] = zLevel.toString()
|
||||||
|
zLevelNameReference.propertiesDb = DeflaterUtil.zipString(JSON.toJSONString(zLevelNameReference.properties))
|
||||||
zLevelNameReference.geometry =
|
zLevelNameReference.geometry =
|
||||||
GeometryTools.createGeometry(GeoPoint(preCoordinate.y, preCoordinate.x))
|
GeometryTools.createGeometry(GeoPoint(preCoordinate.y, preCoordinate.x))
|
||||||
.toString()
|
.toString()
|
||||||
referenceEntityList.add(zLevelNameReference)
|
renderEntity.referenceEntitys.add(zLevelNameReference)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
insertData(referenceEntityList)
|
|
||||||
// 移除zlevelList,减小原始数据大小
|
// 移除zlevelList,减小原始数据大小
|
||||||
renderEntity.properties.remove("zlevelList")
|
renderEntity.properties.remove("zlevelList")
|
||||||
}
|
}
|
||||||
|
@ -804,7 +804,7 @@ class MainViewModel @Inject constructor(
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
DataCodeEnum.OMDB_PHY_LANENUM.code,//物理车道数
|
//DataCodeEnum.OMDB_PHY_LANENUM.code,//物理车道数
|
||||||
DataCodeEnum.OMDB_LANE_NUM.code, //车道数
|
DataCodeEnum.OMDB_LANE_NUM.code, //车道数
|
||||||
DataCodeEnum.OMDB_RD_LINK_KIND.code,//种别,
|
DataCodeEnum.OMDB_RD_LINK_KIND.code,//种别,
|
||||||
DataCodeEnum.OMDB_RD_LINK_FUNCTION_CLASS.code, // 功能等级,
|
DataCodeEnum.OMDB_RD_LINK_FUNCTION_CLASS.code, // 功能等级,
|
||||||
@ -960,7 +960,7 @@ class MainViewModel @Inject constructor(
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
DataCodeEnum.OMDB_PHY_LANENUM.code,//物理车道数
|
//DataCodeEnum.OMDB_PHY_LANENUM.code,//物理车道数
|
||||||
DataCodeEnum.OMDB_LANE_NUM.code, //车道数
|
DataCodeEnum.OMDB_LANE_NUM.code, //车道数
|
||||||
DataCodeEnum.OMDB_RD_LINK_KIND.code,//种别,
|
DataCodeEnum.OMDB_RD_LINK_KIND.code,//种别,
|
||||||
DataCodeEnum.OMDB_RD_LINK_FUNCTION_CLASS.code, // 功能等级,
|
DataCodeEnum.OMDB_RD_LINK_FUNCTION_CLASS.code, // 功能等级,
|
||||||
|
@ -108,10 +108,10 @@ class SignUtil {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
//物理车道数OMDB_PHY_LANENUM
|
//物理车道数OMDB_PHY_LANENUM
|
||||||
DataCodeEnum.OMDB_LANE_NUM.code,
|
/* DataCodeEnum.OMDB_LANE_NUM.code,
|
||||||
DataCodeEnum.OMDB_PHY_LANENUM.code -> {
|
DataCodeEnum.OMDB_PHY_LANENUM.code -> {
|
||||||
"${data.properties["laneS2e"]}|${data.properties["laneE2s"]}"
|
"${data.properties["laneS2e"]}|${data.properties["laneE2s"]}"
|
||||||
}
|
}*/
|
||||||
|
|
||||||
//常规点限速,条件点限速
|
//常规点限速,条件点限速
|
||||||
DataCodeEnum.OMDB_SPEEDLIMIT.code, DataCodeEnum.OMDB_SPEEDLIMIT_COND.code -> getSpeedLimitMaxText(data)
|
DataCodeEnum.OMDB_SPEEDLIMIT.code, DataCodeEnum.OMDB_SPEEDLIMIT_COND.code -> getSpeedLimitMaxText(data)
|
||||||
@ -304,7 +304,7 @@ class SignUtil {
|
|||||||
title = "逆方向车道数", text = "${data.properties["laneE2s"]}"
|
title = "逆方向车道数", text = "${data.properties["laneE2s"]}"
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
var str = when (data.properties["laneClass"]) {
|
/* var str = when (data.properties["laneClass"]) {
|
||||||
"0" -> "未赋值"
|
"0" -> "未赋值"
|
||||||
"1" -> "一条车道"
|
"1" -> "一条车道"
|
||||||
"2" -> "两或三条"
|
"2" -> "两或三条"
|
||||||
@ -317,7 +317,7 @@ class SignUtil {
|
|||||||
TwoItemAdapterItem(
|
TwoItemAdapterItem(
|
||||||
title = "车道数等级", text = str
|
title = "车道数等级", text = str
|
||||||
)
|
)
|
||||||
)
|
)*/
|
||||||
}
|
}
|
||||||
//路口
|
//路口
|
||||||
DataCodeEnum.OMDB_INTERSECTION.code -> {
|
DataCodeEnum.OMDB_INTERSECTION.code -> {
|
||||||
@ -1928,7 +1928,7 @@ class SignUtil {
|
|||||||
*/
|
*/
|
||||||
fun getRoadInfoIndex(element: RenderEntity): Int {
|
fun getRoadInfoIndex(element: RenderEntity): Int {
|
||||||
return when (element.code) {
|
return when (element.code) {
|
||||||
DataCodeEnum.OMDB_PHY_LANENUM.code,//物理车道数
|
//DataCodeEnum.OMDB_PHY_LANENUM.code,//物理车道数
|
||||||
DataCodeEnum.OMDB_LANE_NUM.code -> 0
|
DataCodeEnum.OMDB_LANE_NUM.code -> 0
|
||||||
DataCodeEnum.OMDB_RD_LINK_KIND.code -> 1
|
DataCodeEnum.OMDB_RD_LINK_KIND.code -> 1
|
||||||
DataCodeEnum.OMDB_RD_LINK_FUNCTION_CLASS.code -> 2
|
DataCodeEnum.OMDB_RD_LINK_FUNCTION_CLASS.code -> 2
|
||||||
|
@ -1553,6 +1553,11 @@
|
|||||||
<text use="road" size="16"></text>
|
<text use="road" size="16"></text>
|
||||||
</m>
|
</m>
|
||||||
|
|
||||||
|
<!-- 物理车道数 -->
|
||||||
|
<m v="OMDB_PHY_LANENUM">
|
||||||
|
<text use="road" size="10" ></text>
|
||||||
|
</m>
|
||||||
|
|
||||||
<!-- 车信 -->
|
<!-- 车信 -->
|
||||||
<m v="OMDB_LANEINFO" >
|
<m v="OMDB_LANEINFO" >
|
||||||
<m k="symbol" v="true">
|
<m k="symbol" v="true">
|
||||||
@ -1621,22 +1626,22 @@
|
|||||||
<!-- 中央隔离带 -->
|
<!-- 中央隔离带 -->
|
||||||
<m v="OMDB_LINK_MEDIAN">
|
<m v="OMDB_LINK_MEDIAN">
|
||||||
<m k="medianSurface" v="0">
|
<m k="medianSurface" v="0">
|
||||||
<area use="obj-area" stroke="#00000000" stroke-width="1" src="assets:omdb/icon_2071_0.svg"></area>
|
<area use="obj-area" hasDirect="true" stroke="#00000000" stroke-width="1" src="assets:omdb/icon_2071_0.svg"></area>
|
||||||
</m>
|
</m>
|
||||||
<m k="medianSurface" v="1">
|
<m k="medianSurface" v="1">
|
||||||
<area use="obj-area" stroke="#00000000" stroke-width="1" src="assets:omdb/icon_2071_1.svg"></area>
|
<area use="obj-area" hasDirect="true" stroke="#00000000" stroke-width="1" src="assets:omdb/icon_2071_1.svg"></area>
|
||||||
</m>
|
</m>
|
||||||
<m k="medianSurface" v="2">
|
<m k="medianSurface" v="2">
|
||||||
<area use="obj-area" stroke="#00000000" stroke-width="1" src="assets:omdb/icon_2071_2.svg"></area>
|
<area use="obj-area" hasDirect="true" stroke="#00000000" stroke-width="1" src="assets:omdb/icon_2071_2.svg"></area>
|
||||||
</m>
|
</m>
|
||||||
<m k="medianSurface" v="3">
|
<m k="medianSurface" v="3">
|
||||||
<area use="obj-area" stroke="#ffffff" stroke-width="1" src="assets:omdb/icon_2071_0.svg"></area>
|
<area use="obj-area" hasDirect="true" stroke="#ffffff" stroke-width="1" src="assets:omdb/icon_2071_0.svg"></area>
|
||||||
</m>
|
</m>
|
||||||
<m k="medianSurface" v="4">
|
<m k="medianSurface" v="4">
|
||||||
<area use="obj-area" stroke="#ffffff" stroke-width="1" src="assets:omdb/icon_2071_1.svg"></area>
|
<area use="obj-area" hasDirect="true" stroke="#ffffff" stroke-width="1" src="assets:omdb/icon_2071_1.svg"></area>
|
||||||
</m>
|
</m>
|
||||||
<m k="medianSurface" v="5">
|
<m k="medianSurface" v="5">
|
||||||
<area use="obj-area" stroke="#ffffff" stroke-width="1" src="assets:omdb/icon_2071_2.svg"></area>
|
<area use="obj-area" hasDirect="true" stroke="#ffffff" stroke-width="1" src="assets:omdb/icon_2071_2.svg"></area>
|
||||||
</m>
|
</m>
|
||||||
</m>
|
</m>
|
||||||
|
|
||||||
@ -2171,7 +2176,7 @@
|
|||||||
<!-- zLevel -->
|
<!-- zLevel -->
|
||||||
<m v="OMDB_ZLEVEL">
|
<m v="OMDB_ZLEVEL">
|
||||||
<m k="type" v="zlevelLine">
|
<m k="type" v="zlevelLine">
|
||||||
<line stroke="#59feb8" width="0.2" />
|
<line stroke="#59feb8" width="0.5" />
|
||||||
</m>
|
</m>
|
||||||
<m k="type" v="zlevelName">
|
<m k="type" v="zlevelName">
|
||||||
<caption k="name" fill="#000000" stroke="#f1fe59" size="12" priority="0" ></caption>
|
<caption k="name" fill="#000000" stroke="#f1fe59" size="12" priority="0" ></caption>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user