Android MapBox:Symbol IconRotation无法与表达式一起使用

问题描述 投票:0回答:1

我正在为类似Uber的应用程序工作,汽车应该在地图上实时旋转。我从API获得的旋转值是0到360之间的度数。因此,我从0F..1F计算出一个浮点值,然后尝试使用如下表达式来旋转符号图标:

val feature = Feature.fromGeometry(
    Point.fromLngLat(courier.longitude ?: 0.0, courier.latitude ?: 0.0)
)

val rotation = computeOrientationInFloat(courier.orientation)   

feature.addStringProperty(COURIER_ICON_PROPERTY,COURIER_ICON_ID)
feature.addStringProperty(COURIER_ID_PROPERTY,COURIER_ID)
feature.addNumberProperty(COURIER_ICON_ROTATION_PROPERTY, rotation)

因此,我基本上将符号旋转作为NumberProperty添加到功能中。然后,在我的图层属性构建器上:

val unclusteredLayer = SymbolLayer(UNCLUSTERED_COURIER_LAYER_ID, COURIER_SOURCE_ID)
     .withProperties(
         PropertyFactory.iconImage(Expression.get(COURIER_ICON_PROPERTY)),
         PropertyFactory.iconSize(0.24F),
         PropertyFactory.iconRotate(Expression.toNumber
            (Expression.get(COURIER_ICON_ROTATION_PROPERTY))
         ),
         PropertyFactory.iconRotationAlignment(Property.ICON_ROTATION_ALIGNMENT_MAP),
         PropertyFactory.iconAllowOverlap(true)
)

我使用表达式设置了iconRotate属性。没用我也尝试过

PropertyFactory.iconRotate(Expression.get(COURIER_ICON_ROTATION_PROPERTY)),

或将stringProperty设置为功能,而不是numberProperty,但是它也不起作用。其他表达式,例如.getStringProperty(COURIER_ID),也可以工作。

任何想法?

android kotlin mapbox symbols layer
1个回答
-2
投票

No Results Found您请求的页面无法找到。尝试优化搜索范围,或使用上方的导航找到帖子。

© www.soinside.com 2019 - 2024. All rights reserved.