Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D > 2D-программирование

2D-программирование Вопросы, касающиеся двумерного программирования

Ответ
 
Опции темы
Старый 22.02.2010, 21:55   #1
Артем Валерьевич
Бывалый
 
Аватар для Артем Валерьевич
 
Регистрация: 25.12.2007
Адрес: г. Краснодар
Сообщений: 894
Написано 421 полезных сообщений
(для 1,079 пользователей)
вопрос по нарезке картинки

Ребята, подскажите, как нарезать картинку на полоски заданной ширины, а затем раздвинуть их на такую же ширину?

Очень нужно
(Offline)
 
Ответить с цитированием
Старый 22.02.2010, 22:13   #2
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 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
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: вопрос по нарезке картинки

Набросай в шопе, и покажи, как это должно быть...
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Старый 22.02.2010, 22:55   #6
Артем Валерьевич
Бывалый
 
Аватар для Артем Валерьевич
 
Регистрация: 25.12.2007
Адрес: г. Краснодар
Сообщений: 894
Написано 421 полезных сообщений
(для 1,079 пользователей)
Ответ: вопрос по нарезке картинки

вот так нужно чтобы резало:
Миниатюры
Нажмите на изображение для увеличения
Название: 1.jpg
Просмотров: 784
Размер:	5.9 Кб
ID:	9231  Нажмите на изображение для увеличения
Название: 2.jpg
Просмотров: 739
Размер:	12.3 Кб
ID:	9232  
(Offline)
 
Ответить с цитированием
Старый 22.02.2010, 23:24   #7
moka
.
 
Регистрация: 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
IGR
Blitz's Shame !!
 
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений
(для 2,013 пользователей)
Ответ: вопрос по нарезке картинки

Артем Валерьевич, сорри, я чет непойму... У тебя картинка-результат сплющенная по горизонтали относительно исходной должна быть или как ?? (или эт ее мобильный браузер исказил 0_о )
Если ненада нмчего плющить то:
Решаеш на скок частей будеш резать (переменная Р) !!
Потом читаешь пиксели по горизонтали все а по вертикали Р !!
Пишеш их в другую картинку !!
И так Р раз !!
Еще оффсеты (пустые или черные пиксели между) этими полосками !!

А если нада плющить то я хз-че... Немного положнее задача !!
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Старый 23.02.2010, 06:33   #10
moka
.
 
Регистрация: 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
H@NON
Дэвелопер
 
Регистрация: 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)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
H@NON (23.02.2010)
Старый 23.02.2010, 17:22   #14
Артем Валерьевич
Бывалый
 
Аватар для Артем Валерьевич
 
Регистрация: 25.12.2007
Адрес: г. Краснодар
Сообщений: 894
Написано 421 полезных сообщений
(для 1,079 пользователей)
Ответ: вопрос по нарезке картинки

Да здравствует стереофотография, H@non, я в долгу перед тобой
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 01:45.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com