我正在编写一个应用程序,以使用MapBox Scene工具包查看AR中的位置。我不断收到错误消息“调用中缺少参数'completion'的参数”,而且似乎没有地方记录该问题。
我知道过去(2018年8月)使用的代码,因此我相信该框架已更新。如果有人有任何建议,将不胜感激。
if let terrainNode = terrainNode {
terrainNode.scale = terrainNodeScale // Scale down map
terrainNode.position = SCNVector3Make(0, -0.15, 0) // Place map slightly below clouds
terrainNode.geometry?.materials = defaultMaterials() // Add default materials
scene.rootNode.addChildNode(terrainNode)
terrainNode.fetchTerrainHeights(minWallHeight: 100.0, enableDynamicShadows: true, progress: { progress, total in
}, completion: {_ in
NSLog("Terrain load complete")
})
terrainNode.fetchTerrainTexture(type, progress: { progress, total in
self.progressView?.progress = progress
NSLog("Texture load complete")
terrainNode.geometry?.materials[4].diffuse.contents = image
})
}
答案 0 :(得分:1)
错误消息非常准确,它告诉您您需要做什么:在您的completion
调用中添加一个fetchTerrainTexture
参数,就像这样:
terrainNode.fetchTerrainTexture(
type,
progress: { progress, total in
self.progressView?.progress = progress
NSLog("Texture load complete")
terrainNode.geometry?.materials[4].diffuse.contents = image
},
completion: { image, fetchError in
// whatever needs to be done on completion
}
)