Giter VIP home page Giter VIP logo

Comments (11)

LukasPoque avatar LukasPoque commented on May 13, 2024 6

I was facing the same issue since there is no example code for this library yet. But here are some steps that might help you to start:

Get the ArScenView like the other examples show: ArScenView sceneView = view.findViewById<ArSceneView?>(R.id.sceneView); Then configure the image database in the configureSession-method of the sceneView like this:

// in your onViewCreated, after you setup the ArSceneView
sceneView.configureSession(this::initialiseSceneViewSession)

// ---

private fun initialiseSceneViewSession(session: ArSession, config: Config) {
       // other init stuff ....
       // init image database
       val imageDatabase = this.requireActivity().assets.open(TRACKED_IMAGE_DATABASE_PATH).use {
            AugmentedImageDatabase.deserialize(session, it)
        }
        config.augmentedImageDatabase = imageDatabase
        session.configure(config)
    }

Now you only need to connect to the onAugmentedImageUpdate callback of the scenView in order to be notified if an image is tracked.

// in your onViewCreated, after you configureSession
sceneView.onAugmentedImageUpdate = this::checkAugmentedImageUpdate

// ---

private fun checkAugmentedImageUpdate(augmentedImage: AugmentedImage) {
        Log.i(
            TAG, "Augmented image update ${augmentedImage.name} with " +
                    "tracking state ${augmentedImage.trackingState}"
        )
    }

The last important step is to anchor your model node at the center of that image. Therefore you can simply create an anchor from the center pose of the augmented image in the callback:

// in checkAugmentedImageUpdate, modelNode is a simple ArModelNode with an loaded 3d model
val anchorImage = augmentedImage.createAnchor(augmentedImage.centerPose)
modelNode.anchor = anchorImage
sceneView.addChild(modelNode)

Hope this helps you to get started ✌️

@ThomasGorisse If something here is totally wrong please correct me :)

from sceneview-android.

un-ro avatar un-ro commented on May 13, 2024 1

Thanks, @LukasPoque, your guide is understandable. 👍

from sceneview-android.

ThomasGorisse avatar ThomasGorisse commented on May 13, 2024 1

Override it in the res folder

from sceneview-android.

iSTAYERi avatar iSTAYERi commented on May 13, 2024 1

Hi @Cardo, this code works for me:

sceneView.onAugmentedImageUpdate = mutableListOf(
    { augmentedImage ->
        if (augmentedImage.trackingState == TrackingState.TRACKING) {
            val anchorImage = augmentedImage.createAnchor(augmentedImage.centerPose)
            modelNode!!.anchor = anchorImage
            binding.sceneView.addChild(modelNode!!)
        }
    }
)

from sceneview-android.

monsterbrain avatar monsterbrain commented on May 13, 2024

Thanks a lot @LukasPoque .. I'll try it for sure.

from sceneview-android.

hjaeho95 avatar hjaeho95 commented on May 13, 2024

How do I modify the "scenview_fit_to_scan" image?

from sceneview-android.

github-actions avatar github-actions commented on May 13, 2024

Hey there, it looks like there has been no activity on this issue recently. Has the issue been fixed, or does it still require the community's attention? This issue may be closed if no further activity occurs. Thank you for your contributions.

from sceneview-android.

github-actions avatar github-actions commented on May 13, 2024

Closing this issue after a prolonged period of inactivity. If this issue is still present in the latest release, please feel free to create a new issue with up-to-date information.

from sceneview-android.

Cardo avatar Cardo commented on May 13, 2024

Hi @LukasPoque, the checkAugmentedImageUpdate function on the example gives me an error of wrong type (as in type mismatch with MutableList<(AugmentedImage -> Unit)> required). Any clue on how this checkAugmentedImageUpdate function should be formed? Thanks in advance.

from sceneview-android.

github-actions avatar github-actions commented on May 13, 2024

Hey there, it looks like there has been no activity on this issue recently. Has the issue been fixed, or does it still require the community's attention? This issue may be closed if no further activity occurs. Thank you for your contributions.

from sceneview-android.

github-actions avatar github-actions commented on May 13, 2024

Closing this issue after a prolonged period of inactivity. If this issue is still present in the latest release, please feel free to create a new issue with up-to-date information.

from sceneview-android.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.