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

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 {