Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ARCore Android Studio:将3D模型放置在屏幕的2D坐标上_Android_Anchor_Arcore - Fatal编程技术网

ARCore Android Studio:将3D模型放置在屏幕的2D坐标上

ARCore Android Studio:将3D模型放置在屏幕的2D坐标上,android,anchor,arcore,Android,Anchor,Arcore,我有二维屏幕坐标。这就是我想要放置3D模型的地方,与深度无关。不一定是飞机。它可以在空中或任何地方播放。我该怎么做呢 如何从二维坐标中获取锚点位置。我在这里迷路了,因为没有文档。我看过的所有教程都是将3D模型放置在水平面上。如果您仍在使用Sceneform,则下面的代码将根据您需要的深度在相机前面放置一个对象-如果中心对您无效,您可以使用“pos”移动它,并更改深度 //在相机前面添加一个锚点和一个可渲染对象 Session Session=arFragment.getArSceneView()

我有二维屏幕坐标。这就是我想要放置3D模型的地方,与深度无关。不一定是飞机。它可以在空中或任何地方播放。我该怎么做呢


如何从二维坐标中获取锚点位置。我在这里迷路了,因为没有文档。我看过的所有教程都是将3D模型放置在水平面上。如果您仍在使用Sceneform,则下面的代码将根据您需要的深度在相机前面放置一个对象-如果中心对您无效,您可以使用“pos”移动它,并更改深度

//在相机前面添加一个锚点和一个可渲染对象
Session Session=arFragment.getArSceneView().getSession();
float[]pos={0,0,-1};
float[]旋转={0,0,0,1};
Anchor Anchor=session.createAnchor(新姿势(位置、旋转));
锚点节点=新锚点节点(锚点);
anchorNode.setRenderable(andyRenderable);
setParent(arFragment.getArSceneView().getsceneview());
请注意,Sceneform是“开源和归档的”,因此您可能不想现在使用它-请参阅此处的说明:

如果您不使用Scenefrom,您可以尝试ARCore“即时放置”-其设计允许在删除平面等之前放置对象,因此不完全是您要寻找的,但您可能会发现它可以满足您的需要。更多详细信息和示例如下: