mirror of
https://github.com/creyD/intelliphoto.git
synced 2026-04-14 20:30:32 +02:00
Master Cleanup
Nicht böse sein, ich habe hier mal nur die Abgaben behalten, ich weiß nicht, wie sinnvoll es ist alle anderen Sachen zu noch zu haben. Wenn was dagegen spricht, könnt ihr ja zurückrollen...
This commit is contained in:
58
Abgabe/Aufgabe 1/Req0001/Req_0001A.txt
Normal file
58
Abgabe/Aufgabe 1/Req0001/Req_0001A.txt
Normal file
@@ -0,0 +1,58 @@
|
||||
Req-ID:
|
||||
0001A
|
||||
Req-Type:
|
||||
Nicht-Funktional
|
||||
Events/UCs:
|
||||
-Speicherung eines Bildes
|
||||
-Pixel wird mit einem Byte dargestellt
|
||||
-Overhead für Metainformationen erlaubt
|
||||
-Keine seperate abhandlung von "RasterImage" und "ShapedImage"
|
||||
Description:
|
||||
-Ein Bild wird mit maximal einem Byte pro Pixel kodiert
|
||||
-Repräsentation im folgenden:
|
||||
0b0000'0000, wobei die 0 nach dem Prefix 0b als Bit 7 Indiziert ist, und jedes rechtere Bit
|
||||
davon um eins Dekrementiert Indiziert wird
|
||||
-Minimale RGB-A Darstellung des Bildes mittel einem Byte
|
||||
-Codierungsmöglichkeit nach folgendem Schema:
|
||||
-Bit 7,6 werden Benutz um den Alpha-Kanal zu codieren:
|
||||
-0b00 -> Bit ist 100% Transparent (Transparent)
|
||||
-0b01 -> Bit ist 66% Transparent
|
||||
-0b10 -> Bit ist 33% Transparent
|
||||
-0b11 -> Bit ist 0% Transparent
|
||||
-Bit 5,4 werden Benutz um den Rot-Kanal zu codieren:
|
||||
-0b00 -> Bit ist 0% Rot (Schwarz)
|
||||
-0b01 -> Bit ist 33% Rot
|
||||
-0b10 -> Bit ist 66% Rot
|
||||
-0b11 -> Bit ist 100% Rot (Rot)
|
||||
-Bit 3,2 werden Benutz um den Grün-Kanal zu codieren:
|
||||
-0b00 -> Bit ist 0% Grün (Schwarz)
|
||||
-0b01 -> Bit ist 33% Grün
|
||||
-0b10 -> Bit ist 66% Grün
|
||||
-0b11 -> Bit ist 100% Grün (Grün)
|
||||
-Bit 1,0 werden Benutz um den Blau-Kanal zu codieren:
|
||||
-0b00 -> Bit ist 0% Blau (Schwarz)
|
||||
-0b01 -> Bit ist 33% Blau
|
||||
-0b10 -> Bit ist 66% Blau
|
||||
-0b11 -> Bit ist 100% Blau (Blau)
|
||||
Definitionen der benutzen Farben nach RGB-A Modell:
|
||||
Schwarz (0b0000'0000, 0b0000'0000, 0b0000'0000, 0b1111'1111)
|
||||
Rot (0b1111'1111, 0b0000'0000, 0b0000'0000, 0b1111'1111)
|
||||
Grün (0b0000'0000, 0b1111'1111, 0b0000'0000, 0b1111'1111)
|
||||
Blau (0b0000'0000, 0b0000'0000, 0b1111'1111, 0b1111'1111)
|
||||
Transparent (0b0000'0000, 0b0000'0000, 0b0000'0000, 0b0000'0000)
|
||||
-verschiedene Transparenzstufen, bis auf 0b11, werden als einzelne Farbstufen gezählt: 2^(8)-1 verschiede Farbstufen
|
||||
Originator:
|
||||
Jonas Mucke
|
||||
Fit Criterion:
|
||||
-Darstellung von mindestens 250 paarweise verschiedenen Farbstufen
|
||||
-Darstellung einen transparenten Bits (Alpha Kanal = 0b0000'0000)
|
||||
-Verarbeitungsmöglichkeit für 2^10 Pixel in unter 0.1 Sekunde beim Einlesen und Speichern
|
||||
Priority:
|
||||
100
|
||||
Support Material:
|
||||
Ubungsblat_01.pdf
|
||||
Conflicts:
|
||||
Noch keine Einigung auf Farbkodierung (0001A-0001C)-> Rücksprache mit dem Kunden
|
||||
(Ein Byte deckt einen sehr kleinen Farbbereich ab und ist nicht sehr elegant -> Rücksprache mit dem Kunden ob 4 Byte akzeptabel wären)
|
||||
History:
|
||||
-Erstellt am 30.10.2019 um 21:59, von Jonas Mucke
|
||||
35
Abgabe/Aufgabe 1/Req0001/Req_0001B.txt
Normal file
35
Abgabe/Aufgabe 1/Req0001/Req_0001B.txt
Normal file
@@ -0,0 +1,35 @@
|
||||
Req-ID:
|
||||
0001B
|
||||
Req-Type:
|
||||
Nicht-Funktional
|
||||
Events/UCs:
|
||||
-Speicherung eines Bildes
|
||||
-Pixel wird mit einem Byte dargestellt
|
||||
-Overhead für Metainformationen erlaubt
|
||||
-Keine seperate abhandlung von "RasterImage" und "ShapedImage"
|
||||
Description:
|
||||
-Ein Bild wird mit maximal einem Byte pro Pixel kodiert
|
||||
-Repräsentation im folgenden:
|
||||
0b0000'0000, wobei die 0 nach dem Prefix 0b als Bit 7 Indiziert ist, und jedes rechtere Bit
|
||||
davon um eins Dekrementiert Indiziert wird
|
||||
-Codierungsmöglichkeit nach folgendem Schema:
|
||||
-0b0000'0000, wird als Transparents-Codierung definiert
|
||||
-Alle weiteren Binären Codierung werden per Hand, in Abstimmung mit dem Kunden und dem Team,
|
||||
einer Farbe zugeordnet -> 2^(8)-1 mögliche Farben + Transparenz
|
||||
Definitionen der benutzen Farben nach RGB-A Modell:
|
||||
Transparent (0b0000'0000, 0b0000'0000, 0b0000'0000, 0b0000'0000)
|
||||
Originator:
|
||||
Jonas Mucke
|
||||
Fit Criterion:
|
||||
-Darstellung von mindestens 250 paarweise verschiedenen Farbstufen
|
||||
-Darstellung einen transparenten Bits (Alpha Kanal = 1)
|
||||
-Verarbeitungsmöglichkeit für 2^10 Pixel in unter 0.1 Sekunde beim Einlesen und Speichern
|
||||
Priority:
|
||||
100
|
||||
Support Material:
|
||||
Ubungsblat_01.pdf
|
||||
Conflicts:
|
||||
Noch keine Einigung auf Farbkodierung (0001A-0001C)-> Rücksprache mit dem Kunden
|
||||
(Ein Byte deckt einen sehr kleinen Farbbereich ab und ist nicht sehr elegant -> Rücksprache mit dem Kunden ob 4 Byte akzeptabel wären)
|
||||
History:
|
||||
-Erstellt am 30.10.2019 um 21:58, von Jonas Mucke
|
||||
64
Abgabe/Aufgabe 1/Req0001/Req_0001C.txt
Normal file
64
Abgabe/Aufgabe 1/Req0001/Req_0001C.txt
Normal file
@@ -0,0 +1,64 @@
|
||||
Req-ID:
|
||||
0001C
|
||||
Req-Type:
|
||||
Nicht-Funktional
|
||||
Events/UCs:
|
||||
-Speicherung eines Bildes
|
||||
-Pixel wird mit einem Byte dargestellt
|
||||
-Overhead für Metainformationen erlaubt
|
||||
-Keine seperate abhandlung von "RasterImage" und "ShapedImage"
|
||||
Description:
|
||||
-Ein Bild wird mit maximal einem Byte pro Pixel kodiert
|
||||
-Repräsentation im folgenden:
|
||||
0b0000'0000, wobei die 0 nach dem Prefix 0b als Bit 7 Indiziert ist, und jedes rechtere Bit
|
||||
davon um eins Dekrementiert Indiziert wird
|
||||
-Die Bits 7,6 werden benutzt um einen Farbchannel zu setzen. Bei einem Farbchannel handelt es sich um einen
|
||||
Schalter, welcher zwischen den Channeln "Rot", "Grün", "Blau", "Grau/Alpha" Handelt.
|
||||
Wenn ein Channel gesetzt ist, für ein Pixel, so wird dieses Pixel nur mittels einer Farbstufe dieses Channels
|
||||
Dargestellt.
|
||||
-Codierungsmöglichkeit nach folgendem Schema:
|
||||
-0b00XX'XXXX entspricht dem "Grau/Alpha" Channel
|
||||
0b0000'0000 entspricht dem Transparenzwert 100% (Transparent)
|
||||
0b0000'0001 enstpricht den Farbwert Schwarz (Schwarz)
|
||||
0b0011'1111 enstpricht dem Farbwert Weiß (Weiß)
|
||||
Dazwischen exestiert eine uniform partitionierte Farbkurve
|
||||
-0b01XX'XXXX entspricht dem "Rot" Channel:
|
||||
0b0111'1111 entspricht dem intensivstem Rot(Rot)
|
||||
0b0100'0000 enstpricht dem blasesten Rot(Schwarz-Rot)
|
||||
Dazwischen exestiert eine uniform partitionierte Farbkurve
|
||||
-0b10XX'XXXX entspricht dem "Grün" Channel:
|
||||
0b1011'1111 entspricht dem intensivstem Grün (Grün)
|
||||
0b1000'0000 enstpricht dem blasesten Grün(Schwarz-Grün)
|
||||
Dazwischen exestiert eine uniform partitionierte Farbkurve
|
||||
-0b11XX'XXXX entspricht dem "Blau" Channel:
|
||||
0b1111'1111 entspricht dem intensivstem Blau (Blau)
|
||||
0b1100'0000 enstpricht dem blasesten Blau(Schwarz-Blau)
|
||||
Dazwischen exestiert eine uniform partitionierte Farbkurve
|
||||
Definitionen der benutzen Farben nach RGB-A Modell:
|
||||
Weiß (0b1111'1111, 0b1111'1111, 0b1111'1111, 0b1111'1111)
|
||||
Schwarz (0b0000'0000, 0b0000'0000, 0b0000'0000, 0b1111'1111)
|
||||
Rot (0b1111'1111, 0b0000'0000, 0b0000'0000, 0b1111'1111)
|
||||
Grün (0b0000'0000, 0b1111'1111, 0b0000'0000, 0b1111'1111)
|
||||
Blau (0b0000'0000, 0b0000'0000, 0b1111'1111, 0b1111'1111)
|
||||
(Schwarz-Rot) (0b0000'0001, 0b0000'0000, 0b0000'0000, 0b1111'1111)
|
||||
(Schwarz-Grün) (0b0000'0000, 0b0000'0001, 0b0000'0000, 0b1111'1111)
|
||||
(Schwarz-Blau) (0b0000'0000, 0b0000'0000, 0b0000'0001, 0b1111'1111)
|
||||
Transparent (0b0000'0000, 0b0000'0000, 0b0000'0000, 0b0000'0000)
|
||||
-Nach diesem Prinzip können nur die Grundfarben der Additiven Farbdarstellung projeziert werden,
|
||||
dies hat ein sehr bunt beschränktes Farbshema zur folgendem
|
||||
-Es können insgesamt [3*2^(6)]+[2^(6)-1] = 2^(8)-1 Farbstufen dargestellt werden + Transparenz
|
||||
Originator:
|
||||
Jonas Mucke
|
||||
Fit Criterion:
|
||||
-Darstellung von mindestens 250 paarweise verschiedenen Farbstufen
|
||||
-Darstellung einen transparenten Bits (Alpha Kanal = 1)
|
||||
-Verarbeitungsmöglichkeit für 2^10 Pixel in unter 0.1 Sekunde beim Einlesen und Speichern
|
||||
Priority:
|
||||
100
|
||||
Support Material:
|
||||
Ubungsblat_01.pdf
|
||||
Conflicts:
|
||||
Noch keine Einigung auf Farbkodierung (0001A-0001C)-> Rücksprache mit dem Kunden
|
||||
(Ein Byte deckt einen sehr kleinen Farbbereich ab und ist nicht sehr elegant -> Rücksprache mit dem Kunden ob 4 Byte akzeptabel wären)
|
||||
History:
|
||||
-Erstellt am 30.10.2019 um 22:04, von Jonas Mucke
|
||||
64
Abgabe/Aufgabe 1/Req0002/Req_0002.txt
Normal file
64
Abgabe/Aufgabe 1/Req0002/Req_0002.txt
Normal file
@@ -0,0 +1,64 @@
|
||||
Req-ID:
|
||||
0002
|
||||
Req-Type:
|
||||
Funktional
|
||||
Events/UCs:
|
||||
-Bearbeitung des Bildes mit einer Betriebssystem unterstützen Eingabemöglichkeit, zum Beispiel Maus oder Stift bzw. Ähnliche
|
||||
-Bearbeitung mittels verschiedener Zeichen-Tools
|
||||
-Freiwählbare Farbe aus dem möglichen Farbbereich
|
||||
Description:
|
||||
-Ein Farbwert, auch Transparent, welcher durch die genutzte Codierung (siehe Req_0001) darstellbar sein. Dies soll mittels Tools
|
||||
gesetzt werden können, wobei diese spezifizieren was "gesetzt" bedeutet.
|
||||
-Tools:
|
||||
Pinsel:
|
||||
-Der Pinsel ist ein Tool, welches um seinen Mittelpunkt alles in einem gewissen Pixelradius einfärbt.
|
||||
Der Pixelradius geht dabei von 1-Pixel bis zu 10-Pixel.
|
||||
Formen:
|
||||
-Linie:
|
||||
Das Tool Formen (Linie), soll es einem ermöglichen eine Linie in der gewählten Farbe zwischen 2 Punkten zu
|
||||
ziehen. Dabei wird am ersten Punkt angesetzt und zum Zielpunkt gezogen, dabei verändert sich die Linie live.
|
||||
Sobald das Eingabegerät getogglet wird, so wird die aktuelle Stelle als Endpunkt angenommen. Zwischen
|
||||
Start und Endpunkt wird die Linie gezeichnet.
|
||||
Es exestieren verschiedene Linien-Formen:
|
||||
-durchgezogene Linie (eine Linie ohne Lücken)
|
||||
-gestrichelte Linie (auf der Linie werden nur Striche in regelmäßigen Abständen gezeichnet)
|
||||
-gepunktete Linie (auf der Linie wird punktweise zwischen Farbig und Transparent alterniert)
|
||||
Die Linie kann mittels dem Breite-Attribut verändert werden (Breite zwischen 1 und 10 Pixel)
|
||||
-Rechteck:
|
||||
Das Tool Formen (Rechteck), soll es einem ermöglichen ein Rechteck in ein einer gewählten Farbe aufzuspannen.
|
||||
Dabei wird am ersten Punkt angesetzt und zum Zielpunkt gezogen. Dabei verändert sich das Rechteck live.
|
||||
Sobald das Eingabegerät getogglet wird, so wird die aktuelle Stelle als Endpunkt angenommen. Zwiscehn Start und Endpunkt
|
||||
wird das Rechteck aufgespannt.
|
||||
Das Rechteck besitzt 2 Farbattribute, den Rand und die Füllung. Der Rand ist um das Rechteck gesetzt und kann
|
||||
im Bezug auf Breite und Farbe eingesetellt werden. Die Füllung ist innerhalb der Fläche, welcher vom Rand aufgespannt wird,
|
||||
und kann im Bezug auf die Farbe eingestellt werden.
|
||||
-Konvexe Form:
|
||||
Das Tool Formen (Konvex), soll einem ermöglichen beliebige, konvexe Formen zu erstellen.
|
||||
Dabei werden Punkte gesetzt, welche durch toggeln des Eingabegeräts, an der Stelle des Cursors gesetzt werden.
|
||||
Sollte ein Punkt im Radius von 10 Pixel zum Startpunkt sein, so wird die Erstellung abgeschlossen. Danach werden Linien
|
||||
zwischen den gesetzten Punkten (in korrekter Reihenfolge) gezeichnet und der Zwischenraum gefüllt.
|
||||
Dabei besitzt die konvexe Form 2 Farbattribute, den Rand und die Füllung. Der Rand ist um die konvexe Form
|
||||
gesetzt und kann im Bezug auf Breite und Farbe eingesetellt werden. Die Füllung ist innerhalb der Fläche, welche durch den Rand
|
||||
aufgespannt wird, und kann im Bezug auf die Farbe eingestellt werden.
|
||||
FloodFill:
|
||||
-Das Floodfill Tool, bei diesem wird ein Pixel ausgewählt. Alle Pixel die mit diesem Pixel in einer Äquivalenzklasse
|
||||
im Bezug auf Farbe und Nachbarschafts-Relation stehen, werden in die gewählte Farbe eingefärbt.
|
||||
Einfarbig:
|
||||
-Das Einfarbig Tool färbt das gesamte Bild in die gewählte Farbe ein.
|
||||
Reverse:
|
||||
-Der letzte State des Bildes wird wieder hergestellt. (Speicherung von mindestens 10 alten Zuständen).
|
||||
Originator:
|
||||
Jonas Mucke
|
||||
Fit Criterion:
|
||||
-Das Setzten eines Pixels, in einer beliebigen Farbe, funktioniert in 99,9% in unter 0.01 Sekunden.
|
||||
-Der Vollständige Farbbreich ist frei wählbar.
|
||||
-Es müssen mindestens 3 Tools benutzbar sein, das bedeutet eine 99,9% richtiges Verhalten in unter 0.1 Sekunden.
|
||||
-Tools besitzen in 100% der Fälle das gewünschte Verhalten
|
||||
Priority:
|
||||
80
|
||||
Support Material:
|
||||
Ubungsblat_01.pdf
|
||||
Conflicts:
|
||||
-keine Bekannten Konflikte(stand: 30.10.2019 22:10)
|
||||
History:
|
||||
-Erstellt am 30.10.2019 um 22:10, von Jonas Mucke
|
||||
@@ -0,0 +1,303 @@
|
||||
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(abstrakt)
|
||||
Vererbung:
|
||||
-Tool
|
||||
Verantwortlichkeiten:
|
||||
-Auswählen von einem Bereich(beliebiger Bereich)
|
||||
Kollaborationen:
|
||||
- Der Anwender möchte ein Bereich 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(abstrakt)
|
||||
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 die Helligkeits Werte
|
||||
Kollaboration:
|
||||
Der Anwender möchte das Bild verdunkeln 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 Managen dieser
|
||||
Kollaborationen:
|
||||
-Der User möchte ein 3D Objekt laden
|
||||
|
||||
Klassen: 3D-Inspector
|
||||
Vererbung:
|
||||
-
|
||||
Verantwortlichkeiten:
|
||||
-Darstellen eines 3D Objekts und der Projezierung (RayTracer)
|
||||
Kollaborationen:
|
||||
-Der User möchte ein 3D Objekt auf das Layer projezieren
|
||||
|
||||
Klasse: Layer
|
||||
Vererbung:
|
||||
-
|
||||
Verantwortlichkeiten:
|
||||
-Darstellung eines Bildes und Sichtbarkeit 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
|
||||
-Projektion auf ein Bild
|
||||
Kollaborationen:
|
||||
-Der User möchte ein Layer über das andere schieben
|
||||
-Der User möchte die Layer löschen
|
||||
-neues Layer erstellen
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user