This commit is contained in:
qiji4215 2023-09-19 16:34:33 +08:00
commit 03c778c1ec
5 changed files with 62 additions and 16 deletions

View File

@ -223,12 +223,7 @@
"k": "geometry",
"v": "~",
"klib": "geometry",
"vlib": "normalizationTrafficSignHeight()"
},{
"k": "geometry",
"v": "~",
"klib": "geometry",
"vlib": "generateDirectReferenceLine('', 0.2)"
"vlib": "obtainTrafficSignCenterPoint()"
}
]
},

View File

@ -815,4 +815,40 @@ class ImportPreProcess {
val code = renderEntity.properties[codeName]
renderEntity.properties["src"] = "${prefix}${code}${suffix}"
}
/**
* 获取当前数据的中心点坐标
* */
fun obtainTrafficSignCenterPoint(renderEntity: RenderEntity) {
// 获取中心坐标点将中心坐标作为数据的新的geometry位置
val centerPoint = renderEntity.wkt?.centroid
// 根据heading方向自动生成新的Geometry
var radian = 0.0
val pointStart = Coordinate(centerPoint!!.x, centerPoint.y)
var angle =
if (renderEntity?.properties?.get("heading") == null) 0.0 else renderEntity?.properties?.get(
"heading"
)?.toDouble()!!
// angle角度为与正北方向的顺时针夹角将其转换为与X轴正方向的逆时针夹角即为正东方向的夹角
angle = ((450 - angle) % 360)
radian = Math.toRadians(angle)
// 计算偏移距离
var dx: Double = GeometryTools.convertDistanceToDegree(
defaultTranslateDistance,
centerPoint.y
) * Math.cos(radian)
var dy: Double = GeometryTools.convertDistanceToDegree(
defaultTranslateDistance,
centerPoint.y
) * Math.sin(radian)
val listResult = mutableListOf<ReferenceEntity>()
val coorEnd = Coordinate(pointStart.getX() + dx, pointStart.getY() + dy, pointStart.z)
renderEntity.geometry =
WKTWriter(3).write(GeometryTools.createLineString(arrayOf(pointStart, coorEnd)))
val code = renderEntity.properties["signType"]
renderEntity.properties["src"] = "assets:omdb/appendix/1105_${code}_0.svg"
}
}

View File

@ -166,7 +166,7 @@ class PersonalCenterFragment(private var indoorDataListener: ((Boolean) -> Unit?
// 定位到指定位置
niMapController.mMapView.vtmMap.animator()
// .animateTo(GeoPoint( 40.05108004733645, 116.29187746293708 ))
.animateTo(GeoPoint(40.51850916836801, 115.78801387178642))
.animateTo(GeoPoint(40.09848700000006, 116.53088699999999))
}
R.id.personal_center_menu_open_all_layer -> {

View File

@ -1566,12 +1566,10 @@
</m>
<!-- 交通标牌 -->
<!-- <m v="OMDB_TRAFFIC_SIGN">-->
<!-- <area use="sign-bg" repeat="false" stroke="#ff0000" stroke-width="2"></area>-->
<!-- <m k="type" v="angle">-->
<!-- <line stroke="#00ff00" width="0.1"></line>-->
<!-- </m>-->
<!-- </m>-->
<m v="OMDB_TRAFFIC_SIGN">
<symbol repeat="false" repeat-gap="2000" repeat-start="0" rotate="true"
src="@src" symbol-height="24" symbol-width="24" degree="-90"></symbol>
</m>
<m v="OMDB_AREA">
<!-- <area use="sign-bg" repeat="false" src="assets:omdb/veer_side_walk.jpg" stroke="#ff0000" stroke-width="2"></area>
@ -1932,7 +1930,24 @@
</m>
<!-- 文字 -->
<m v="OMDB_OBJECT_TEXT">
<area use="obj-area" stroke="#00000000" repeat="false" src="@text-src:textString" longEdge="t" hasDirect="true"></area>
<m k="color" v="0">
<area use="obj-area" stroke="#00000000" fill="#dfe4ea" repeat="false" src="@text-src:textString" longEdge="t" hasDirect="true"></area>
</m>
<m k="color" v="1">
<area use="obj-area" stroke="#00000000" fill="#ffffff" repeat="false" src="@text-src:textString" longEdge="t" hasDirect="true"></area>
</m>
<m k="color" v="2">
<area use="obj-area" stroke="#00000000" fill="#ffff00" repeat="false" src="@text-src:textString" longEdge="t" hasDirect="true"></area>
</m>
<m k="color" v="3">
<area use="obj-area" stroke="#00000000" fill="#ff0000" repeat="false" src="@text-src:textString" longEdge="t" hasDirect="true"></area>
</m>
<m k="color" v="4">
<area use="obj-area" stroke="#00000000" fill="#00ff00" repeat="false" src="@text-src:textString" longEdge="t" hasDirect="true"></area>
</m>
<m k="color" v="9">
<area use="obj-area" stroke="#00000000" fill="#0000ff" repeat="false" src="@text-src:textString" longEdge="t" hasDirect="true"></area>
</m>
</m>
<!-- 符号 -->
<m v="OMDB_OBJECT_SYMBOL">
@ -1955,7 +1970,7 @@
<!-- 人行横道 -->
<m v="OMDB_CROSS_WALK">
<area use="obj-area" stroke="#00000000" repeat="true" src="assets:omdb/object_crosswalk_3014.svg" longEdge="s"></area>
<area use="obj-area" stroke="#ffffff" repeat="true" src="assets:omdb/object_crosswalk_3014.svg" longEdge="s"></area>
</m>
<!-- 箭头 -->

2
vtm

@ -1 +1 @@
Subproject commit 41610ce5fe5a10d5c9c32409cbc712e7047a9b9b
Subproject commit f2af87c6a012ac41d6f22a77d6b45853b250ed3e