【发布时间】:2019-07-08 13:15:31
【问题描述】:
TransformableNode 手势不适用于 SceneView 中的对象。
我正在 SceneView 上显示一个 3D 对象。当我将 TransformableNode 作为第一个孩子提供给 SceneView 场景时,没有任何手势起作用。但是,当使用 ArFragment 做同样的事情时,一切正常。
private fun createNode() {
val transformationSystem = makeTransformationSystem()
val transformableNode = TransformableNode(transformationSystem).apply {
rotationController.isEnabled = true
scaleController.isEnabled = true
translationController.isEnabled = false // not support
setParent(sceneView.scene)
this.renderable = myRenderable // Build using CompletableFuture
}
sceneView.scene.addOnPeekTouchListener { hitTestResult, motionEvent ->
transformationSystem.onTouch(hitTestResult, motionEvent)
}
}
private fun makeTransformationSystem(): TransformationSystem {
val selectionVisualizer = FootprintSelectionVisualizer()
return TransformationSystem(resources.displayMetrics, selectionVisualizer)
}
我希望 SceneView 中的 3D 对象能够使用 TransformabelNode 中使用的手势进行旋转和缩放。
【问题讨论】: