PYTHON-MINI-DOC Kokavecz 2000 ----------------------------------------------------- Bearbeiter: Bernd Kokavecz Datei: grafik.py ----------------------------------------------------- class Image: /* Bildklasse -- def __init__(self,Name): /* Name: string : Dateiname des Bildes -- def get_Bild(self): /* liefert das Bildobjekt für 'image' in Canvas.ImageItem /* (Darstellung des Bildes auf einer Zeichenfläche) -- def get_Breite(self): /* liefert die Bildbreite in Pixeln -- def get_Hoehe(self): /* liefert die Bildhoehe in Pixeln -- class TColor: /* erste primitive Version mit nur wenigen Farben /* Die Farben können über die deutschen Namen oder über /* Zahlen abgerufen werden /* Hinweis: "#fff" entspricht "weiss", /* statt "#xxx" kann auch "red", "green" usw. benutzt werden /* andere Lösungen mit true-colors sind denkbar -- def __init__(self): /* transparent, schwarz, blau, gruen, tuerkis, rot, gelb, grau, weiss -- def getColor(self,nr): /* nr : int : 0 .. 8 für die oben angegebenen Farben /* liefert die Farbdarstellung für X -- def getFarbnamen(self,nr): /* nr : int : 0 .. 8 für die oben angegebenen Farben /* liefert den (deutschen) Bezeichner der Farbnummer (s.o.) -- def getFarbe(self,wort): /* wort : string : ein Element aus den oben angegebenen Farben /* liefert die Farbdarstellung fuer X -- class TFigur: /* interne Hinweise: /* ZF ist Referenz auf Zeichenfläche, wird später gesetzt /* grafObj ist das aktuelle Grafikobjekt -- def __init__(self): /* Alle Grafik-Klassen erben von TFigur. TFigur wird beschrieben durch /* folgende Attribute: /* X1,Y1 (linke obere Ecke) /* X2,Y2 (rechte untere Ecke) /* Farbe /* Fuellfarbe -- def setPos(self,ax1,ay1,ax2,ay2): /* ax1,ay1 : int :(linke obere Ecke) /* ax2,ay2 : int :(rechte untere Ecke) -- def getXPos(self): /* liefert x-Wert der Position der linken oberen Ecke -- def getYPos(self): /* liefert y-Wert der Position der linken oberen Ecke -- def setFarbe(self,F): /* F : string : deutscher Bezeichner (s.o.) -- def getFarbe(self): /* gibt akt. Farbe zurück : string : Farbrepr. für X -- def setFuellfarbe(self,F): /* F : string : deutscher Bezeichner (s.o.) -- def getFuellfarbe(self): /* gibt akt. Füllfarbe zurück : string : Farbrepr. für X -- def pos_versetzen_um(self,dx,dy): /* versetzt die Position des heweiligen Grafikobjektes um dx und dy -- def zeigen(self): /* zeigt das Grafikobjekt auf dem Schirm an -- def loeschen(self): /* löscht das Grafikobjekt auf dem Schirm -- def entfernen(self): /* entfernt das Grafikobjekt aus dem Speicher -- class TLinie(TFigur): /* Klasse Linie -- class TEllipse(TFigur): /* Klasse Ellipse -- class TKreis(TFigur): /* Klasse Kreis -- def __init__(self): /* zus. Attribute sind hier: Radus, x-Mittelpunkt, y-Mittelpunkt -- def setRadius(self,r): /* r : int : Radius -- def getRadius(self): /* liefert aktuelle Radiuslänge -- def setMPos(self,ax,ay): /* ax, ay : int /* setzt Mittelpunktskoordinaten -- class TRechteck(TFigur): /* Klasse Rechteck -- class TText(TFigur): /* Klasse Text zur Beschriftung der Zeichenfläche -- def __init__(self): /* Attribute sind /* Text : string /* Schriftart : String (X-Fonts-Bezeichner) /* Zeichen-Hoehe : int : default = 10 -- def setPos(self,ax,ay): /* ax, ay : int : Position des ersten Zeichens -- def setText(self,Text): /* Text : string : auszugebender Text -- def setFont(self,Art="*",Grad=10): /* Art : string : Font-Name /* Grad : int : Zeichengröße -- class TZeichenblatt: /* Zeichenblatt entspricht Canvas. Mit Init wird ein Bild unterlegt /* Zeichenblatt vom Typ TZeichenblatt wird erzeugt und steht zur /* Verfügung. -- def Init(self,Name): /* Init hinterlegt das Bild /* Name : string : Dateiname (gif) -- def get_Breite(self): /* liefert die Bildbreite in Pixeln -- def get_Hoehe(self): /* liefert die Bildhoehe in Pixeln -- def refresh(self): /* zeigt alle Aenderungen im Bild an--- /* Zeichenoperationen finden im Hintergrund auf einer Kopie des /* sichtbaren Bildes statt. Mit dieser Methode werden die Änderungen /* sichtbar. Diese gepufferte Betriebsart reduziert das "Flackern"!