Create Klassen_Verantwortlichkeiten_und_Kollaborationen.txt

This commit is contained in:
Sonaion
2019-11-11 13:56:01 +01:00
parent f182b022fb
commit df1f49dcf4

View File

@@ -0,0 +1,301 @@
Klasse: Bild (abstrakt)
Vererbung:
-
Verantwortlichkeiten:
- Speicherung der Daten in einem 2d-Array
- Speicherung der Farbdaten jedes einzelnen Pixels
Kollaborationen:
- Der Anwender will ein Bild öffnen und speichern können, ohne sich darüber Gedanken machen zu müssen
Klasse: Bilddimensionen
Vererbung:
- Bild
Verantwortlichkeiten:
- Wissen über die Größe des Bildes
Kollaborationen:
- Nutzer kann die Anzahl der Pixel in x und y Richtung abfragen
Klasse: RasterImage
Vererbung:
- Bild
Verantwortlichkeiten:
- Darstellung des gezeichneten Bildes
- Speicherung der Daten in einem 2d-Array
- Speicherung der Farbdaten jedes einzelnen Pixels (je ein Bit pro Pixel)
Kollaborationen:
- Der Anwender will ein Bild öffnen, bearbeiten und speichern können, ohne sich darüber Gedanken machen zu müssen
Klasse: ShapedImage
Vererbung:
- RasterImage
Verantwortlichkeiten:
- Speicherung der Daten in einem 2d-Array
- Speicherung der Farbdaten jedes einzelnen Pixels -> Transparenz
- Speicherung der Polygondaten
- Darstellung der Transparenz außerhalb des Polygons und des Bildes innerhalb des Polygons
Kollaborationen:
- Der Anwender will ein Bild öffnen, bearbeiten und speichern können, ohne sich darüber Gedanken machen zu müssen
Klasse: Tool (abstrakt)
Vererbung:
-
Verantwortlichkeiten:
- Name, Beschreibung, Tooltip und Icon des Tools speichern
- Veränderung der Pixeldaten des Bildes
Kollaborationen:
- Der Anwender will ein Bild bearbeiten können
Klasse: Set-Color-Tool (abstrakt)
Vererbung:
- Tool
Verantwortlichkeiten:
- Verwalten der Farbcodierung und deren Darstellung
- Bearbeiten des Bildes durch Verändern von Farbcodes an bestimmten Pixeln
- Darstellung der Farbpallette
Kollaborationen:
- Der Anwender möchte das Bild farblich gezielt verändern
- Der Anwender möchte die Farbwerte der einzelnen Pixel abfragen
Klasse: Un-/Redo-Tool
Vererbung:
- Set-Color-Tool
Verantwortlichkeiten:
- 20 Operationen speichern
- die letzten (bis zu 10) Änderungen rückgängig machen
- die letzten (bis zu 10) Undo-Aufforderungen rückgängig machen
- sobald gezeichnet wird, werden alle Redo-Einträge gelöscht
Kollaborationen:
- Der Anwender möchte eine Tool Änderung rückgängig machen
- Der Anwender möchte eine Undo Aktivität rückgängig machen
Klasse: Dreh-Tool
Vererbung:
- Tool
Verantwortlichkeiten:
- Rotation des angezeigten Bildes
- Ändern der Farbwerte, so dass sie mit dem rotierten Bild übereinstimmen
Kollaborationen:
- Möglichkeit für den Nutzer das Bild zu drehen
- Der Anwender möchte das Bild gedreht speichern
Klasse: Size-Tool
Vererbung:
- Tool
Verantwortlichkeiten:
- Vergrößerung des Bildes (Werte)
- Verkleinerung des Bildes (Werte)
- Skalieren
Kollaborationen:
- Der Anwender möchte die Auflösung des Bildes vergrößern
- Der Anwender möchte die Auflösung des Bildes verkleinern
Klasse: Merge-Tool
Vererbung:
- Tool
Verantwortlichkeiten:
- Das Zusammenfügen zweier Bilder in eine neue Datei (Abspeichern der neuen Farbwerte)
- Das Zusammenfügen übereinander oder nebeneinander (wenn Alpha-Kanal vorhanden)
Kollaborationen:
- Der Anwender möchte ein Bild neben einem anderen Bild speichern
- Der Anwender möchte ein Bild über einem anderen speichern
Klass: View-Tool(abstrakt)
Vererbung:
-Tool
Verantwortlichkeiten:
-Verändern der Ansicht des Bilder
Kollaborationen:
-Der User möchte das Bild anders Anzeigen lassen
Klasse: Zoom-Tool
Vererbung:
- View-Tool
Verantwortlichkeiten:
- Vergrößerung des Bildes (Ansicht)
- Verkleinerung des Bildes (Ansicht)
- Zoomen
Kollaborationen:
- Der Anwender möchte in ein Bild zoomen
- Der Anwender möchte aus dem Bild heraus zoomen
Klasse: Merge-View-Tool
Vererbung:
- View-Tool
Verantwortlichkeiten:
- Das anzeigen zweier Bilder in der Datei
Kollaborationen:
- Der Anwender möchte ein Bild neben einem anderen Bild anzeigen
- Der Anwender möchte ein Bild über einem anderen anzeigen lassen
Klasse: Pen-Tool
Vererbung:
- Set-Color-Tool
Verantwortlichkeiten:
- Speicherung des eingestellten Radius
- Setzen von Pixelwerten um die Cursor-Stelle in einen auswählbaren Radius in einer auswählbaren Farbe
Kollaborationen:
- Der Anwender möchte Freihand in einer freiwählbaren Farbe in einem freiwählbaren Radius zeichnen, ohne Beschränkung innerhalb des Bildes
Klasse: FloodFill-Tool
Vererbung:
- Set-Color-Tool
Verantwortlichkeiten:
- alle Pixel in einer Äquivalenzklasse zum aktuellen Pixel in eine freiwählbare Farbe einfärben
Kollaborationen:
- Der Anwender möchte eine Fläche einer Farbe komplett umfärben
Klasse: Plain-Tool
Vererbung:
- Set-Color-Tool
Verantwortlichkeiten:
- alle Pixel des Bildes in eine Farbe ändern
Kollaborationen:
- Der Anwender möchte das Bild einfarbig einfärben
Klasse: Formen-Tool (abstrakt)
Vererbung:
- Set-Color-Tool
Verantwortlichkeiten:
- Zeichnen eines geometrischen Primitives
- vereinheitlichte Darstellung der Formauswahl und Ränder
Kollaborationen:
- Der Anwender möchte ein/e Rechteck/Linie oder eine konvexe Form zeichnen
Klasse: Linien-Tool
Vererbung:
- Formen-Tool
Verantwortlichkeiten:
- Zeichnen einer Linie in einer wählbaren Dicke und Farbe
- Die Linie kann durchgängig, gestrichelt oder gepunktet gezeichnet werden
Kollaborationen:
- Der Anwender möchte eine durchgezogene Linie zeichnen
- Der Anwender möchte eine gestrichelte Linie zeichnen
- Der Anwender möchte eine gepunktete Linie zeichnen
Klasse: Rechteck-Tool
Vererbung:
- Formen-Tool
Verantwortlichkeiten:
- Aufspannen eines Rechtecks zwischen zwei Punkten, der Rand und die Fläche sind in der Farbe frei wählbar,
diese Wählbarkeit ist separat vom anderen Zustand möglich
- Der Rand kann in der Dicke eingestellt werden
Kollaborationen:
- Der Anwender möchte ein Rechteck zeichnen, die innere Fläche soll Transparenz speichern
- Der Anwender möchte ein Rechteck zeichnen, die innere Fläche soll eine Farbe haben, der Rand soll eine gewisse Breite und Farbe haben
Klasse: Konvexe-Form-Tool
Vererbung:
- Formen-Tool
Verantwortlichkeiten:
- Aufspannen einer konvexen Form mittels Punkten (max 100)
- Die konvexe Form hat einen Rand und eine interne Fläche, deren Farbe separat gewählt werden kann
- Der Rand kann im Bezug auf seine Dicke eingestellt werden
Kollaborationen:
- Der Anwender möchte ein n-Eck zeichnen, dazu berührt er auf dem Bildschirm n-Punkte und am Schluss den Anfangspunkt (10pxl Radius?)
- In der berührten Reihenfolge werden Linien gezogen, die die Form aufspannen und je nach Einstellungen wird der Rand und die interne Fläche dargestellt
Klasse: Polygon-Form-Tool
Vererbung:
- Formen-Tool
Verantwortlichkeiten:
- Aufspannen eines Polygons über das Bild
- Das Polygon hat einen Rand und eine interne Fläche, deren Farbe separat gewählt werden kann
- Der Rand kann im Bezug auf seine Dicke eingestellt werden
Kollaborationen:
- Der Anwender möchte ein Polygon zeichnen
Klasse: Kreis-Tool
Vererbung:
- Set-Color-Tool
Verantwortlichkeiten:
- Erstellen einer Kreisform in dem man den Mittelpunkt bestimmt und zwei Radien festlegen kann (NS und WO Radius)
- Die Dicke des Randes des Kreises ist freiwählbar, sowie die Art des Randes (Gepunktet, etc.), genauso wie die Farbe des Kreises und des Randes
Kollaborationen:
- Der Anwender möchte einen beliebigen Kreis und eine beliebige Ellipse zeichnen können
Klasse: Selection-Tool
Vererbung:
-Tool
Verantwortlichkeiten:
-Auswählen von Bildern
Kollaborationen:
- Der Anwender möchte ein Object Auswählen (quadratisch)
Klasse: Cut-Tool
Vererbung:
-Selection-Tool
Verantwortlichkeiten:
-Auswählen von Bildern und das ausschneiden dieser
Kollaborationen
- Der Anwender möchte ein Bild auswählen und bewegen oder löschen
Klasse: Korrektur-Tool
Vererbung:
-Tool
Verantwortlichkeiten:
-Verändern von Bild Daten (Korrektur)
Kollaborationen:
-Der Anwender möchte ein Bild verändern und dies mit Korrektur
Klasse: Helligkeits-Tool
Vererbung:
Korrektur-Tool
Verantwortlichkeiten
Verändert den Helligkeits Werte
Kollaboration:
Der Anwender möchte das Bild dunkeln oder aufhellen
Klasse: Farbton-Tool
Vererbung:
Korrektur-Tool
Verantwortlichkeiten:
Verändert die Sättigung von Farbdaten
Kollaborationen:
Der User möchte ein Bild SÄttigen oder verblassen
Klasse: Gradations-Tool
Vererbung:
Korrektur-Tool:
Verantwortlichkeiten:
Setzen einer Gradationskurve
Kollaboration:
Der User möchte eine Gradationskurve eines Farbschemas Erstellen
Klasse: 3D-Objekt
Vererbung:
-
Verantwortlichkeiten:
-Wissen über die Vertices und das Managed dieser
Kollaborationen:
-Der User möchte ein 3d Object laden
Klassen: 3D-Inspector
Vererbung:
-
Verantwortlichkeiten:
-Darstellen eines §D objects und des projezierung (RailTracer)
Kollaborationen:
-Der User möchte ein 3d object auf das layer projezieren
Klasse: layer
Vererbung:
-
Verantwortlichkeiten:
-Darstellung eines Bildes und S>ichtbarkeit auf sich selbst
Kollaborationen:
-Der User möchte ein Bild auf einem Layer darstellen
Klasse: layer-manager
Vererbung:
-
Verantwortlichkeiten:
-Sichtbarkeit und Darstellung der Bilder auf verschiedenen layern
Kollaborationen:
-Der User möchte ein layer über das andere schieben
-Der User möchte die layer löschen