Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2008.02.17;
Скачать: [xml.tar.bz2];

Вниз

Растеризация   Найти похожие ветки 

 
Dib@zol ©   (2008-01-18 19:11) [0]

Ещё раз здравствуйте.

Сижу готовлюсь к областной по информатике. Видно слишком долго готовлюсь - тупить начал страшно :( Разбираю пример (ответов к сожалению нет):

Пол зала должен быть выложен квадратными плитками одинакового размера. Плитки двух цветов (черного и белого) и выкладываются так, чтобы образовался  треугольник (с вершинами в углах-стыках плиток). Наибольшая трудность состоит в изготовлении плиток, часть которых должна быть чёрного, а часть белого цвета. Вам требуется подсчитать количество таких плиток (иначе говоря, определить, по скольким плиткам пройдут стороны треугольника).

Я так подумал-подумал и ничего лучше, чем каждую плитку представлять в виде уравнений её диагоналей, а затем искать их пересечение со стороной треугольника, не придумал.
Тык вот, внимание вопрос: как можно проще узнать сколько клеток "задевает" сторона треугольника? Ведь можно, знаю же. Только саму идею забыл :((


 
Черный Шаман   (2008-01-18 19:55) [1]


> Dib@zol ©   (18.01.08 19:11)


1. Нарисуй на Bitmap, через сканлайн-ы вытащи пикселы в матрицу. Посчитай. Если использовать graphics32 с AA то совсем просто, посчитать пискелы которые не черные и не белые.

Это если нужно бысро с паруй строчек и стандартными библиотеками, иначе

1. Рисуем три линии(алгоритм рисования линии) в матрице пикселов с учетом АА и далее просто подсчет пикселов которые не 255 и не 0.


 
Lip   (2008-01-18 20:15) [2]


> Черный Шаман  


А че на олимпиадах уже рисовать можно?


 
@!!ex ©   (2008-01-18 20:25) [3]

> [2] Lip   (18.01.08 20:15)

Всю жизнь можно было.


 
DVM ©   (2008-01-18 21:21) [4]


> Dib@zol ©

Когда делается антиалиазинг, то степень прозрачности краевого пиксела (плитки) всегда равна площади трапеции (<1) образованной идеальной линией и сеткой из пикселов (плиток).


 
DVM ©   (2008-01-18 21:21) [5]

и ничего тут рисовать не надо, надо просто въехать в алгоритм антиалиазинга



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2008.02.17;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.046 c
3-1191419305
312kbps
2007-10-03 17:48
2008.02.17
Создание dbf , не првильный формат.


9-1165706828
школьник :-)
2006-12-10 02:27
2008.02.17
bejeweled


2-1200991020
MNNN
2008-01-22 11:37
2008.02.17
Скопировать с языком


2-1201309790
Artem
2008-01-26 04:09
2008.02.17
Скрыть папку


15-1200041562
ZoldBerger
2008-01-11 11:52
2008.02.17
Написал программу DelphiDecompiler





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский