增加隧道渲染原则

This commit is contained in:
qiji4215 2023-07-07 18:06:19 +08:00
parent 7c57a451f1
commit b505bdc044
6 changed files with 56 additions and 2 deletions

View File

@ -94,7 +94,15 @@
"2202":{
"table": "OMDB_TUNNEL",
"code": 2202,
"name": "隧道"
"name": "隧道",
"transformer": [
{
"k": "geometry",
"v": "~",
"klib": "geometry",
"vlib": "generateS2EReferencePoint()"
}
]
},
"4001": {
"table": "OMDB_INTERSECTION",

View File

@ -152,6 +152,34 @@ class ImportPreProcess {
Realm.getDefaultInstance().insert(startEndReference)
}
fun generateS2EReferencePoint(renderEntity: RenderEntity) {
val geometry = GeometryTools.createGeometry(renderEntity.properties["geometry"])
val pointEnd = geometry!!.coordinates[geometry.numPoints-1] // 获取这个geometry对应的结束点坐标
val pointStart = geometry!!.coordinates[0] // 获取这个geometry对应的起点
// 将这个起终点的线记录在数据中
val startReference = ReferenceEntity()
startReference.renderEntityId = renderEntity.id
startReference.name = "${renderEntity.name}参考线"
startReference.table = renderEntity.table
// 起点坐标
startReference.geometry = GeometryTools.createGeometry(GeoPoint(pointStart.y,pointStart.x)).toString()
startReference.properties["qi_table"] = renderEntity.table
startReference.properties["type"] = "s_2_p"
Realm.getDefaultInstance().insert(startReference)
val endReference = ReferenceEntity()
endReference.renderEntityId = renderEntity.id
endReference.name = "${renderEntity.name}参考线"
endReference.table = renderEntity.table
// 终点坐标
endReference.geometry = GeometryTools.createGeometry(GeoPoint(pointEnd.y,pointEnd.x)).toString()
endReference.properties["qi_table"] = renderEntity.table
endReference.properties["type"] = "e_2_p"
Realm.getDefaultInstance().insert(endReference)
}
/**
* 生成与对应方向相同的方向线用以绘制方向箭头
* */
@ -314,6 +342,7 @@ class ImportPreProcess {
Realm.getDefaultInstance().insert(angleReference)
}
/**
* 生成默认路口数据的参考数据
* */

View File

@ -113,9 +113,10 @@ class PersonalCenterFragment(private var backListener: (() -> Unit?)? = null) :
}
R.id.personal_center_menu_test -> {
viewModel.readRealmData()
//108.92242999223849 34.27711899342322
// 定位到指定位置
niMapController.mMapView.vtmMap.animator()
.animateTo(GeoPoint( 40.10113947189571, 116.25585158012574))
.animateTo(GeoPoint( 34.27711899342322, 108.92242999223849))
}
// R.id.personal_center_menu_task_list -> {
// findNavController().navigate(R.id.TaskManagerFragment)

View File

@ -1808,6 +1808,20 @@
<line use="s2e" />
</m>
</m>
<!--隧道-->
<m v="OMDB_TUNNEL">
<m k="formOfWay">
<line dasharray="24,8,4,2" stroke="#d4237a" width="2" />
</m>
<m k="type" v="s_2_p">
<symbol repeat="false" repeat-start="0" rotate="false"
src="assets:omdb/icon_2202_0.svg" symbol-height="69" symbol-width="69"></symbol>
</m>
<m k="type" v="e_2_p">
<symbol repeat="false" repeat-start="0" rotate="false"
src="assets:omdb/icon_2202_1.svg" symbol-height="69" symbol-width="69"></symbol>
</m>
</m>
<!--电子眼-->
<m v="OMDB_ELECTRONICEYE">
<!-- <m k="angle">-->

View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1688716256005" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3069" width="32" height="32" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M512 192c-140.8 0-256 115.2-256 256v512l128-224V448c0-70.4 57.6-128 128-128s128 57.6 128 128v288l128 224V448c0-140.8-115.2-256-256-256z" fill="#FFB43E" p-id="3070"></path><path d="M448 736l-128 224h384L576 736z" fill="#FFB43E" p-id="3071"></path><path d="M512 64C300 64 128 236 128 448v512h64V448c0-176.8 143.2-320 320-320s320 143.2 320 320v512h64V448c0-212-172-384-384-384z" fill="#FFB43E" p-id="3072"></path></svg>

After

Width:  |  Height:  |  Size: 747 B

View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1688716265636" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3278" xmlns:xlink="http://www.w3.org/1999/xlink" width="32" height="32"><path d="M512 192c-140.8 0-256 115.2-256 256v512l128-224V448c0-70.4 57.6-128 128-128s128 57.6 128 128v288l128 224V448c0-140.8-115.2-256-256-256z" fill="#3BC568" p-id="3279"></path><path d="M448 736l-128 224h384L576 736z" fill="#3BC568" p-id="3280"></path><path d="M512 64C300 64 128 236 128 448v512h64V448c0-176.8 143.2-320 320-320s320 143.2 320 320v512h64V448c0-212-172-384-384-384z" fill="#3BC568" p-id="3281"></path></svg>

After

Width:  |  Height:  |  Size: 747 B