मैं जिसमें मैं उपयोग स्थिति के लिए दृश्य के लिए कुछ पाठ जोड़ने ARKit के साथ एक सरल अनुप्रयोग बनाने हूँ:मैं ARKit में टेक्स्ट अभिविन्यास कैसे सेट कर सकता हूं?
@objc func tapped(sender: UITapGestureRecognizer){
let sceneView = sender.view as! ARSCNView
let tapLocation = sender.location(in: sceneView)
let hitTest = sceneView.hitTest(tapLocation, types: .featurePoint)
if !hitTest.isEmpty{
self.addTag(tag: "A", hitTestResult: hitTest.first!)
}
else{
print("no match")
}
}
func addTag(tag: String, hitTestResult: ARHitTestResult){
let tag = SCNText(string:tag, extrusionDepth: 0.1)
tag.font = UIFont(name: "Optima", size: 1)
tag.firstMaterial?.diffuse.contents = UIColor.red
let tagNode = SCNNode(geometry: tag)
let transform = hitTestResult.worldTransform
let thirdColumn = transform.columns.3
tagNode.position = SCNVector3(thirdColumn.x,thirdColumn.y - tagNode.boundingBox.max.y/2,thirdColumn.z)
print("\(thirdColumn.x) \(thirdColumn.y) \(thirdColumn.z)")
self.sceneView.scene.rootNode.addChildNode(tagNode)
}
यह काम करता है, लेकिन मैं पाठ के उन्मुखीकरण के साथ समस्या है। जब मैं इसे कैमरे की मूल स्थिति के साथ जोड़ता हूं, तो पाठ अभिविन्यास ठीक है, मैं पाठ को आगे की तरफ देख सकता हूं (नमूना 1)। लेकिन जब मैं बाएं/दाएं कैमरे को चालू करता हूं, और टैप करके टेक्स्ट जोड़ता हूं, तो मैं तरफ से जोड़ा गया टेक्स्ट देख सकता हूं (नमूना 2)।
नमूना 1:
नमूना 2:
मैं इसे हल करने के लिए कुछ सरल चाल होना चाहिए पता है, लेकिन इस विषय में अभी शुरुआत के रूप में मैं नहीं कर सकता इसे अभी तक ढूंढें।
टेक्स्ट ऑब्जेक्ट को रखने के दौरान आप किस प्रकार के व्यवहार की तलाश कर रहे हैं? क्या आप चाहते हैं कि पाठ हमेशा कैमरे का सामना करें जब आप घूमते हैं, या क्या आप इसे पहले रखा गया था जब अभिविन्यास पर तय रहना चाहते हैं? – dbn