У меня есть все пункты, чтобы нарисовать линию и показать, что точки на холсте правильно. Но теперь я хочу нарисовать еще одну строку на этой существующей строке при касании пользователем. И мой вопрос заключается в том, как можно найти пользователя, касающегося внутренней линии или вне линии?Как установить регион, если точки есть и найти определенную область?
1
A
ответ
1
У меня есть предложение.
Это мысль, основанная на Google Maps и Polylines, но, возможно, ее легко адаптировать к ситуации с Canvas 2DLine.
Этот метод используется для вычисления расстояния между двумя LatLng точками:
/** distance in meters **/
private float distFrom(double lat1, double lng1, double lat2, double lng2) {
double earthRadius = 3958.75;
double dLat = Math.toRadians(lat2 - lat1);
double dLng = Math.toRadians(lng2 - lng1);
double a = Math.sin(dLat/2) * Math.sin(dLat/2)
+ Math.cos(Math.toRadians(lat1))
* Math.cos(Math.toRadians(lat2)) * Math.sin(dLng/2)
* Math.sin(dLng/2);
double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
double dist = earthRadius * c;
int meterConversion = 1609;
return (float) (dist * meterConversion);
}
Когда пользователь нажимает на холст (для простоты только представьте, она имеет только одну строку):
- lineLength = Вычисление расстояний между точками (полная длина линии)
- endToClickLength1 = Рассчитать расстояние от положения клика до конечной точки 1 линии
- endToClickLength2 = Вычислить расстояние от положения мыши до конечной точки 2 линии
Теперь, если endToClickLength1 + endToClickLength2 = lineLength (+/- acceptedError), то пользователь нажал линию.
ПринимаемыйError необходим для расширения границы, когда несколько нажатий на линии.
Сделайте это для всех рисованных линий, чтобы указать, была ли нажата одна из линий.
Смежные вопросы
- 1. Как установить регион интереса?
- 2. Регион Geochart область Америка
- 3. Найти, где биссектриса интересует определенную область изображения
- 4. Тень и вычислить определенную область
- 5. C# Установить прозрачность в область, определенную полигоном
- 6. как я могу установить определенную область сайта в моем iframe
- 7. Google Geochart - невозможно установить регион в определенную провинцию
- 8. Как найти город или регион?
- 9. Как установить регион для MKMapView?
- 10. Повторить определенную область/блок/div в symfony
- 11. Увеличьте определенную область Scrollview
- 12. Double, если условие Spry Регион
- 13. Перетаскивание в определенную область
- 14. iphone-Mapkit: предупреждение, если пользователь входит в определенный регион
- 15. Хотите Eclipse, использовать определенную config.ini, но установить другую область конфигурации
- 16. Карты Google Выделите определенную область
- 17. Как найти центральный угол, если известна область малого сегмента
- 18. Не могу загрузить Регион/Область - Филиал Реестр
- 19. Rails 4. Страна и Регион/Область проверки в модели
- 20. Найти перекрывающийся регион между 3-мерными фигурами
- 21. Как найти регион с максимальным количеством 1 в C?
- 22. Как установить регион для скрипта? Sikuli
- 23. Как добавить текст в определенную область?
- 24. Найти определенную строку, если параметр существует
- 25. Как найти сферические точки Меркатора
- 26. Как ограничить следующий указатель на определенную область
- 27. ASP.Net - MVC 5 - отключить пользователя, если пользователь покинул определенную область
- 28. Найти область 3D-полигона
- 29. Найти, если область содержит определенный вектор3
- 30. Найти регион из экземпляра EC2