Я новичок в iOS, я пытаюсь разработать приложение рисования рисования, используя uibezierPath
. Есть ли способ вычислить или получить общую длину строки, даже если я нарисовал прямую линию , изогнутый или круг. Я использую addline для метода touchmove, и у меня нет контрольных точек.ios обнаружение угла линии или степени
2
A
ответ
8
Внутри вашего метода touchesBegan
, вы можете использовать этот код
{
UITouch * touch = [touches anyObject];
CGPoint present = [touch locationInView:self];
CGPoint previous = [touch previousLocationInView:self];
CGFloat angle = [self getAngle:present :previous];
}
- (float) getAngle:(CGPoint)a :(CGPoint)b
{
int x = a.x;
int y = a.y;
float dx = b.x - x;
float dy = b.y - y;
CGFloat radians = atan2(-dx,dy); // in radians
CGFloat degrees = radians * 180/3.14; // in degrees
return angle;
}
Вы можете вызвать этот метод в любом методе, чтобы найти угол между двумя CGPoints
в UIView
.
Надеется, что это помогло :-)
0
Независимо от того, является ли изогнутой или прямой линия, вы можете найти расстояние между любыми двумя точками. (Я не знаю, как получить длину строки). Если линия прямая, расстояние между двумя точками должно быть равно расстоянию между линиями.
Попробуйте этот код,
- (double)getDistance:(CGPoint)one :(CGPoint)two
{
return sqrt((two.x - one.x)*(two.x - one.x) + (two.y - one.y)*(two.y - one.y));
}
Это общий метод, многие из них знакомы с, (квадратный корень) [(x2-x1) (х2-х1) + (у2-y1) (y2-y1)].
Надеется, что это помогает :-)
Смежные вопросы
- 1. Python/Psychopy: вычисление 1 степени визуального угла
- 2. Обнаружение угла объекта на картинке
- 3. Вычисление угла по отношению к опорной линии
- 4. Обнаружение конечных точек линии
- 5. Рисование линии из-под угла в Java
- 6. Обнаружение линии OpenCV
- 7. Расчет линии с использованием известной линии, точки пересечения и угла
- 8. Как выполнить стабильное обнаружение угла глаз?
- 9. Обнаружение изменения угла в методах жизненного цикла
- 10. Обнаружение линии в эскизах
- 11. Обнаружение линии на CUDA
- 12. Обнаружение линии преобразования радона
- 13. Обнаружение толстой горизонтальной линии
- 14. core-plot - обнаружение касания на линии между точками CPTScatterPlot (iOS)?
- 15. Обнаружение и извлечение линии OpenCV с использованием ios
- 16. Обнаружение угла OpenCV, возвращающее нулевые углы vector
- 17. обнаружение угла, используя Chris Harris & Mike Stephens
- 18. В какой степени Dynamic lib можно декодировать или декомпрессировать? - ios
- 19. Обнаружение сегментов линии на изображении
- 20. обнаружение прямой линии с изображения
- 21. Обнаружение линии с помощью HoughLinesP
- 22. Обнаружение входящих iMessages или текстовых сообщений - iOS
- 23. Обнаружение вертикального или горизонтального положения iOS
- 24. iOS: обнаружение регулярных или компактных в многозадачности
- 25. iOS: обнаружение неактивности или периодически запуск приложения
- 26. Обнаружение лазерной линии с использованием OpenCV
- 27. Обнаружение формы линии конечные точки
- 28. Обнаружение цикла, заданного отрезками линии
- 29. Обнаружение касания по изогнутой линии?
- 30. Черные линии вокруг значка IOS
Спасибо, теперь, если я рисую линию с помощью touchesbegan и touchesmove Как я могу получить длину линии между этими двумя точками? – Am2710
Я добавляю еще один ответ, чтобы четко указать код. –
Да, это дает мне прямую линию между точками, и если ее круг, то две точки заканчиваются в одном и том же месте, как я могу получить длину линии, если ее кривая одна, прямоугольник или круг? – Am2710