Просмотр полной версии : Рисование ориентированного мультиграфа
Deimos747
18.06.2012, 23:37
Здравствуйте! Кто-нибудь сталкивался с рисованием графов? Если есть опыт, подскажите пожалуйста.
А то я точки расставил, стрелки тоже, а как выяснилось, что дуг может быть не одна, а две, так ничего путного и не получается, каша какая-то:(
Simplifier
19.06.2012, 01:20
Эм.. А почему получается каша?
Deimos747
19.06.2012, 01:43
Потому что не получается правильно расставить точки для кривых Безье и выбрать угол направляющих стрелок.
О какой "правильности" может идти речь там, где информация просто отсутствует?
Добавлено через 12 минут
И откуда данные, что через две точки можно провести только две дуги?))) Луковицу разрежьте. Это только малая часть бесконечности.
Сформулируйте задачу по-честному. Типа "хочу чтобы гладко везде".
Потому что математически такая формулировка бессмысленна, а график априори ложный во всех точках, кроме заданных ключевых.
Simplifier
19.06.2012, 03:21
Если как на википедии чертежи надо сделать, то по идее, все должно нормально получиться, если просто выгибать дуги по одну сторону от направления ориентирования. Например, по левую:
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);
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.