增加要素是否捕捉控制参数
This commit is contained in:
parent
8fe236922e
commit
94c9b8fd4f
@ -46,6 +46,7 @@
|
||||
"name": "道路种别",
|
||||
"zoomMin": 15,
|
||||
"zoomMax": 20,
|
||||
"catch":false,
|
||||
"checkLinkId": false
|
||||
},
|
||||
"2010": {
|
||||
@ -472,6 +473,7 @@
|
||||
"name": "车道中心线",
|
||||
"zoomMin": 18,
|
||||
"zoomMax": 20,
|
||||
"catch":false,
|
||||
"transformer": [
|
||||
{
|
||||
"k": "geometry",
|
||||
|
@ -122,6 +122,7 @@ class TableInfo {
|
||||
val zoomMin: Int = 16
|
||||
val zoomMax: Int = 21
|
||||
val checkLinkId: Boolean = true//是否需要校验linkid
|
||||
val catch: Boolean = true//是否需要捕捉
|
||||
val name: String = ""
|
||||
var checked : Boolean = true
|
||||
var transformer: MutableList<Transform> = mutableListOf()
|
||||
|
@ -229,6 +229,13 @@ class ImportOMDBHelper @AssistedInject constructor(
|
||||
if (!renderEntity.properties.containsKey("name")) {
|
||||
renderEntity.properties["name"] = renderEntity.name;
|
||||
}
|
||||
|
||||
if(currentConfig.catch){
|
||||
renderEntity.catch=0
|
||||
}else{
|
||||
renderEntity.catch=1
|
||||
}
|
||||
|
||||
//遍历判断只显示与任务Link相关的任务数据
|
||||
if(currentConfig.checkLinkId){
|
||||
|
||||
|
@ -244,6 +244,7 @@ class RealmOperateHelper() {
|
||||
point: Point,
|
||||
buffer: Double = DEFAULT_BUFFER,
|
||||
bufferType: BUFFER_TYPE = DEFAULT_BUFFER_TYPE,
|
||||
catchAll: Boolean = true,
|
||||
sort: Boolean = true
|
||||
): MutableList<RenderEntity> {
|
||||
val result = mutableListOf<RenderEntity>()
|
||||
@ -261,14 +262,25 @@ class RealmOperateHelper() {
|
||||
val yStart = tileYSet.stream().min(Comparator.naturalOrder()).orElse(null)
|
||||
val yEnd = tileYSet.stream().max(Comparator.naturalOrder()).orElse(null)
|
||||
val realm = getRealmDefaultInstance()
|
||||
// 查询realm中对应tile号的数据
|
||||
val realmList = getRealmTools(RenderEntity::class.java, false)
|
||||
.notEqualTo("table", DataCodeEnum.OMDB_RD_LINK.name)
|
||||
.greaterThanOrEqualTo("tileX", xStart)
|
||||
.lessThanOrEqualTo("tileX", xEnd)
|
||||
.greaterThanOrEqualTo("tileY", yStart)
|
||||
.lessThanOrEqualTo("tileY", yEnd)
|
||||
.findAll()
|
||||
var realmList = mutableListOf<RenderEntity>()
|
||||
if(catchAll){
|
||||
// 查询realm中对应tile号的数据
|
||||
realmList = getRealmTools(RenderEntity::class.java, false)
|
||||
.greaterThanOrEqualTo("tileX", xStart)
|
||||
.lessThanOrEqualTo("tileX", xEnd)
|
||||
.greaterThanOrEqualTo("tileY", yStart)
|
||||
.lessThanOrEqualTo("tileY", yEnd)
|
||||
.findAll()
|
||||
}else{
|
||||
// 查询realm中对应tile号的数据
|
||||
realmList = getRealmTools(RenderEntity::class.java, false)
|
||||
.equalTo("catch", "0")
|
||||
.greaterThanOrEqualTo("tileX", xStart)
|
||||
.lessThanOrEqualTo("tileX", xEnd)
|
||||
.greaterThanOrEqualTo("tileY", yStart)
|
||||
.lessThanOrEqualTo("tileY", yEnd)
|
||||
.findAll()
|
||||
}
|
||||
// 将获取到的数据和查询的polygon做相交,只返回相交的数据
|
||||
val queryResult = realmList?.stream()?.filter {
|
||||
polygon.intersects(it.wkt)
|
||||
|
@ -475,7 +475,7 @@ class MainViewModel @Inject constructor(
|
||||
point.longitude,
|
||||
point.latitude
|
||||
),
|
||||
buffer = 1.0
|
||||
buffer = 1.0, catchAll = false
|
||||
)
|
||||
|
||||
if (itemList.size == 1) {
|
||||
|
@ -23,6 +23,7 @@ class ItemAdapter(private var itemListener: ((Int, RenderEntity) -> Unit?)? = nu
|
||||
val binding = holder.viewBinding as AdapterItemBinding
|
||||
var renderEntity = data[position]
|
||||
binding.root.isSelected = selectPosition == position
|
||||
binding.itemIndex.text = (position+1).toString()
|
||||
binding.name.text = DataCodeEnum.findTableNameByCode(renderEntity.code)
|
||||
binding.root.setOnClickListener {
|
||||
if (selectPosition != position) {
|
||||
|
@ -1,16 +1,28 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:background="@drawable/selector_adapter_item_select_bg"
|
||||
android:padding="5dp">
|
||||
android:padding="10dp">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/item_index"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:drawableLeft="@mipmap/marker2"
|
||||
android:maxLength="3"
|
||||
android:text=""
|
||||
android:layout_marginRight="@dimen/default_widget_padding"
|
||||
style="@style/content_font_default_size_13sp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/name"
|
||||
android:layout_toRightOf="@id/item_index"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="name"
|
||||
android:textColor="@color/selector_black_blue_color"
|
||||
android:textSize="16sp" />
|
||||
</FrameLayout>
|
||||
</RelativeLayout>
|
||||
|
||||
|
File diff suppressed because one or more lines are too long
Before Width: | Height: | Size: 5.3 KiB After Width: | Height: | Size: 6.7 KiB |
@ -62,6 +62,7 @@ open class RenderEntity() : RealmObject(), Parcelable {
|
||||
var zoomMin: Int = 18 //显示最小级别
|
||||
var zoomMax: Int = 23 //显示最大级别
|
||||
var enable:Int = 0 // 默认0不是显示 1为渲染显示 2为常显
|
||||
var catch:Int = 0 // 0捕捉 1不捕捉
|
||||
|
||||
constructor(name: String) : this() {
|
||||
this.name = name
|
||||
|
2
vtm
2
vtm
@ -1 +1 @@
|
||||
Subproject commit 1cb18353849477da3a184f3ce48022760e0e4aea
|
||||
Subproject commit e3d642433915b478a9f51e4ae7d2414ed24acfaa
|
Loading…
x
Reference in New Issue
Block a user