Biblioteki graficzne dla języka C

0

Mam pytanie czy istnieją biblioteki do tworzenia grafiki 2D lub 3D dla języka C (nie C++). I jeśli są to jak się nazywają.

PS
Wiem, że język C do tego nie służy, ale chciałbym spróbować

0

Biblioteki np, allegro, curses

4

Co rozumiesz przez "tworzenie grafiki"?

Ogólnie są 2 różne typy grafiki 2D:

  • wektorowa gdzie obiekty na obrazie są opisane przy pomocy funkcji matematycznych
  • rastrowa gdzie obraz jest macierzą punktów w danej przestrzeni barw

Do każdego z tych typów grafiki mamy osobne narzędzia i sposób ich tworzenia jest inny. Operacje na grafice wektorowej to geometria analityczna a na rastrowej algebra liniowa.

Jeśli chodzi o operacje na grafice wektorowej to Cairo jest dość popularne. Jeśli chodzi o grafikę rastrową to szukaj pod hasłem BLAS oraz lib<nazwa formatu na jakim chcesz pracować> (przykładowo libpng lub libjpeg).

Grafika 3D to rozszerzenie wektorowej grafiki 2D o dodatkowy wymiar, więc jeszcze więcej geometrii analitycznej + dodatkowo więcej algebry liniowej (w grafice wektorowej 2D da się tego uniknąć).

PS:

Stwierdzenie "C do tego nie służy" nie do końca ma pokrycie w faktach, z racji, że GIMP jest napisany w C (PS w C++), Inkscape w C++, Blender C/C++.

0

Szukałem BLAS, ale nie mogłem nic znaleźć. Może mi ktoś pomóc, przydałby się też jakiś tutorial.

0

Znalazłem coś takiego: www.openblas.net
Czy o to chodziło.

1

Może być. Teraz już tylko ogarnąć algebrę :)

0

@winerfresh: chyba coś Ci się pomyliło.

winerfresh napisał(a):

Operacje na grafice wektorowej to geometria analityczna a na rastrowej algebra liniowa.

Może JPEG ma coś jeszcze wspólnego z algebrą liniową (ble), ale już geometria rastrowa na pewno nie.
Geometria rastrowa jest z gruntu nie-liniowa, więc nie wiem gdzie widzisz punkty wspólne.

Nie znam się na systematyce geometrii, ale wg tego co piszą w internetach do grafiki rastrowej bardziej pasuje geometria analityczna.

0

Wszelkie operacje na grafice rastrowej (filtry, przekształcenia, etc.) to przekształcenia liniowe, więc ja widzę to całkiem sporo algebry liniowej.

1 użytkowników online, w tym zalogowanych: 0, gości: 1