ARKit 기본도형
- ARKit에는 기본적으로 나타낼수 있는 모양의 도형이 있다. ```c //평면 직사각형 let plane = SCNPlane(width: 20.0, height: 20.0) plane.cornerRadius = 5.0 plane.cornerSegmentCount = 2 //모서리를 몇개의 segment로 만들것인가
//정육면체 let box = SCNBox(width: 0.1, height: 0.1, length: 0.1, chamferRadius: 0)
//피라미드모양 let pyramid = SCNPyramid(width: 0.1, height: 0.1, length: 0.1)
//구체(공모양) let sphere = SCNSphere(radius: 0.1)
//원통형 모양 let cylinder = SCNCylinder(radius: 0.1, height: 0.2)
//삼각뿔 모양 - topRadius를 bottomRadius와 같게 하면 cylinder과 같은 모양이 나온다. let cone = SCNCone(topRadius: 0.1, bottomRadius: 0.1, height: 0.1)
//원통인데 가운데가 뚫린 let tube = SCNTube(innerRadius: 0.1, outerRadius: 0.1, height: 0.2)
//길쭉한 원통형 모양 let capsule = SCNCapsule(capRadius: 0.1, height: 0.5)
//가운데가 뚫린 도넛모양 let torus = SCNTorus(ringRadius: 0.2, pipeRadius: 0.1)
###### 전체소스 (Sample - text보여주기)
```c
import ARKit
class ViewController: UIViewController{
//ARSCNView - SceneKit으로 AR경험을 표시 할 수 있는 뷰
@IBOutlet weak var sceneView: ARSCNView!
override func viewDidLoad() {
super.viewDidLoad()
let text = SCNText(string: "Hello World", extrusionDepth: 1) //텍스트 블록을 나타냅니다.
let node = SCNNode()
node.position = SCNVector3(-0.15, 0, -1)
node.scale = SCNVector3(0.01, 0.01, 0.01)
node.geometry = text
sceneView.scene.rootNode.addChildNode(node)
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
//ARWorldTrackingConfiguration - 장치의 방향과 위치를 추적하고 카메라를 통해서 실제 표면을 감지한다.
let configuration = ARWorldTrackingConfiguration()
sceneView.session.run(configuration)
}
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
sceneView.session.pause()
}
}