如何在ARSCNFaceGeometry中显示/确定顶点的索引?

时间:2018-11-26 15:54:09

标签: xcode scenekit arkit scnnode arfacegeometry

我想获取IApplicationBuilder网格中特定顶点的索引。

我尝试向显示顶点索引的顶点添加ARSCNFaceGeometry

SCNText

但是Xcode Scene Editor中的结果是某些文本节点正确放置,其他文本节点分散在整个位置:

enter image description here

为什么文本节点会这样定位?

还有另一种获取顶点索引的方法吗?

更新:

我尝试将// Create face node let faceNode = SCNNode(geometry: geometry) // geometry is the ARSCNFaceGeometry // Get vertices of face node let vertices = ... // For each vertex vertices.enumerated().forEach({ (index, vertex) in // Create text geometry let textGeometry = SCNText(string: text, extrusionDepth: 1) textGeometry.firstMaterial?.diffuse.contents = UIColor.black // Create text node let textNode = SCNNode(geometry: textGeometry) textNode.scale = SCNVector3(0.0002, 0.0002, 0.0002) textNode.position = SCNVector3(vertex.x, vertex.y, vertex.z) // Add text node to face mask node faceNode.addChildNode(textNode) }) 添加到每个顶点:

SCNBox

结果表明,即使盒子位置也是错误的。那么如何使用顶点将每个框定位在网格点的中心?

enter image description here

1 个答案:

答案 0 :(得分:0)

我从人脸网格检索顶点的方法是错误的。我现在使用this答案来提取顶点,并且可以正常工作。