Merge branch 'master' of gitlab.navinfo.com:CollectVehicle/OneMapQS

This commit is contained in:
2023-08-01 09:54:23 +08:00
29 changed files with 579 additions and 324 deletions

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<rendertheme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" map-background="#f4f4f4"
<rendertheme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" map-background="#bfbfbf"
version="1" xmlns="http://opensciencemap.org/rendertheme" xsi:schemaLocation="http://opensciencemap.org/rendertheme
https://raw.githubusercontent.com/mapsforge/vtm/master/resources/rendertheme.xsd">
@@ -1483,18 +1483,18 @@
<m k="qi_table">
<!-- 道路线 -->
<m v="OMDB_RD_LINK" zoom-max="19">
<m v="OMDB_RD_LINK">
<line stroke="#9c9c9c" width="1" />
</m>
<!-- 检查点 -->
<m v="OMDB_CHECKPOINT" zoom-max="19">
<m v="OMDB_CHECKPOINT">
<symbol src="assets:omdb/icon_1012_0.svg" symbol-height="64"
symbol-width="64"></symbol>
</m>
<!--道路种别-->
<m v="OMDB_RD_LINK_KIND" zoom-max="19">
<m v="OMDB_RD_LINK_KIND">
<outline-layer id="kind0" stroke="#44000000" width="0.1" />
<outline-layer id="kind1" stroke="#aa807040" width="0.1" />
<m k="kind" v="1">
@@ -1527,7 +1527,7 @@
</m>
<!--常规点限速-->
<m v="OMDB_SPEEDLIMIT" zoom-max="19">
<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>
@@ -1559,7 +1559,7 @@
</m>
<!--可变点限速-->
<m v="OMDB_SPEEDLIMIT_VAR" zoom-max="19">
<m v="OMDB_SPEEDLIMIT_VAR" >
<m k="speedFlag" v="0">
<caption fill="#000000" k="maxSpeed" priority="0" size="12" stroke="#ffffff"
stroke-width="1.0"></caption>
@@ -1575,14 +1575,14 @@
</m>
<!--车道中心线-->
<m v="OMDB_LANE_LINK_LG" zoom-min="20">
<m v="OMDB_LANE_LINK_LG">
<m k="width" v="~">
<line stroke="#7A88A0" width="5" />
</m>
</m>
<!-- 道路边界类型 -->
<m v="OMDB_RDBOUND_BOUNDARYTYPE" zoom-min="20">
<m v="OMDB_RDBOUND_BOUNDARYTYPE">
<outline-layer id="boundaryType" stroke="#8e44ad" width="0.1" />
<m k="boundaryType" v="0|2|3|4|5|6|7|8|9">
<line stroke="#ffffff" use="boundaryType" width="0.1"/>
@@ -1594,7 +1594,7 @@
</m>
<!-- 车道边界类型 -->
<m v="OMDB_LANE_MARK_BOUNDARYTYPE" zoom-min="20">
<m v="OMDB_LANE_MARK_BOUNDARYTYPE">
<outline-layer id="boundary" stroke="#ffffff" width="0.1" />
<m k="boundaryType" v="2">
<!--标线-->
@@ -1657,7 +1657,7 @@
</m>
<!--隧道-->
<m v="OMDB_TUNNEL" zoom-max="19">
<m v="OMDB_TUNNEL">
<m k="formOfWay">
<line dasharray="0.2,0.2" stroke="#d4237a" width="0.2" />
</m>
@@ -1684,13 +1684,13 @@
</m>
<!--交通灯-->
<m v="OMDB_TRAFFICLIGHT" zoom-max="19">
<m v="OMDB_TRAFFICLIGHT">
<symbol repeat="false" rotate="false" src="assets:omdb/icon_4022_0.svg"
symbol-height="69" symbol-width="69"></symbol>
</m>
<!--普通交限-->
<m v="OMDB_RESTRICTION" zoom-max="19">
<m v="OMDB_RESTRICTION">
<m k="angle">
<symbol repeat="false" repeat-start="0" rotate="false"
src="assets:omdb/icon_4006_0.svg" symbol-height="69" symbol-width="69"></symbol>
@@ -1706,7 +1706,7 @@
</m>
<!--电子眼-->
<m v="OMDB_ELECTRONICEYE" zoom-max="19">
<m v="OMDB_ELECTRONICEYE">
<caption dy="-30" fill="#000000" k="name" priority="0" size="14"
stroke="#ffffff" stroke-width="1.0"></caption>
<m k="type" v="angle">
@@ -1719,7 +1719,7 @@
</m>
<!-- 路口 -->
<m v="OMDB_INTERSECTION" zoom-max="19">
<m v="OMDB_INTERSECTION">
<m k="type" v="node">
<symbol src="assets:symbols/dot_blue_dark.svg"></symbol>
</m>
@@ -1734,7 +1734,7 @@
</m>
<!-- 车信 -->
<m v="OMDB_LANEINFO" zoom-max="19">
<m v="OMDB_LANEINFO" >
<m k="currentType" v="0">
<m k="currentDirect" v="1">
<symbol repeat="false" repeat-start="0" repeat-gap="2000"

