1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
| Bokul |
22.08.2006 5:46
Сообщение
#1
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 117 Пол: Мужской Реальное имя: Богдан Репутация: 11 |
Подскажите, пожалуйста, алгоритм масштабирования рисунков. Рисунок представляет собой двумерный массив, каждый елемент которого определяет цвет соответствующего пикселя на рисунке.
Сообщение отредактировано: Bokul - 22.08.2006 5:46 -------------------- Лао-Цзы :
Знать много и не выставлять себя знающим есть нравственная высота. Знать мало и выставлять себя знающим есть болезнь. Только понимая эту болезнь, мы можем избавиться от нее. |
![]() ![]() |
| Archon |
23.08.2006 15:33
Сообщение
#2
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 618 Пол: Мужской Репутация: 24 |
Вот, что я нашёл в обучалках асфиксии. На аглицком наречии, но всё же довольно неплохо написано.
Цитата For the horizontal area, I am going to calculate a certain step value. I will then trace along the bitmap, adding this step to my position, and placing the nearest pixel on to the screen. Let me explain this simpler ... Let us say I have a 10 pixel wide bitmap. I want to squish it into 5 pixels. Along the bitmap, I would draw every second pixel to screen. In ascii : 1234567890 13579 +--------+ +---+ | | | | | bitmap | | |dest | | | | +--------+ +---+ As you can see, by stepping through every second pixel, I have shrunk the bitmap to a width of 5 pixels. The equation is as follows : step = origionalwidth / wantedwidth; Let us say we have a 100 pixel wide bitmap, which we want to get to 20 pixels. step = 100 / 20 step = 5 If we draw every fifth pixel from the origional bitmap, we have scaled it down correctly! This also works for all values, if step is of type real. We also find the step for the height in the same way. Our horizontal loop is as follows : For loop1:=1 to wantedwidth do BEGIN putpixel (loop1,height,bitmap[round (curpos)],vga); curpos:=curpos+xstep; END; And the vertical loop is much the same. Easy huh? -------------------- Close the World...txeN eht nepO
|
Bokul Масштабирования растровых рисунков 22.08.2006 5:46
Bokul С увеличениям в целое количество раз я вроде разоб... 22.08.2006 7:46
Бродяжник Копайте в сторону билинейной фильтрации. Кое-что м... 22.08.2006 8:22
volvo var
zoomx, zoomy: real;
procedure pzoom;
var i,... 22.08.2006 8:25
klem4 Если конечно не обязательно работать с матрицой пи... 22.08.2006 16:52
volvo klem4,
а не работает :) Это во-первых.
Объясни мн... 22.08.2006 17:18
klem4
У тебя одно и тоже выводится ? 22.08.2006 17:23
volvo Конечно... А ничего другого я и не ждал... Смотри:... 22.08.2006 17:35
klem4 :blink: :!fie:
И правда, соотношение то не ... 22.08.2006 17:55
Bokul
А поподробнее можна? :rolleyes:
volvo, спасибо, ... 23.08.2006 4:01
klem4
По идее так и должно быть, не знаю почему у меня... 23.08.2006 12:33
Бродяжник Bokul
Чтобы это объяснить поподробнее, мне надо са... 23.08.2006 14:35
klem4 Вот, реализовал свою идею :) Грубовато конечно, до... 24.08.2006 22:37
volvo :blink: Я вот никак не могу понять, чего она так п... 24.08.2006 23:16
klem4 Думаю по тому, что картинка отображается попиксель... 24.08.2006 23:18
volvo Ха... Да, ты прав... Это именно отрисовка тормозит... 24.08.2006 23:37
Bokul klem4, не мог бы ты выложить файл с твоим кодом, а... 24.08.2006 23:51
volvo Кстати, вот так будет ГОРАЗДО быстрее (PutPixel - ... 25.08.2006 0:05
klem4 Bokul, держи 25.08.2006 9:15
Bokul klem4, и с этим кодом у меня проблемы... :mega_cho... 25.08.2006 18:32
volvo В FPC 2.0.0 прекрасно отрабатывает...
(только я за... 25.08.2006 19:03
klem4 ммм Переключи клаву в режим латинских букв (кода к... 25.08.2006 19:48
Bokul
Не то, ни другое не подошло. Наверное у моего Fr... 25.08.2006 23:46
Bokul array of array
SetLength
Я так понял что это о... 26.08.2006 0:05
volvo У тебя полный дистрибутив? Тогда в файле /DOC/REF.... 26.08.2006 0:30
Bokul Спасибо :good: , почитаем. 26.08.2006 0:36![]() ![]() |
|
Текстовая версия | 9.12.2025 5:54 |