如何在重建的网格上放置锚点以获得准确性
How to put an anchor on reconstructed mesh to get accuracy
我正在探索激光雷达及其在 ARKit 中的功能。我正在考虑激光雷达网格上的光线投射位置(x,y)。这意味着我想在光线投射位置的激光雷达网格上放置一个锚点。
目标是在 surface/mesh 上保持锚点对象的粘性和准确性。下图可以更好地理解
如何在光线投射中获取网格位置而不是默认的 ARWorld 位置。这意味着,如何将锚点或框放在 mesh/ARMeshAnchor 的特定位置?
它适用于任何 LiDAR 的重建网格,而不仅仅是平面:
@objc func tapped(_ sender: UITapGestureRecognizer) {
let tapLocation = sender.location(in: arView)
if let result: ARRaycastResult = arView.raycast(from: tapLocation,
allowing: .estimatedPlane,
alignment: .any).first {
let resultAnchor = AnchorEntity(world: result.worldTransform)
resultAnchor.addChild(self.sphereObject(0.05, .systemRed))
arView.scene.addAnchor(resultAnchor, removerAfter: 10.0)
}
}
我正在探索激光雷达及其在 ARKit 中的功能。我正在考虑激光雷达网格上的光线投射位置(x,y)。这意味着我想在光线投射位置的激光雷达网格上放置一个锚点。 目标是在 surface/mesh 上保持锚点对象的粘性和准确性。下图可以更好地理解
如何在光线投射中获取网格位置而不是默认的 ARWorld 位置。这意味着,如何将锚点或框放在 mesh/ARMeshAnchor 的特定位置?
它适用于任何 LiDAR 的重建网格,而不仅仅是平面:
@objc func tapped(_ sender: UITapGestureRecognizer) {
let tapLocation = sender.location(in: arView)
if let result: ARRaycastResult = arView.raycast(from: tapLocation,
allowing: .estimatedPlane,
alignment: .any).first {
let resultAnchor = AnchorEntity(world: result.worldTransform)
resultAnchor.addChild(self.sphereObject(0.05, .systemRed))
arView.scene.addAnchor(resultAnchor, removerAfter: 10.0)
}
}