From 4b91feca229167da36d93e741b297ad747c22742 Mon Sep 17 00:00:00 2001 From: qiji4215 Date: Mon, 25 Sep 2023 14:37:51 +0800 Subject: [PATCH 1/7] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=BD=A6=E9=81=93?= =?UTF-8?q?=E8=BE=B9=E7=95=8C=E7=B1=BB=E5=9E=8B=E5=AE=9E=E7=BA=BF=E6=B8=B2?= =?UTF-8?q?=E6=9F=93=E6=A0=B7=E5=BC=8F2.=E4=BF=AE=E5=A4=8D=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=97=A0=E6=B3=95=E4=B8=8A=E4=BC=A0=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../omqs/http/taskupload/TaskUploadScope.kt | 8 ++- .../ui/fragment/tasklist/TaskViewModel.kt | 2 - .../src/main/assets/editormarker.xml | 71 +++++++++++++------ .../src/main/assets/omdb/icon_2013_0.svg | 11 +++ .../src/main/assets/omdb/icon_2013_1.svg | 11 +++ .../src/main/assets/omdb/icon_2013_2.svg | 11 +++ .../src/main/assets/omdb/icon_2013_6.svg | 11 +++ .../src/main/assets/omdb/icon_2013_7.svg | 11 +++ 8 files changed, 113 insertions(+), 23 deletions(-) create mode 100644 collect-library/src/main/assets/omdb/icon_2013_0.svg create mode 100644 collect-library/src/main/assets/omdb/icon_2013_1.svg create mode 100644 collect-library/src/main/assets/omdb/icon_2013_2.svg create mode 100644 collect-library/src/main/assets/omdb/icon_2013_6.svg create mode 100644 collect-library/src/main/assets/omdb/icon_2013_7.svg diff --git a/app/src/main/java/com/navinfo/omqs/http/taskupload/TaskUploadScope.kt b/app/src/main/java/com/navinfo/omqs/http/taskupload/TaskUploadScope.kt index 6fec6aa7..67be46d0 100644 --- a/app/src/main/java/com/navinfo/omqs/http/taskupload/TaskUploadScope.kt +++ b/app/src/main/java/com/navinfo/omqs/http/taskupload/TaskUploadScope.kt @@ -125,10 +125,13 @@ class TaskUploadScope( } taskBean.hadLinkDvoList.forEach { hadLinkDvoBean -> + Log.e("jingo", "数据上传遍历开始") val linkStatus = 1 //存在原因标记未测评 if (hadLinkDvoBean.reason.isNotEmpty()) { + Log.e("jingo", "数据上传遍历开始0${hadLinkDvoBean.linkPid}") + //未测评 val linkStatus = 0 @@ -160,6 +163,8 @@ class TaskUploadScope( } else { + Log.e("jingo", "数据上传遍历开始1${hadLinkDvoBean.linkPid}") + val linkStatus = hadLinkDvoBean.linkStatus var s: String = "%.3f".format(hadLinkDvoBean.length)//保留一位小数(且支持四舍五入) @@ -221,8 +226,9 @@ class TaskUploadScope( } } } - realm.close() + Log.e("jingo", "数据上传遍历结束") } + realm.close() if (bodyList.size > 0) { val result = uploadManager.netApi.postRequest(bodyList)// .enqueue(object : diff --git a/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskViewModel.kt b/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskViewModel.kt index 5cde34aa..de898e70 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskViewModel.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskViewModel.kt @@ -505,7 +505,6 @@ class TaskViewModel @Inject constructor( } if(result==1){ withContext(Dispatchers.Main) { - liveDataTaskUpload.postValue(map) val mDialog = FirstDialog(context) mDialog.setTitle("提示?") mDialog.setMessage("此任务中存在新增Link无问题记录,请添加至少一条记录!") @@ -519,7 +518,6 @@ class TaskViewModel @Inject constructor( } }else if(result==2){ withContext(Dispatchers.Main) { - liveDataTaskUpload.postValue(map) val mDialog = FirstDialog(context) mDialog.setTitle("提示?") mDialog.setMessage("此任务中存在未测评link,请确认!") diff --git a/collect-library/src/main/assets/editormarker.xml b/collect-library/src/main/assets/editormarker.xml index 0a4613e4..b284ea50 100644 --- a/collect-library/src/main/assets/editormarker.xml +++ b/collect-library/src/main/assets/editormarker.xml @@ -1639,15 +1639,19 @@ - - + + + + + + + + + - - + @@ -1667,11 +1671,7 @@ - - - - - + @@ -1690,19 +1690,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - + diff --git a/collect-library/src/main/assets/omdb/icon_2013_0.svg b/collect-library/src/main/assets/omdb/icon_2013_0.svg new file mode 100644 index 00000000..bcb9b125 --- /dev/null +++ b/collect-library/src/main/assets/omdb/icon_2013_0.svg @@ -0,0 +1,11 @@ + + + + + \ No newline at end of file diff --git a/collect-library/src/main/assets/omdb/icon_2013_1.svg b/collect-library/src/main/assets/omdb/icon_2013_1.svg new file mode 100644 index 00000000..bd3e6b1e --- /dev/null +++ b/collect-library/src/main/assets/omdb/icon_2013_1.svg @@ -0,0 +1,11 @@ + + + + + \ No newline at end of file diff --git a/collect-library/src/main/assets/omdb/icon_2013_2.svg b/collect-library/src/main/assets/omdb/icon_2013_2.svg new file mode 100644 index 00000000..eeb06059 --- /dev/null +++ b/collect-library/src/main/assets/omdb/icon_2013_2.svg @@ -0,0 +1,11 @@ + + + + + \ No newline at end of file diff --git a/collect-library/src/main/assets/omdb/icon_2013_6.svg b/collect-library/src/main/assets/omdb/icon_2013_6.svg new file mode 100644 index 00000000..ad834913 --- /dev/null +++ b/collect-library/src/main/assets/omdb/icon_2013_6.svg @@ -0,0 +1,11 @@ + + + + + \ No newline at end of file diff --git a/collect-library/src/main/assets/omdb/icon_2013_7.svg b/collect-library/src/main/assets/omdb/icon_2013_7.svg new file mode 100644 index 00000000..4528138f --- /dev/null +++ b/collect-library/src/main/assets/omdb/icon_2013_7.svg @@ -0,0 +1,11 @@ + + + + + \ No newline at end of file From 0f5c9bfb8d7ad9f7c988859e758c62b4e6d68615 Mon Sep 17 00:00:00 2001 From: xiaoyan Date: Mon, 25 Sep 2023 14:56:02 +0800 Subject: [PATCH 2/7] =?UTF-8?q?feat:=20=E5=A2=9E=E5=8A=A0=E8=B7=AF?= =?UTF-8?q?=E5=8F=A3=E5=86=85=E4=BA=A4=E9=80=9A=E5=B2=9B=E3=80=81=E4=B8=8A?= =?UTF-8?q?=E6=96=B9=E9=9A=9C=E7=A2=8D=E7=89=A9=E7=9A=84=E6=B8=B2=E6=9F=93?= =?UTF-8?q?=EF=BC=8C=E4=BF=AE=E6=94=B9=E7=AC=A6=E5=8F=B7=E3=80=81=E6=96=87?= =?UTF-8?q?=E5=AD=97=E9=A2=9C=E8=89=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/assets/omdb_config.json | 26 ++++++++++++ .../main/java/com/navinfo/omqs/Constant.kt | 5 --- .../com/navinfo/omqs/db/ImportPreProcess.kt | 40 ++++++++++++++++++- .../omqs/ui/activity/map/MainActivity.kt | 2 +- .../personalcenter/PersonalCenterFragment.kt | 2 +- .../src/main/assets/editormarker.xml | 29 +++++++++++--- .../src/main/assets/omdb/icon_3001_0.svg | 1 + .../main/assets/omdb/object_symbol_3003_0.svg | 1 + .../main/assets/omdb/object_symbol_3003_1.svg | 2 +- .../main/assets/omdb/object_symbol_3003_2.svg | 2 +- .../main/assets/omdb/object_symbol_3003_3.svg | 2 +- .../main/assets/omdb/object_symbol_3003_4.svg | 2 +- .../main/assets/omdb/object_symbol_3003_9.svg | 2 +- .../map/source/OMDBReferenceDataSource.java | 18 ++++++--- .../map/source/OMDBReferenceTileSource.java | 8 +--- .../map/source/OMDBTileDataSource.java | 18 ++++++--- .../library/map/source/OMDBTileSource.java | 3 +- .../collect/library/system/Constant.java | 11 +++-- .../collect/library/utils/GeometryToolsKt.kt | 8 ++-- 19 files changed, 133 insertions(+), 49 deletions(-) create mode 100644 collect-library/src/main/assets/omdb/icon_3001_0.svg create mode 100644 collect-library/src/main/assets/omdb/object_symbol_3003_0.svg diff --git a/app/src/main/assets/omdb_config.json b/app/src/main/assets/omdb_config.json index 5335a0d4..1886c190 100644 --- a/app/src/main/assets/omdb_config.json +++ b/app/src/main/assets/omdb_config.json @@ -178,6 +178,23 @@ } ] }, + "3001":{ + "table": "OMDB_OBJECT_OH_STRUCT", + "code": 3001, + "name": "上方障碍物", + "zoomMin": 15, + "zoomMax": 20, + "catch":true, + "checkLinkId": false, + "transformer": [ + { + "k": "geometry", + "v": "~", + "klib": "geometry", + "vlib": "getPolygonCenterPoint()" + } + ] + }, "3002":{ "table": "OMDB_OBJECT_TEXT", "code": 3002, @@ -276,6 +293,15 @@ "catch":true, "zoomMax": 20 }, + "3027":{ + "table": "OMDB_OBJECT_REFUGE_ISLAND", + "code": 3027, + "name": "路口内交通岛", + "catch":true, + "checkLinkId": false, + "zoomMin": 18, + "zoomMax": 20 + }, "4001": { "table": "OMDB_INTERSECTION", "code": 4001, diff --git a/app/src/main/java/com/navinfo/omqs/Constant.kt b/app/src/main/java/com/navinfo/omqs/Constant.kt index 1d9dbd16..a5bad759 100644 --- a/app/src/main/java/com/navinfo/omqs/Constant.kt +++ b/app/src/main/java/com/navinfo/omqs/Constant.kt @@ -93,11 +93,6 @@ class Constant { const val DEBUG = true - /** - * 地图最多缩放级别20 - */ - const val MAX_ZOOM = 20 - /** * 是否自动定位 */ 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 4281b648..f7674f30 100644 --- a/app/src/main/java/com/navinfo/omqs/db/ImportPreProcess.kt +++ b/app/src/main/java/com/navinfo/omqs/db/ImportPreProcess.kt @@ -845,8 +845,46 @@ class ImportPreProcess { val listResult = mutableListOf() val coorEnd = Coordinate(pointStart.getX() + dx, pointStart.getY() + dy, pointStart.z) - renderEntity.geometry = WKTWriter(3).write(GeometryTools.createLineString(arrayOf(pointStart, coorEnd))) +// renderEntity.geometry = WKTWriter(3).write(GeometryTools.createLineString(arrayOf(pointStart, coorEnd))) + renderEntity.geometry = GeometryTools.createGeometry(GeoPoint(centerPoint!!.y, centerPoint.x)).toString() val code = renderEntity.properties["signType"] renderEntity.properties["src"] = "assets:omdb/appendix/1105_${code}_0.svg" } + + /** + * 获取上方障碍物中心点坐标 + * + * */ + fun getPolygonCenterPoint(renderEntity: RenderEntity, containsDirect: Boolean = false) { + // 获取中心坐标点,将中心坐标作为数据的新的geometry位置 + val centerPoint = renderEntity.wkt?.centroid + if (containsDirect) { + // 根据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() + + val coorEnd = Coordinate(pointStart.getX() + dx, pointStart.getY() + dy, pointStart.z) + renderEntity.geometry = WKTWriter(3).write(GeometryTools.createLineString(arrayOf(pointStart, coorEnd))) + } else { + renderEntity.geometry = GeometryTools.createGeometry(GeoPoint(centerPoint!!.y, centerPoint.x)).toString() + } + } } \ No newline at end of file diff --git a/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainActivity.kt b/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainActivity.kt index 5fc097ed..48ca07c2 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainActivity.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainActivity.kt @@ -191,7 +191,7 @@ class MainActivity : BaseActivity() { viewModel.speakMode = SpeakMode(this) // 在mapController初始化前获取当前OMDB图层显隐 viewModel.refreshOMDBLayer(LayerConfigUtils.getLayerConfigList()) - mapController.mMapView.vtmMap.viewport().maxZoomLevel = Constant.MAX_ZOOM + mapController.mMapView.vtmMap.viewport().maxZoomLevel = com.navinfo.collect.library.system.Constant.MAX_ZOOM //关联生命周期 binding.lifecycleOwner = this //给xml转递对象 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 c2ed075e..a12d4635 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 @@ -167,7 +167,7 @@ class PersonalCenterFragment(private var indoorDataListener: ((Boolean) -> Unit? // 定位到指定位置 niMapController.mMapView.vtmMap.animator() // .animateTo(GeoPoint( 40.05108004733645, 116.29187746293708 )) - .animateTo(GeoPoint(40.5016054261786, 115.82381251427815)) + .animateTo(GeoPoint(40.50704534740206, 115.80404946472662)) } R.id.personal_center_menu_open_all_layer -> { diff --git a/collect-library/src/main/assets/editormarker.xml b/collect-library/src/main/assets/editormarker.xml index 0396c8e6..cff509ec 100644 --- a/collect-library/src/main/assets/editormarker.xml +++ b/collect-library/src/main/assets/editormarker.xml @@ -1814,6 +1814,21 @@ + + + + + + + + + + + + + + + @@ -1923,26 +1938,30 @@ - + - + - + - + - + + + + + diff --git a/collect-library/src/main/assets/omdb/icon_3001_0.svg b/collect-library/src/main/assets/omdb/icon_3001_0.svg new file mode 100644 index 00000000..46b83bd6 --- /dev/null +++ b/collect-library/src/main/assets/omdb/icon_3001_0.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/collect-library/src/main/assets/omdb/object_symbol_3003_0.svg b/collect-library/src/main/assets/omdb/object_symbol_3003_0.svg new file mode 100644 index 00000000..23936b2e --- /dev/null +++ b/collect-library/src/main/assets/omdb/object_symbol_3003_0.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/collect-library/src/main/assets/omdb/object_symbol_3003_1.svg b/collect-library/src/main/assets/omdb/object_symbol_3003_1.svg index 09d6f4ff..1ea27fef 100644 --- a/collect-library/src/main/assets/omdb/object_symbol_3003_1.svg +++ b/collect-library/src/main/assets/omdb/object_symbol_3003_1.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/collect-library/src/main/assets/omdb/object_symbol_3003_2.svg b/collect-library/src/main/assets/omdb/object_symbol_3003_2.svg index fcec6795..6f134c24 100644 --- a/collect-library/src/main/assets/omdb/object_symbol_3003_2.svg +++ b/collect-library/src/main/assets/omdb/object_symbol_3003_2.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/collect-library/src/main/assets/omdb/object_symbol_3003_3.svg b/collect-library/src/main/assets/omdb/object_symbol_3003_3.svg index 3a947ce3..1a68fbe7 100644 --- a/collect-library/src/main/assets/omdb/object_symbol_3003_3.svg +++ b/collect-library/src/main/assets/omdb/object_symbol_3003_3.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/collect-library/src/main/assets/omdb/object_symbol_3003_4.svg b/collect-library/src/main/assets/omdb/object_symbol_3003_4.svg index cb7f35c8..c5878f4b 100644 --- a/collect-library/src/main/assets/omdb/object_symbol_3003_4.svg +++ b/collect-library/src/main/assets/omdb/object_symbol_3003_4.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/collect-library/src/main/assets/omdb/object_symbol_3003_9.svg b/collect-library/src/main/assets/omdb/object_symbol_3003_9.svg index 0ff7e21d..d4ab85b6 100644 --- a/collect-library/src/main/assets/omdb/object_symbol_3003_9.svg +++ b/collect-library/src/main/assets/omdb/object_symbol_3003_9.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/collect-library/src/main/java/com/navinfo/collect/library/map/source/OMDBReferenceDataSource.java b/collect-library/src/main/java/com/navinfo/collect/library/map/source/OMDBReferenceDataSource.java index 9f3c4aee..9cd8765d 100644 --- a/collect-library/src/main/java/com/navinfo/collect/library/map/source/OMDBReferenceDataSource.java +++ b/collect-library/src/main/java/com/navinfo/collect/library/map/source/OMDBReferenceDataSource.java @@ -36,12 +36,18 @@ public class OMDBReferenceDataSource implements ITileDataSource { @Override public void query(MapTile tile, ITileDataSink mapDataSink) { // 获取tile对应的坐标范围 - if (tile.zoomLevel >= Constant.OMDB_MIN_ZOOM && tile.zoomLevel < Constant.OVER_ZOOM) { - int m = Constant.OVER_ZOOM - tile.zoomLevel; - int xStart = (int) tile.tileX << m; - int xEnd = (int) ((tile.tileX + 1) << m); - int yStart = (int) tile.tileY << m; - int yEnd = (int) ((tile.tileY + 1) << m); + if (tile.zoomLevel >= Constant.OMDB_MIN_ZOOM && tile.zoomLevel <= Constant.DATA_ZOOM) { + int m = Constant.DATA_ZOOM - tile.zoomLevel; + int xStart = tile.tileX; + int xEnd = tile.tileX + 1; + int yStart = tile.tileY; + int yEnd = tile.tileY + 1; + if (m>0) { + xStart = (int) (xStart << m); + xEnd = (int) (xEnd << m); + yStart = (int) (yStart << m); + yEnd = (int) (yEnd << m); + } if(isUpdate){ diff --git a/collect-library/src/main/java/com/navinfo/collect/library/map/source/OMDBReferenceTileSource.java b/collect-library/src/main/java/com/navinfo/collect/library/map/source/OMDBReferenceTileSource.java index 183b3213..3fc6ea84 100644 --- a/collect-library/src/main/java/com/navinfo/collect/library/map/source/OMDBReferenceTileSource.java +++ b/collect-library/src/main/java/com/navinfo/collect/library/map/source/OMDBReferenceTileSource.java @@ -1,15 +1,9 @@ package com.navinfo.collect.library.map.source; -import android.util.Log; - -import com.navinfo.collect.library.data.entity.RenderEntity; import com.navinfo.collect.library.system.Constant; import org.oscim.tiling.ITileDataSource; import org.oscim.tiling.OverzoomTileDataSource; -import org.oscim.tiling.TileSource; - -import io.realm.Realm; public class OMDBReferenceTileSource extends RealmDBTileSource { private OMDBReferenceDataSource omdbReferenceTileSource = new OMDBReferenceDataSource(); @@ -17,7 +11,7 @@ public class OMDBReferenceTileSource extends RealmDBTileSource { @Override public ITileDataSource getDataSource() { //return new OverzoomTileDataSource(new OMDBReferenceDataSource(), Constant.OVER_ZOOM); - return omdbReferenceTileSource; + return new OverzoomTileDataSource(omdbReferenceTileSource, Constant.OVER_ZOOM); } @Override 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 35a7d40d..62475226 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 @@ -35,12 +35,18 @@ public class OMDBTileDataSource implements ITileDataSource { @Override public void query(MapTile tile, ITileDataSink mapDataSink) { // 获取tile对应的坐标范围 - if (tile.zoomLevel >= Constant.OMDB_MIN_ZOOM && tile.zoomLevel < Constant.OVER_ZOOM) { - int m = Constant.OVER_ZOOM - tile.zoomLevel; - int xStart = (int) tile.tileX << m; - int xEnd = (int) ((tile.tileX + 1) << m); - int yStart = (int) tile.tileY << m; - int yEnd = (int) ((tile.tileY + 1) << m); + if (tile.zoomLevel >= Constant.OMDB_MIN_ZOOM && tile.zoomLevel <= Constant.DATA_ZOOM) { + int m = Constant.DATA_ZOOM - tile.zoomLevel; + int xStart = tile.tileX; + int xEnd = tile.tileX + 1; + int yStart = tile.tileY; + int yEnd = tile.tileY + 1; + if (m>0) { + xStart = (int) (xStart << m); + xEnd = (int) (xEnd << m); + yStart = (int) (yStart << m); + yEnd = (int) (yEnd << m); + } if(isUpdate){ Realm.getInstance(MapParamUtils.getTaskConfig()).refresh(); diff --git a/collect-library/src/main/java/com/navinfo/collect/library/map/source/OMDBTileSource.java b/collect-library/src/main/java/com/navinfo/collect/library/map/source/OMDBTileSource.java index 752b839c..406c27ec 100644 --- a/collect-library/src/main/java/com/navinfo/collect/library/map/source/OMDBTileSource.java +++ b/collect-library/src/main/java/com/navinfo/collect/library/map/source/OMDBTileSource.java @@ -7,7 +7,6 @@ import com.navinfo.collect.library.system.Constant; import org.oscim.tiling.ITileDataSource; import org.oscim.tiling.OverzoomTileDataSource; -import org.oscim.tiling.TileSource; import io.realm.Realm; @@ -16,7 +15,7 @@ public class OMDBTileSource extends RealmDBTileSource { @Override public ITileDataSource getDataSource() { // return new OverzoomTileDataSource(new OMDBTileDataSource(), Constant.OVER_ZOOM); - return omdbTileSource; + return new OverzoomTileDataSource(omdbTileSource, Constant.OVER_ZOOM); } @Override diff --git a/collect-library/src/main/java/com/navinfo/collect/library/system/Constant.java b/collect-library/src/main/java/com/navinfo/collect/library/system/Constant.java index 60ece1cd..764f6f71 100644 --- a/collect-library/src/main/java/com/navinfo/collect/library/system/Constant.java +++ b/collect-library/src/main/java/com/navinfo/collect/library/system/Constant.java @@ -2,10 +2,6 @@ package com.navinfo.collect.library.system; import android.os.Environment; -import com.navinfo.collect.library.map.source.RealmDBTileDataSource; - -import org.oscim.tiling.OverzoomTileDataSource; - import java.util.HashMap; import java.util.Map; @@ -30,8 +26,11 @@ public class Constant { } public static String[] HAD_LAYER_INVISIABLE_ARRAY; - public static final int OVER_ZOOM = 20; - public static final int MAX_ZOOM = 20; + // 渲染引擎开始切割的级别 + public static final int OVER_ZOOM = 18; + public static final int MAX_ZOOM = 22; + // 数据保存时的zoom + public static final int DATA_ZOOM = 23; public static final int OMDB_MIN_ZOOM = 15; /** diff --git a/collect-library/src/main/java/com/navinfo/collect/library/utils/GeometryToolsKt.kt b/collect-library/src/main/java/com/navinfo/collect/library/utils/GeometryToolsKt.kt index 888e0afd..b626079c 100644 --- a/collect-library/src/main/java/com/navinfo/collect/library/utils/GeometryToolsKt.kt +++ b/collect-library/src/main/java/com/navinfo/collect/library/utils/GeometryToolsKt.kt @@ -38,8 +38,8 @@ class GeometryToolsKt { } } // 分别计算最大和最小x值对应的tile号 - val tileY0 = MercatorProjection.latitudeToTileY(minMaxY[0], Constant.OVER_ZOOM.toByte()) - val tileY1 = MercatorProjection.latitudeToTileY(minMaxY[1], Constant.OVER_ZOOM.toByte()) + val tileY0 = MercatorProjection.latitudeToTileY(minMaxY[0], Constant.DATA_ZOOM.toByte()) + val tileY1 = MercatorProjection.latitudeToTileY(minMaxY[1], Constant.DATA_ZOOM.toByte()) val minTileY = if (tileY0 <= tileY1) tileY0 else tileY1 val maxTileY = if (tileY0 <= tileY1) tileY1 else tileY0 // println("getTileYByGeometry$envelope===$minTileY===$maxTileY") @@ -82,8 +82,8 @@ class GeometryToolsKt { } } // 分别计算最大和最小x值对应的tile号 - val tileX0 = MercatorProjection.longitudeToTileX(minMaxX[0], Constant.OVER_ZOOM.toByte()) - val tileX1 = MercatorProjection.longitudeToTileX(minMaxX[1], Constant.OVER_ZOOM.toByte()) + val tileX0 = MercatorProjection.longitudeToTileX(minMaxX[0], Constant.DATA_ZOOM.toByte()) + val tileX1 = MercatorProjection.longitudeToTileX(minMaxX[1], Constant.DATA_ZOOM.toByte()) val minTileX = if (tileX0 <= tileX1) tileX0 else tileX1 val maxTileX = if (tileX0 <= tileX1) tileX1 else tileX0 // println("getTileXByGeometry$envelope$minTileX===$maxTileX") From 1f34a8f306fd22f472e95add1d8c813c850ed9dc Mon Sep 17 00:00:00 2001 From: qiji4215 Date: Tue, 26 Sep 2023 16:14:30 +0800 Subject: [PATCH 3/7] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=BD=A6=E9=81=93?= =?UTF-8?q?=E4=B8=AD=E5=BF=83=E7=BA=BF=E6=89=A9=E5=85=85=E9=9D=A2=E4=B8=9A?= =?UTF-8?q?=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/assets/omdb_config.json | 1 + .../com/navinfo/omqs/db/ImportPreProcess.kt | 5 ++-- .../omqs/ui/activity/login/LoginViewModel.kt | 2 ++ .../omqs/ui/activity/map/MainActivity.kt | 11 +++----- .../ui/fragment/tasklist/TaskListAdapter.kt | 4 +++ .../ui/fragment/tasklist/TaskViewModel.kt | 4 ++- .../src/main/assets/editormarker.xml | 10 +++---- .../src/main/assets/omdb/icon_5001_1.png | Bin 0 -> 3755 bytes .../collect/library/utils/GeometryTools.java | 25 ++++++++++++++++++ 9 files changed, 46 insertions(+), 16 deletions(-) create mode 100644 collect-library/src/main/assets/omdb/icon_5001_1.png diff --git a/app/src/main/assets/omdb_config.json b/app/src/main/assets/omdb_config.json index 1165cf0e..1a860371 100644 --- a/app/src/main/assets/omdb_config.json +++ b/app/src/main/assets/omdb_config.json @@ -523,6 +523,7 @@ "table": "OMDB_LANE_LINK_LG", "code": 5001, "name": "车道中心线", + "catch":false, "checkLinkId": false, "zoomMin": 18, "zoomMax": 20, 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 4281b648..8c2a6b53 100644 --- a/app/src/main/java/com/navinfo/omqs/db/ImportPreProcess.kt +++ b/app/src/main/java/com/navinfo/omqs/db/ImportPreProcess.kt @@ -6,7 +6,6 @@ import com.navinfo.collect.library.data.entity.RenderEntity import com.navinfo.collect.library.utils.GeometryTools import com.navinfo.omqs.Constant import io.realm.Realm -import io.realm.RealmConfiguration import org.json.JSONArray import org.json.JSONObject import org.locationtech.jts.algorithm.Angle @@ -583,9 +582,9 @@ class ImportPreProcess { angleReference.renderEntityId = renderEntity.id angleReference.name = "${renderEntity.name}车道中线面" angleReference.table = renderEntity.table - angleReference.geometry = renderEntity.geometry + angleReference.geometry = GeometryTools.computeLine(0.00002,0.00002,renderEntity.geometry) angleReference.properties["qi_table"] = renderEntity.table - angleReference.properties["width"] = "3" + angleReference.properties["widthProperties"] = "3" angleReference.zoomMin = renderEntity.zoomMin angleReference.zoomMax = renderEntity.zoomMax angleReference.taskId = renderEntity.taskId diff --git a/app/src/main/java/com/navinfo/omqs/ui/activity/login/LoginViewModel.kt b/app/src/main/java/com/navinfo/omqs/ui/activity/login/LoginViewModel.kt index d0f840ca..1d1736b8 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/activity/login/LoginViewModel.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/activity/login/LoginViewModel.kt @@ -14,6 +14,7 @@ import com.google.gson.Gson import com.google.gson.reflect.TypeToken import com.navinfo.collect.library.data.entity.RenderEntity import com.navinfo.collect.library.data.entity.TaskBean +import com.navinfo.collect.library.utils.GeometryTools import com.navinfo.omqs.Constant import com.navinfo.omqs.bean.LoginUserBean import com.navinfo.omqs.bean.SysUserBean @@ -132,6 +133,7 @@ class LoginViewModel @Inject constructor( } //不指定IO,会在主线程里运行 jobLogin = viewModelScope.launch(Dispatchers.IO) { + //Log.e("qj", "computeline==${GeometryTools.computeLine(0.003,0.003,"LINESTRING(116.2730063860964 40.09052257957624 36.75, 116.27376497186042 40.090072453495395 38.34, 116.27413076766412 40.089855289361786 39.01, 116.27417239035157 40.08983061650492 39.15, 116.27466896728139 40.089535645040385 39.99, 116.2751211296483 40.089267551829636 40.67, 116.27545352868347 40.089070581974944 40.98, 116.27589660200627 40.088807594767246 41.28, 116.27604819769634 40.088718103405185 41.34, 116.27667570485863 40.08834486145473 41.43, 116.2770275412774 40.08813642434714 41.36, 116.27745673745146 40.087882150865546 41.14, 116.27778797172138 40.08768490714857 40.89, 116.2781675465249 40.087459905560266 40.45, 116.2783819045443 40.087332076220086 40.02, 116.27880692426884 40.0870801193608 39.32, 116.27943180930261 40.08670963506418 38.04, 116.27977508323622 40.08650562397605 37.39, 116.28016410016664 40.08627485623695 36.77, 116.28057924586821 40.0860283164225 36.29)")}") loginCheck(context, userName, password) } diff --git a/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainActivity.kt b/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainActivity.kt index 5fe871fd..746a27b2 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainActivity.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainActivity.kt @@ -1,9 +1,6 @@ package com.navinfo.omqs.ui.activity.map import android.app.Activity -import android.content.ClipData -import android.content.ClipboardManager -import android.content.Context import android.content.Intent import android.os.Build import android.os.Bundle @@ -11,7 +8,6 @@ import android.speech.tts.TextToSpeech import android.util.Log import android.view.MotionEvent import android.view.View -import android.view.View.OnLongClickListener import android.widget.EditText import android.widget.TextView import android.widget.Toast @@ -27,9 +23,9 @@ import com.blankj.utilcode.util.ClipboardUtils import com.google.android.material.dialog.MaterialAlertDialogBuilder import com.google.android.material.tabs.TabLayout import com.navinfo.collect.library.data.entity.RenderEntity -import com.navinfo.collect.library.data.entity.TaskBean import com.navinfo.collect.library.map.NIMapController import com.navinfo.collect.library.map.handler.MeasureLayerHandler +import com.navinfo.collect.library.utils.GeometryTools import com.navinfo.omqs.Constant import com.navinfo.omqs.R import com.navinfo.omqs.bean.ImportConfig @@ -39,7 +35,6 @@ import com.navinfo.omqs.databinding.ActivityMainBinding import com.navinfo.omqs.http.offlinemapdownload.OfflineMapDownloadManager import com.navinfo.omqs.tools.LayerConfigUtils import com.navinfo.omqs.ui.activity.BaseActivity -import com.navinfo.omqs.ui.dialog.LoadingDialog import com.navinfo.omqs.ui.fragment.console.ConsoleFragment import com.navinfo.omqs.ui.fragment.itemlist.ItemListFragment import com.navinfo.omqs.ui.fragment.offlinemap.OfflineMapFragment @@ -792,7 +787,9 @@ class MainActivity : BaseActivity() { * zoomin */ fun zoomInOnclick(view: View) { - mapController.animationHandler.zoomIn() + Log.e("qj", "computeline==${GeometryTools.computeLine(0.00003,0.00003,"LINESTRING(116.2730063860964 40.09052257957624 36.75, 116.27376497186042 40.090072453495395 38.34, 116.27413076766412 40.089855289361786 39.01, 116.27417239035157 40.08983061650492 39.15, 116.27466896728139 40.089535645040385 39.99, 116.2751211296483 40.089267551829636 40.67, 116.27545352868347 40.089070581974944 40.98, 116.27589660200627 40.088807594767246 41.28, 116.27604819769634 40.088718103405185 41.34, 116.27667570485863 40.08834486145473 41.43, 116.2770275412774 40.08813642434714 41.36, 116.27745673745146 40.087882150865546 41.14, 116.27778797172138 40.08768490714857 40.89, 116.2781675465249 40.087459905560266 40.45, 116.2783819045443 40.087332076220086 40.02, 116.27880692426884 40.0870801193608 39.32, 116.27943180930261 40.08670963506418 38.04, 116.27977508323622 40.08650562397605 37.39, 116.28016410016664 40.08627485623695 36.77, 116.28057924586821 40.0860283164225 36.29)")}") + + //mapController.animationHandler.zoomIn() } /** diff --git a/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskListAdapter.kt b/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskListAdapter.kt index 829b2aa4..fc2024b3 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskListAdapter.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskListAdapter.kt @@ -2,6 +2,7 @@ package com.navinfo.omqs.ui.fragment.tasklist import android.annotation.SuppressLint import android.graphics.Color +import android.text.TextUtils import android.util.Log import android.view.LayoutInflater import android.view.View @@ -225,6 +226,9 @@ class TaskListAdapter( binding.taskUploadBtn.stopAnimator() binding.taskUploadBtn.setText("重新同步") binding.taskUploadBtn.setProgress(100) + if(!TextUtils.isEmpty(taskBean.errMsg)){ + Toast.makeText(binding.root.context,taskBean.errMsg,Toast.LENGTH_LONG).show() + } } FileUploadStatus.NONE -> { diff --git a/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskViewModel.kt b/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskViewModel.kt index de898e70..5b30d286 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskViewModel.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskViewModel.kt @@ -503,7 +503,9 @@ class TaskViewModel @Inject constructor( } } } + realm.close() if(result==1){ + liveDataTaskUpload.postValue(map) withContext(Dispatchers.Main) { val mDialog = FirstDialog(context) mDialog.setTitle("提示?") @@ -517,6 +519,7 @@ class TaskViewModel @Inject constructor( mDialog.show() } }else if(result==2){ + liveDataTaskUpload.postValue(map) withContext(Dispatchers.Main) { val mDialog = FirstDialog(context) mDialog.setTitle("提示?") @@ -537,7 +540,6 @@ class TaskViewModel @Inject constructor( map[taskBean] = true liveDataTaskUpload.postValue(map) } - realm.close() } } diff --git a/collect-library/src/main/assets/editormarker.xml b/collect-library/src/main/assets/editormarker.xml index b284ea50..facd996d 100644 --- a/collect-library/src/main/assets/editormarker.xml +++ b/collect-library/src/main/assets/editormarker.xml @@ -1587,12 +1587,12 @@ - - + + + - diff --git a/collect-library/src/main/assets/omdb/icon_5001_1.png b/collect-library/src/main/assets/omdb/icon_5001_1.png new file mode 100644 index 0000000000000000000000000000000000000000..1bf39a45b3b0c601e3a93ba421936490f97b8839 GIT binary patch literal 3755 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 literal 0 HcmV?d00001 diff --git a/collect-library/src/main/java/com/navinfo/collect/library/utils/GeometryTools.java b/collect-library/src/main/java/com/navinfo/collect/library/utils/GeometryTools.java index 6dcbdd1e..20c238f8 100644 --- a/collect-library/src/main/java/com/navinfo/collect/library/utils/GeometryTools.java +++ b/collect-library/src/main/java/com/navinfo/collect/library/utils/GeometryTools.java @@ -2,6 +2,7 @@ package com.navinfo.collect.library.utils; import android.graphics.Point; import android.os.Build; +import android.text.TextUtils; import android.util.Log; import org.locationtech.jts.geom.Coordinate; @@ -13,6 +14,8 @@ import org.locationtech.jts.geom.MultiPoint; import org.locationtech.jts.geom.MultiPolygon; import org.locationtech.jts.geom.Polygon; import org.locationtech.jts.io.WKTReader; +import org.locationtech.jts.operation.buffer.BufferOp; +import org.locationtech.jts.operation.buffer.BufferParameters; import org.locationtech.jts.operation.linemerge.LineMerger; import org.oscim.core.GeoPoint; import org.oscim.core.MercatorProjection; @@ -1505,6 +1508,28 @@ public class GeometryTools { } + /** + * @param distLeft 单位km + * @param distRight 单位km + * @param wkt 几何 + * @return + */ + public static String computeLine(Double distLeft,Double distRight,String wkt){ + if(!TextUtils.isEmpty(wkt)){ + Geometry lineString1 = GeometryTools.createGeometry(wkt); + BufferParameters parameters1 = new BufferParameters(); + parameters1.setEndCapStyle(BufferParameters.CAP_FLAT); + parameters1.setSingleSided(true); + + Geometry buffer = BufferOp.bufferOp(lineString1, distLeft, parameters1); + Geometry buffer2 = BufferOp.bufferOp(lineString1, -distRight, parameters1); + String bufferWkt = buffer.union(buffer2).toString(); + Log.e("qj",bufferWkt); + return bufferWkt; + } + return ""; + } + public static FootAndDistance pointToLineDistance(GeoPoint point, Geometry geometry) { //定义垂线 FootAndDistance pointPairDistance = new FootAndDistance(point); From b4724f205eef2b9c8af89248b2fd171e73569cba Mon Sep 17 00:00:00 2001 From: qiji4215 Date: Tue, 26 Sep 2023 16:32:05 +0800 Subject: [PATCH 4/7] =?UTF-8?q?1=E3=80=81=E4=BF=AE=E6=94=B9=E8=BD=A6?= =?UTF-8?q?=E9=81=93=E4=B8=AD=E5=BF=83=E9=9D=A2=E6=A0=B7=E5=BC=8F=EF=BC=8C?= =?UTF-8?q?=E8=A7=A3=E5=86=B3=E7=BC=BA=E5=8F=A3=E9=97=AE=E9=A2=982?= =?UTF-8?q?=E3=80=81=E4=BF=AE=E6=94=B9=E9=81=93=E8=B7=AF=E8=BE=B9=E7=95=8C?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E9=97=B4=E9=9A=94=E4=B8=8E=E8=BD=A6=E9=81=93?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E4=B8=80=E8=87=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- collect-library/src/main/assets/editormarker.xml | 4 ++-- .../src/main/assets/omdb/icon_5001_0.png | Bin 0 -> 1370 bytes 2 files changed, 2 insertions(+), 2 deletions(-) create mode 100644 collect-library/src/main/assets/omdb/icon_5001_0.png diff --git a/collect-library/src/main/assets/editormarker.xml b/collect-library/src/main/assets/editormarker.xml index facd996d..8ac29097 100644 --- a/collect-library/src/main/assets/editormarker.xml +++ b/collect-library/src/main/assets/editormarker.xml @@ -1591,7 +1591,7 @@ --> - + @@ -1630,7 +1630,7 @@ --> - + diff --git a/collect-library/src/main/assets/omdb/icon_5001_0.png b/collect-library/src/main/assets/omdb/icon_5001_0.png new file mode 100644 index 0000000000000000000000000000000000000000..6f21d1d324f5f4bbaf3dadd14b33b91f13ff7baa GIT binary patch literal 1370 zcmeAS@N?(olHy`uVBq!ia0vp^n-~}v-*T`4S$kDg{sAe*;vjb?hIQv;UIIBR>5jgR z3=A9lx&I`x0{NT;9+AZi419+{nDKc2iWH!l_nt0}Ar*0NFF6V_CbP0l+XkK Da*#iK literal 0 HcmV?d00001 From 3471ac9b93ec7de208a70f5aa30f2b622468c8d2 Mon Sep 17 00:00:00 2001 From: qiji4215 Date: Tue, 26 Sep 2023 17:18:17 +0800 Subject: [PATCH 5/7] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E8=BF=9E=E7=BB=AD=E7=82=B9=E5=87=BB=E5=90=8E=E5=8F=AA=E4=BF=9D?= =?UTF-8?q?=E7=95=99=E6=9C=80=E8=BF=91=E4=B8=80=E6=9D=A1=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/navinfo/omqs/ui/activity/map/MainActivity.kt | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainActivity.kt b/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainActivity.kt index 746a27b2..abd9f946 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainActivity.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainActivity.kt @@ -16,6 +16,8 @@ import androidx.activity.viewModels import androidx.databinding.DataBindingUtil import androidx.fragment.app.Fragment import androidx.lifecycle.lifecycleScope +import androidx.lifecycle.viewModelScope +import androidx.navigation.Navigation import androidx.navigation.findNavController import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView @@ -48,6 +50,7 @@ import com.navinfo.omqs.util.NaviStatus import com.navinfo.omqs.util.SignUtil import com.navinfo.omqs.util.SpeakMode import dagger.hilt.android.AndroidEntryPoint +import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch import org.oscim.core.GeoPoint import org.oscim.renderer.GLViewport @@ -345,12 +348,19 @@ class MainActivity : BaseActivity() { } } viewModel.liveDataSignMoreInfo.observe(this) { + + if(!rightController.backQueue.isEmpty()){ + rightController.navigateUp() + } + val fragment = supportFragmentManager.findFragmentById(R.id.main_activity_sign_more_info_fragment) if (fragment == null) { supportFragmentManager.beginTransaction() .replace(R.id.main_activity_sign_more_info_fragment, SignMoreInfoFragment()) .commit() + }else{ + supportFragmentManager.beginTransaction().add(R.id.main_activity_sign_more_info_fragment, SignMoreInfoFragment()).commit() } //启动问题记录 val signBean = SignBean( From 4c18381125179c75e5302a48306ae9f1c4159e6f Mon Sep 17 00:00:00 2001 From: qiji4215 Date: Tue, 26 Sep 2023 17:46:14 +0800 Subject: [PATCH 6/7] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=A4=9A=E7=82=B9?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E7=82=B9=E5=87=BB=E6=98=BE=E7=A4=BA=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../omqs/ui/activity/login/LoginActivity.kt | 8 +++- .../omqs/ui/activity/map/MainActivity.kt | 40 ++++++++----------- .../signMoreInfo/SignMoreInfoFragment.kt | 2 +- .../main/res/menu/personal_center_menu.xml | 2 +- vtm | 2 +- 5 files changed, 26 insertions(+), 28 deletions(-) diff --git a/app/src/main/java/com/navinfo/omqs/ui/activity/login/LoginActivity.kt b/app/src/main/java/com/navinfo/omqs/ui/activity/login/LoginActivity.kt index fd43b4bd..f6a9b4f4 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/activity/login/LoginActivity.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/activity/login/LoginActivity.kt @@ -40,7 +40,13 @@ class LoginActivity : CheckPermissionsActivity() { binding.activity = this initView() Log.e("jingo", getScreenParams()) - UMConfigure.init(this, "650bece7b2f6fa00ba573c7a", "native", UMConfigure.DEVICE_TYPE_PHONE, "") + UMConfigure.init( + this, + "650bece7b2f6fa00ba573c7a", + "native", + UMConfigure.DEVICE_TYPE_PHONE, + "" + ) } private fun getScreenParams(): String { diff --git a/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainActivity.kt b/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainActivity.kt index abd9f946..2f205215 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainActivity.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainActivity.kt @@ -51,6 +51,7 @@ import com.navinfo.omqs.util.SignUtil import com.navinfo.omqs.util.SpeakMode import dagger.hilt.android.AndroidEntryPoint import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.delay import kotlinx.coroutines.launch import org.oscim.core.GeoPoint import org.oscim.renderer.GLViewport @@ -353,31 +354,22 @@ class MainActivity : BaseActivity() { rightController.navigateUp() } - val fragment = - supportFragmentManager.findFragmentById(R.id.main_activity_sign_more_info_fragment) - if (fragment == null) { - supportFragmentManager.beginTransaction() - .replace(R.id.main_activity_sign_more_info_fragment, SignMoreInfoFragment()) - .commit() - }else{ - supportFragmentManager.beginTransaction().add(R.id.main_activity_sign_more_info_fragment, SignMoreInfoFragment()).commit() + lifecycleScope.launch{ + delay(100) + val fragment = + supportFragmentManager.findFragmentById(R.id.main_activity_sign_more_info_fragment) + if (fragment == null) { + supportFragmentManager.beginTransaction() + .replace(R.id.main_activity_sign_more_info_fragment, SignMoreInfoFragment()) + .commit() + }else{ + supportFragmentManager.beginTransaction().add(R.id.main_activity_sign_more_info_fragment, SignMoreInfoFragment()).commit() + } + val bundle = Bundle() + bundle.putParcelable("SignBean", it) + bundle.putBoolean("AutoSave", false) + rightController.navigate(R.id.EvaluationResultFragment, bundle) } - //启动问题记录 - val signBean = SignBean( - iconId = SignUtil.getSignIcon(it), - iconText = SignUtil.getSignIconText(it), - linkId = it.properties[RenderEntity.Companion.LinkTable.linkPid] - ?: "", - name = SignUtil.getSignNameText(it), - bottomRightText = SignUtil.getSignBottomRightText(it), - renderEntity = it, - isMoreInfo = SignUtil.isMoreInfo(it), - index = SignUtil.getRoadInfoIndex(it) - ) - val bundle = Bundle() - bundle.putParcelable("SignBean", signBean) - bundle.putBoolean("AutoSave", false) - rightController.navigate(R.id.EvaluationResultFragment, bundle) } viewModel.liveIndoorToolsResp.observe(this) { diff --git a/app/src/main/java/com/navinfo/omqs/ui/fragment/signMoreInfo/SignMoreInfoFragment.kt b/app/src/main/java/com/navinfo/omqs/ui/fragment/signMoreInfo/SignMoreInfoFragment.kt index 2ecf8477..37023521 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/fragment/signMoreInfo/SignMoreInfoFragment.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/fragment/signMoreInfo/SignMoreInfoFragment.kt @@ -101,7 +101,7 @@ class SignMoreInfoFragment : BaseFragment() { DataCodeEnum.OMDB_TRAFFIC_SIGN.code -> { val adapter = TwoItemAdapter() binding.signInfoRecyclerview.adapter = adapter - adapter.refreshData(SignUtil.getTrafficSignMoreInfo(it)) + adapter.refreshData(SignUtil.getTrafficSignMoreInfo(it.renderEntity)) } else -> { val adapter = SignUtil.getMoreInfoAdapter(it.renderEntity) diff --git a/app/src/main/res/menu/personal_center_menu.xml b/app/src/main/res/menu/personal_center_menu.xml index 9e53afd3..48d8d485 100644 --- a/app/src/main/res/menu/personal_center_menu.xml +++ b/app/src/main/res/menu/personal_center_menu.xml @@ -59,7 +59,7 @@ + android:title="版本:23QE4_V1.5.4_20230926_A" /> diff --git a/vtm b/vtm index 39b9993b..271e7b22 160000 --- a/vtm +++ b/vtm @@ -1 +1 @@ -Subproject commit 39b9993b1cc5257d11c872161812ffe890e44bd9 +Subproject commit 271e7b22785b0570a34c50476e17a98dfcca7e71 From a2245f8e7cbcf5345c531c38cc13bd797b3eee2e Mon Sep 17 00:00:00 2001 From: xiaoyan Date: Wed, 27 Sep 2023 09:37:30 +0800 Subject: [PATCH 7/7] =?UTF-8?q?fix:=20=E4=BF=AE=E6=94=B9=E4=B8=8A=E6=96=B9?= =?UTF-8?q?=E9=9A=9C=E7=A2=8D=E7=89=A9=E6=B8=B2=E6=9F=93=E6=A0=B7=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- collect-library/src/main/assets/editormarker.xml | 4 ++-- collect-library/src/main/assets/omdb/icon_3001_0.svg | 2 +- collect-library/src/main/assets/omdb/tex_fill_area_3027_1.svg | 1 + collect-library/src/main/assets/omdb/tex_fill_area_3027_2.svg | 1 + 4 files changed, 5 insertions(+), 3 deletions(-) create mode 100644 collect-library/src/main/assets/omdb/tex_fill_area_3027_1.svg create mode 100644 collect-library/src/main/assets/omdb/tex_fill_area_3027_2.svg diff --git a/collect-library/src/main/assets/editormarker.xml b/collect-library/src/main/assets/editormarker.xml index cff509ec..8ca3e4b3 100644 --- a/collect-library/src/main/assets/editormarker.xml +++ b/collect-library/src/main/assets/editormarker.xml @@ -1822,10 +1822,10 @@ - + - + diff --git a/collect-library/src/main/assets/omdb/icon_3001_0.svg b/collect-library/src/main/assets/omdb/icon_3001_0.svg index 46b83bd6..8a83ff09 100644 --- a/collect-library/src/main/assets/omdb/icon_3001_0.svg +++ b/collect-library/src/main/assets/omdb/icon_3001_0.svg @@ -1 +1 @@ - \ No newline at end of file +障碍物 \ No newline at end of file diff --git a/collect-library/src/main/assets/omdb/tex_fill_area_3027_1.svg b/collect-library/src/main/assets/omdb/tex_fill_area_3027_1.svg new file mode 100644 index 00000000..b9433d00 --- /dev/null +++ b/collect-library/src/main/assets/omdb/tex_fill_area_3027_1.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/collect-library/src/main/assets/omdb/tex_fill_area_3027_2.svg b/collect-library/src/main/assets/omdb/tex_fill_area_3027_2.svg new file mode 100644 index 00000000..d6d0c1d0 --- /dev/null +++ b/collect-library/src/main/assets/omdb/tex_fill_area_3027_2.svg @@ -0,0 +1 @@ + \ No newline at end of file