定义 SCNNode 的位置
Define position for SCNNode
我根据 SCNVector3
创建了 SCNBox
。但我不明白创造的概念。
对于二维矩形,x和y表示矩形的右上角。
对于 ARKit 3D SCNBox
,x、y 和 z 代表什么?那是代表SCNBox
的中心吗?
当您设置 SCNNode
的位置时,您正在初始化描述节点位置的 SCNVector3
。
您必须定义节点的 中心点 相对于父节点位置的位置(中心点 不一定在自定义节点的中心,但如果您的基本节点具有 SCNBox
或 SCNSphere
等几何形状,则 中心点 位于中心)
一个简单的例子可以是添加几何节点 SCNBox
到 sceneView
的 scene
的 rootNode
,当你在 Xcode 创建新 增强现实应用.
let cube = SCNBox(width: 0.1, height: 0.1, length: 0.1, chamferRadius: 0)
let material = SCNMaterial()
material.diffuse.contents = UIColor.red
cube.materials = [material]
let node = SCNNode()
node.position = SCNVector3(x: 0, y: 0, z: -0.5)
node.geometry = cube
sceneView.scene.rootNode.addChildNode(node)
如您所见,要初始化 SCNVector3
,您必须定义节点的 x、y 和 z 位置 中心点。注意单位是米。
我用 x,y 和 z 轴创建了(非常好的)图片,这应该可以帮助您了解如何定位您的 SCNNode
:
...origin是添加节点时节点父坐标系的原点。 AR 世界 的图像原点简化为 ARSCNView
的中心位置
我根据 SCNVector3
创建了 SCNBox
。但我不明白创造的概念。
对于二维矩形,x和y表示矩形的右上角。
对于 ARKit 3D SCNBox
,x、y 和 z 代表什么?那是代表SCNBox
的中心吗?
当您设置 SCNNode
的位置时,您正在初始化描述节点位置的 SCNVector3
。
您必须定义节点的 中心点 相对于父节点位置的位置(中心点 不一定在自定义节点的中心,但如果您的基本节点具有 SCNBox
或 SCNSphere
等几何形状,则 中心点 位于中心)
一个简单的例子可以是添加几何节点 SCNBox
到 sceneView
的 scene
的 rootNode
,当你在 Xcode 创建新 增强现实应用.
let cube = SCNBox(width: 0.1, height: 0.1, length: 0.1, chamferRadius: 0)
let material = SCNMaterial()
material.diffuse.contents = UIColor.red
cube.materials = [material]
let node = SCNNode()
node.position = SCNVector3(x: 0, y: 0, z: -0.5)
node.geometry = cube
sceneView.scene.rootNode.addChildNode(node)
如您所见,要初始化 SCNVector3
,您必须定义节点的 x、y 和 z 位置 中心点。注意单位是米。
我用 x,y 和 z 轴创建了(非常好的)图片,这应该可以帮助您了解如何定位您的 SCNNode
:
...origin是添加节点时节点父坐标系的原点。 AR 世界 的图像原点简化为 ARSCNView