Національний технічний університет України
Київський політехнічний інститут
Факультет біомедічної інженерії
Кафедра біобезпекі та відновної біоінженерії
Лабораторна робота
мультимодальних візуалізація збережений комплементарної природи
Виконаю:
студент гр. БС - 32м
Найдьнов І.М.
Перевіріла:
Алхімова С.М.
Київ - 2014
Завдання
1. Ознайомітіся з теоретичністю відомостямі относительно мультимодального рендерингу, основними методами проведення візуалізації з метою про єднання информации комплементарної природи
. Відповідно до свого варіанту Завантажити то відобразіті зображення двох модальностей. Создать подію при обробці якої поряд Із початкових збережений проводитись візуалізація методом мультимодального рендерінгу
Номер варіантуМетод мультимодального рендерінгу 2Метод шахової дошки
Лістінг
рендеринг візуалізація мультимодальний комплементарними
//# include stdafx.h
# include SOIL.h
# include lt; string gt;
# include lt; glut.h gt;
# include lt; gdcmReader.h gt;
# include lt; gdcmImageReader.h gt;
# include lt; gdcmImage.h gt;
# include lt; gdcmFile.h gt;
# include lt; gdcmDicts.h gt;
# include lt; gdcmDict.h gt;
# include lt; gdcmAttribute.h gt; namespace std; namespace gdcm;
# pragma comment (lib, gdcmMSFF.lib )
# pragma comment (lib, gdcmDSED.lib )
# pragma comment (lib, SOIL.lib ) unsigned int ntex=3; scrw=512, scrh=512; char * buffers [ntex]; int tex [ntex], w= 0, h=0, currTexture=0; int chess_size=32; display () {(GL_COLOR_BUFFER_BIT); (GL_TEXTURE_2D, tex[currTexture]);(GL_QUADS);f(0,0);f((scrw-w)/2,(scrh-h)/2);f(1,0);f((scrw+w)/2,(scrh-h)/2);f(1,1);f((scrw+w)/2,(scrh+h)/2);f(0,1);f((scrw-w)/2,(scrh+h)/2);();(GL_TEXTURE_2D, 0); ();
} keyPressed (unsigned char key, int x, int y) {(key- 1 lt; ntex)=key- 1 raquo ;; ();
} draw_string_bitmap (void * font, const char * string)
{f (5, 5); (* string) (font, * string ++);
} mousePointer (int x, int y)
{stringColor[4];d(0.0,0.0,0.0);(GL_QUADS);f(0,0);f(50,0);f(50,50);f(0,50);();d(1.0,1.0,1.0);((scrw-w)/2lt;=x amp; amp; x lt; (scrw + w)/2 amp; amp; (scrh-h)/2 lt;=y amp; amp; y lt; (scrh + h)/2)
{i=((x-(scrw-w)/2)+w*(h-y+(scrh-h)/2))*3;(stringColor,laquo;%draquo;,buffers[currTexture][i]);_string_bitmap(GLUT_BITMAP_9_BY_15, stringColor);
} ();
} main (int argc, char * argv [])
{filename []= 1.bmp raquo ;; (int i=0; i lt; 2; i ++) {(filename, % i.bmp , i + 1); width , height, channels; char * buffer=SOIL_load_image (filename, amp; width, amp; height, amp; channels, SOIL_LOAD_L); (w == 0 amp; amp; h == 0)
{= width;=height;
} if (w!=width || h!=height)
{ lt; lt; Dimensions do not agree lt; lt; endl; 2;
} [i]=new unsigned char [w * h * 3]; (int j=0; j lt; w * h; j ++) [i] [j * 3]=buffers [i ] [j * 3 + 1]=buffers [i] [j * 3 + 2]=buffer [j];
} [2]=new unsigned char [w * h * 3]; (int j=0; j lt; w * h; j ++)
{x=j% w, y=j/w; [2] [j * 3]=buffers [2] [j * 3 + 1]=buffers [2] [j * 3 +2]=buffers [x/chess_size% 2 == y/chess_size% 2] [j * 3];
} ( amp; argc, argv); (GLUT_RGB); (scrw, scrh); ( Lab 10 ); (0, scrw, 0, scrh, 0, 1); ( GL_TEXTURE_2D); (ntex, tex); (int i=0; i lt; ntex; i ++)
{(GL_TEXTURE_2D, tex [i]); (GL_UNPACK_ALIGNMENT, 1); D (GL_TEXTURE_2D, 0, GL_RGB, w, h, 0, GL_RGB, GL_UNSIGNED_BYTE, buffers [i]); (GL_TEXTURE_2D , GL_TEXTURE_MIN_FILTER, GL_NEAREST); (GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
} (display); (keyPressed); (mousePointer); (); 0;
}
Результати роботи програми