From b505bdc0444713b01171562801db26b5bc02e50a Mon Sep 17 00:00:00 2001 From: qiji4215 Date: Fri, 7 Jul 2023 18:06:19 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=9A=A7=E9=81=93=E6=B8=B2?= =?UTF-8?q?=E6=9F=93=E5=8E=9F=E5=88=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/assets/omdb_config.json | 10 ++++++- .../com/navinfo/omqs/db/ImportPreProcess.kt | 29 +++++++++++++++++++ .../personalcenter/PersonalCenterFragment.kt | 3 +- .../src/main/assets/editormarker.xml | 14 +++++++++ .../src/main/assets/omdb/icon_2202_0.svg | 1 + .../src/main/assets/omdb/icon_2202_1.svg | 1 + 6 files changed, 56 insertions(+), 2 deletions(-) create mode 100644 collect-library/src/main/assets/omdb/icon_2202_0.svg create mode 100644 collect-library/src/main/assets/omdb/icon_2202_1.svg diff --git a/app/src/main/assets/omdb_config.json b/app/src/main/assets/omdb_config.json index 87fe4af1..f523a811 100644 --- a/app/src/main/assets/omdb_config.json +++ b/app/src/main/assets/omdb_config.json @@ -94,7 +94,15 @@ "2202":{ "table": "OMDB_TUNNEL", "code": 2202, - "name": "隧道" + "name": "隧道", + "transformer": [ + { + "k": "geometry", + "v": "~", + "klib": "geometry", + "vlib": "generateS2EReferencePoint()" + } + ] }, "4001": { "table": "OMDB_INTERSECTION", 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 47a480d8..d75f3e4a 100644 --- a/app/src/main/java/com/navinfo/omqs/db/ImportPreProcess.kt +++ b/app/src/main/java/com/navinfo/omqs/db/ImportPreProcess.kt @@ -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) } + /** * 生成默认路口数据的参考数据 * */ 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 83e3be9d..c93d949e 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 @@ -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) diff --git a/collect-library/src/main/assets/editormarker.xml b/collect-library/src/main/assets/editormarker.xml index c093cfa5..0ce4e342 100644 --- a/collect-library/src/main/assets/editormarker.xml +++ b/collect-library/src/main/assets/editormarker.xml @@ -1808,6 +1808,20 @@ + + + + + + + + + + + + diff --git a/collect-library/src/main/assets/omdb/icon_2202_0.svg b/collect-library/src/main/assets/omdb/icon_2202_0.svg new file mode 100644 index 00000000..b2479462 --- /dev/null +++ b/collect-library/src/main/assets/omdb/icon_2202_0.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/collect-library/src/main/assets/omdb/icon_2202_1.svg b/collect-library/src/main/assets/omdb/icon_2202_1.svg new file mode 100644 index 00000000..ed7be254 --- /dev/null +++ b/collect-library/src/main/assets/omdb/icon_2202_1.svg @@ -0,0 +1 @@ + \ No newline at end of file