Kőn*_*yás 7 java android augmented-reality arcore
我想用 ARCore 在墙上放置一个图像。该图像是从常规图像视图转换而来的。我只检测垂直表面,但是当我放置图像时,它是这样放置的:我无法弄清楚如何变换以将图像挂在墙上,就像在现实生活中一样。

AR fragment
fragment = (ArFragment)
getSupportFragmentManager().findFragmentById(R.id.sceneform_fragment);
CompletableFuture<ViewRenderable> imgView = ViewRenderable.builder()
.setView(this, R.layout.textview)
.build();
CompletableFuture.allOf(imgView).handle((notUsed, throwable) -> {
// When you build a Renderable, Sceneform loads its resources in the background while
// returning a CompletableFuture. Call handle(), thenAccept(), or check isDone()
// before calling get().
if (throwable != null) {
Log.d("MainActivity", "onCreate: " + "Unable to load renderable");
return null;
}
try {
imageViewRenderable = imgView.get();
} catch (InterruptedException | ExecutionException ex) {
Log.d("MainActivity", "onCreate: Unable to load renderable");
}
return null;
});
try {
mArSession = new Session(this);
} catch (UnavailableArcoreNotInstalledException e) {
e.printStackTrace();
} catch (UnavailableApkTooOldException e) {
e.printStackTrace();
} catch (UnavailableSdkTooOldException e) {
e.printStackTrace();
} catch (UnavailableDeviceNotCompatibleException e) {
e.printStackTrace();
}
mArConfig = new Config(mArSession);
mArConfig.setUpdateMode(Config.UpdateMode.LATEST_CAMERA_IMAGE);
mArConfig.setPlaneFindingMode(Config.PlaneFindingMode.VERTICAL);
mArSession.configure(mArConfig);
fragment.getArSceneView().setupSession(mArSession);
fragment.setOnTapArPlaneListener((HitResult hitresult, Plane plane, MotionEvent motionevent) -> {
Anchor anchor = hitresult.createAnchor();
AnchorNode anchorNode = new AnchorNode(anchor);
anchorNode.setParent(fragment.getArSceneView().getScene());
TransformableNode art = new TransformableNode(fragment.getTransformationSystem());
art.setParent(anchorNode);
art.setRenderable(imageViewRenderable);
art.select();
ImageView imageView = (ImageView)imageViewRenderable.getView();
Picasso.get().load("http://www.cbk-enschede.nl/plaatjes/ens/jpg/GSA023.jpg").into(imageView);
}
);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1480 次 |
| 最近记录: |