This commit is contained in:
qiji4215 2023-11-24 16:22:11 +08:00
commit 37a8a4fac8
11 changed files with 172 additions and 57 deletions

View File

@ -358,10 +358,11 @@
"table": "OMDB_TRAFFIC_SIGN",
"code": 3005,
"name": "交通标牌",
"zoomMin": 18,
"zoomMin": 17,
"zoomMax": 20,
"is3D": true,
"catch": true,
"checkLinkId": false,
"transformer": [
{
"k": "geometry",
@ -474,6 +475,12 @@
"v": "~",
"klib": "geometry",
"vlib": "generateDirectReferenceLine()"
},
{
"k": "geometry",
"v": "~",
"klib": "geometry",
"vlib": "createSpeedLimitText()"
}
]
},
@ -490,6 +497,12 @@
"v": "0|",
"klib": "maxSpeed",
"vlib": "限"
},
{
"k": "geometry",
"v": "~",
"klib": "geometry",
"vlib": "createSpeedLimitText()"
}
]
},
@ -518,6 +531,12 @@
"v": "3",
"klib": "ref",
"vlib": "上"
},
{
"k": "geometry",
"v": "~",
"klib": "geometry",
"vlib": "createSpeedLimitText()"
}
]
},
@ -693,6 +712,7 @@
"name": "车信",
"catch": true,
"isDependOnOtherTable": false,
"checkLinkId": false,
"zoomMin": 15,
"zoomMax": 17,
"transformer": [

View File

@ -656,36 +656,43 @@ 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) {
@ -1182,22 +1189,22 @@ class ImportPreProcess {
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 += "|"
}
@ -1357,4 +1364,13 @@ 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"]}"
}
}
}

View File

@ -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 -> {

View File

@ -245,6 +245,7 @@
<xs:attribute name="id" default="0" type="xs:string" use="optional"/>
<xs:attribute name="use" default="0" type="xs:string" use="optional"/>
<!-- 使用动态图标时,以@符号开头建议动态tag的key使用较长(大于4位)的字符串 -->
<xs:attribute name="src" type="tns:src" use="optional"/>
<xs:attribute name="symbol-width" type="xs:positiveInteger" use="optional"/>
<xs:attribute name="symbol-height" type="xs:positiveInteger" use="optional"/>
@ -262,6 +263,10 @@
<xs:attribute name="degree" default="0" type="xs:float" use="optional"/>
<!-- 图标在y轴方向上的偏移量 -->
<xs:attribute name="dy" default="0" type="xs:float" use="optional"/>
<!-- symbol的背景图片常用来绘制立标 -->
<xs:attribute name="background" type="tns:src" use="optional"/>
<!-- symbol的内容图片的占用区域必须为4个数字组成英文逗号分隔的字符串值为左下的百分比 -->
<xs:attribute name="content-rect" type="xs:string" use="optional"/>
</xs:complexType>
<xs:complexType name="extrusion">

View File

@ -1555,8 +1555,10 @@
<!-- 车信 -->
<m v="OMDB_LANEINFO" >
<symbol repeat="false" repeat-start="0" repeat-gap="2000"
src="@symbol" symbol-height="24" degree="90"></symbol>
<m k="symbol" v="true">
<symbol repeat="false" repeat-start="0" repeat-gap="2000"
src="@img-src" symbol-height="24" degree="90"></symbol>
</m>
</m>
<!-- 交通标牌 -->
@ -1935,14 +1937,14 @@
<!--常规点限速-->
<m v="OMDB_SPEEDLIMIT">
<m k="speedFlag" v="0">
<caption fill="#000000" k="maxSpeed" priority="0" size="12" stroke="#ffffff"
stroke-width="1.0"></caption>
<symbol src="assets:omdb/icon_4002_0.svg" symbol-width="24"></symbol>
<!-- <caption fill="#000000" k="maxSpeed" priority="0" size="12" stroke="#ffffff"-->
<!-- stroke-width="1.0"></caption>-->
<symbol background="assets:omdb/icon_4002_0.png" symbol-width="24" content-rect="20,80,20,60" src="@text-src"></symbol>
</m>
<m k="speedFlag" v="1">
<caption fill="#000000" k="maxSpeed" priority="0" size="10" stroke="#ffffff"
stroke-width="1.0"></caption>
<symbol src="assets:omdb/icon_4002_1.svg" symbol-width="24"></symbol>
<!-- <caption fill="#000000" k="maxSpeed" priority="0" size="10" stroke="#ffffff"-->
<!-- stroke-width="1.0"></caption>-->
<symbol background="assets:omdb/icon_4002_1.png" symbol-width="24" content-rect="20,80,20,60" src="@text-src"></symbol>
</m>
<m k="type" v="angle">
<symbol repeat="false" repeat-gap="2000" repeat-start="0" rotate="true" symbol-width="24"
@ -1958,12 +1960,12 @@
<m k="speedFlag" v="0">
<caption fill="#000000" k="maxSpeed" priority="0" size="12" stroke="#ffffff"
stroke-width="1.0"></caption>
<symbol src="assets:omdb/icon_4003_0.svg" symbol-width="24"></symbol>
<symbol src="assets:omdb/icon_4003_0.svg" symbol-width="24" symbol-height="48"></symbol>
</m>
<m k="speedFlag" v="1">
<caption fill="#000000" k="maxSpeed" priority="0" size="12" stroke="#ffffff"
stroke-width="1.0"></caption>
<symbol src="assets:omdb/icon_4003_1.svg" symbol-width="24"></symbol>
<symbol src="assets:omdb/icon_4003_1.svg" symbol-width="24" symbol-height="48"></symbol>
</m>
<m k="type" v="angle">
<symbol repeat="false" repeat-gap="2000" repeat-start="0" rotate="true" symbol-width="24"
@ -2131,20 +2133,20 @@
<line fix="true" width="3" stroke="#cccccc"></line>
</m>
<m k="type" v="s_acc">
<symbol src="assets:omdb/icon_2092_acc_s.svg" symbol-height="32"
symbol-width="32" gland="true"></symbol>
<symbol src="assets:omdb/icon_2092_acc_s.svg" symbol-height="26"
symbol-width="26" gland="true"></symbol>
</m>
<m k="type" v="e_acc">
<symbol src="assets:omdb/icon_2092_acc_e.svg" symbol-height="32"
symbol-width="32" gland="true"></symbol>
<symbol src="assets:omdb/icon_2092_acc_e.svg" symbol-height="26"
symbol-width="26" gland="true"></symbol>
</m>
<m k="type" v="s_dec">
<symbol src="assets:omdb/icon_2092_dec_s.svg" symbol-height="32"
symbol-width="32" gland="true"></symbol>
<symbol src="assets:omdb/icon_2092_dec_s.svg" symbol-height="26"
symbol-width="26" gland="true"></symbol>
</m>
<m k="type" v="e_dec">
<symbol src="assets:omdb/icon_2092_dec_e.svg" symbol-height="32"
symbol-width="32" gland="true"></symbol>
<symbol src="assets:omdb/icon_2092_dec_e.svg" symbol-height="26"
symbol-width="26" gland="true"></symbol>
</m>
</m>

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

View File

@ -1 +1,37 @@
<?xml version="1.0" encoding="UTF-8"?><svg id="b" xmlns="http://www.w3.org/2000/svg" width="70" height="94" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 70 94"><defs><style>.h{stroke:#db4646;stroke-width:2.1px;}.h,.i{fill:none;}.j{fill:#a74d4b;opacity:.7;}.j,.i,.k,.l,.m,.n{stroke-width:0px;}.j,.k{isolation:isolate;}.i{opacity:0;}.k{fill:#ff5f4c;opacity:.3;}.l{fill:#fff;}.m{fill:url(#f);}.n{fill:url(#g);}</style><radialGradient id="f" cx="263.2" cy="286.8" fx="263.2" fy="286.8" r=".9" gradientTransform="translate(-9405.4 -24647.8) rotate(38.2) scale(75.3 47.3) skewX(7.6)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ff9287"/><stop offset=".8" stop-color="#ff5f4c"/><stop offset="1" stop-color="#ff5f4c"/></radialGradient><radialGradient id="g" cx="259.6" cy="284" fx="259.6" fy="284" r=".4" gradientTransform="translate(-14219.7 -15164.5) scale(54.9 53.6)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#e75545"/><stop offset=".8" stop-color="#c4483b"/><stop offset="1" stop-color="#983b31"/></radialGradient></defs><g id="c"><rect class="i" width="70" height="94"/><ellipse id="d" class="k" cx="35.8" cy="84.1" rx="14.4" ry="3.7"/><ellipse id="e" class="j" cx="35.8" cy="84.1" rx="7.5" ry="3"/><path class="m" d="m26.8,71.1l-1.1-1.1c-9.6-4.2-15.6-13.5-15.4-23.6,0-14.1,11.2-25.5,25-25.5s25,11.4,25,25.5-6.5,19.8-15.6,23.6c-.3.3-.6.6-.9,1-3.4,3.9-6.2,8.3-8.3,13,0,0-3.6-7.9-8.9-13h.1Z"/><ellipse class="n" cx="35.1" cy="45.5" rx="19.8" ry="19.3"/><ellipse class="l" cx="35.3" cy="45.3" rx="20.1" ry="19.6"/><ellipse class="h" cx="35.3" cy="45.3" rx="19" ry="18.6"/></g></svg>
<<<<<<< HEAD
<?xml version="1.0" encoding="UTF-8"?>
<svg id="b" xmlns="http://www.w3.org/2000/svg" width="70" height="94"
xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 70 94">
<defs>
<style>
.h{stroke:#db4646;stroke-width:2.1px;}.h,.i{fill:none;}.j{fill:#a74d4b;opacity:.7;}.j,.i,.k,.l,.m,.n{stroke-width:0px;}.j,.k{isolation:isolate;}.i{opacity:0;}.k{fill:#ff5f4c;opacity:.3;}.l{fill:#fff;}.m{fill:url(#f);}.n{fill:url(#g);}
</style>
<radialGradient id="f" cx="263.2" cy="286.8" fx="263.2" fy="286.8" r=".9"
gradientTransform="translate(-9405.4 -24647.8) rotate(38.2) scale(75.3 47.3) skewX(7.6)"
gradientUnits="userSpaceOnUse">
<stop offset="0" stop-color="#ff9287" />
<stop offset=".8" stop-color="#ff5f4c" />
<stop offset="1" stop-color="#ff5f4c" />
</radialGradient>
<radialGradient id="g" cx="259.6" cy="284" fx="259.6" fy="284" r=".4"
gradientTransform="translate(-14219.7 -15164.5) scale(54.9 53.6)"
gradientUnits="userSpaceOnUse">
<stop offset="0" stop-color="#e75545" />
<stop offset=".8" stop-color="#c4483b" />
<stop offset="1" stop-color="#983b31" />
</radialGradient>
</defs>
<g id="c">
<rect class="i" width="70" height="94" />
<ellipse id="d" class="k" cx="35.8" cy="84.1" rx="14.4" ry="3.7" />
<ellipse id="e" class="j" cx="35.8" cy="84.1" rx="7.5" ry="3" />
<path class="m"
d="m26.8,71.1l-1.1-1.1c-9.6-4.2-15.6-13.5-15.4-23.6,0-14.1,11.2-25.5,25-25.5s25,11.4,25,25.5-6.5,19.8-15.6,23.6c-.3.3-.6.6-.9,1-3.4,3.9-6.2,8.3-8.3,13,0,0-3.6-7.9-8.9-13h.1Z" />
<ellipse class="n" cx="35.1" cy="45.5" rx="19.8" ry="19.3" />
<ellipse class="l" cx="35.3" cy="45.3" rx="20.1" ry="19.6" />
<ellipse class="h" cx="35.3" cy="45.3" rx="19" ry="18.6" />
</g>
</svg>
=======
<?xml version="1.0" encoding="UTF-8"?><svg id="b" xmlns="http://www.w3.org/2000/svg" width="70" height="94" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 70 94"><defs><style>.h{stroke:#db4646;stroke-width:2.1px;}.h,.i{fill:none;}.j{fill:#a74d4b;opacity:.7;}.j,.i,.k,.l,.m,.n{stroke-width:0px;}.j,.k{isolation:isolate;}.i{opacity:0;}.k{fill:#ff5f4c;opacity:.3;}.l{fill:#fff;}.m{fill:url(#f);}.n{fill:url(#g);}</style><radialGradient id="f" cx="263.2" cy="286.8" fx="263.2" fy="286.8" r=".9" gradientTransform="translate(-9405.4 -24647.8) rotate(38.2) scale(75.3 47.3) skewX(7.6)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ff9287"/><stop offset=".8" stop-color="#ff5f4c"/><stop offset="1" stop-color="#ff5f4c"/></radialGradient><radialGradient id="g" cx="259.6" cy="284" fx="259.6" fy="284" r=".4" gradientTransform="translate(-14219.7 -15164.5) scale(54.9 53.6)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#e75545"/><stop offset=".8" stop-color="#c4483b"/><stop offset="1" stop-color="#983b31"/></radialGradient></defs><g id="c"><rect class="i" width="70" height="94"/><ellipse id="d" class="k" cx="35.8" cy="84.1" rx="14.4" ry="3.7"/><ellipse id="e" class="j" cx="35.8" cy="84.1" rx="7.5" ry="3"/><path class="m" d="m26.8,71.1l-1.1-1.1c-9.6-4.2-15.6-13.5-15.4-23.6,0-14.1,11.2-25.5,25-25.5s25,11.4,25,25.5-6.5,19.8-15.6,23.6c-.3.3-.6.6-.9,1-3.4,3.9-6.2,8.3-8.3,13,0,0-3.6-7.9-8.9-13h.1Z"/><ellipse class="n" cx="35.1" cy="45.5" rx="19.8" ry="19.3"/><ellipse class="l" cx="35.3" cy="45.3" rx="20.1" ry="19.6"/><ellipse class="h" cx="35.3" cy="45.3" rx="19" ry="18.6"/></g></svg>
>>>>>>> 231d7c429d62e54c11acce062a03219ecc511632

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

@ -1 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?><svg id="b" xmlns="http://www.w3.org/2000/svg" width="70" height="94" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 70 94"><defs><style>.h{stroke:#db4646;}.h,.i{stroke-width:2.1px;}.h,.i,.j,.k{fill:none;}.i,.k{stroke:#2f2f2f;}.l{fill:#363333;opacity:.7;}.l,.m{isolation:isolate;}.l,.m,.j,.n,.o,.p{stroke-width:0px;}.m{fill:#262d34;opacity:.2;}.j{opacity:0;}.k{stroke-linecap:round;stroke-width:1.4px;}.n{fill:#fff;}.o{fill:url(#f);}.p{fill:url(#g);}</style><radialGradient id="f" cx="-356.5" cy="276.3" fx="-356.5" fy="276.3" r="1.3" gradientTransform="translate(19417.3 3353.6) rotate(38.1) scale(54 33.9) skewX(7.5)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#b5b4b4"/><stop offset=".7" stop-color="#6e6c6c"/><stop offset="1" stop-color="#2f2f2f"/></radialGradient><radialGradient id="g" cx="-355.3" cy="282.7" fx="-355.3" fy="282.7" r=".5" gradientTransform="translate(14044.3 -10803.9) scale(39.4 38.4)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#e75545"/><stop offset=".8" stop-color="#c4483b"/><stop offset="1" stop-color="#983b31"/></radialGradient></defs><g id="c"><rect class="j" width="70" height="94"/><ellipse id="d" class="m" cx="35" cy="83.3" rx="14.4" ry="3.7"/><ellipse id="e" class="l" cx="35" cy="83.3" rx="7.5" ry="3"/><path class="o" d="m26.5,71l-1.1-1c-9.6-4.2-15.6-13.4-15.4-23.6,0-14.1,11.2-25.5,25-25.5s25,11.4,25,25.5-6.5,19.8-15.6,23.6c-.3.3-.6.6-.9,1-3.4,3.9-6.2,8.3-8.3,13,0,0-3.6-7.8-8.9-13h.1Z"/><ellipse class="p" cx="34.8" cy="45.4" rx="19.8" ry="19.2"/><ellipse class="n" cx="35" cy="45.2" rx="20.1" ry="19.6"/><ellipse class="h" cx="35" cy="45.2" rx="19" ry="18.5"/><ellipse class="n" cx="35" cy="45.2" rx="20.1" ry="19.6"/><ellipse class="i" cx="35" cy="45.2" rx="19" ry="18.5"/><line class="k" x1="17.9" y1="53.1" x2="42.2" y2="29.3"/><line class="k" x1="21.4" y1="57.7" x2="47.6" y2="32.2"/><path class="k" d="m26.4,61.7l13.4-13.1,11.9-11.5"/></g></svg>
<<<<<<< HEAD
<?xml version="1.0" encoding="UTF-8"?>
<svg id="b" xmlns="http://www.w3.org/2000/svg" width="70" height="94"
xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 70 94">
<defs>
<style>
.h{stroke:#db4646;}.h,.i{stroke-width:2.1px;}.h,.i,.j,.k{fill:none;}.i,.k{stroke:#2f2f2f;}.l{fill:#363333;opacity:.7;}.l,.m{isolation:isolate;}.l,.m,.j,.n,.o,.p{stroke-width:0px;}.m{fill:#262d34;opacity:.2;}.j{opacity:0;}.k{stroke-linecap:round;stroke-width:1.4px;}.n{fill:#fff;}.o{fill:url(#f);}.p{fill:url(#g);}
</style>
<radialGradient id="f" cx="-356.5" cy="276.3" fx="-356.5" fy="276.3" r="1.3"
gradientTransform="translate(19417.3 3353.6) rotate(38.1) scale(54 33.9) skewX(7.5)"
gradientUnits="userSpaceOnUse">
<stop offset="0" stop-color="#b5b4b4" />
<stop offset=".7" stop-color="#6e6c6c" />
<stop offset="1" stop-color="#2f2f2f" />
</radialGradient>
<radialGradient id="g" cx="-355.3" cy="282.7" fx="-355.3" fy="282.7" r=".5"
gradientTransform="translate(14044.3 -10803.9) scale(39.4 38.4)"
gradientUnits="userSpaceOnUse">
<stop offset="0" stop-color="#e75545" />
<stop offset=".8" stop-color="#c4483b" />
<stop offset="1" stop-color="#983b31" />
</radialGradient>
</defs>
<g id="c">
<rect class="j" width="70" height="94" />
<ellipse id="d" class="m" cx="35" cy="83.3" rx="14.4" ry="3.7" />
<ellipse id="e" class="l" cx="35" cy="83.3" rx="7.5" ry="3" />
<path class="o"
d="m26.5,71l-1.1-1c-9.6-4.2-15.6-13.4-15.4-23.6,0-14.1,11.2-25.5,25-25.5s25,11.4,25,25.5-6.5,19.8-15.6,23.6c-.3.3-.6.6-.9,1-3.4,3.9-6.2,8.3-8.3,13,0,0-3.6-7.8-8.9-13h.1Z" />
<ellipse class="p" cx="34.8" cy="45.4" rx="19.8" ry="19.2" />
<ellipse class="n" cx="35" cy="45.2" rx="20.1" ry="19.6" />
<ellipse class="h" cx="35" cy="45.2" rx="19" ry="18.5" />
<ellipse class="n" cx="35" cy="45.2" rx="20.1" ry="19.6" />
<ellipse class="i" cx="35" cy="45.2" rx="19" ry="18.5" />
<line class="k" x1="17.9" y1="53.1" x2="42.2" y2="29.3" />
<line class="k" x1="21.4" y1="57.7" x2="47.6" y2="32.2" />
<path class="k" d="m26.4,61.7l13.4-13.1,11.9-11.5" />
</g>
</svg>
=======
<?xml version="1.0" encoding="UTF-8"?><svg id="b" xmlns="http://www.w3.org/2000/svg" width="70" height="94" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 70 94"><defs><style>.h{stroke:#db4646;}.h,.i{stroke-width:2.1px;}.h,.i,.j,.k{fill:none;}.i,.k{stroke:#2f2f2f;}.l{fill:#363333;opacity:.7;}.l,.m{isolation:isolate;}.l,.m,.j,.n,.o,.p{stroke-width:0px;}.m{fill:#262d34;opacity:.2;}.j{opacity:0;}.k{stroke-linecap:round;stroke-width:1.4px;}.n{fill:#fff;}.o{fill:url(#f);}.p{fill:url(#g);}</style><radialGradient id="f" cx="-356.5" cy="276.3" fx="-356.5" fy="276.3" r="1.3" gradientTransform="translate(19417.3 3353.6) rotate(38.1) scale(54 33.9) skewX(7.5)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#b5b4b4"/><stop offset=".7" stop-color="#6e6c6c"/><stop offset="1" stop-color="#2f2f2f"/></radialGradient><radialGradient id="g" cx="-355.3" cy="282.7" fx="-355.3" fy="282.7" r=".5" gradientTransform="translate(14044.3 -10803.9) scale(39.4 38.4)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#e75545"/><stop offset=".8" stop-color="#c4483b"/><stop offset="1" stop-color="#983b31"/></radialGradient></defs><g id="c"><rect class="j" width="70" height="94"/><ellipse id="d" class="m" cx="35" cy="83.3" rx="14.4" ry="3.7"/><ellipse id="e" class="l" cx="35" cy="83.3" rx="7.5" ry="3"/><path class="o" d="m26.5,71l-1.1-1c-9.6-4.2-15.6-13.4-15.4-23.6,0-14.1,11.2-25.5,25-25.5s25,11.4,25,25.5-6.5,19.8-15.6,23.6c-.3.3-.6.6-.9,1-3.4,3.9-6.2,8.3-8.3,13,0,0-3.6-7.8-8.9-13h.1Z"/><ellipse class="p" cx="34.8" cy="45.4" rx="19.8" ry="19.2"/><ellipse class="n" cx="35" cy="45.2" rx="20.1" ry="19.6"/><ellipse class="h" cx="35" cy="45.2" rx="19" ry="18.5"/><ellipse class="n" cx="35" cy="45.2" rx="20.1" ry="19.6"/><ellipse class="i" cx="35" cy="45.2" rx="19" ry="18.5"/><line class="k" x1="17.9" y1="53.1" x2="42.2" y2="29.3"/><line class="k" x1="21.4" y1="57.7" x2="47.6" y2="32.2"/><path class="k" d="m26.4,61.7l13.4-13.1,11.9-11.5"/></g></svg>
>>>>>>> 231d7c429d62e54c11acce062a03219ecc511632

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

View File

@ -1,7 +1,6 @@
package com.navinfo.collect.library.map.source;
import android.os.Build;
import android.util.Log;
import androidx.annotation.RequiresApi;
@ -11,21 +10,17 @@ import com.navinfo.collect.library.utils.GeometryTools;
import com.navinfo.collect.library.utils.MapParamUtils;
import org.locationtech.jts.geom.Polygon;
import org.oscim.core.MapPosition;
import org.oscim.layers.tile.MapTile;
import org.oscim.map.Map;
import org.oscim.map.Viewport;
import org.oscim.tiling.ITileDataSink;
import org.oscim.tiling.ITileDataSource;
import org.oscim.tiling.QueryResult;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.stream.Collectors;
import io.realm.Realm;
import io.realm.RealmConfiguration;
import io.realm.RealmQuery;
public class OMDBTileDataSource implements ITileDataSource {

2
vtm

@ -1 +1 @@
Subproject commit 024159afee2b9e438dd6c2a6419e034df287a8db
Subproject commit 3eb80a33c6b54609a47083c38fe35fd4916edba9