从多边形生成的网格上的Unity + Mapbox IFeaturePropertySettable?

时间:2018-06-19 15:30:49

标签: unity3d mapbox

我一直在使用以下带点的示例代码,看起来效果很好,但似乎不适用于多边形。我在mapbox studio中创建了一个多边形建筑物,并为其赋予了prop_name属性,并在Unity中为其添加了“ AddMonobehaviourModifier”。添加了脚本,但是使用原始类型的Polygon时,永远不会运行Set函数。仅适用于Point。这是假定要与生成的多边形网格一起使用,还是有另一种方法可以从多边形中获取属性值来使用?我确实有一个height属性,并设置了属性名,它是从数据集中获取的。我只想同时使用该数据集属性中的所有其他信息。

namespace Mapbox.Examples
{
    using Mapbox.Unity.MeshGeneration.Interfaces;
    using System.Collections.Generic;
    using UnityEngine;
    using UnityEngine.UI;

    public class VisualizerElement : MonoBehaviour, IFeaturePropertySettable
    {
        public void Set(Dictionary<string, object> props)
        {
            if (props.ContainsKey("prop_name"))
            {       
                Debug.Log(props["prop_name"].ToString());
            }
        }
    }
}

1 个答案:

答案 0 :(得分:0)

最终弄清楚了这一点。使用 InteractiveStyledVectorMap 示例。设置和拆分仍然有些复杂。我最初想到的是 InspectorModifier 是一个预设,但实际上是示例的自定义脚本。Mapbox很棒,但我觉得他们需要更多的文档和更好的Unity SDK描述。