| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Центр помощи > [C++ Builder]Не пересекающиеся окружности |
| Автор: BOB4uK 10.2.2010, 19:17 |
| Всем привет! Есть две точки (заданы координатами X и Y), и есть два радиуса (для каждой точки), я нахожу точки пересечения двух окружностей обусловленных этими точками и радиусами (два центра и два радиуса). Вот только бывают ситуации когда эти две окружности не пересекаются, а виной всему небольшая разница в радиусах 1-3мм, в моем случае это не критично и рисуя на листочке (циркулем) я могу поставить усредненную точку пересечения в минимальном разрыве этих окружностей (где дельта разрыва не превышает 3мм)! ВОПРОС: Как мне программно выполнить такую проверку и найти точку в которой минимальный разрыв? Вот визуальный пример: <a href='http://www.4picture.ru/look-image.php?id=a5e449b4058bdc6dfe254793977383cd'> <img src='http://www.4picture.ru/thumbnails/fdaa02eb1439120693b7ceed253aaef7.bmp' alt='Image Hosting' border='0'> </a> |
| Автор: A5uKa 11.2.2010, 00:03 |
| элементарно проверяй расстояние между цетрами и суммой радиусов и там где она от 0 до трёх мм там и твоя точка, Конкретнее - посередине между границ радиусов и на линии соединяющей точки. Логика кончилась |
| Автор: BOB4uK 16.2.2010, 18:15 |
| Супер так и сделал работает на ура! Спасибо! |