IPB
ЛогинПароль:

> ПРАВИЛА РАЗДЕЛА!!!

1. Заголовок или название темы должно быть информативным
2. Все тексты программ должны помещаться в теги [CODE=asm] [/CODE]
3. Прежде чем задавать вопрос, см. "FAQ",если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно, такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Ассемблера. Исключение только с согласия модератора.
5. НЕ используйте форум для личного общения! Все, что не относиться к обсуждению темы - на PM!
6. Проверяйте программы перед тем, как выложить их на форум!!

> Работа с "графикой"
сообщение
Сообщение #1


Бывалый
***

Группа: Пользователи
Сообщений: 212
Пол: Мужской

Репутация: -  0  +


Поставлена вот такая задача:
Нарисовать 8 разноцветных полос (не линий) во весь экран, режим например использовать 640х350 параллельных главной диагонали.

Пример результата в прикрепленной картинке

Сообщение отредактировано: Account -


Эскизы прикрепленных изображений
Прикрепленное изображение
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гуру
*****

Группа: Пользователи
Сообщений: 1 013
Пол: Мужской
Ада: Разработчик
Embarcadero Delphi: Сторонник
Free Pascal: Разработчик

Репутация: -  627  +


Значит, по поводу артефактов...

Большую часть убрал, со ступенчатостью, извини, сделать ничего не могу, это все-таки не горизонтальные/вертикальные, а диагональные линии, причем соотношение сторон в этом граф. режиме тоже не самое благоприятное.

Касаемо черных точек, проскакивающих в некоторых местах - еще раз проверил всю работу с битами в начальном/конечном неполных байтах (уверен, проблема - именно там, какой-нибудь бит маски неправильно выставляется, или что-то в этом роде, отсюда и "битый пиксель", опять же - заметил, что появляются эти черные только на стыках разных цветов, а не в середине?). Пока ничего некорректного в коде найти не могу, потом еще покопаюсь.

Что касается правого нижнего угла - это вообще для меня загадка, я уже ограничил входные данные в процедуре ScanLine, теперь физически линия не может заходить на предыдущую/последующую строки (а очень похоже на то, что где-то все-таки происходит выход за пределы 0 .. 639 и пиксель уходит на соседнюю строку). Прогнал несколько раз в отладчике - не вижу, где проблема (то есть, время возникновения - как раз увидел, эта фигня проявляется, когда рисуется нижняя часть малиновых штановой полосы, но опять же, как с этим бороться - пока без понятия). Найду - напишу. Может, еще кто посмотрит и найдет что не так...

Сообщение отредактировано: IUnknown -


Прикрепленные файлы
Прикрепленный файл  lines9v.zip ( 4.18 килобайт ) Кол-во скачиваний: 486
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 2.05.2024 13:47
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name