修改车道面为车道中心线并在辅助表中存储

This commit is contained in:
qiji4215 2023-07-05 14:09:45 +08:00
parent e3a78aeb77
commit 7c57a451f1
7 changed files with 60 additions and 9 deletions

View File

@ -269,7 +269,15 @@
"5001":{
"table": "OMDB_LANE_LINK_LG",
"code": 5001,
"name": "车道中心线"
"name": "车道中心线",
"transformer": [
{
"k": "geometry",
"v": "~",
"klib": "geometry",
"vlib": "generateAddWidthLine()"
}
]
},
"5002":{
"table": "OMDB_AREA",

View File

@ -299,6 +299,21 @@ class ImportPreProcess {
}
}
/**
* 生成车道中心线面宽度
* */
fun generateAddWidthLine(renderEntity: RenderEntity) {
// 添加车道中心面渲染原则,根据车道宽度进行渲染
val angleReference = ReferenceEntity()
angleReference.renderEntityId = renderEntity.id
angleReference.name = "${renderEntity.name}车道中线面"
angleReference.table = renderEntity.table
angleReference.geometry = renderEntity.geometry
angleReference.properties["qi_table"] = renderEntity.table
angleReference.properties["width"] = "3"
Realm.getDefaultInstance().insert(angleReference)
}
/**
* 生成默认路口数据的参考数据
* */

View File

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

View File

@ -203,7 +203,11 @@ class TaskListAdapter(
binding.taskDeleteLayout.setOnClickListener {
//重置状态
leftDeleteView?.resetDeleteStatus()
itemListener?.invoke(position, ItemClickStatus.DELETE_LAYOUT_CLICK, taskBean)
if(taskBean.syncStatus != FileUploadStatus.DONE){
Toast.makeText(binding.taskUploadBtn.context, "数据未上传,不允许关闭!", Toast.LENGTH_SHORT).show()
}else{
itemListener?.invoke(position, ItemClickStatus.DELETE_LAYOUT_CLICK, taskBean)
}
}
}

View File

@ -55,10 +55,10 @@ class TaskListFragment : BaseFragment() {
if(status==TaskListAdapter.Companion.ItemClickStatus.ITEM_LAYOUT_CLICK){
viewModel.setSelectTaskBean(taskBean as TaskBean)
}else if(status==TaskListAdapter.Companion.ItemClickStatus.DELETE_LAYOUT_CLICK){
showLoadingDialog("正在关闭")
context?.let { viewModel.removeTask(it, taskBean as TaskBean) }
}else if(status==TaskListAdapter.Companion.ItemClickStatus.UPLOAD_LAYOUT_CLICK){
showLoadingDialog("正在校验")
Toast.makeText(context, "正在校验", Toast.LENGTH_SHORT).show()
viewModel.checkUploadTask(binding.root.context,taskBean)
} else {
@ -88,6 +88,14 @@ class TaskListFragment : BaseFragment() {
adapter.refreshData(it)
}
//监听关闭任务状态
viewModel.liveDataCloseTask.observe(viewLifecycleOwner){
if(it){
Toast.makeText(binding.root.context,"成功关闭!",Toast.LENGTH_LONG).show()
}
hideLoadingDialog()
}
//监听并调用上传
viewModel.liveDataTaskUpload.observe(viewLifecycleOwner){
for ((key, value) in it) {

View File

@ -46,6 +46,11 @@ class TaskViewModel @Inject constructor(
*/
val liveDataTaskUpload = MutableLiveData<Map<TaskBean, Boolean>>()
/**
* 用来确定是否关闭
*/
val liveDataCloseTask = MutableLiveData<Boolean>()
private val colors =
arrayOf(Color.RED, Color.YELLOW, Color.BLUE, Color.MAGENTA, Color.GREEN, Color.CYAN)
@ -297,10 +302,16 @@ class TaskViewModel @Inject constructor(
FileManager.checkOMDBFileInfo(item)
}
liveDataTaskList.postValue(taskList)
liveDataCloseTask.postValue(true)
}
}
})
mDialog.setNegativeButton("取消", null)
mDialog.setNegativeButton("取消", object : FirstDialog.OnClickListener {
override fun onClick(dialog: Dialog?, which: Int) {
liveDataCloseTask.postValue(false)
mDialog.dismiss()
}
})
mDialog.show()
}
}

View File

@ -1560,7 +1560,7 @@
<m k="qi_table">
<!--车道数-->
<m v="OMDB_LANE_NUM">
<m k="laneNum">
<!-- <m k="laneNum">
<m v="1">
<line stroke="#545D6C" width="3" />
</m>
@ -1597,7 +1597,7 @@
<m v="12">
<line stroke="#545D6C" width="36" />
</m>
</m>
</m>-->
</m>
<!-- 道路线 -->
<m v="OMDB_RD_LINK">
@ -1698,8 +1698,13 @@
</m>
<!--车道中心线-->
<m v="OMDB_LANE_LINK_LG">
<line dasharray="35,35" stroke="#ecf0f1" width="0.1" />
</m>
<!-- <m k="eLaneNodePid">
<line dasharray="35,35" stroke="#ecf0f1" width="0.1" />
</m>-->
<m k="width">
<line stroke="#545D6C" width="3" />
</m>
</m>0
<!-- 道路边界类型 -->
<m v="OMDB_RDBOUND_BOUNDARYTYPE">
<line stroke="#ffffff" width="0.1" />