Пятница, 26 Апреля 2024, 22:33

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Программирование » Общие обсуждения программистов » Кривые Безье по двум точкам?
Кривые Безье по двум точкам?
Gargolev43Дата: Понедельник, 26 Августа 2013, 18:57 | Сообщение # 1
частый гость
Сейчас нет на сайте
продолжаю парсить svg. Столкнулся с багом в библиотеке - неправильно рисует данные кривые:
http://www.w3.org/TR/SVG/paths.html#PathDataCubicBezierCommands
Здесь пункт "S s", но на английском не могу понять суть. Помогите
GECKДата: Понедельник, 26 Августа 2013, 19:32 | Сообщение # 2
заслуженный участник
Сейчас нет на сайте
Ну вроде как-то так:

Команда "S s" рисует кривую Безье из текущей точки (cx, cy) до точки (x, y) с опорными точками (x1, y1) и (x2, y2). (x2, y2) задается явно, а (x1, y1) является отражением второй контрольной точки (x`2, y`2) предыдущего сегмента кривой относительно текущей точки (cx, cy). Это нужно для гладкости кривой, ну и параметров требуется меньше.


Всё гениальное просто. И хреново работает.
shubniggurathДата: Понедельник, 26 Августа 2013, 19:57 | Сообщение # 3
www.playnoread.com
Сейчас нет на сайте
Кривые Безье по двум точкам? невозможно - надо три

Учу 3д!
GECKДата: Понедельник, 26 Августа 2013, 20:05 | Сообщение # 4
заслуженный участник
Сейчас нет на сайте
Цитата (shubniggurath)
Кривые Безье по двум точкам?

Там используются точки из предыдущих шагов.
Цитата (shubniggurath)
невозможно - надо три

ORLY? Линейные кривые Безье


Всё гениальное просто. И хреново работает.
Gargolev43Дата: Понедельник, 09 Сентября 2013, 17:24 | Сообщение # 5
частый гость
Сейчас нет на сайте
GECK, спасибо. походу мне остается придумать, как заменить вызовы кривой по двум точкам на вызовы кривой по трем точкам.

Добавлено (09.09.2013, 17:24)
---------------------------------------------
не понимал по ссылке, которую привел, потому что думал, что начало координат в левом нижнем углу, а не левом верхнем

al_mtДата: Понедельник, 09 Сентября 2013, 18:02 | Сообщение # 6
постоянный участник
Сейчас нет на сайте
Вероятнее всего, там задано константой, что-то типа "степени сглаживания".
Иными словами, третью точку можно получить, как среднее арифметическое нескольких предыдущих, с коэффициентами.
Gargolev43Дата: Вторник, 10 Сентября 2013, 10:49 | Сообщение # 7
частый гость
Сейчас нет на сайте
ну дык так оно и есть - недостающая точка получается отражением одной предыдущей точки относительно другой предыдущей
Форум игроделов » Программирование » Общие обсуждения программистов » Кривые Безье по двум точкам?
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг