Wer kennt graphics.h als C-Bibliothek???

Diskutiere das Thema Wer kennt graphics.h als C-Bibliothek??? im Forum Mac OS Entwickler, Programmierer. Weiß einer hier wie ich folgende Datei compiliere??? Problem schein die...

T

Thomas_xp

Mitglied
Thread Starter
Mitglied seit
05.04.2006
Beiträge
632
Weiß einer hier wie ich folgende Datei compiliere??? Problem schein die graphics.h zu sein. Wie binde ich die beim Compilieren ein???


#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <graphics.h>

/*---------- Makros fuer die Symbole der Produktionsregeln ---------------*/
#define F f(t-1); /* F */
#define M phi=phi-delta; /* - */
#define P phi=phi+delta; /* + */
#define A_ altx=x; alty=y; altphi=phi; /* [ */
#define _Z x=altx,y=alty,moveto((int)x,(int)y); phi=altphi; /* ] */

double x, y, laenge, phi, delta; /* Globale Variablen */

void f(int t);
/*---------- main -------------------------------------------------------*/
int main( int argc, char *argv[] )
{
const double PI=4*atan(1);
int t, maxX=480, maxY=480;
int anfWinkel = 90; /* Winkel zum Zeichnen der ersten Gerade */
double drehWinkel = 22.5; /* Drehwinkel */
double faktor = 0.5; /* Verkleinerungsfaktor fuer Laenge bei Rekursion */
int rekTiefe = 7; /* Rekursionstiefe */

delta = (drehWinkel*PI)/180; /*---- Umrechnen Winkel in Bogenmass */
laenge = maxY/4;
initgraph(maxX, maxY);
for (t=1; t <= rekTiefe; t++) {
cleardevice(WHITE);
phi = (anfWinkel*PI)/180; /*---- Umrechnen Winkel in Bogenmass */
x = maxX/2;
y = maxY;
moveto( (int)x, (int)y );
f(t);
laenge *= faktor;
getch();
}
closegraph();
return 0;
}
/*---------- f ----------------------------------------------------------*/
void f(int t) {
double altx, alty, altphi;

if (t > 1) {
F F M A_ M F P F P F _Z P A_ P F M F M F _Z
} else {
x += laenge*cos(-phi);
y += laenge*sin(-phi);
lineto( (int)x, (int)y );
}
}


Im Terminal wird folgende Meldung gepostet:

MacBook:~/programming Name$ gcc pflanze1.c -ls -lm -lg
pflanze1.c:4:23: error: graphics.h: No such file or directory
pflanze1.c: In function 'main':
pflanze1.c:30: error: 'WHITE' undeclared (first use in this function)
pflanze1.c:30: error: (Each undeclared identifier is reported only once
pflanze1.c:30: error: for each function it appears in.)
Kristina-MacBook:~/programming Kika$
 
T

Thomas_xp

Mitglied
Thread Starter
Mitglied seit
05.04.2006
Beiträge
632
ok. Sorry nochmal für vorhin below. War nicht böse gemeint. Wie binde ich den eine solche .h ein? Ich meine jetzt nicht in die C-Datei. Ich meine wie muss ich die im Terminal zusammen kompillieren? Die graphics.h hab ich.
 
T

Thomas_xp

Mitglied
Thread Starter
Mitglied seit
05.04.2006
Beiträge
632
Wieso nicht mit der Materia auseinandersetzen? ICh muss doch nur wissen, wie es zu der Graphikerzeugung kommt. Und bisher waren die Links nicht so toll. Und einfach irgendwoher Code kopieren mach ich nicht.
 
Jools

Jools

Mitglied
Mitglied seit
27.11.2005
Beiträge
3.036
Eigene Header würde ich
Code:
#include "mein_header.h"
einbinden
 
below

below

Mitglied
Mitglied seit
15.03.2004
Beiträge
13.563
Und bisher waren die Links nicht so toll.
Im ersten Google Link (in meinem Post oben) findest Du die Antwort auf Deine Frage:

"graphics.h is a very old library for doing graphics in DOS with Borland C++ 3.x."
 
T

Thomas_xp

Mitglied
Thread Starter
Mitglied seit
05.04.2006
Beiträge
632
Danke für eure Links. Weiter bin ich leider immer noch nicht. Nachdem ich mich weiter eingelesen habe, habe ich versucht eine Installationsanleitung zu folgen und die libiary zu installieren, was aber nicht funktioniert hat.

Ich habe die graphics.h und graphics.cpp. Kann mir einer von euch erklären wie ich damit und eine beliebigen C-Datei, die etwas zeichen soll, zum Ziel komme? Erklären für doofe wenns geht, weil ich anscheinend noch nicht so weit bin.

Außerdem ist in dem Link zwar erklärt, was es damit auf sich hat, aber nicht wie ich aus den 3 Dateien (.h , .c und .cpp) ein Zusammenhängendes Programm mache, das mir was zeichnet...

UND die Frage drängt sich auf, wenn dies graphics-h schon so alt ist, wird sie heut zu tage noch eingesetzt und wenn nein, was nutzt man stattdessen? Und was nutzt man auf dem Mac?? Cocoa?
 
Zuletzt bearbeitet:
Sir_RamDac

Sir_RamDac

Mitglied
Mitglied seit
04.11.2003
Beiträge
1.188
Ich habe die graphics.h und graphics.cpp. Kann mir einer von euch erklären wie ich damit und eine beliebigen C-Datei, die etwas zeichen soll, zum Ziel komme? Erklären für doofe wenns geht, weil ich anscheinend noch nicht so weit bin.
Mh scheinbar hast du es immernoch nicht so ganz verstanden.
Um mit C auch nur igendetwas auf den Bildschirm zu zaubern
brauchst du eine Graphic Bibliothek die von tieferen Betriebs-
systemfunktionen abstrahiert. Zum Beispiel OpenGL. Einen Link
mit Schritt fuer Schritt Anleitung hast du in deinem anderen
Thread erhalten. Eine "graphics.h" Datei allein nuetzt dir nix, das sind
nur Funktionsprototypen zum linken gegen die jeweilige Bibliothek.
 

Ähnliche Themen

Sascha_77
Antworten
2
Aufrufe
1.252
Sascha_77
Sascha_77
N
Antworten
1
Aufrufe
1.172
nussratte
N
Oben