В функцию вместо ожидаемого int16_t передаётся float

Запросил у гугловского ИИ нарисовать стрелки в виде закрашеного ромба, состоящего из двух треугольников.
ИИ понял, согласился и на удивление нарисовал вполне приличную картину.

Но.. Как всегда, без “но” не обходится..

  1. неприятное, заметное глазом, мерцание при смене позиции. Видимо, не хватает быстродействия.
  2. противное “загибание” кончика стрелки в некоторых позициях.

Ушёл в раздумья.. Что хуже - “прозрачные ромбики”, или “закрашеные”.. :thinking:

Так алгоритмы, как я писал выше, все равно одни и те же. Так что, если отбросить убеждение отдельных новичков в том, что “на Ардуино не обязательно уметь программировать”, особой разницы нет.

Либо недостаточно тщательно продуман сам алгоритм. Имеется в виду не оптимизация скорости, а сам порядок отрисовки: если, скажем, сначала полностью стирать старое изображение и только потом начинать выводить новое, вероятность мерцания будет существенно выше, чем если операцию “стереть старое, нарисовать новое” производить по строкам растра, не говоря уже об отдельных пикселях.

Об этом тоже уже упоминали в данной теме: называется антиалиасинг или сглаживание.

Да, именно такой порядок.

Примерчиком кода поделитесь?

В том-то и дело, что только “упоминали”..
До конкретики дело не дошло, а самому “родить” не получилось..

А зачем Вам? Вы в состоянии перевести этот “примерчик” на Си/Си++ и адаптировать для Ардуино?

Самостоятельно - нет. Я предполагал, что пример будет именно для ардуино..
Сейчас пытаюсь осилить “сглаживание”, используя вот этот материал, но увы..
Понимания, как это применить, нет. А автор ни одного примера так и не привёл..

Майкл Абраш. Таинства программирования графики. Это в переводе. А это оригинал (это вам название):

Классика. Лет 25 назад у меня была бумажная.

Надеюсь вы знаете кто он, кто Кармак, и что такое id Software.

Ой-вэй! Как же я так! Это ж 4-й класс СШ! Или 5-й?? :roll_eyes:Позор на мои седины!
Вот спасибо, Великий Учитель! Завтра же исправлюсь!
Сегодня, увы.. Выпил малость водки.. Но завтра… Обязательно!

Конечно! Мужик в пинжаке! Не сидит! Кто ж его посадит!

То есть Вы предполагали, что когда-то давно в Ардуино не было 3D ускорителя, но эти времена канули в Лету? Тогда могу порекомендовать не париться с софтверным рисованием треугольника, а поручить это имеющемуся в Ардуино 3D ускорителю.