如何获取Mappedin Space坐标数组及所有空间坐标集合?
获取Mappedin Space坐标数组及批量获取方案
单个空间坐标提取
要获取单个Mappedin Space的坐标数组,直接访问该Space对象的polygon属性即可,它会返回该空间的顶点坐标集合:
// 假设已通过SDK获取到目标space实例 const spaceCoordinates = space.polygon; // 返回格式示例:[{x: 123, y: 456}, {x: 789, y: 012}, ...](部分空间可能包含z轴坐标)
批量获取所有空间坐标
无需逐个调用,SDK加载完成后,所有空间数据都存放在mapData.spaces集合中。你可以遍历这个集合一次性提取所有空间的坐标信息:
// 假设已完成地图初始化并拿到mapData对象 const allSpacesWithCoords = mapData.spaces.map(space => ({ id: space.id, name: space.name, coordinates: space.polygon })); // allSpacesWithCoords数组包含每个空间的ID、名称及对应的坐标数组
注意事项
- 如果空间是由多个多边形组成的复合形状,
polygon会返回嵌套数组,格式为[[{x,y,z}, ...], [{x,y,z}, ...]] - 必须在地图数据完全加载后再访问
mapData.spaces,通常可以在SDK初始化的onDataLoaded回调中处理逻辑
内容的提问来源于stack exchange,提问作者Matt Falkner
相关产品推荐
相关产品推荐

