Итак, я успешно обнаружил самолеты.Моя цель состоит в том, чтобы измерить расстояние по высоте между узлом камеры и обнаруженной плоскостью, когда телефон повернут ровно (повернут как плоскость (горизонтально)), но это не точный результат из-за угла телефона, то есть некоторое время он не плоский, как слегка вверх или вниз.
Вот что я попробовал.
guard let camera = self.sceneView.session.currentFrame?.camera, let plane = self.sceneView.hitTest(self.sceneView.center, types: [.existingPlaneUsingGeometry]).first else {
return
}
var anchorPosition = plane.anchor?.transform.columns.3
var cameraPosition = camera.transform.columns.3
anchorPosition?.x = cameraPosition.x
anchorPosition?.z = cameraPosition.z
let cameraToAnchor = cameraPosition - (anchorPosition ?? float4())
// and here’s just the scalar distance
let distance = length(cameraToAnchor)
Любой может помочь мне улучшить его.Или как я могу принять во внимание поворот камеры.как плоскость поворачивается на 90 градусов по оси X. Поэтому мне нужно сопоставить это вращение с камерой, чтобы получить точное значение