Android: невозможно определить вертикальную плоскость
Я пытаюсь определить вертикальную плоскость, например, стену, чтобы добавить изображение в вертикальной плоскости. Но не нашел вертикальной плоскости. Согласно конфигурации по умолчанию для сеанса, который может найти обе плоскости в горизонтальной и вертикальной плоскостях. Но не удалось найти вертикальный план.
Как найти вертикальную плоскость в приложении для Android?
Пожалуйста, помогите мне.
1 ответ
Во-первых, вам нужна подходящая вертикальная поверхность для отслеживания. Стена со сплошным цветом (без каких-либо отличительных черт на ней) является очень плохим примером. Наиболее надежный подход для отслеживания вертикальной поверхности - это хорошо освещенная кирпичная стена или стена с рисунками на ней и т. Д.
Во-вторых, самый простой способ создания Anchor
в центре вашей обнаруженной плоскости использовать следующий код (убедитесь, что вы вызываете его один раз, чтобы он не мог создать новый Anchor
при каждом обновлении):
Anchor newAnchor;
for (Plane plane : mSession.getAllTrackables(Plane.class)) {
if (plane.getType() == Plane.Type.VERTICAL
&& plane.getTrackingState() == TrackingState.TRACKING) {
newAnchor = plane.createAnchor(plane.getCenterPose());
break;
}
}