![]() |
|
Модераторы: Poseidon |
![]()
|
|
| BOB4uK |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 28.2.2004 Репутация: нет Всего: нет |
Есть две прямые, которые пересекаются в одной точке, нужно построить между этими прямыми дугу! Как это сделать я не знаю!
Примеры дуг на рисунках... Должно получиться что то похожее как в кореле, Кривая безье... или кривая через три точки... Для прямых пересекающихся под углом 90 градусов я нашел решение, а вот для других случаев не могу! Под углом 90 градусов: int qcount=cpoint-1;//cpoint-кол -во точек в дуге... for (i = 0; i<cpoint;i++) { t= i * 0.5 * 3.14 /qcount; x = l1*cos(t); y = l2*sin(t); parray->Append(x,y); } //потом переносим в центр координат(кот находим) и поворачиваем относительно прямых... |
|||
|
||||
| 2p0i |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 45 Регистрация: 14.9.2007 Репутация: нет Всего: 1 |
Для прямых, которые пересекаются не под прямым углом, можно сначала применить преобразование координат, которое сделает угол прямым, затем найдет координаты точек, и затем выполнить обратное преобразование координат.
|
|||
|
||||
| BOB4uK |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 28.2.2004 Репутация: нет Всего: нет |
А это мысль! Вот только как это сделать? Подтолкните на мысль!
|
|||
|
||||
![]()
|
| Правила форума "Центр помощи" | |
|
|
ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Более подробно с правилами данного раздела Вы можете ознакомится в этой теме. Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Центр помощи | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |