Merge branch 'master' of gitlab.navinfo.com:CollectVehicle/OneMapQS
This commit is contained in:
@@ -101,7 +101,7 @@
|
||||
"code": 2017,
|
||||
"name": "道路施工",
|
||||
"catch": true,
|
||||
"checkLinkId": false,
|
||||
"checkLinkId": true,
|
||||
"zoomMin": 15,
|
||||
"zoomMax": 17
|
||||
},
|
||||
@@ -166,11 +166,38 @@
|
||||
"zoomMin": 15,
|
||||
"zoomMax": 17
|
||||
},
|
||||
"2070": {
|
||||
"table": "OMDB_LINK_SEPARATION",
|
||||
"code": 2070,
|
||||
"name": "设施分离",
|
||||
"zoomMin": 18,
|
||||
"zoomMax": 20,
|
||||
"filterData": true,
|
||||
"catch": true
|
||||
},
|
||||
"2071": {
|
||||
"table": "OMDB_LINK_MEDIAN",
|
||||
"code": 2071,
|
||||
"name": "中央隔离带",
|
||||
"zoomMin": 18,
|
||||
"zoomMax": 20,
|
||||
"isDependOnOtherTable": true,
|
||||
"filterData": true,
|
||||
"catch": true,
|
||||
"transformer": [
|
||||
{
|
||||
"k": "geometry",
|
||||
"v": "~",
|
||||
"klib": "geometry",
|
||||
"vlib": "generateLinkMedianToPolygon()"
|
||||
}
|
||||
]
|
||||
},
|
||||
"2083": {
|
||||
"table": "OMDB_RDBOUND_BOUNDARYTYPE",
|
||||
"code": 2083,
|
||||
"name": "道路边界类型",
|
||||
"checkLinkId": false,
|
||||
"checkLinkId": true,
|
||||
"filterData": true,
|
||||
"zoomMin": 18,
|
||||
"zoomMax": 20,
|
||||
@@ -263,7 +290,7 @@
|
||||
"zoomMax": 20,
|
||||
"catch": true,
|
||||
"filterData": false,
|
||||
"checkLinkId": false,
|
||||
"checkLinkId": true,
|
||||
"transformer": [
|
||||
{
|
||||
"k": "geometry",
|
||||
@@ -280,7 +307,7 @@
|
||||
"zoomMin": 15,
|
||||
"zoomMax": 20,
|
||||
"catch": true,
|
||||
"checkLinkId": false,
|
||||
"checkLinkId": true,
|
||||
"transformer": [
|
||||
{
|
||||
"k": "geometry",
|
||||
@@ -297,14 +324,14 @@
|
||||
"zoomMin": 18,
|
||||
"zoomMax": 20,
|
||||
"catch": true,
|
||||
"checkLinkId": false,
|
||||
"checkLinkId": true,
|
||||
"transformer": []
|
||||
},
|
||||
"3003": {
|
||||
"table": "OMDB_OBJECT_SYMBOL",
|
||||
"code": 3003,
|
||||
"name": "符号",
|
||||
"checkLinkId": false,
|
||||
"checkLinkId": true,
|
||||
"zoomMin": 18,
|
||||
"zoomMax": 20,
|
||||
"catch": true,
|
||||
@@ -314,7 +341,7 @@
|
||||
"table": "OMDB_OBJECT_ARROW",
|
||||
"code": 3004,
|
||||
"name": "箭头",
|
||||
"checkLinkId": false,
|
||||
"checkLinkId": true,
|
||||
"zoomMin": 18,
|
||||
"zoomMax": 20,
|
||||
"catch": true,
|
||||
@@ -331,10 +358,11 @@
|
||||
"table": "OMDB_TRAFFIC_SIGN",
|
||||
"code": 3005,
|
||||
"name": "交通标牌",
|
||||
"zoomMin": 18,
|
||||
"zoomMin": 17,
|
||||
"zoomMax": 20,
|
||||
"is3D": true,
|
||||
"catch": true,
|
||||
"checkLinkId": true,
|
||||
"transformer": [
|
||||
{
|
||||
"k": "geometry",
|
||||
@@ -362,12 +390,58 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
"3007": {
|
||||
"table": "OMDB_OBJECT_WARNING_AREA",
|
||||
"code": 3007,
|
||||
"name": "警示区",
|
||||
"checkLinkId": true,
|
||||
"filterData": true,
|
||||
"zoomMin": 18,
|
||||
"catch": true,
|
||||
"zoomMax": 20
|
||||
},
|
||||
"3009": {
|
||||
"table": "OMDB_OBJECT_BARRIER",
|
||||
"code": 3009,
|
||||
"name": "护栏",
|
||||
"checkLinkId": true,
|
||||
"filterData": true,
|
||||
"zoomMin": 18,
|
||||
"catch": true,
|
||||
"zoomMax": 20,
|
||||
"transformer": [
|
||||
{
|
||||
"k": "geometry",
|
||||
"v": "~",
|
||||
"klib": "geometry",
|
||||
"vlib": "generateMulToLine()"
|
||||
}
|
||||
]
|
||||
},
|
||||
"3010": {
|
||||
"table": "OMDB_OBJECT_WALL",
|
||||
"code": 3010,
|
||||
"name": "平行墙",
|
||||
"checkLinkId": true,
|
||||
"filterData": true,
|
||||
"zoomMin": 18,
|
||||
"catch": true,
|
||||
"zoomMax": 20,
|
||||
"transformer": [
|
||||
{
|
||||
"k": "geometry",
|
||||
"v": "~",
|
||||
"klib": "geometry",
|
||||
"vlib": "generateMulToLine()"
|
||||
}
|
||||
]
|
||||
},
|
||||
"3012": {
|
||||
"table": "OMDB_FILL_AREA",
|
||||
"code": 3012,
|
||||
"name": "导流区",
|
||||
"catch": true,
|
||||
"checkLinkId": false,
|
||||
"checkLinkId": true,
|
||||
"zoomMin": 18,
|
||||
"zoomMax": 20
|
||||
},
|
||||
@@ -376,7 +450,7 @@
|
||||
"code": 3014,
|
||||
"name": "人行横道",
|
||||
"catch": true,
|
||||
"checkLinkId": false,
|
||||
"checkLinkId": true,
|
||||
"zoomMin": 18,
|
||||
"zoomMax": 20
|
||||
},
|
||||
@@ -384,18 +458,28 @@
|
||||
"table": "OMDB_OBJECT_STOPLOCATION",
|
||||
"code": 3016,
|
||||
"name": "停止位置",
|
||||
"checkLinkId": false,
|
||||
"checkLinkId": true,
|
||||
"filterData": true,
|
||||
"zoomMin": 18,
|
||||
"catch": true,
|
||||
"zoomMax": 20
|
||||
},
|
||||
"3027": {
|
||||
"3019": {
|
||||
"table": "OMDB_OBJECT_CURB",
|
||||
"code": 3019,
|
||||
"name": "路牙",
|
||||
"checkLinkId": true,
|
||||
"filterData": true,
|
||||
"zoomMin": 18,
|
||||
"catch": true,
|
||||
"zoomMax": 20
|
||||
},
|
||||
"3028": {
|
||||
"table": "OMDB_OBJECT_REFUGE_ISLAND",
|
||||
"code": 3027,
|
||||
"code": 3028,
|
||||
"name": "路口内交通岛",
|
||||
"catch": true,
|
||||
"checkLinkId": false,
|
||||
"checkLinkId": true,
|
||||
"zoomMin": 18,
|
||||
"zoomMax": 20
|
||||
},
|
||||
@@ -447,6 +531,12 @@
|
||||
"v": "~",
|
||||
"klib": "geometry",
|
||||
"vlib": "generateDirectReferenceLine()"
|
||||
},
|
||||
{
|
||||
"k": "geometry",
|
||||
"v": "~",
|
||||
"klib": "geometry",
|
||||
"vlib": "createSpeedLimitText()"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -463,6 +553,12 @@
|
||||
"v": "0|",
|
||||
"klib": "maxSpeed",
|
||||
"vlib": "限"
|
||||
},
|
||||
{
|
||||
"k": "geometry",
|
||||
"v": "~",
|
||||
"klib": "geometry",
|
||||
"vlib": "createSpeedLimitText()"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -491,6 +587,12 @@
|
||||
"v": "3",
|
||||
"klib": "ref",
|
||||
"vlib": "上"
|
||||
},
|
||||
{
|
||||
"k": "geometry",
|
||||
"v": "~",
|
||||
"klib": "geometry",
|
||||
"vlib": "createSpeedLimitText()"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -630,7 +732,7 @@
|
||||
"zoomMax": 20,
|
||||
"filterData": true,
|
||||
"catch": true,
|
||||
"checkLinkId": false,
|
||||
"checkLinkId": true,
|
||||
"transformer": [
|
||||
{
|
||||
"k": "geometry",
|
||||
@@ -666,6 +768,7 @@
|
||||
"name": "车信",
|
||||
"catch": true,
|
||||
"isDependOnOtherTable": false,
|
||||
"checkLinkId": true,
|
||||
"zoomMin": 15,
|
||||
"zoomMax": 17,
|
||||
"transformer": [
|
||||
@@ -695,7 +798,7 @@
|
||||
"name": "车道中心线",
|
||||
"catch": false,
|
||||
"isDependOnOtherTable": false,
|
||||
"checkLinkId": false,
|
||||
"checkLinkId": true,
|
||||
"zoomMin": 18,
|
||||
"zoomMax": 20,
|
||||
"transformer": [
|
||||
|
||||
@@ -194,7 +194,8 @@ class ImportPreProcess {
|
||||
val coord = Coordinate(point.getX() - dx, point.getY() - dy)
|
||||
|
||||
// 将这个点记录在数据中
|
||||
val geometryTranslate: Geometry = GeometryTools.createGeometry(doubleArrayOf(coord.x, coord.y))
|
||||
val geometryTranslate: Geometry =
|
||||
GeometryTools.createGeometry(doubleArrayOf(coord.x, coord.y))
|
||||
|
||||
renderEntity.geometry = geometryTranslate.toString()
|
||||
}
|
||||
@@ -237,7 +238,8 @@ class ImportPreProcess {
|
||||
GeometryTools.createLineString(arrayOf<Coordinate>(pointStart, pointEnd)).toString()
|
||||
startEndReference.properties["qi_table"] = renderEntity.table
|
||||
startEndReference.properties["type"] = "s_2_e"
|
||||
startEndReference.propertiesDb = DeflaterUtil.zipString(JSON.toJSONString(startEndReference.properties))
|
||||
startEndReference.propertiesDb =
|
||||
DeflaterUtil.zipString(JSON.toJSONString(startEndReference.properties))
|
||||
renderEntity.referenceEntitys.add(startEndReference)
|
||||
}
|
||||
|
||||
@@ -281,12 +283,13 @@ class ImportPreProcess {
|
||||
startReference.geometry =
|
||||
GeometryTools.createGeometry(GeoPoint(pointStart.y, pointStart.x)).toString()
|
||||
startReference.properties["qi_table"] = renderEntity.table
|
||||
startReference.properties["type"] = "s${if (renderEntity.properties["laneType"]!!.toInt() and (0b1000)>0) "_dec" else "_acc"}"
|
||||
startReference.properties["type"] =
|
||||
"s${if (renderEntity.properties["laneType"]!!.toInt() and (0b1000) > 0) "_dec" else "_acc"}"
|
||||
startReference.properties["geometry"] = startReference.geometry
|
||||
listResult.add(startReference)
|
||||
startReference.propertiesDb = DeflaterUtil.zipString(JSON.toJSONString(startReference.properties))
|
||||
renderEntity.referenceEntitys.add(startReference)
|
||||
|
||||
val endReference = ReferenceEntity()
|
||||
// endReference.renderEntityId = renderEntity.id
|
||||
endReference.name = "${renderEntity.name}参考点"
|
||||
endReference.code = renderEntity.code
|
||||
endReference.table = renderEntity.table
|
||||
@@ -299,11 +302,11 @@ class ImportPreProcess {
|
||||
endReference.geometry =
|
||||
GeometryTools.createGeometry(GeoPoint(pointEnd.y, pointEnd.x)).toString()
|
||||
endReference.properties["qi_table"] = renderEntity.table
|
||||
endReference.properties["type"] = "e${if (renderEntity.properties["laneType"]!!.toInt() and (0b1000)>0) "_dec" else "_acc"}"
|
||||
endReference.properties["type"] =
|
||||
"e${if (renderEntity.properties["laneType"]!!.toInt() and (0b1000) > 0) "_dec" else "_acc"}"
|
||||
endReference.properties["geometry"] = endReference.geometry
|
||||
endReference.propertiesDb = DeflaterUtil.zipString(JSON.toJSONString(endReference.properties))
|
||||
renderEntity.referenceEntitys.add(endReference)
|
||||
//listResult.add(endReference)
|
||||
//insertData(listResult)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -351,7 +354,8 @@ class ImportPreProcess {
|
||||
Log.e("qj", "generateS2EReferencePoint===${startReference.geometry}")
|
||||
|
||||
startReference.properties["geometry"] = startReference.geometry
|
||||
startReference.propertiesDb = DeflaterUtil.zipString(JSON.toJSONString(startReference.properties))
|
||||
startReference.propertiesDb =
|
||||
DeflaterUtil.zipString(JSON.toJSONString(startReference.properties))
|
||||
listResult.add(startReference)
|
||||
|
||||
Log.e("qj", "generateS2EReferencePoint===1")
|
||||
@@ -385,7 +389,8 @@ class ImportPreProcess {
|
||||
Log.e("qj", "generateS2EReferencePoint===e_2_p${renderEntity.name}")
|
||||
}
|
||||
endReference.properties["geometry"] = endReference.geometry
|
||||
endReference.propertiesDb = DeflaterUtil.zipString(JSON.toJSONString(endReference.properties))
|
||||
endReference.propertiesDb =
|
||||
DeflaterUtil.zipString(JSON.toJSONString(endReference.properties))
|
||||
renderEntity.referenceEntitys.add(endReference)
|
||||
Log.e("qj", "generateS2EReferencePoint===4")
|
||||
}
|
||||
@@ -482,7 +487,8 @@ class ImportPreProcess {
|
||||
WKTWriter(3).write(GeometryTools.createLineString(arrayOf(pointStart, coorEnd)))
|
||||
angleReference.properties["qi_table"] = renderEntity.table
|
||||
angleReference.properties["type"] = "angle"
|
||||
angleReference.propertiesDb = DeflaterUtil.zipString(JSON.toJSONString(angleReference.properties))
|
||||
angleReference.propertiesDb =
|
||||
DeflaterUtil.zipString(JSON.toJSONString(angleReference.properties))
|
||||
renderEntity.referenceEntitys.add(angleReference)
|
||||
}
|
||||
Log.e("qj", "generateDirectReferenceLine===1")
|
||||
@@ -598,21 +604,21 @@ class ImportPreProcess {
|
||||
if (listResult.size > 0) {
|
||||
insertData(listResult)
|
||||
}
|
||||
}else if(boundaryType.toInt() == 9){//根据线型平分为点数据,用于渲染3D标
|
||||
} else if (boundaryType.toInt() == 9) {//根据线型平分为点数据,用于渲染3D标
|
||||
dengfenLineString(renderEntity)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fun dengfenLineString(renderEntity: RenderEntity){
|
||||
if (renderEntity.code == DataCodeEnum.OMDB_LANE_MARK_BOUNDARYTYPE.code||renderEntity.code == DataCodeEnum.OMDB_RDBOUND_BOUNDARYTYPE.code){
|
||||
fun dengfenLineString(renderEntity: RenderEntity) {
|
||||
if (renderEntity.code == DataCodeEnum.OMDB_LANE_MARK_BOUNDARYTYPE.code || renderEntity.code == DataCodeEnum.OMDB_RDBOUND_BOUNDARYTYPE.code) {
|
||||
val boundaryType = renderEntity.properties["boundaryType"]
|
||||
if (boundaryType != null) {
|
||||
if(boundaryType.toInt()==9){
|
||||
Log.e("qj","杆状物转换开始")
|
||||
val geopointList = GeometryTools.getLineToDengGeoPints(renderEntity.wkt,5.0)
|
||||
geopointList.forEach{
|
||||
if (boundaryType.toInt() == 9) {
|
||||
Log.e("qj", "杆状物转换开始")
|
||||
val geopointList = GeometryTools.getLineToDengGeoPints(renderEntity.wkt, 5.0)
|
||||
geopointList.forEach {
|
||||
val referenceEntity = ReferenceEntity()
|
||||
referenceEntity.name = "${renderEntity.name}线转点坐标"
|
||||
referenceEntity.table = renderEntity.table
|
||||
@@ -625,10 +631,11 @@ class ImportPreProcess {
|
||||
referenceEntity.zoomMax = renderEntity.zoomMax
|
||||
referenceEntity.taskId = renderEntity.taskId
|
||||
referenceEntity.enable = renderEntity.enable
|
||||
referenceEntity.propertiesDb = DeflaterUtil.zipString(JSON.toJSONString(referenceEntity.properties))
|
||||
referenceEntity.propertiesDb =
|
||||
DeflaterUtil.zipString(JSON.toJSONString(referenceEntity.properties))
|
||||
renderEntity.referenceEntitys.add(referenceEntity)
|
||||
}
|
||||
Log.e("qj","杆状物转换结束")
|
||||
Log.e("qj", "杆状物转换结束")
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -648,42 +655,51 @@ class ImportPreProcess {
|
||||
// 分别获取两个数组中的数据,取第一个作为主数据,另外两个作为辅助渲染数据
|
||||
val laneInfoDirectArray = JSONArray(laneinfoGroup[0].toString())
|
||||
val laneInfoTypeArray = JSONArray(laneinfoGroup[1].toString())
|
||||
val listResult = mutableListOf<ReferenceEntity>()
|
||||
|
||||
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) {
|
||||
var coordinates = renderEntity.wkt?.coordinates
|
||||
if(coordinates!=null){
|
||||
if (coordinates != null) {
|
||||
val p1: Coordinate = coordinates[0]
|
||||
renderEntity.geometry = GeometryTools.createGeometry(GeoPoint(p1.y,p1.x)).toString()
|
||||
renderEntity.geometry =
|
||||
GeometryTools.createGeometry(GeoPoint(p1.y, p1.x)).toString()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -775,30 +791,77 @@ class ImportPreProcess {
|
||||
* 生成车道中心线面宽度
|
||||
* */
|
||||
fun generateAddWidthLine(renderEntity: RenderEntity) {
|
||||
var newTime = 0L
|
||||
// 添加车道中心面渲染原则,根据车道宽度进行渲染
|
||||
val angleReference = ReferenceEntity()
|
||||
// angleReference.renderEntityId = renderEntity.id
|
||||
angleReference.name = "${renderEntity.name}车道中线面"
|
||||
angleReference.table = renderEntity.table
|
||||
angleReference.code = renderEntity.code
|
||||
// Log.e("jingo", "几何转换开始")
|
||||
//angleReference.geometry = renderEntity.geometry
|
||||
angleReference.geometry = GeometryTools.computeLine(0.000035,0.000035,renderEntity.geometry)
|
||||
// Log.e("jingo", "几何转换结束")
|
||||
angleReference.geometry =
|
||||
GeometryTools.computeLine(0.000035, 0.000035, renderEntity.geometry)
|
||||
angleReference.properties["qi_table"] = renderEntity.table
|
||||
angleReference.properties["widthProperties"] = "3"
|
||||
angleReference.zoomMin = renderEntity.zoomMin
|
||||
angleReference.zoomMax = renderEntity.zoomMax
|
||||
angleReference.taskId = renderEntity.taskId
|
||||
angleReference.enable = renderEntity.enable
|
||||
val listResult = mutableListOf<ReferenceEntity>()
|
||||
angleReference.propertiesDb = DeflaterUtil.zipString(JSON.toJSONString(angleReference.properties))
|
||||
angleReference.propertiesDb =
|
||||
DeflaterUtil.zipString(JSON.toJSONString(angleReference.properties))
|
||||
renderEntity.referenceEntitys.add(angleReference)
|
||||
//listResult.add(angleReference)
|
||||
//insertData(listResult)
|
||||
}
|
||||
|
||||
/**
|
||||
* 中央隔离带根据线几何生成面
|
||||
* */
|
||||
fun generateLinkMedianToPolygon(renderEntity: RenderEntity) {
|
||||
if (renderEntity.code == DataCodeEnum.OMDB_LINK_MEDIAN.code) {
|
||||
if (renderEntity.properties.containsKey("side") && renderEntity.properties.containsKey("median") && renderEntity.properties.containsKey(
|
||||
"medianSurface"
|
||||
) && renderEntity.properties.containsKey("medianWidth")&& renderEntity.properties.containsKey("direct")
|
||||
) {
|
||||
//基于通行方向左右 0 左侧 1 右侧 (双方向不制作)
|
||||
val side = renderEntity.properties["side"]
|
||||
//1有中央隔离带,不与任何护栏共存 2有中央隔离带,与非固定护栏共存
|
||||
val median = renderEntity.properties["median"]?.toInt()
|
||||
//0 未铺设 1 铺设 2 混合
|
||||
var medianSurface = renderEntity.properties["medianSurface"]?.toInt()
|
||||
if(median==2){
|
||||
medianSurface = 3 + medianSurface!!
|
||||
}
|
||||
//宽度
|
||||
val medianWidth = renderEntity.properties["medianWidth"]?.toDouble()
|
||||
// 添加车道中心面渲染原则,根据车道宽度进行渲染
|
||||
val angleReference = ReferenceEntity()
|
||||
//方向 0\1\2顺方向 3逆方向
|
||||
when(renderEntity.properties["direct"]?.toInt()){
|
||||
0,1,2->{
|
||||
if (medianWidth != null) {
|
||||
angleReference.geometry =
|
||||
GeometryTools.computeLine(0.000012, 0.0, renderEntity.geometry)
|
||||
}
|
||||
}
|
||||
3->{
|
||||
if (medianWidth != null) {
|
||||
angleReference.geometry =
|
||||
GeometryTools.computeLine(0.0, 0.000012, renderEntity.geometry)
|
||||
}
|
||||
}
|
||||
}
|
||||
angleReference.name = "${renderEntity.name}面"
|
||||
angleReference.table = renderEntity.table
|
||||
angleReference.code = renderEntity.code
|
||||
angleReference.properties["qi_table"] = renderEntity.table
|
||||
angleReference.properties["medianSurface"] = medianSurface.toString()
|
||||
angleReference.zoomMin = renderEntity.zoomMin
|
||||
angleReference.zoomMax = renderEntity.zoomMax
|
||||
angleReference.taskId = renderEntity.taskId
|
||||
angleReference.enable = renderEntity.enable
|
||||
angleReference.propertiesDb =
|
||||
DeflaterUtil.zipString(JSON.toJSONString(angleReference.properties))
|
||||
renderEntity.referenceEntitys.add(angleReference)
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 生成默认路口数据的参考数据
|
||||
@@ -825,7 +888,8 @@ class ImportPreProcess {
|
||||
GeometryTools.createGeometry(nodeJSONObject["geometry"].toString()).toString()
|
||||
intersectionReference.properties["qi_table"] = renderEntity.table
|
||||
intersectionReference.properties["type"] = "node"
|
||||
intersectionReference.propertiesDb = DeflaterUtil.zipString(JSON.toJSONString(intersectionReference.properties))
|
||||
intersectionReference.propertiesDb =
|
||||
DeflaterUtil.zipString(JSON.toJSONString(intersectionReference.properties))
|
||||
renderEntity.referenceEntitys.add(intersectionReference)
|
||||
//listResult.add(intersectionReference)
|
||||
}
|
||||
@@ -838,13 +902,13 @@ class ImportPreProcess {
|
||||
* */
|
||||
fun sortGeometry(renderEntity: RenderEntity) {
|
||||
// 路口数据的其他点位,是保存在nodeList对应的数组下
|
||||
/* if (renderEntity.properties.containsKey("linkPid")) {
|
||||
val linkList = renderEntity.properties["linkPid"]?.split(",")
|
||||
//几何较少时需要判断是否要计算判断长短边
|
||||
if(linkList!=null&&linkList.size<3){
|
||||
/* if (renderEntity.properties.containsKey("linkPid")) {
|
||||
val linkList = renderEntity.properties["linkPid"]?.split(",")
|
||||
//几何较少时需要判断是否要计算判断长短边
|
||||
if(linkList!=null&&linkList.size<3){
|
||||
|
||||
}
|
||||
}*/
|
||||
}
|
||||
}*/
|
||||
}
|
||||
|
||||
|
||||
@@ -1011,7 +1075,8 @@ class ImportPreProcess {
|
||||
dynamicSrcReference.properties["type"] = "dynamicSrc"
|
||||
val code = renderEntity.properties[codeName]
|
||||
dynamicSrcReference.properties["src"] = "${prefix}${code}${suffix}"
|
||||
dynamicSrcReference.propertiesDb = DeflaterUtil.zipString(JSON.toJSONString(dynamicSrcReference.properties))
|
||||
dynamicSrcReference.propertiesDb =
|
||||
DeflaterUtil.zipString(JSON.toJSONString(dynamicSrcReference.properties))
|
||||
renderEntity.referenceEntitys.add(dynamicSrcReference)
|
||||
//listResult.add(dynamicSrcReference)
|
||||
}
|
||||
@@ -1120,24 +1185,25 @@ class ImportPreProcess {
|
||||
fun generateLaneAccessType(renderEntity: RenderEntity): Boolean {
|
||||
if (renderEntity.properties.containsKey("accessCharacteristic")) {
|
||||
// 解析accessCharacteristic,判断是否存在指定属性
|
||||
val accessCharacteristic = renderEntity.properties["accessCharacteristic"].toString().toInt()
|
||||
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 += "|"
|
||||
}
|
||||
@@ -1155,8 +1221,9 @@ class ImportPreProcess {
|
||||
* 生成车道点限速的名称
|
||||
* */
|
||||
fun obtainLaneSpeedLimitName(renderEntity: RenderEntity) {
|
||||
if (renderEntity.properties.containsKey("maxSpeed")&&renderEntity.properties.containsKey("minSpeed")) {
|
||||
renderEntity.properties["ref"] = "${renderEntity.properties["maxSpeed"]}|${renderEntity.properties["minSpeed"]}"
|
||||
if (renderEntity.properties.containsKey("maxSpeed") && renderEntity.properties.containsKey("minSpeed")) {
|
||||
renderEntity.properties["ref"] =
|
||||
"${renderEntity.properties["maxSpeed"]}|${renderEntity.properties["minSpeed"]}"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1164,7 +1231,7 @@ class ImportPreProcess {
|
||||
* 生成立交的辅助图层数据
|
||||
* */
|
||||
fun obtainZLevelReference(renderEntity: RenderEntity) {
|
||||
if(renderEntity!=null&&renderEntity.properties.containsKey("zlevelList")) {
|
||||
if (renderEntity != null && renderEntity.properties.containsKey("zlevelList")) {
|
||||
// 获取ZLevelList数据
|
||||
val zLevelList = JSONArray(renderEntity.properties["zlevelList"])
|
||||
for (i in 0 until zLevelList.length()) {
|
||||
@@ -1173,7 +1240,8 @@ class ImportPreProcess {
|
||||
val startEnd = zLevelObject.optInt("startEnd", 0)
|
||||
val zLevel = zLevelObject.optInt("zlevel", 0)
|
||||
val shpSeqNum = zLevelObject.optInt("shpSeqNum", 0)
|
||||
val linkGeometry = GeometryTools.createGeometry(zLevelObject.optString("linkGeometry"))
|
||||
val linkGeometry =
|
||||
GeometryTools.createGeometry(zLevelObject.optString("linkGeometry"))
|
||||
val coordinates = linkGeometry!!.coordinates
|
||||
val referenceEntityList = mutableListOf<ReferenceEntity>()
|
||||
// 判断当前数据的startEnd,如果是0则向前和向后都绘制线,如果是1(起点)则只绘制前两个点组成的线,如果是2(终点)则只绘制后两个点组成的线
|
||||
@@ -1182,35 +1250,47 @@ class ImportPreProcess {
|
||||
zLevelReference.properties["type"] = "zlevelLine"
|
||||
// zLevelReference.properties["name"] = zLevel.toString()
|
||||
// 根据shpSeqNum获取对应的点位
|
||||
if (shpSeqNum < coordinates.size-1) {
|
||||
if (shpSeqNum < coordinates.size - 1) {
|
||||
val currentCoordinate = coordinates[shpSeqNum]
|
||||
var nextCoordinate = coordinates[shpSeqNum+1]
|
||||
var nextCoordinate = coordinates[shpSeqNum + 1]
|
||||
// 计算两个点的距离,如果小于指定阈值,程序按照方向计算延长线
|
||||
// if (GeometryTools.getDistance(currentCoordinate.y, currentCoordinate.x, nextCoordinate.y, nextCoordinate.x) < 3.0) {
|
||||
// 获取当前点到下一个点的线方向
|
||||
val angle = Angle.angle(currentCoordinate, nextCoordinate)
|
||||
// 计算偏移距离
|
||||
val dx: Double = GeometryTools.convertDistanceToDegree(
|
||||
3.0,
|
||||
currentCoordinate.y!!
|
||||
) * Math.cos(angle)
|
||||
val dy: Double = GeometryTools.convertDistanceToDegree(
|
||||
3.0,
|
||||
currentCoordinate.y!!
|
||||
) * Math.sin(angle)
|
||||
// 获取当前点到下一个点的线方向
|
||||
val angle = Angle.angle(currentCoordinate, nextCoordinate)
|
||||
// 计算偏移距离
|
||||
val dx: Double = GeometryTools.convertDistanceToDegree(
|
||||
3.0,
|
||||
currentCoordinate.y!!
|
||||
) * Math.cos(angle)
|
||||
val dy: Double = GeometryTools.convertDistanceToDegree(
|
||||
3.0,
|
||||
currentCoordinate.y!!
|
||||
) * Math.sin(angle)
|
||||
|
||||
// 计算偏移后的点
|
||||
nextCoordinate =
|
||||
Coordinate(currentCoordinate.getX() + dx, currentCoordinate.getY() + dy)
|
||||
// 计算偏移后的点
|
||||
nextCoordinate =
|
||||
Coordinate(currentCoordinate.getX() + dx, currentCoordinate.getY() + dy)
|
||||
// }
|
||||
zLevelReference.geometry = GeometryTools.createLineString(arrayListOf(GeoPoint(currentCoordinate.y, currentCoordinate.x), GeoPoint(nextCoordinate.y, nextCoordinate.x))).toString()
|
||||
zLevelReference.geometry = GeometryTools.createLineString(
|
||||
arrayListOf(
|
||||
GeoPoint(
|
||||
currentCoordinate.y,
|
||||
currentCoordinate.x
|
||||
), GeoPoint(nextCoordinate.y, nextCoordinate.x)
|
||||
)
|
||||
).toString()
|
||||
|
||||
referenceEntityList.add(zLevelReference)
|
||||
|
||||
val zLevelNameReference = createZLevelReference(renderEntity)
|
||||
zLevelNameReference.properties["type"] = "zlevelName"
|
||||
zLevelNameReference.properties["name"] = zLevel.toString()
|
||||
zLevelNameReference.geometry = GeometryTools.createGeometry(GeoPoint(nextCoordinate.y, nextCoordinate.x)).toString()
|
||||
zLevelNameReference.geometry = GeometryTools.createGeometry(
|
||||
GeoPoint(
|
||||
nextCoordinate.y,
|
||||
nextCoordinate.x
|
||||
)
|
||||
).toString()
|
||||
referenceEntityList.add(zLevelNameReference)
|
||||
}
|
||||
}
|
||||
@@ -1220,34 +1300,43 @@ class ImportPreProcess {
|
||||
zLevelReference.properties["type"] = "zlevelLine"
|
||||
// zLevelReference.properties["name"] = zLevel.toString()
|
||||
// 根据shpSeqNum获取对应的点位
|
||||
if (shpSeqNum < coordinates.size&&shpSeqNum>0) {
|
||||
if (shpSeqNum < coordinates.size && shpSeqNum > 0) {
|
||||
val currentCoordinate = coordinates[shpSeqNum]
|
||||
var preCoordinate = coordinates[shpSeqNum-1]
|
||||
var preCoordinate = coordinates[shpSeqNum - 1]
|
||||
// 计算两个点的距离,如果小于指定阈值,程序按照方向计算延长线
|
||||
// if (GeometryTools.getDistance(currentCoordinate.y, currentCoordinate.x, preCoordinate.y, preCoordinate.x) < 3.0) {
|
||||
// 获取当前点到下一个点的线方向
|
||||
val angle = Angle.angle(currentCoordinate, preCoordinate)
|
||||
// 计算偏移距离
|
||||
val dx: Double = GeometryTools.convertDistanceToDegree(
|
||||
3.0,
|
||||
currentCoordinate.y!!
|
||||
) * Math.cos(angle)
|
||||
val dy: Double = GeometryTools.convertDistanceToDegree(
|
||||
3.0,
|
||||
currentCoordinate.y!!
|
||||
) * Math.sin(angle)
|
||||
// 获取当前点到下一个点的线方向
|
||||
val angle = Angle.angle(currentCoordinate, preCoordinate)
|
||||
// 计算偏移距离
|
||||
val dx: Double = GeometryTools.convertDistanceToDegree(
|
||||
3.0,
|
||||
currentCoordinate.y!!
|
||||
) * Math.cos(angle)
|
||||
val dy: Double = GeometryTools.convertDistanceToDegree(
|
||||
3.0,
|
||||
currentCoordinate.y!!
|
||||
) * Math.sin(angle)
|
||||
|
||||
// 计算偏移后的点
|
||||
preCoordinate =
|
||||
Coordinate(currentCoordinate.getX() + dx, currentCoordinate.getY() + dy)
|
||||
// 计算偏移后的点
|
||||
preCoordinate =
|
||||
Coordinate(currentCoordinate.getX() + dx, currentCoordinate.getY() + dy)
|
||||
// }
|
||||
zLevelReference.geometry = GeometryTools.createLineString(arrayListOf(GeoPoint(currentCoordinate.y, currentCoordinate.x), GeoPoint(preCoordinate.y, preCoordinate.x))).toString()
|
||||
zLevelReference.geometry = GeometryTools.createLineString(
|
||||
arrayListOf(
|
||||
GeoPoint(
|
||||
currentCoordinate.y,
|
||||
currentCoordinate.x
|
||||
), GeoPoint(preCoordinate.y, preCoordinate.x)
|
||||
)
|
||||
).toString()
|
||||
referenceEntityList.add(zLevelReference)
|
||||
|
||||
val zLevelNameReference = createZLevelReference(renderEntity)
|
||||
zLevelNameReference.properties["type"] = "zlevelName"
|
||||
zLevelNameReference.properties["name"] = zLevel.toString()
|
||||
zLevelNameReference.geometry = GeometryTools.createGeometry(GeoPoint(preCoordinate.y, preCoordinate.x)).toString()
|
||||
zLevelNameReference.geometry =
|
||||
GeometryTools.createGeometry(GeoPoint(preCoordinate.y, preCoordinate.x))
|
||||
.toString()
|
||||
referenceEntityList.add(zLevelNameReference)
|
||||
}
|
||||
}
|
||||
@@ -1274,4 +1363,25 @@ 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"]}"
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 多线转单线
|
||||
* */
|
||||
fun generateMulToLine(renderEntity: RenderEntity) {
|
||||
val translateGeometry = renderEntity.wkt
|
||||
if (translateGeometry != null) {
|
||||
if (translateGeometry.geometryType == Geometry.TYPENAME_MULTILINESTRING) { // 如果是多线,只取第一条线
|
||||
renderEntity.geometry = renderEntity.wkt!!.getGeometryN(0).toString()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -177,6 +177,8 @@ class TaskDownloadScope(
|
||||
override fun onComplete() {
|
||||
taskBean.status = FileDownloadStatus.DONE
|
||||
downloadData.postValue(taskBean)
|
||||
//移除当前任务,进行下一个任务下载逻辑
|
||||
downloadManager.launchNext(taskBean.id)
|
||||
//任务与当前一致,需要更新渲染图层
|
||||
if (MapParamUtils.getTaskId() == taskBean.id) {
|
||||
downloadManager.mapController.layerManagerHandler.updateOMDBVectorTileLayer()
|
||||
|
||||
@@ -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 -> {
|
||||
|
||||
@@ -24,6 +24,9 @@ import org.locationtech.jts.geom.Point
|
||||
import org.oscim.core.GeoPoint
|
||||
import java.lang.reflect.Field
|
||||
|
||||
/*
|
||||
* 要素详情解析类及左侧提前显示内容解析说明
|
||||
* */
|
||||
class SignUtil {
|
||||
companion object {
|
||||
|
||||
@@ -82,7 +85,7 @@ class SignUtil {
|
||||
}
|
||||
//全封闭
|
||||
DataCodeEnum.OMDB_CON_ACCESS.code -> {
|
||||
if (data.properties["conAccess"] === "1") "全封闭" else ""
|
||||
if (data.properties["conAccess"] == "1") "全封闭" else ""
|
||||
}
|
||||
//匝道
|
||||
DataCodeEnum.OMDB_RAMP_1.code,
|
||||
@@ -175,9 +178,9 @@ class SignUtil {
|
||||
|
||||
DataCodeEnum.OMDB_LINK_ATTRIBUTE_MAIN_SIDE_ACCESS.code, DataCodeEnum.OMDB_LINK_ATTRIBUTE_FORNTAGE.code, DataCodeEnum.OMDB_LINK_ATTRIBUTE_SA.code, DataCodeEnum.OMDB_LINK_ATTRIBUTE_PA.code -> "道路属性"
|
||||
|
||||
DataCodeEnum.OMDB_LINK_FORM1_1.code, DataCodeEnum.OMDB_LINK_FORM1_2.code, DataCodeEnum.OMDB_LINK_FORM1_3.code, DataCodeEnum.OMDB_LINK_FORM2_1.code, DataCodeEnum.OMDB_LINK_FORM2_2.code, DataCodeEnum.OMDB_LINK_FORM2_3.code, DataCodeEnum.OMDB_LINK_FORM2_4.code, DataCodeEnum.OMDB_LINK_FORM2_5.code, DataCodeEnum.OMDB_LINK_FORM2_6.code, DataCodeEnum.OMDB_LINK_FORM2_7.code, DataCodeEnum.OMDB_LINK_FORM2_8.code, DataCodeEnum.OMDB_LINK_FORM2_9.code, DataCodeEnum.OMDB_LINK_FORM2_10.code, DataCodeEnum.OMDB_LINK_FORM2_11.code, DataCodeEnum.OMDB_LINK_FORM2_12.code, DataCodeEnum.OMDB_LINK_FORM2_13.code -> "道路形态"
|
||||
DataCodeEnum.OMDB_LINK_FORM1_1.code, DataCodeEnum.OMDB_LINK_FORM1_2.code, DataCodeEnum.OMDB_LINK_FORM1_3.code, DataCodeEnum.OMDB_LINK_FORM2_1.code, DataCodeEnum.OMDB_LINK_FORM2_2.code, DataCodeEnum.OMDB_LINK_FORM2_3.code, DataCodeEnum.OMDB_LINK_FORM2_4.code, DataCodeEnum.OMDB_LINK_FORM2_5.code, DataCodeEnum.OMDB_LINK_FORM2_6.code, DataCodeEnum.OMDB_LINK_FORM2_7.code, DataCodeEnum.OMDB_LINK_FORM2_8.code, DataCodeEnum.OMDB_LINK_FORM2_9.code, DataCodeEnum.OMDB_LINK_FORM2_10.code, DataCodeEnum.OMDB_LINK_FORM2_11.code, DataCodeEnum.OMDB_LINK_FORM2_12.code, DataCodeEnum.OMDB_LINK_FORM2_13.code -> "形态"
|
||||
|
||||
else -> DataCodeEnum.findTableNameByCode(data.code)
|
||||
else -> DataCodeEnum.findTableSubNameByCode(data.code)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -790,12 +793,88 @@ class SignUtil {
|
||||
list.add(TwoItemAdapterItem(title = "起终点标识", text = "${data.properties["startEnd"]}"))
|
||||
list.add(TwoItemAdapterItem(title = "高度层次", text = "${data.properties["zlevel"]}"))
|
||||
}
|
||||
//道路边界类型
|
||||
DataCodeEnum.OMDB_RDBOUND_BOUNDARYTYPE.code -> {
|
||||
list.add(TwoItemAdapterItem(title = "道路边界线ID", text = "${data.properties["roadBoundaryLinkPid"]}"))
|
||||
list.add(TwoItemAdapterItem(title = "道路边界类型", text = when (data.properties["boundaryType"]?.toInt()) {
|
||||
0 -> "不应用"
|
||||
1 -> "无标线无可区分边界"
|
||||
2 -> "标线"
|
||||
3 -> "路牙"
|
||||
4 -> "护栏"
|
||||
5 -> "墙"
|
||||
6 -> "铺设路面边缘"
|
||||
7 -> "虚拟三角岛"
|
||||
8 -> "障碍物"
|
||||
9 -> "杆状障碍物"
|
||||
else -> ""
|
||||
}))
|
||||
}
|
||||
//车道类型
|
||||
DataCodeEnum.OMDB_LANE_TYPE_ACCESS.code -> {
|
||||
list.add(TwoItemAdapterItem(title = "车道中心线ID", text = "${data.properties["laneLinkPid"]}"))
|
||||
|
||||
list.add(TwoItemAdapterItem(title = "车道类型", text = getLaneType(data)))
|
||||
}
|
||||
//设施分离
|
||||
DataCodeEnum.OMDB_LINK_SEPARATION.code -> {
|
||||
list.add(TwoItemAdapterItem(title = "设施分离", text = when (data.properties["separation"]) {
|
||||
"1" -> "坚固护栏"
|
||||
"2" -> "非坚固护栏"
|
||||
else -> ""
|
||||
}))
|
||||
}
|
||||
//中央隔离带
|
||||
DataCodeEnum.OMDB_LINK_MEDIAN.code -> {
|
||||
list.add(TwoItemAdapterItem(title = "设施分离", text = when (data.properties["medianSurface"]) {
|
||||
"0" -> "未铺设"
|
||||
"1" -> "铺设"
|
||||
"2" -> "混合"
|
||||
else -> ""
|
||||
}))
|
||||
}
|
||||
//路牙
|
||||
DataCodeEnum.OMDB_OBJECT_CURB.code -> {
|
||||
list.add(TwoItemAdapterItem(title = "是否符合高精地图", text = when (data.properties["compliant"]) {
|
||||
"0" -> "否"
|
||||
"1" -> "是"
|
||||
else -> ""
|
||||
}))
|
||||
}
|
||||
//平行墙
|
||||
DataCodeEnum.OMDB_OBJECT_WALL.code -> {
|
||||
list.add(TwoItemAdapterItem(title = "类型", text = when (data.properties["type"]) {
|
||||
"1" -> "隧道墙"
|
||||
"3" -> "其他墙"
|
||||
else -> ""
|
||||
}))
|
||||
}
|
||||
//警示区
|
||||
DataCodeEnum.OMDB_OBJECT_WARNING_AREA.code -> {
|
||||
list.add(TwoItemAdapterItem(title = "颜色", text = when (data.properties["color"]) {
|
||||
"0" -> "未验证"
|
||||
"1" -> "白色"
|
||||
"2" -> "黄色"
|
||||
"3" -> "红色"
|
||||
else -> ""
|
||||
}))
|
||||
list.add(TwoItemAdapterItem(title = "材质", text = when (data.properties["material"]) {
|
||||
"1" -> "有突起的材质"
|
||||
"2" -> "喷漆材质"
|
||||
else -> ""
|
||||
}))
|
||||
}
|
||||
//护栏
|
||||
DataCodeEnum.OMDB_OBJECT_BARRIER.code -> {
|
||||
list.add(TwoItemAdapterItem(title = "护栏类型", text = when (data.properties["barrierType"]) {
|
||||
"0" -> "护栏"
|
||||
"1" -> "新泽西护栏"
|
||||
"2" -> "安全护栏"
|
||||
"3" -> "围栏"
|
||||
"4" -> "其他护栏"
|
||||
else -> ""
|
||||
}))
|
||||
}
|
||||
}
|
||||
adapter.data = list
|
||||
return adapter
|
||||
|
||||
@@ -64,7 +64,7 @@
|
||||
<item
|
||||
android:id="@+id/personal_center_menu_version"
|
||||
android:icon="@drawable/ic_baseline_layers_24"
|
||||
android:title="版本:24QE1_V1.1.1_20231115_A" />
|
||||
android:title="版本:24QE1_V1.2.3_20231201_A" />
|
||||
</group>
|
||||
<group android:checkableBehavior="single">
|
||||
<item android:title="小标题">
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
<color name="lane_info_0" comment="车信普通道路">#FF2271FF</color>
|
||||
<color name="lane_info_1" comment="车信附加道路">#FF00C800</color>
|
||||
<color name="lane_info_2" comment="车信公交道路">#FFFFB400</color>
|
||||
|
||||
<color name="white" comment="主要按钮,背景等颜色">#FFFFFF</color> <!--白色 -->
|
||||
<color name="button_press_color" comment="默认的按钮按下去时的背景颜色">#F1EBEB</color>
|
||||
<color name="default_button_blue_color" comment="蓝色到紫色的渐变开始颜色">#4954ED</color>
|
||||
@@ -12,7 +11,6 @@
|
||||
<color name="default_blue_text_color" comment="蓝色字体的默认颜色">#2631DD</color>
|
||||
<color name="input_edit_hint_color" comment="输入框hint文字,icon的颜色">#C1C0C8</color>
|
||||
<color name="high_item_color" comment="选中高亮的颜色">#FFF5F7FE</color>
|
||||
|
||||
<color name="line_gray" comment="轻度灰色,一般用于下划线,不可点击按钮的边框">#dadade</color>
|
||||
<color name="bg_left_pannel" comment="左侧弹出框背景颜色">#f4f4fc</color>
|
||||
<color name="colorPrimary">#6c14c4</color>
|
||||
|
||||
Reference in New Issue
Block a user