Модераторы: Rickert, Alexeis, BorisVorontsov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> загрузка части BMP 
:(
    Опции темы
ChevChelios
Дата 16.10.2009, 21:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 12.10.2009

Репутация: нет
Всего: нет



Доброго времени суток... 
Задача следующая... работаю с очень большим изображением.. площадь порядка 4 000 000 000 пикселей... Соответственно надо отрисовывать кусками это изображение... но загрузить в ОП я не могу по причине явной ресурсоёмскости.... поэтому в голову приходит тока прочесть часть файла BMP и уже после этого отрисовать нужный кусок...
 smile 
PM MAIL   Вверх
zkv
Дата 16.10.2009, 22:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Участник Клуба
Сообщений: 2133
Регистрация: 23.7.2006
Где: Санкт-Петербург

Репутация: нет
Всего: 92



мысль явно неплохая, попробуйте
PM MAIL   Вверх
ChevChelios
Дата 16.10.2009, 22:12 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 12.10.2009

Репутация: нет
Всего: нет



Цитата

мысль явно неплохая, попробуйте

спасибо конечно за одобрение (=... ценю... но мне бы что нить как нить чтобы понять как из файла на диске мне прочитать кусок скажем 150 на 150 и скажем с середины самого изображения...
PM MAIL   Вверх
zkv
Дата 16.10.2009, 22:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Участник Клуба
Сообщений: 2133
Регистрация: 23.7.2006
Где: Санкт-Петербург

Репутация: нет
Всего: 92



ChevChelios, вы бы привели что-нибудь, код какой-то, или мысли,  как вы пытались и все такое... 

По делу.
Для начала вам надо понять основные параметры вашей картинки: высота, ширина, бит на пиксель сколько приходится (надеюсь сжатий и других экзотических вариаций формата нет), на эту тему гуглите BITMAPINFOHEADER.

Определяете, какая часть картинки вам нужна.
Дальше, осознаете, что файл - последовательного хранения структура данных, и вам придется применять такие утилиты как seek или их аналоги в вашем framework'е.
С помощью упомянутого инструмента грузите строки в оперативную память, формируя картинку.
Дальше, видимо, ее показываете, или что вы хотите с ней делать.
PM MAIL   Вверх
ChevChelios
Дата 16.10.2009, 22:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 12.10.2009

Репутация: нет
Всего: нет



ну по сути мне надо читать с конца файла и каким то образом сдвинуться на нужный участок данных изображения... а потом записат ьнужный участок?? так? если да то не ясно из какого соображения на сколько сдвигаться... и вообще  smile   smile 
PM MAIL   Вверх
zkv
Дата 17.10.2009, 00:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Участник Клуба
Сообщений: 2133
Регистрация: 23.7.2006
Где: Санкт-Петербург

Репутация: нет
Всего: 92



Ну что сказать.
Выдвигай работу на конкурс.
Тут много способных программистов, кто-нибудь решит.
Никто не возьмется - сделаю я, но это отдельный разговор будет.
PM MAIL   Вверх
Alexeis
Дата 17.10.2009, 18:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 5
Всего: 459



  У битмапа простая структура, даже в MSDN есть ее описание. Есть и все нужные заголовки. Пикселы идут слева направо снизу вверх. На форуме есть и подробное описание с примером. Правда там заточено под делфи http://forum.vingrad.ru/topic-94227.html


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
ChevChelios
Дата 18.10.2009, 20:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 12.10.2009

Репутация: нет
Всего: нет



Цитата

Напишу класс для такой работы с битмапом за 50wmz.

Не тема...

Alexeis, спасибо за линк... буду пытаться разобраться
PM MAIL   Вверх
Rickert
Дата 19.10.2009, 01:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: 2
Всего: 52



ChevChelios, в чем проблема я не могу понять?
Берем файл бмп, насколько я знаю - это простой формат без шифрования и данные лежат там "как есть".
http://use-incom.ru/forum/showthread.php?p=187
Читаем заголовки файла, предположим это у нас 24-битный рисунок: т.е. у нас три цвета по 8-бит (RGB).
Теперь нам надо прочитать пиксели информации с 1000 по 10 000, следовательно нам надо получить байты с 3000 по 30 000.
Все дела. Конкретезируйте: что не ясно?


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Вы можете найти полезным что...
Alexeis
Rickert
  • Английская документация по DirectX лежит где-то здесь.
  • Английская документация по OpenGL лежит где-то там.
  • Гейм-дев у нас обсуждают где-то тут

Ждём вас! С уважением, Alexeis, Rickert.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема »


 




[ Время генерации скрипта: 0.0491 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.