как вращать 3d модель, отображаемую с помощью ARCORE SceneView - PullRequest
0 голосов
/ 31 января 2019

как вращать 3d-модель, визуализированную с помощью ARCORE SceneView. Я использовал Sceneview

частную латинитную var сцену: частную латинитную сцену var: Node

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.act_main)

    scene = sceneView.scene
    render(Uri.parse("coffee_cup.sfb"))
}

private fun render(uri: Uri) {
    ModelRenderable.builder()
        .setSource(this, uri)
        .build()
        .thenAccept {
            addNode(it)
        }
        .exceptionally {
            Toast.makeText(this, "Error", Toast.LENGTH_SHORT).show()
            return@exceptionally null
        }

}

private fun addNode(model: ModelRenderable?) {
    model?.let {
        node = Node().apply {
            setParent(scene)
            localPosition = Vector3(0f, -2f, -7f)
            localScale = Vector3(3f, 3f, 3f)
            renderable = it
        }

        scene.addChild(node)
    }

1 Ответ

0 голосов
/ 01 февраля 2019

В блоке кода Node (). Apply добавьте следующее:

localRotation(Quaternion.axisAngle(new Vector3(-1f, 0, 0), 90f));

Измените значения (X, Y, Z) в соответствии с тем, как вы хотите повернуть объект.Приведенные мною координаты позволят объекту быть лицом к камере.

...