diff --git a/app/src/main/assets/omdb_config.json b/app/src/main/assets/omdb_config.json index e7960171..5a274375 100644 --- a/app/src/main/assets/omdb_config.json +++ b/app/src/main/assets/omdb_config.json @@ -358,10 +358,11 @@ "table": "OMDB_TRAFFIC_SIGN", "code": 3005, "name": "交通标牌", - "zoomMin": 18, + "zoomMin": 17, "zoomMax": 20, "is3D": true, "catch": true, + "checkLinkId": false, "transformer": [ { "k": "geometry", @@ -474,6 +475,12 @@ "v": "~", "klib": "geometry", "vlib": "generateDirectReferenceLine()" + }, + { + "k": "geometry", + "v": "~", + "klib": "geometry", + "vlib": "createSpeedLimitText()" } ] }, @@ -490,6 +497,12 @@ "v": "0|", "klib": "maxSpeed", "vlib": "限" + }, + { + "k": "geometry", + "v": "~", + "klib": "geometry", + "vlib": "createSpeedLimitText()" } ] }, @@ -518,6 +531,12 @@ "v": "3", "klib": "ref", "vlib": "上" + }, + { + "k": "geometry", + "v": "~", + "klib": "geometry", + "vlib": "createSpeedLimitText()" } ] }, @@ -693,6 +712,7 @@ "name": "车信", "catch": true, "isDependOnOtherTable": false, + "checkLinkId": false, "zoomMin": 15, "zoomMax": 17, "transformer": [ diff --git a/app/src/main/java/com/navinfo/omqs/db/ImportPreProcess.kt b/app/src/main/java/com/navinfo/omqs/db/ImportPreProcess.kt index 58f877ab..0fff377c 100644 --- a/app/src/main/java/com/navinfo/omqs/db/ImportPreProcess.kt +++ b/app/src/main/java/com/navinfo/omqs/db/ImportPreProcess.kt @@ -656,36 +656,43 @@ class ImportPreProcess { // 分别获取两个数组中的数据,取第一个作为主数据,另外两个作为辅助渲染数据 val laneInfoDirectArray = JSONArray(laneinfoGroup[0].toString()) val laneInfoTypeArray = JSONArray(laneinfoGroup[1].toString()) - val listResult = mutableListOf() + val referenceEntity = ReferenceEntity() + referenceEntity.name = "${renderEntity.name}参考方向" + referenceEntity.table = renderEntity.table + referenceEntity.enable = renderEntity.enable + referenceEntity.code = renderEntity.code + referenceEntity.taskId = renderEntity.taskId + referenceEntity.zoomMin = renderEntity.zoomMin + referenceEntity.zoomMax = renderEntity.zoomMax + // 与原数据使用相同的geometry + referenceEntity.geometry = GeometryTools.createGeometry(renderEntity.geometry).toString() + referenceEntity.properties["qi_table"] = renderEntity.table + referenceEntity.properties["symbol"] = "true" for (i in 0 until laneInfoDirectArray.length()) { - // 根据后续的数据生成辅助表数据 - val referenceEntity = ReferenceEntity() -// referenceEntity.renderEntityId = renderEntity.id - referenceEntity.name = "${renderEntity.name}参考方向" - referenceEntity.table = renderEntity.table - referenceEntity.enable = renderEntity.enable - referenceEntity.code = renderEntity.code - referenceEntity.taskId = renderEntity.taskId - referenceEntity.zoomMin = renderEntity.zoomMin - referenceEntity.zoomMax = renderEntity.zoomMax - // 与原数据使用相同的geometry - referenceEntity.geometry = renderEntity.geometry - referenceEntity.properties["qi_table"] = renderEntity.table - referenceEntity.properties["currentDirect"] = + val currentDirect = laneInfoDirectArray[i].toString().split(",").distinct().joinToString("_") - referenceEntity.properties["currentType"] = + val currentType = laneInfoTypeArray[i].toString() val type = - if (referenceEntity.properties["currentType"] == "0") "normal" else if (referenceEntity.properties["currentType"] == "1") "extend" else "bus" - referenceEntity.properties["symbol"] = - "assets:omdb/4601/${type}/1301_${referenceEntity.properties["currentDirect"]}.svg" - Log.d("unpackingLaneInfo", referenceEntity.properties["symbol"].toString()) - referenceEntity.propertiesDb = - DeflaterUtil.zipString(JSON.toJSONString(referenceEntity.properties)) - renderEntity.referenceEntitys.add(referenceEntity) - Log.e("qj", "车信===插入车信箭头") + if (currentType == "0") "normal" else if (currentType == "1") "extend" else "bus" + val symbol = + "assets:omdb/4601/${type}/1301_${currentDirect}.svg" + referenceEntity.properties["img-src"] = if(referenceEntity.properties["img-src"].isNullOrEmpty()) symbol else "${referenceEntity.properties["img-src"]}|${symbol}" + + //listResult.add(referenceEntity) +// if (referenceEntity.properties["currentType"] == "0") "normal" else if (referenceEntity.properties["currentType"] == "1") "extend" else "bus" +// referenceEntity.properties["symbol"] = +// "assets:omdb/4601/${type}/1301_${referenceEntity.properties["currentDirect"]}.svg" +// Log.d("unpackingLaneInfo", referenceEntity.properties["symbol"].toString()) +// referenceEntity.propertiesDb = +// DeflaterUtil.zipString(JSON.toJSONString(referenceEntity.properties)) +// renderEntity.referenceEntitys.add(referenceEntity) +// Log.e("qj", "车信===插入车信箭头") } + referenceEntity.propertiesDb = DeflaterUtil.zipString(JSON.toJSONString(referenceEntity.properties)) + renderEntity.referenceEntitys?.add(referenceEntity) + //insertData(listResult) } //将主表线转化为单个点,按点要素实现捕捉 if (Geometry.TYPENAME_LINESTRING == renderEntity.wkt?.geometryType) { @@ -1182,22 +1189,22 @@ class ImportPreProcess { val accessCharacteristic = renderEntity.properties["accessCharacteristic"].toString().toInt() var str = "" - if (accessCharacteristic.and(4) > 0) { + if (accessCharacteristic.and(0b100)>0) { str += "公" } - if (accessCharacteristic.and(8) > 0) { + if (accessCharacteristic.and(0b1000)>0) { if (str.isNotEmpty()) { str += "|" } - str += "多" + str += "HOV" } - if (accessCharacteristic.and(64) > 0) { + if (accessCharacteristic.and(0b1000000)>0) { if (str.isNotEmpty()) { str += "|" } str += "行" } - if (accessCharacteristic.and(128) > 0) { + if (accessCharacteristic.and(0b10000000)>0) { if (str.isNotEmpty()) { str += "|" } @@ -1357,4 +1364,13 @@ class ImportPreProcess { zLevelReference.properties["qi_table"] = renderEntity.table return zLevelReference } + + /** + * 创建限速的文字动态数据,生成动态symbol + * */ + fun createSpeedLimitText(renderEntity: RenderEntity) { + if (renderEntity.properties.containsKey("maxSpeed")) { + renderEntity.properties["text-src"] = "@text:${renderEntity.properties["maxSpeed"]}" + } + } } \ No newline at end of file diff --git a/app/src/main/java/com/navinfo/omqs/ui/fragment/personalcenter/PersonalCenterFragment.kt b/app/src/main/java/com/navinfo/omqs/ui/fragment/personalcenter/PersonalCenterFragment.kt index 51342551..9f933f8a 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/fragment/personalcenter/PersonalCenterFragment.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/fragment/personalcenter/PersonalCenterFragment.kt @@ -196,7 +196,7 @@ class PersonalCenterFragment(private var indoorDataListener: ((Boolean) -> Unit? // 定位到指定位置 niMapController.mMapView.vtmMap.animator() // .animateTo(GeoPoint( 40.05108004733645, 116.29187746293708 )) - .animateTo(GeoPoint(39.63769191655024, 115.58991663847937)) + .animateTo(GeoPoint(40.07290793293324, 116.24617660398738 )) } R.id.personal_center_menu_open_all_layer -> { diff --git a/collect-library/resources/rendertheme.xsd b/collect-library/resources/rendertheme.xsd index 150d511c..773ec248 100644 --- a/collect-library/resources/rendertheme.xsd +++ b/collect-library/resources/rendertheme.xsd @@ -245,6 +245,7 @@ + @@ -262,6 +263,10 @@ + + + + diff --git a/collect-library/src/main/assets/editormarker.xml b/collect-library/src/main/assets/editormarker.xml index 558f62de..8618f0a7 100644 --- a/collect-library/src/main/assets/editormarker.xml +++ b/collect-library/src/main/assets/editormarker.xml @@ -1555,8 +1555,10 @@ - + + + @@ -1935,14 +1937,14 @@ - - + + + - - + + + - + - + - + - + - + - + diff --git a/collect-library/src/main/assets/omdb/icon_4002_0.png b/collect-library/src/main/assets/omdb/icon_4002_0.png new file mode 100644 index 00000000..f2d54af2 Binary files /dev/null and b/collect-library/src/main/assets/omdb/icon_4002_0.png differ diff --git a/collect-library/src/main/assets/omdb/icon_4002_0.svg b/collect-library/src/main/assets/omdb/icon_4002_0.svg index 8668a82b..1fa23bd3 100644 --- a/collect-library/src/main/assets/omdb/icon_4002_0.svg +++ b/collect-library/src/main/assets/omdb/icon_4002_0.svg @@ -1 +1,37 @@ - \ No newline at end of file +<<<<<<< HEAD + + + + + + + + + + + + + + + + + + + + + + + + + +======= + +>>>>>>> 231d7c429d62e54c11acce062a03219ecc511632 diff --git a/collect-library/src/main/assets/omdb/icon_4002_1.png b/collect-library/src/main/assets/omdb/icon_4002_1.png new file mode 100644 index 00000000..19dbf19a Binary files /dev/null and b/collect-library/src/main/assets/omdb/icon_4002_1.png differ diff --git a/collect-library/src/main/assets/omdb/icon_4002_1.svg b/collect-library/src/main/assets/omdb/icon_4002_1.svg index 21bbcb9c..f81b6338 100644 --- a/collect-library/src/main/assets/omdb/icon_4002_1.svg +++ b/collect-library/src/main/assets/omdb/icon_4002_1.svg @@ -1 +1,42 @@ - \ No newline at end of file +<<<<<<< HEAD + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +======= + +>>>>>>> 231d7c429d62e54c11acce062a03219ecc511632 diff --git a/collect-library/src/main/java/com/navinfo/collect/library/map/source/OMDBTileDataSource.java b/collect-library/src/main/java/com/navinfo/collect/library/map/source/OMDBTileDataSource.java index b6724bd5..8fa9f0fc 100644 --- a/collect-library/src/main/java/com/navinfo/collect/library/map/source/OMDBTileDataSource.java +++ b/collect-library/src/main/java/com/navinfo/collect/library/map/source/OMDBTileDataSource.java @@ -1,7 +1,6 @@ package com.navinfo.collect.library.map.source; import android.os.Build; -import android.util.Log; import androidx.annotation.RequiresApi; @@ -11,21 +10,17 @@ import com.navinfo.collect.library.utils.GeometryTools; import com.navinfo.collect.library.utils.MapParamUtils; import org.locationtech.jts.geom.Polygon; -import org.oscim.core.MapPosition; import org.oscim.layers.tile.MapTile; -import org.oscim.map.Map; import org.oscim.map.Viewport; import org.oscim.tiling.ITileDataSink; import org.oscim.tiling.ITileDataSource; import org.oscim.tiling.QueryResult; import java.util.ArrayList; -import java.util.HashMap; import java.util.List; import java.util.stream.Collectors; import io.realm.Realm; -import io.realm.RealmConfiguration; import io.realm.RealmQuery; public class OMDBTileDataSource implements ITileDataSource { diff --git a/vtm b/vtm index 024159af..3eb80a33 160000 --- a/vtm +++ b/vtm @@ -1 +1 @@ -Subproject commit 024159afee2b9e438dd6c2a6419e034df287a8db +Subproject commit 3eb80a33c6b54609a47083c38fe35fd4916edba9