View File

@@ -604,11 +604,10 @@ public final class NIMapView extends RelativeLayout {
BASE(0)/*底图图层组*/,
VECTOR_TILE(1)/*矢量瓦片组*/,
VECTOR(2)/*高亮组*/,
OPERATE_LINE(3)/*操作图层组*/,
OPERATE_MARKER(4)/*操作图层*/,
NAVIGATION(5)/*定位导航组*/,
LABEL(6)/*图标,文字图层*/;
NAVIGATION(3)/*定位导航组*/,
LABEL(4)/*图标,文字图层*/,
OPERATE_LINE(5)/*操作图层组*/,
OPERATE_MARKER(6)/*操作图层*/;
int groupIndex;
LAYER_GROUPS(int groupIndex) {

View File

@@ -61,7 +61,7 @@ public class OMDBDataDecoder extends TileDecoder {
}
@RequiresApi(api = Build.VERSION_CODES.N)
public boolean decode(int zoomLevel,Tile tile, ITileDataSink sink, List<RenderEntity> listResult) {
public boolean decode(int mapLevel,Tile tile, ITileDataSink sink, List<RenderEntity> listResult) {
mTileDataSink = sink;
mTileScale = 1 << tile.zoomLevel;
mTileX = tile.tileX / mTileScale;
@@ -71,10 +71,12 @@ public class OMDBDataDecoder extends TileDecoder {
listResult.stream().iterator().forEachRemaining(new Consumer<RenderEntity>() {
@Override
public void accept(RenderEntity renderEntity) {
if(zoomLevel>=renderEntity.getZoomMin()&&zoomLevel<=renderEntity.getZoomMax()){
if(!(mapLevel<renderEntity.getZoomMin()||mapLevel>renderEntity.getZoomMax())){
Map<String, Object> properties= new HashMap<>(renderEntity.getProperties().size());
properties.putAll(renderEntity.getProperties());
parseGeometry(renderEntity.getTable(), renderEntity.getWkt(), properties);
}else{
Log.e("qj","render"+renderEntity.name+"=="+renderEntity.getZoomMin()+"==="+renderEntity.getZoomMax());
}
}
});
@@ -186,4 +188,10 @@ public class OMDBDataDecoder extends TileDecoder {
if (!hasName && fallbackName != null)
mMapElement.tags.add(new Tag(Tag.KEY_NAME, fallbackName, false));
}
public void clean(){
if(mTileDataSink!=null){
mTileDataSink.notifyAll();
}
}
}

View File

@@ -70,7 +70,7 @@ public class OMDBReferenceDecoder extends TileDecoder {
listResult.stream().iterator().forEachRemaining(new Consumer<ReferenceEntity>() {
@Override
public void accept(ReferenceEntity renderEntity) {
if(mapLevel>=renderEntity.getZoomMin()&&mapLevel<=renderEntity.getZoomMax()){
if(!(mapLevel<renderEntity.getZoomMin()||mapLevel>renderEntity.getZoomMax())){
Map<String, Object> properties= new HashMap<>(renderEntity.getProperties().size());
properties.putAll(renderEntity.getProperties());
parseGeometry(renderEntity.getTable(), renderEntity.getWkt(), properties);

View File

@@ -31,7 +31,7 @@ public class Constant {
public static String[] HAD_LAYER_INVISIABLE_ARRAY;
public static final int OVER_ZOOM = 21;
public static final int MAX_ZOOM = 23;
public static final int OMDB_MIN_ZOOM = 18;
public static final int OMDB_MIN_ZOOM = 16;
/**
* 服务器地址