![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Mar 2011
Сообщений: 243
|
Здравствуйте! Кто-нибудь сталкивался с рисованием графов? Если есть опыт, подскажите пожалуйста.
А то я точки расставил, стрелки тоже, а как выяснилось, что дуг может быть не одна, а две, так ничего путного и не получается, каша какая-то ![]() |
|
|||||
|
Регистрация: Jun 2011
Сообщений: 60
|
Эм.. А почему получается каша?
|
|
|||||
|
Регистрация: Mar 2011
Сообщений: 243
|
Потому что не получается правильно расставить точки для кривых Безье и выбрать угол направляющих стрелок.
|
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
О какой "правильности" может идти речь там, где информация просто отсутствует?
Добавлено через 12 минут И откуда данные, что через две точки можно провести только две дуги?))) Луковицу разрежьте. Это только малая часть бесконечности. Сформулируйте задачу по-честному. Типа "хочу чтобы гладко везде". Потому что математически такая формулировка бессмысленна, а график априори ложный во всех точках, кроме заданных ключевых.
__________________
Reality.getBounds(this); |
|
|||||
|
Регистрация: Jun 2011
Сообщений: 60
|
Если как на википедии чертежи надо сделать, то по идее, все должно нормально получиться, если просто выгибать дуги по одну сторону от направления ориентирования. Например, по левую:
var length:Number = Math.sqrt((startPnt.x - endPnt.x) * (startPnt.x - endPnt.x) + (startPnt.y - endPnt.y) * (startPnt.y - endPnt.y)); graphics.curveTo((startPnt.x + endPnt.x) / 2 + (endPnt.y - startPnt.y) / length * n, (startPnt.y + endPnt.y) / 2 - (endPnt.x - startPnt.x) / length * n, endPnt.x, endPnt.y); |
![]() |
![]() |
Часовой пояс GMT +4, время: 23:05. |
|
|
« Предыдущая тема | Следующая тема » |
|
|