var object1 = "C_active.scn"
var object86 = "Soap.scn"
var object41 = "image.scn"
var object9 = "NaCl.scn"
不同.SCN文件的名称
public func addBox(sceneView: ARSCNView) {
let imagePlaneScene = SCNScene(named: "art.scnassets/" + object1)
let imagePlaneNode = imagePlaneScene?.rootNode.childNode(withName: "object1", recursively: true)
imagePlaneNode?.position = positioner
我有一个读码器,可以给我一个数字,并从这个int中,我必须放置一个特定的.SCN文件。我不想像下面这样添加100 if语句。是否可以通过某种方式将一个字符串与一个Int连接起来并迅速将其转换为var? (每个对象后面的数字就是我从代码读取器收到的数字)
if(coding == 1) {
sceneView.scene.rootNode.addChildNode(imagePlaneNode!)
} else if(coding == 2) {
sceneView.scene.rootNode.addChildNode(imagePlaneNode!)
} else {
sceneView.scene.rootNode.addChildNode(imagePlaneNode!)
}
类似
var("object" + coding) -> coding41 (Var)
答案 0 :(得分:3)
为什么不只使用字典来存储文件名?
var object: [Int: String] = [1: "C_active.scn", 9: "NaCl.scn" ...]
当您需要特定的文件名时,只需使用附加在该字符串上的数字键即可。
print(object[9]) //Prints "NaCl.scn"