5
मैं स्प्राइट किट के साथ चित्रण कर रहा हूं। मैं यह जानना चाहता हूं कि उपयोगकर्ता के चित्र छेड़छाड़ कर रहे हैं।
स्विफ्ट: स्प्राइट किट SKSapeNode चित्रों से छेड़छाड़ का पता लगाने
मैंने कोड का पालन करने की कोशिश की लेकिन यह काम नहीं करता है। ऐसा लगता है कि स्प्राइट किट सभी बिंदुओं को सहेज नहीं रहा है:
override func touchesMoved(touches: NSSet, withEvent event: UIEvent) {
/* Called when a touch begins */
touch = touches.anyObject() as UITouch!
for drawingPoint in drawingPoints{
if(touch.locationInNode(self) == drawingPoint){println(true)}
}
drawingPoints.append(touch.locationInNode(self))
}
मैं स्प्राइटकिट से बहुत परिचित नहीं हूं, लेकिन मुझे लगता है कि लाल पथ प्रत्येक टच पॉइंट को लाइन सेगमेंट या बेजियर वक्र का उपयोग करके अगले के साथ जोड़ता है। उस स्थिति में आपको संभावित चौराहे के लिए सभी सेगमेंट देखना होगा। [यहां] (http://stackoverflow.com/questions/13999249/uibezierpath-intersect) उद्देश्य-सी में एक समान समस्या है, शायद यह आपको प्रारंभ करने में मदद करता है। –
धन्यवाद मैं एक नज़र डालेगा! – user3673836
यहां एक अधिक परिष्कृत एल्गोरिदम का वर्णन किया गया है: http://softsurfer.com/Archive/algorithm_0108/algorithm_0108.htm। –