• Telefon : +40 728 88 22 88
  • Program de lucru : Vezi orarul!
  • Adresă : Bacău, str. Mihai Eminescu, nr. 1, bloc. A1

Grafică în CodeBlocks

Scopul nostru este de a realiza diferite exerciții de grafică, în care accentul să-l punem pe partea matematică și de algoritmică și nu pe tehnologie sau pe elemente de programare orientată-obiect.
De aceea, vom utiliza o bibliotecă grafică simplă, la care noi putem adăuga propriile funcții mai complexe, create pe baza unor funcții simple predefinite. Așadar, vom folosi cea mai simplă bibliotecă grafică, numită WinBGIm, care extinde funcțiile din Graphics.h.

1. Dacă veți folosi sistemul de operare Windows, cu CodeBlocks, o versiune mai veche (16-19), împreună cu compilatorul MinGW 32-bit, atunci:

Click aici pentru instrucțiuni de instalare

Descărcați biblioteca grafică WinBGIm de aici: WINBGIM.ZIP
.
Atenție: pe web puteț›i găsi și alte variante ale acestei arhive, dar e posibil să fie nefuncționale.
După ce descarcați și scoateți fișierele din această arhivă, veți face următoarele lucruri:

  1. Extrageți fișierele graphics.h, winmgim.h și libbgi.a din arhivă.
  2. Copiați fișierele graphics.h și winbgim.h în folderul include din folderul compilatorului MinGW, care se găsește, cel mai probabil, aici: C:\Program Files (x86)\CodeBlocks\MinGW\include\
  3. Copiați fișierul libbgi.a în folderul lib al directorului compilatorului MinGW, care se găsește, cel mai probabil, aici: C:\Program Files (x86)\CodeBlocks\MinGW\lib\
  4. În Code::Blocks accesați Settings >> Compiler >>Linker settings
  5. Faceți click pe butonul Add în partea Link libraries, apoi răsoiți și selectați fișierul libbgi.a
  6. În partea dreaptă (adică la Other linker options) scrieți următoarele comenzi:
    -lbgi -lgdi32 -lcomdlg32 -luuid -loleaut32 -lole32
  7. Faceți click pe OK.

Următorul videoclip explică foarte clar pașii pe care trebuie să-i urmați, descriși mai sus.

CLICK AICI

2. Dacă veți folosi sistemul de operare Windows, cu CodeBlocks, o versiune mai nouă (20), împreună cu compilatorul MinGW 64-bit, atunci:

În acest caz, problema este că biblioteca grafică WinBGIm este realizată pe 32 biți, pe când compilatorul vostru este pe 64 biți. În acest caz, va trebui să faceți astfel:
Descărcați biblioteca grafică WinBGIm de aici: WINBGIM.ZIP.
Atenție: pe web puteți găsi și alte variante ale acestei arhive, dar e posibil să fie nefuncționale.
După ce descărcați și scoateți fișierele din această arhivă, veți face următoarele lucruri:

  1. Descărcați compilatorul pe 32 de biți de la adresa următoare:
    https://jmeubank.github.io/tdm-gcc/
  2. Veț›i folosi acest compilator, pentru a putea fi recunoscută biblioteca WinBGIm. Mergeți în CodeBlocks la Settings->Compiler->Toolchain Executables și scrieți calea către noul compilator:
    (de exemplu: C:\TDM-GCC-32)
  3. Apoi la Settings->Compiler->Linker Settings scrieți în caseta din dreapta (Other Linker Options) următoarele:
    -lbgi -lgdi32 -lcomdlg32 -luuid -loleaut32 -lole32
  4. Faceți click pe OK.
  • Extrageți fișierele graphics.h, winmgim.h și libbgi.a din arhivă (fișierul ZIP).
  • Copiați fișierele graphics.h și winbgim.h în folderul include din compilatorul TDM-GCC-32, care se găsește, cel mai probabil, aici:
    C:\TDM-GCC-32\include\
  • Copiați fișierul libbgi.a în folderul lib al directorului compilatorului MinGW, care se găsește, cel mai probabil, aici:
    C:\TDM-GCC-32\lib\

Următorul videoclip explică foarte clar pașii pe care trebuie să-i urmați, descriși mai sus.

CLICK AICI

3. Dacă veți folosi sistemul de operare macOS sau Linux, cu CodeBlocks, atunci:

În locul bibliotecii grafice WinBGIm pentru Windows, încercați o bibliotecă grafică similară, cum ar fi SDL_bgi, pe care o găsiți aici: SDLBGI.
Aceasta se bazează pe biblioteca grafică performantă SDL, dar adaptează funcțiile pentru a fi simple și compatibile cu biblioteca grafică WinBGIm.

4. Dacă veți folosi sistemul de operare Windows, cu Visual Studio (Visual C++), atunci:

Descărcați pachetul corespunzător de la adresa:
https://home.cs.colorado.edu/~main/bgi/visual/.
Puteți vedea și aceste videoclipuri, pentru ajutor:

  1. https://www.youtube.com/watch?v=5DN0T7YfyfM
  2. https://www.youtube.com/watch?v=aRAvHudcxYc

Descrierea funcțiilor grafice

Un exemplu de program de test pentru grafică este aici:

#include <iostream>
#include <graphics.h>
#include <winbgim.h>

int main()
{
//  int gd = DETECT, gm;
//  initgraph(&gd, &gm, "");
  initwindow(800,600); int x = 400, y = 300, r; 
  for (r = 25; r <= 125; r += 20)
      circle(x, y, r);
  getch(); closegraph(); return 0;
}

Dacă acesta funcționează, puteți continua să folosiți orice funcție grafică și de lucru cu mouse-ul din biblioteca WinBGIm.

10.382 Comments