Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
0 / 0 / 1
Регистрация: 14.05.2011
Сообщений: 10

Считывание графика в Visual C++

11.07.2012, 08:11. Показов 1092. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, у меня проблема с чтением bmp файла. Он монохромный, содержит в себе график функции, как бы ширина - х, высота - у, ну если смотреть как координатная плоскость. Считать данный то получается, размер, высота и ширина в пикселях... Нужно считать координаты черных точек. Как то так, и загнать в массив, вот тут я в тупике.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.07.2012, 08:11
Ответы с готовыми решениями:

Считывание графика со скана
есть ли в билдере компонент с помощью которого можно с отсканированного ранее графика снять точки по х у, чтоб потом точки с графика внести...

Считывание из файла и построение графика
Привет всем, помогите пожалуйста сделать пару заданий: 1. Считать из файла текст в таком формате 1 2 3 4 5 6 7 8 9 10 11 12 и...

Считывание координат графика в массив
Есть график .jpeg и его координаты нужно перевести в массив, это возможно сделать через С++? Действие обратное GNUplot...

2
 Аватар для MegaMozg
45 / 45 / 3
Регистрация: 19.12.2008
Сообщений: 110
11.07.2012, 08:16
покажи код, как данные считываешь
0
0 / 0 / 1
Регистрация: 14.05.2011
Сообщений: 10
12.07.2012, 08:03  [ТС]
Лучший ответ Сообщение было отмечено GaRRRiK как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
#include <math.h>     ///////////////////////////////
#include <iostream>   ///////////////////////////////
#include <conio.h>    ///////////////////////////////
#include <time.h>     ////// Всякие библиотеки //////
#include <stdlib.h>   ///////////////////////////////   
#include <windows.h>  ///////////////////////////////
#pragma pack(1)
using namespace std;
 
 
 
 
 
 
 
///////////////////работа с BMP//////////////
typedef struct {
    WORD bfType;
    DWORD bfSize;
    WORD bfReserved_1, bfReserved_2;
    DWORD bfOffBits;                
}BitMapFileHeader;
 
typedef struct {
    DWORD biSize;
    LONG biWidth;
    LONG biHeight;
    WORD biPlanes;
    WORD biBitCount; 
    DWORD biCompression;
    DWORD biSizeImage;
    LONG biXPelsPerMeter;
    LONG biYPelsPerMeter;
    DWORD biClrUsed;
    DWORD biClrImportant;
}BitMapInfoHeader;
 
typedef struct{
    char rgbRed;
    char rgbGreen;
    char rgbBlue;
    char rgbReserved;
} RGB_Struct;
///////////////////работа с BMP//////////////
 
 
int main(){
 
    FILE *f1, *f2;
    int n, m;
    int Width, Height;
    BYTE *inBuf, *outBuf;
 
            BitMapFileHeader file_header; 
            BitMapInfoHeader info_header;
            RGB_Struct rgb[256];
 
 
            f1 = fopen("pl.bmp", "rb");
            //fopen_s(&f1, "pl.bmp", "rb");
 
            fread(&file_header, sizeof(file_header),1 ,f1);
                /*cout << file_header.bfType << endl;
                  cout << file_header.bfSize << endl;
                  cout << file_header.bfReserved_1 << endl;
                  cout << file_header.bfReserved_2 <<endl;
                  cout << file_header.bfOffBits << endl;*/           
            cout<< "Вы используете изображение pl.bmp, которое имеет следующие характеристики\n";
            cout<< " - Размер = " <<file_header.bfSize<<" байт\n";
            fread(&info_header, sizeof(info_header), 1, f1);
                /*cout<< info_header.biSize << endl;
                  cout<< info_header.biWidth << endl;
                  cout<< info_header.biHeight << endl;
                  cout<< info_header.biPlanes << endl;
                  cout<< info_header.biBitCount << endl;
                  cout<< info_header.biCompression << endl;
                  cout<< info_header.biSizeImage << endl;
                  cout<< info_header.biXPelsPerMeter << endl;
                  cout<< info_header.biYPelsPerMeter << endl;
                  cout<< info_header.biClrUsed << endl;
                  cout<< info_header.biClrImportant << endl;*/
            cout<< " - Ширина = " <<info_header.biWidth<<" пикселей\n";
            cout<< " - Высота = " <<info_header.biHeight<<" пикселей\n";
 
 
 
 
 
            /////////////закончили работу с картинкой
 
    return 0;
 
}
это только часть кода, чисто только считывание

Добавлено через 22 часа 46 минут
Прочитал про класс Timage, я программирую в консольной версии (с меня так потребовали) и надо пробежаться по пикселям, найден черный пиксель, записать координату в двух мерный массив
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.07.2012, 08:03
Помогаю со студенческими работами здесь

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

Считывание двоичной матрицы и построение графика - Python
Начал изучать Python недавно. У меня есть матрица x*y (x - количество строк, y - количество столбцов), заполненная нулями и единицами. Мне...

Считывание данных из word'a (.docx) Построение графика
Вообщем помогите, программа должна считать данные из Worda и построить по ним график. Построение графика не вызывает проблем, а вот...

Visual Basic 6 запись и считывание с .txt
Доброго времени суток, помогите ламеру Я недавно начал изучать visual basic 6 и у меня возникла проблема мне нужно запись и считывание с...

Считывание и запись в файл Visual Studio
Здравствуйте. Встала задача считать из файла 3 числа через пробел, и вывести их в другой файл.. Перерыл много страниц, но точного кода не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
Контроль уникальности заводского номера - вариант №2
Maks 24.03.2026
В отличие от предыдущего варианта добавлено прерывание циклов, также добавлены новые переменные для сохранения контекста ошибки перед прерыванием цикла: Процедура ПередЗаписью(Отказ, РежимЗаписи,. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера - вариант №1
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью в КА2. Данные берутся из регистра сведений, по которому настроено. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа в КА2. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор по наименованию. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru