|
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
|
|
Сглаживание линии, проходящей через вершины16.06.2016, 17:38. Показов 1053. Ответов 8
Метки нет (Все метки)
В общем есть вершины, по ним должна строиться кривая, пересекая их.
Не знаю существует ли уже готовый алгоритм, который делает это, поэтому и спрашиваю. Желательно, чтоб алгоритм работал основываясь на трёх вершинах, при этом основываясь на третьей, рисовал бы линию только для первых двух. (либо осн. на первой - рисовал линию для 2-3) Например если есть точки A B C, при этом AB строится по ф. x=2*y ; а BC стр. по ф. y=2*x.
0
|
|
| 16.06.2016, 17:38 | |
|
Ответы с готовыми решениями:
8
Вычислить расстояние от вершины куба до его диагонали, не проходящей через эту вершину Определите момент инерции листа относительно оси, проходящей через две противоположные вершины квадрата Определить, можно ли через точку А3 провести прямую, перпендикулярную прямой, проходящей через точки А1 и А2 |
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
|
| 16.06.2016, 17:47 | |
|
0
|
|
|
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
|
||
| 16.06.2016, 20:35 [ТС] | ||
|
Как то всё очень размыто.. Как нибудь бы эту "интерполяцию" применить бы к алгоритму Брезенхема
Но тут такое дело, я тут посмотрел чисто визуально, даже при одной функции BC (например я взял y=2*x), зависимость кривой AB будет меняться даже от длины BC. Не знаю как это правильно выглядит, но вот в пэинте набросал, видно, что обе кривые имеют общие AB точки, но при этом при отдалении C координаты (даже по одной и той же формуле) кривая AB должна получиться более выгнутой в даль при дальней С.
0
|
||
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
|
| 16.06.2016, 21:17 | |
|
Так нужно сглаживать данные графика или картинку графика?
Вот в geogebra вроде как Лагранж проводит он не всегда адекватный, нужно чаще точки. Гляньте сплайн Акимы, b-сплайн. Билинейную интерполяцию, трилинейную для картинки. А вообще вроде как брезенхем это софтверный колхоз еще тот… Зачем занимать время процессора графикой? Его не для этого делали. Почему не использовать видеокарту которую и делали для графики у которой и рисовалка линий аппаратная и сглаживание аппаратное графики.
0
|
|
|
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
|
|||
| 16.06.2016, 21:23 [ТС] | |||
|
Всё пошло от алгоритма Безье. Я решил сделать упрощение алгоритма, взял 5 контрольных точек (2 крайние, 1 центральная -0.5 и две 1\4 и 3\4), нарисовал линии по ним по Брезенхему, в итоге получил координаты опорных точек для построения кривой, вот теперь надо по этим контрольным точкам - нарисовать саму кривую.
0
|
|||
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
|
| 16.06.2016, 21:49 | |
|
Так кривые Безье и дают координаты всех точек. Простейший способ дискретный мелкий шаг t.
По 5 точкам это нестандартная формула наверно алгоритмом кастельжо только… на вики была ссылка на него. И зачем она вам? Берите как все 4 точки и готовые формулы. Кривые Безье Берите кубическую кривую. https://ru.wikipedia.org/wiki/Кривая_Безье
0
|
|
|
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
|
|||
| 17.06.2016, 00:35 [ТС] | |||
|
Вообще я 5 точек выбрал не просто так, просто если я возьму t=100, то получится, что просадка будет если длина линий будет больше 100, получится что иногда шаг будет больше одного 1.5 пикселей, а это уже получится что один пиксель не будет закрашен. В любом случае я хочу именно так сделать, вообще мне просто самому интересно как это получится. По крайней мере заняться разбором кривой Безье по косточкам было достаточно интересно, как и с прямой Брезенхема (я правда чуть голову не сломал, пока дошло как там пол пикселя по целочисленной вычисляется, но оно стоило того). Да и занимаюсь я этим всем просто потому что мне нравятся подобные вещи, ну а по поводу разсчётов видеокарты - ну не везде же они есть. Заодно кстати понял как работает алгоритм Ву) Правда не понял почему его так усложнили, ведь у Брезенхема тоже есть десятичная, по которой можно вычислить %отклонения от центра.
0
|
|||
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
|||||
| 17.06.2016, 09:19 | |||||
|
https://rsdn.ru/article/multimedia/Bezier.xml
0
|
|||||
|
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
|
|||||||
| 17.06.2016, 10:36 [ТС] | |||||||
|
P0Q0/P0P1 = P1Q1/P1P2 = Q0B/Q0Q1 А в ссылке на рсдн'е мусор какой то.
[удалено]
0
|
|||||||
| 17.06.2016, 10:36 | |
|
Помогаю со студенческими работами здесь
9
В прямоугольной системе координат напишите уравнение сферы, проходящей через точку и через окружность Установить какую линию определяет уравнение, найти фокусы, вершины, оси линии, нарисовать
Пересечения прямой, проходящей через 2 точки
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. .
Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
|
Контроль уникальности заводского номера - вариант №2
Maks 24.03.2026
В отличие от предыдущего варианта добавлено прерывание циклов, также добавлены новые переменные для сохранения контекста ошибки перед прерыванием цикла:
Процедура ПередЗаписью(Отказ, РежимЗаписи,. . .
|
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-text-sdl3-c. zip
finish-text-sdl3-cpp. zip
|
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
|
|
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo
Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло.
Но на выплатах по больничным это. . .
|
Контроль уникальности заводского номера - вариант №1
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью. Данные берутся из регистра сведений, по которому настроено. . .
|
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y
Z4Tv2zpXVVo
https:/ / github. com/ shumilovas/ med2. git
|
Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа.
В качестве фильтра для отбора справочника служит группа номенклатуры.
Отбор по наименованию группы. . .
|