|
2D-программирование Вопросы, касающиеся двумерного программирования |
22.02.2010, 21:55
|
#1
|
Бывалый
Регистрация: 25.12.2007
Адрес: г. Краснодар
Сообщений: 894
Написано 421 полезных сообщений (для 1,079 пользователей)
|
вопрос по нарезке картинки
Ребята, подскажите, как нарезать картинку на полоски заданной ширины, а затем раздвинуть их на такую же ширину?
Очень нужно
|
(Offline)
|
|
22.02.2010, 22:13
|
#2
|
Ференька
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений (для 15,675 пользователей)
|
Ответ: вопрос по нарезке картинки
CopyRect не помогает?
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**
* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
22.02.2010, 22:20
|
#3
|
Бывалый
Регистрация: 25.12.2007
Адрес: г. Краснодар
Сообщений: 894
Написано 421 полезных сообщений (для 1,079 пользователей)
|
Ответ: вопрос по нарезке картинки
попробую
|
(Offline)
|
|
22.02.2010, 22:35
|
#4
|
Бывалый
Регистрация: 25.12.2007
Адрес: г. Краснодар
Сообщений: 894
Написано 421 полезных сообщений (для 1,079 пользователей)
|
Ответ: вопрос по нарезке картинки
ковырял, но похоже суть функции CopyRect ускользает от меня
|
(Offline)
|
|
22.02.2010, 22:41
|
#5
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: вопрос по нарезке картинки
Набросай в шопе, и покажи, как это должно быть...
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
22.02.2010, 22:55
|
#6
|
Бывалый
Регистрация: 25.12.2007
Адрес: г. Краснодар
Сообщений: 894
Написано 421 полезных сообщений (для 1,079 пользователей)
|
Ответ: вопрос по нарезке картинки
вот так нужно чтобы резало:
|
(Offline)
|
|
22.02.2010, 23:24
|
#7
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: вопрос по нарезке картинки
Быстрый - биллбоарды, с разными текстурными координатами. Тут можно и в реалтайме сделать, будут менять.
Медленный но точный - работа с чтением/записью пикселей.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
22.02.2010, 23:27
|
#8
|
Бывалый
Регистрация: 25.12.2007
Адрес: г. Краснодар
Сообщений: 894
Написано 421 полезных сообщений (для 1,079 пользователей)
|
Ответ: вопрос по нарезке картинки
Вот вот второй самое оно, но как
|
(Offline)
|
|
23.02.2010, 01:14
|
#9
|
Blitz's Shame !!
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений (для 2,013 пользователей)
|
Ответ: вопрос по нарезке картинки
Артем Валерьевич, сорри, я чет непойму... У тебя картинка-результат сплющенная по горизонтали относительно исходной должна быть или как ?? (или эт ее мобильный браузер исказил 0_о )
Если ненада нмчего плющить то:
Решаеш на скок частей будеш резать (переменная Р) !!
Потом читаешь пиксели по горизонтали все а по вертикали Р !!
Пишеш их в другую картинку !!
И так Р раз !!
Еще оффсеты (пустые или черные пиксели между) этими полосками !!
А если нада плющить то я хз-че... Немного положнее задача !!
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
23.02.2010, 06:33
|
#10
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: вопрос по нарезке картинки
Это весьма простая логическая задачка, делается не изощрёнными циклами..
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
23.02.2010, 13:03
|
#11
|
Бывалый
Регистрация: 25.12.2007
Адрес: г. Краснодар
Сообщений: 894
Написано 421 полезных сообщений (для 1,079 пользователей)
|
Ответ: вопрос по нарезке картинки
Вот как я написал, но чет запутался, гружу картинку, создаю дополнительную текстуру, в которую рисую, считываю картинку поблочно, добавляю черные прямоугольники, и сохраняю готовую,
(Спасибо H@non) , только вот нефурычит чегото, запутался я и прошу помощи:
; CopyRect Example
; Turn on graphics mode
Graphics 1024,768,16
;SetBuffer FrontBuffer()
; create a blank image
image2=LoadImage ("IMG_2743.jpg")
image=CreateImage (ImageWidth(image2),ImageHeight(image2),1)
Dim pix(ImageWidth(image2),ImageHeight(image2))
SetBuffer ImageBuffer(image2)
LockBuffer ImageBuffer(image2)
y2 = 0
For y = 0 To ImageHeight(image2)
;копируем строки пикселей
If y Mod 2 = 0 Then
Rect 0, y2,ImageWidth(image2), 4
y2 = y2 + 4
EndIf
y2 = y2 + 1
Next
For y=0 To ImageHeight(image2)
For x=0 To ImageWidth(image2)
pix(x,y)=ReadPixel(x,y)
Next
Next
; Wait a couple of seconds so the user can see it
;Delay 2000
If KeyHit(2) Then
For y=0 To ImageHeight(image)
For x=0 To ImageWidth(image)
;pix(x,y)=ReadPixel(x,y)
WritePixel x,y,pix(ImageWidth(image2),ImageHeight(image2)-y)
Next
Next
ok=SaveImage (pix(ImageWidth(image2),ImageHeight(image2)),"rezan.bmp")
End If
Cls
;DrawImage gfxBlank,0,0
WaitKey
|
(Offline)
|
|
23.02.2010, 15:42
|
#12
|
Дэвелопер
Регистрация: 17.01.2007
Сообщений: 1,552
Написано 351 полезных сообщений (для 774 пользователей)
|
Ответ: вопрос по нарезке картинки
вот держи
Graphics 800, 600, 32, 2
Local img_source = CreateImage(256,256)
SetBuffer ImageBuffer(img_source)
Color 255,255,0
Oval 4, 4, 248, 248, 1
Color 255,0,0
Oval 50, 80, 30, 30, 1
Oval 176, 80, 30, 30, 1
Rect 50, 180, 156, 20, 1
Local img = DeformImage(img_source)
DrawImage img, 0, 0
DrawImage img_source, 400, 0
WaitKey()
End
Function DeformImage(source, height=40, count=7)
Local x, y, y2
Local pix
Local w = ImageWidth(source)
Local h = ImageHeight(source)
Local img_deform = CreateImage(w, h+height*count)
Local buff = ImageBuffer(img_deform)
Local buff_source = ImageBuffer(source)
Local Aspect = h / count
SetBuffer buff
LockBuffer(buff)
LockBuffer(buff_source)
For y = 0 To h
If (y Mod Aspect) = 0 Then
Color 0, 0, 0
Rect 0, y2, w, height
y2 = y2 + height
EndIf
For x = 0 To w
pix = ReadPixel(x, y, buff_source)
WritePixel x, y2, pix
Next
y2 = y2 + 1
Next
UnlockBuffer(buff)
UnlockBuffer(buff_source)
SetBuffer FrontBuffer()
Return img_deform
End Function
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
23.02.2010, 17:08
|
#13
|
Бывалый
Регистрация: 25.12.2007
Адрес: г. Краснодар
Сообщений: 894
Написано 421 полезных сообщений (для 1,079 пользователей)
|
Ответ: вопрос по нарезке картинки
H@NON спасибо, H@NON спасибо, ура виват
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
23.02.2010, 17:22
|
#14
|
Бывалый
Регистрация: 25.12.2007
Адрес: г. Краснодар
Сообщений: 894
Написано 421 полезных сообщений (для 1,079 пользователей)
|
Ответ: вопрос по нарезке картинки
Да здравствует стереофотография, H@non, я в долгу перед тобой
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 01:04.
|