2013-09-24 138 views
0

我想沿正切路徑拖動UIView,但無法找到行(CGPath)上的結果點。我試着保持'x'不變並將偏移量加到'y'上,但這也給我奇怪的行爲。沿傾斜/切線路徑拖動uiview

任何人都可以幫助我,因爲我堅持這一點。

+1

顯示一些代碼可能是? – Vladimir

回答

0

通過使用畢達哥拉斯定理,您可以很容易地計算'y'的偏移量,因爲您可以從切線製作直角三角形。 計算如下,

CGPoint panPoint = [gesture locationInView:self.superview]; 
CGPoint center = self.center; 
pantPoint.x = triangleStartPointFromTop.x; 
CGFloat per = fabsf(panPoint.y - triangleStartPointFromTop.y); 

CGFloat base = fabsf(per * tanf(triangle.theta)); 
panPoint.x += base; 
center = panPoint;