Как добавить UIView в SCNNode? стриж - PullRequest
0 голосов
/ 02 июля 2018

ARKit IOS связанный вопрос. вид добавить в SCNNode.

Мое требование - добавить две метки UIView в SCNNode и Show.

// Функция создания SCNNode func Val () -> SCNNode {

    //SCNNode Create using SCNode()
    let holderNode = SCNNode()

    // Set It's Geometry As An SCNPlane
    holderNode.geometry = SCNPlane()

    // Create A New Material
    let material = SCNMaterial()

    // Create A UIView As A Holder For Content
    let viewToAdd = UIView(frame: CGRect(x: 10, y: 20, width: 300, height: 30))
     //background Color
    viewToAdd.backgroundColor = .white

    // create red Label
    let redLabel = UILabel(frame: CGRect(x: 0, y: 10, width: 100, height: 10))
    redLabel.text = name
    redLabel.textColor = .red
    viewToAdd.addSubview(redLabel)

    // crate Blue Label
    let bluelabel = UILabel(frame: CGRect(x: 0, y: 20, width: 100, height: 20))
    bluelabel.text = String(distTwoPoints)
    bluelabel.textColor = .red
    viewToAdd.addSubview(bluelabel)

    material.diffuse.contents = viewToAdd
    holderNode.geometry?.firstMaterial = material


    holderNode.transform = CardinalDirection.transform(rotationY: GLKMathDegreesToRadians(angle), distance: 500)

    // return node
    return holderNode


}

1 Ответ

0 голосов
/ 07 июля 2018

Используйте следующий код для добавления UIView в SCNNode:

 let plane = SCNPlane()
 plane.firstMaterial!.diffuse.contents = viewToAdd

 holderNode.geometry = plane
...