feat: 修改同点位marker避让时未参考angle角度的问题
This commit is contained in:
@@ -257,7 +257,7 @@
|
||||
<xs:attribute name="repeat-start" default="30" type="xs:float" use="optional"/>
|
||||
<xs:attribute name="rotate" default="true" type="xs:boolean" use="optional"/>
|
||||
<!-- 设置是否支持图标压盖,如果为true,则同点位图标不避让,允许压盖,否则支持自动避让 -->
|
||||
<xs:attribute name="gland" default="false" type="xs:boolean" use="optional"/>
|
||||
<xs:attribute name="gland" default="true" type="xs:boolean" use="optional"/>
|
||||
<!-- 原图标旋转角度,默认情况下应该使用以X轴为正方向的图标,此处可设置原图标的旋转角度,在渲染时自动对图标进行旋转,仅支持线要素 -->
|
||||
<xs:attribute name="degree" default="0" type="xs:float" use="optional"/>
|
||||
</xs:complexType>
|
||||
|
||||
@@ -317,7 +317,7 @@ open class ClusterMarkerRenderer : MarkerRenderer {
|
||||
// this item will act as a cluster, just use a proper bitmap
|
||||
// depending on cluster size, instead of its marker
|
||||
val bitmap = getClusterBitmap(it.clusterSize + 1)
|
||||
s.set(it.x, it.y, bitmap, true, false, 0f)
|
||||
s.set(it.x, it.y, bitmap, true, false, 0f, 0f)
|
||||
s.offset = PointF(0.5f, 0.5f)
|
||||
s.billboard = true // could be a parameter
|
||||
} else {
|
||||
@@ -325,7 +325,7 @@ open class ClusterMarkerRenderer : MarkerRenderer {
|
||||
var symbol: MarkerSymbol? = it.item.marker
|
||||
if (symbol == null) symbol = mDefaultMarker
|
||||
symbol?.let { symbol ->
|
||||
s.set(it.x, it.y, symbol.bitmap, true, false, 0f)
|
||||
s.set(it.x, it.y, symbol.bitmap, true, false, 0f, 0f)
|
||||
s.offset = symbol.hotspot
|
||||
s.billboard = symbol.isBillboard
|
||||
}
|
||||
|
||||
@@ -15,6 +15,7 @@ import okhttp3.Cache
|
||||
import okhttp3.OkHttpClient
|
||||
import org.oscim.android.theme.AssetsRenderTheme
|
||||
import org.oscim.layers.GroupLayer
|
||||
import org.oscim.layers.TileGridLayer
|
||||
import org.oscim.layers.tile.buildings.BuildingLayer
|
||||
import org.oscim.layers.tile.vector.VectorTileLayer
|
||||
import org.oscim.layers.tile.vector.labeling.LabelLayer
|
||||
@@ -55,6 +56,7 @@ class LayerManagerHandler(context: AppCompatActivity, mapView: NIMapView, traceP
|
||||
private lateinit var omdbReferenceTileLayer: VectorTileLayer
|
||||
private lateinit var omdbLabelLayer: LabelLayer
|
||||
private lateinit var omdbReferenceLabelLayer: LabelLayer
|
||||
private lateinit var tileGridLayer: TileGridLayer // 用来显示tile号的layer
|
||||
|
||||
private val omdbTileSource by lazy { OMDBTileSource() }
|
||||
private val omdbReferenceTileSource by lazy { OMDBReferenceTileSource() }
|
||||
@@ -141,6 +143,9 @@ class LayerManagerHandler(context: AppCompatActivity, mapView: NIMapView, traceP
|
||||
// 向两个Vector图层增加hook钩子,加载数据前对style或数据进行二次处理
|
||||
omdbVectorTileLayer.addHook(navinfoTileThemeHook)
|
||||
omdbReferenceTileLayer.addHook(navinfoTileThemeHook)
|
||||
// 添加显示grid的tile号的图层
|
||||
tileGridLayer = TileGridLayer(mMapView.vtmMap)
|
||||
addLayer(tileGridLayer, NIMapView.LAYER_GROUPS.OPERATE_MARKER)
|
||||
}
|
||||
|
||||
private fun resetOMDBVectorTileLayer() {
|
||||
|
||||
Reference in New Issue
Block a user