我有一个带有径向光标的圆形图形,光标移动到你在iPhone屏幕上触摸的位置,但我需要光标保持相同的长度,即使触摸发生在接近原点的图表或图表外部。我不知道该怎么做。任何帮助将不胜感激
答案 0 :(得分:0)
确定您想要线条开始的位置与终点之间的角度,然后从起点开始绘制一条您喜欢的任何长度的线条,并且只根据您想要的长度行进?或者我误解了这个问题?
arctangent((y2-y1)/(x2-x1))
答案 1 :(得分:0)
我不熟悉这些方法,但如果根据角度找到合适的点,CGContextAddLineToPoint
应该使用@ eruciform的技术。
angle = arctan((y2-y1)/(x2-x1))
x = cos(角度)*长度
y = sin(角度)*长度
从(x1,y1)到(x,y)绘制线条。
或者,您可以使用这样一个事实,即您绘制的线与原点形成的线成比例,并做一些毕达哥拉斯的东西:
原始长度= sqrt((y2 - y1)^ 2 +(x2 - x1)^ 2)
比率=所需长度/原始长度
x =((x2-x1)*比率)+ x1 y =((y2-y1)* ratio)+ y1
再次,从(x1,y1)到(x,y)画线。