diff --git a/Bastian/Farbtausch.txt b/Bastian/Farbtausch.txt deleted file mode 100644 index 5693be8..0000000 --- a/Bastian/Farbtausch.txt +++ /dev/null @@ -1,20 +0,0 @@ -Req-ID: 0001 -Req-Type: Funktionale -Events/UCs: - -Bearbeitung des Bildes via Maus oder Stift (Zeichenmöglichkeit) - -Farbänderung des gesamten Bildes oder eines Areals -Description: - -bei der Interaktion mit Maus, Stift oder weiterer Eingabemöglichkeit (support durch OS), soll die Farbe des Pixels auf eine ausgewählte Farbe des von uns unterstützen Farbbereichs wechseln - -Gesamtanpassung und -einfärbung des gesamten Bildes oder des Areals in eine unterstützten Farbe -Originator: Shadi -Fit Criterion: - -Visuelle Test, ob sich ein Pixelbundle (je nach Größe des Pinsels) farblich verändert - -Test mittels simulierter Eingabe und auslesen durch Unittest, ob die Eingabe wie gewünscht verarbeitet wurde -Priority: - - 80/100 -Support Material: - -Uebungsblat_01.pdf -Conflicts: - -keine Bekannten Konflikte (stand: 28.10.2019 16:16) -History: - -Erstellt am 28.10.2019 um 16:16, von Bastian Schindler \ No newline at end of file diff --git a/Bastian/Speicherung_mit_1_Byte.txt b/Bastian/Speicherung_mit_1_Byte.txt deleted file mode 100644 index 4ac0127..0000000 --- a/Bastian/Speicherung_mit_1_Byte.txt +++ /dev/null @@ -1,38 +0,0 @@ -Req-ID: 0002 -Req-Type: Non-Funktional -Events/UCs: Speicherplatz pro Pixel sowie Dateiformate -Description: - -Bild soll mittels eines Bytes pro Pixel dargestellt werden - -Bit 7-8 - 4 Codierungsmöglichkeiten: - 00 - transparent - 01 - Rot - 10 - Grün - 11 - Blau - -Bits 1-6: - Farbkodierung bei RGB Kanal - 111111 - intensiv maximum - 000000 - intensiv minimum (schwarz) - - -Alle Bits für Farbcodierung - 1-2 Bit Rot - 3-4 Bit Grün - 5-6 Bit Blau - 7-8 Bit Transparent - Daraus folgen 64 Farben mit je 4 Transparenzstufen -Originator: Shadi -Fit Criterion: - -Visuelle Test, über volles Farbspektrum, am festen, flüssiger Farbübergang von blass zu intensiv jeder Farbe -Customer Satisfaktion: - -nicht bekannt -Customer Dissatisfaktion: - -nicht bekannt -Priority: - -100/100 - -grundbaustein für weitere Verarbeitung -Support Material: - -Uebungsblatt_01.pdf -Conflict: - -keine volle Farbdarstellung in Form der Farbmushung, rücksprache mit dem Kunden um volles Spektrum zu erlangen - -Wunsch: Arbeit mit 4 Byte pro Pixel Dateien -History: - -Erstellt am 28.10.2019 um 17:52, von Bastian Schindler \ No newline at end of file diff --git a/Conrad/req_1.txt b/Conrad/req_1.txt deleted file mode 100644 index 6c4e350..0000000 --- a/Conrad/req_1.txt +++ /dev/null @@ -1,21 +0,0 @@ -Req-ID: 0001 -Req-Type: Funktionale Anforderung -Events/UCs: - - Zusammenfügen von zwei Bildern zu einem neuen Bild -Description: - - 2 Bilder sollen in das Programm eingefügt werden und -optional nach weiterer Bearbeitung- zu einem neuen zusammengefügt werden können - - Der Vorgang des "Zusammenfügens" soll innerhalb von .2 Sekunden abgeschlossen sein -Originator: Kunde/ Auftraggeber -Fit Criteria: - - Test, ob der Vorgang in 0.2 Sekunden ausgeführt wurde (ab der Auswahl der beiden Bilder) - - Warnung beim Überschreiben eines der Testbilder mit dem neuen Bild - - Test mittels zweier Testbilder, die eingefügt werden und dann -zu einem neuen- gespeichert werden - - Fehlermeldungen bei Problemen (Bild zu groß für Speicher usw.) innerhalb der angegebenen Zeit -Priority: - - 100/100 -Support Material: - - Übungsblatt_01.pdf -Conflicts: - - keine Konflikte (Stand: 28.10.2019 20:00) -History: - - 28.10.2019 20:00| Anforderung erstellt | Conrad \ No newline at end of file diff --git a/Conrad/req_2.txt b/Conrad/req_2.txt deleted file mode 100644 index a544123..0000000 --- a/Conrad/req_2.txt +++ /dev/null @@ -1,18 +0,0 @@ -Req-ID: 0002 -Req-Type: Funktionale Anforderung -Events/UCs: - - Abfragen der Bilddimensionen -Description: - - Der Benutzer soll über eine Funktion die Dimensionen des aktuellen Bildes abfragen können - - Die Bilddimensionen werden aus der Höhe und der Breite der Arbeitsfläche errechnet werden -Originator: Kunde/ Auftraggeber -Fit Criteria: - - Test mit einem Bild, dessen Größe vorher bekannt ist --> Vergleich mit vom Programm errechneten Dimensionen -Priority: - - 100/100 -Support Material: - - Übungsblatt_01.pdf -Conflicts: - - keine Konflikte (Stand: 28.10.2019 20:00) -History: - - 28.10.2019 20:00| Anforderung erstellt | Conrad \ No newline at end of file diff --git a/Jan/1-bitproP.txt b/Jan/1-bitproP.txt deleted file mode 100644 index 9c4aaa6..0000000 --- a/Jan/1-bitproP.txt +++ /dev/null @@ -1,21 +0,0 @@ -Req-ID: 0002 -Req-Type: Nicht-Funktionale -Events/UCs: - - Speicherung des Bildes, intern und extern -Description: - - 1 byte pro Pixel - - Standart-Codierung(ohne Alpha-Kanal) - - 8 bit = 2^8 Möglichkeiten, also 256 Farben (Tabelle mit zugehörigen Farbwerten als Umsetzung) - - Codierung mit Alpha-Kanal: - - 7 bit Farbe also 2^7 Möglichkeiten, also 128 Farben, 1 bit als Alphakennung -Originator: Shadi -Fit Criterion: - - Test der Farbtiefe und Übergänge zwischen den Farben -Priority: - - 100/100 -Support Material: - -Ubungsblat_01.pdf -Conflicts: - -keine Bekannten Konflikte(stand: 28.10.2019 16:13) -History: - -Erstellt am 28.10.2019 um 16:13, von Jan Schuffenhauer \ No newline at end of file diff --git a/Jan/setPixelvalue.txt b/Jan/setPixelvalue.txt deleted file mode 100644 index bb61571..0000000 --- a/Jan/setPixelvalue.txt +++ /dev/null @@ -1,26 +0,0 @@ -Req-ID: 0001 -Req-Type: Funktionale -Events/UCs: - - Veränderung des Bildes und Visualisierung -Description: - - Setzen der Farbwerte im Bild - - als Linie - - Vector von Pixel zu Pixel - - als direkte Eingabe - - Ändern der Werte direkt im Bild selbst - - als Geometrisches Objekt (Dreieck, Kreis, Vieleck) - - Ausfüllen der Fläche zwischen den Eckpunkten / (im Kreis innerhalb des Außenkreises) - - als Fülltool - - Wenn Maus gedrückt wird, um Pixel herum alle Pixel auf den gewünschten Farbwert ändern, falls sie den selben wie der Ausgangspixel haben -Originator: Shadi -Fit Criterion: - - Eingabe und Bearbeiten muss in 0.2 s eine Reaktion auslösen. - - Farbwerte müssen in 99,99% aller Fälle korrekt geändert werden. -Priority: - - 80/100 -Support Material: - -Ubungsblat_01.pdf -Conflicts: - -keine Bekannten Konflikte(stand: 28.10.2019 16:22) -History: - -Erstellt am 28.10.2019 um 16:22, von Jan Schuffenhauer \ No newline at end of file diff --git a/Mucke/1BytePixel.txt b/Mucke/1BytePixel.txt deleted file mode 100644 index 51462aa..0000000 --- a/Mucke/1BytePixel.txt +++ /dev/null @@ -1,36 +0,0 @@ -Req-ID: 0002 -Req-Type: Funktional -Events/UCs: Speicherung des Bildes, sowohl intern als auch als externen Dateiformat -Description: - -Bild soll mittels eines Bytes dargestellt werden - -Byte 7-8 - 4 codierungsmöglichkeiten: - 00 - transparent - 01 - Rot - 02 - Grün - 03 - Blau - -Bytes 1-6: - Farbkodierung bei RGB Kanal - 111111 - intensiv maximum - 000000 - intensiv minimum (schwarz) - - Farbkodierung bei Alpha Kanal - 0***** - Pixel wird als transparent angesehen - 1***** - Pixel wird als Graustufe angesehen - 11111 - Pixel ist weiß - 00000 - Pixel ist schwarz -Originator: Shadi -Fit Criterion: - -Visuelle Test, über volles farbspektrum, am festen, flüssiger Farbübergang von blass zu intensiv jeder Farbe -Customer Satisfaktion: - -nicht bekannt -Customer Dissatisfaktion: - -nicht bekannt -Priority: - -100/100 -grundbaustein für weitere Verarbeitung -Support Material: - -Ubungsblat_01.pdf -Conflict: - -keine volle Farbdarstellung, rücksprache mit dem Kunden um volles Spektrum zu erlangen und um auch gängige Dateiformate wie png bearbeiten zu können - -wunsch:generell arbeit mit png datein -History: - -Erstellt am 25.10.2019 um 17:52, von Jonas Mucke \ No newline at end of file diff --git a/Mucke/Farbtausch.txt b/Mucke/Farbtausch.txt deleted file mode 100644 index 5c3a87a..0000000 --- a/Mucke/Farbtausch.txt +++ /dev/null @@ -1,21 +0,0 @@ -Req-ID: 0001 -Req-Type: Funktionale -Events/UCs: - -Bearbeitung des Bildes via Maus oder Stift - -Farbänderung des Gesamten bildes - -Zeichenmöglichkeit -Description: - -bei der Interaktion mit Maus, Stift oder weiterer Eingabemöglichkeit (support durch OS), soll die Farbe des Pixels auf eine ausgewählte Farbe des von uns unterstützen Farbbereichs wechseln - -Gesamtanpassung und einfärbung des gesamten bildes in eine unterstütze Farbe -Originator: Shadi -Fit Criterion: - -Visuelle Test, ob sich ein Pixelbundle (je nach größe eines pinsels) farblich verändert - -test mittels simulierter eingabe und auslesen durch unit test, ob die eingabe wie gewünscht verarbeitet wurde -Priority: - - 80/100 -Support Material: - -Ubungsblat_01.pdf -Conflicts: - -keine Bekannten Konflikte(stand: 25.10.2019 17:24) -History: - -Erstellt am 25.10.2019 um 17:24, von Jonas Mucke \ No newline at end of file diff --git a/Paul/UML.png b/Paul/UML.png new file mode 100644 index 0000000..10af415 Binary files /dev/null and b/Paul/UML.png differ diff --git a/Paul/UML.uxf b/Paul/UML.uxf new file mode 100644 index 0000000..eb2de4c --- /dev/null +++ b/Paul/UML.uxf @@ -0,0 +1,541 @@ + + + 9 + + UMLClass + + 603 + 36 + 171 + 81 + + /*Image*/ +-- ++pixel_data: byte[][] ++size: Vector2 +-- ++clear_image(Color) + + + + UMLClass + + 864 + 81 + 162 + 36 + + *RasterImage* +-- +-- + + + + UMLClass + + 1161 + 45 + 189 + 99 + + *ShapedImage* +-- +-polygon_data: byte[][] +-- ++create_vertex(Vector2) ++remove_vertex(Vector2) ++clear_polygon() + + + + UMLClass + + 513 + 270 + 261 + 171 + + /*Tool*/ +-- ++effected_area_border_color: Color ++effected_area_border_radius: int ++effected_area_border_line_type: LineType ++name: String ++icon: Sprite ++tooltip: String ++description: String +... +-- +/+handleImageClick(Vector2): void/ + + + + Relation + + 765 + 90 + 117 + 27 + + lt=<<- + 10.0;10.0;110.0;10.0 + + + Relation + + 1017 + 90 + 162 + 27 + + lt=<<- + 10.0;10.0;160.0;10.0 + + + UMLClass + + 585 + 567 + 207 + 153 + + /*SetColorTool*/ +-- ++colors: Color[255] ++selected_colors: Color[2] +-- ++renderColorPalette(): void ++setMainColor(Color): void ++setSecondaryColor(Color): void ++getMainColor(): Color ++getSecondaryColor(): Color + + + + UMLClass + + 864 + 243 + 225 + 117 + + *HistoryTool* +-- +-history: HistoryAction[20] +-current_location: int +-- ++undo(): bool ++redo(): bool ++clearRedo(): void ++addUndo(HistoryAction): void + + + + UMLClass + + 198 + 36 + 189 + 117 + + <<Enumeration>> +*LineType* +-- + Solid + Dotted + Dashed + LongDash + ... + + + + Relation + + 1080 + 261 + 99 + 27 + + lt=<<<<- + 10.0;10.0;90.0;10.0 + + + UMLClass + + 1161 + 261 + 171 + 45 + + *HistoryAction* +-- ++string action_data[] +-- + + + + UMLClass + + 1422 + 279 + 189 + 99 + + <<Enumeration>> +*HistoryActionType* +-- + ColorChange + Deletion + PolygonVertex + .... + + + + Relation + + 1323 + 279 + 117 + 36 + + lt=<- ++action_type + 110.0;20.0;10.0;20.0 + + + UMLClass + + 864 + 657 + 225 + 45 + + *FloodFillTool* +-- +-- ++handleImageClick(Vector2): void + + + + UMLClass + + 864 + 729 + 225 + 45 + + *PlainTool* +-- +-- ++handleImageClick(Vector2): void + + + + UMLClass + + 864 + 540 + 225 + 90 + + /*FormsTool*/ +-- ++edge_display_line_type: LineType ++edge_display_color: Color ++edge_display_thickness: int +-- + + + + UMLClass + + 864 + 450 + 225 + 63 + + *PenTool* +-- +-radius: int +-- ++handleImageClick(Vector2): void + + + + UMLClass + + 1170 + 504 + 234 + 90 + + *RectangleTool* +-- ++edge_thickness: int ++edge_line_type: LineType +-- ++handleImageClick(Vector2): void + + + + UMLClass + + 1170 + 612 + 216 + 72 + + *LineTool* +-- ++thickness: int ++line_type: LineType +-- ++handleImageClick(Vector2): void + + + + UMLClass + + 1170 + 396 + 234 + 90 + + *ConvexFormsTool* +-- ++edge_thickness: int ++edge_line_type: LineType +-- ++handleImageClick(Vector2): void + + + + UMLClass + + 1170 + 702 + 234 + 90 + + *PolygonTool* +-- ++edge_thickness: int ++edge_line_type: LineType +-- ++handleImageClick(Vector2): void + + + + Relation + + 783 + 450 + 99 + 144 + + lt=<<- + 10.0;140.0;90.0;10.0 + + + Relation + + 783 + 540 + 99 + 99 + + lt=<<- + 10.0;90.0;90.0;10.0 + + + Relation + + 783 + 657 + 99 + 27 + + lt=<<- + 10.0;10.0;90.0;10.0 + + + Relation + + 783 + 702 + 99 + 54 + + lt=<<- + 10.0;10.0;90.0;40.0 + + + Relation + + 666 + 432 + 36 + 153 + + lt=<<- + 20.0;10.0;10.0;150.0 + + + Relation + + 1080 + 432 + 108 + 144 + + lt=<<- + 10.0;140.0;100.0;10.0 + + + Relation + + 1080 + 531 + 108 + 63 + + lt=<<- + 10.0;50.0;100.0;10.0 + + + Relation + + 1080 + 585 + 108 + 63 + + lt=<<- + 10.0;10.0;100.0;50.0 + + + Relation + + 1080 + 603 + 108 + 135 + + lt=<<- + 10.0;10.0;100.0;130.0 + + + Relation + + 765 + 252 + 117 + 72 + + lt=<<- + 10.0;60.0;110.0;10.0 + + + UMLClass + + 1179 + 810 + 225 + 81 + + *CircleTool* +-- ++edge_thickness: int ++edge_line_type: LineType +-- ++handleImageClick(Vector2): void + + + + Relation + + 1071 + 621 + 126 + 216 + + lt=<<- + 10.0;10.0;120.0;220.0 + + + UMLClass + + 261 + 585 + 225 + 63 + + *MergeTool* +-- ++import_file: DataStream<File> +-- ++handleImageClick(Vector2): void + + + + UMLClass + + 198 + 216 + 225 + 45 + + *RotateTool* +-- +-- ++handleImageClick(Vector2): void + + + + UMLClass + + 198 + 324 + 225 + 45 + + *ResizeTool* +-- +-- ++handleImageClick(Vector2): void + + + + Relation + + 414 + 225 + 117 + 99 + + lt=<<- + 110.0;90.0;10.0;10.0 + + + Relation + + 414 + 333 + 117 + 45 + + lt=<<- + 110.0;30.0;10.0;10.0 + + + Relation + + 477 + 405 + 54 + 234 + + lt=<<- + 40.0;10.0;10.0;240.0 + + diff --git a/REAMDE.md b/REAMDE.md new file mode 100644 index 0000000..e69de29 diff --git a/UML/first_draft.uxf b/UML/first_draft.uxf new file mode 100644 index 0000000..e0818f9 --- /dev/null +++ b/UML/first_draft.uxf @@ -0,0 +1,435 @@ + + + // Uncomment the following line to change the fontsize and font: +// fontsize=14 +// fontfamily=SansSerif //possible: SansSerif,Serif,Monospaced + + 10 + + UMLClass + + 390 + 230 + 230 + 120 + + Tool::Set-Color-Tool +-- + +-- +/Färben(Layer, Koordinaten, Farbe)/ + + + + + UMLClass + + 1110 + 60 + 210 + 190 + + Bild +-- +bildID +layers +info[layer][info] +-- +/Anzeigen()/ +/Speichern()/ +/Laden()/ + + + + UMLClass + + 1000 + 290 + 210 + 70 + + Bild::RasterImage +-- +tranzparenzInfo + + + + Relation + + 1100 + 240 + 120 + 70 + + lt=<. + 100.0;10.0;10.0;50.0 + + + UMLClass + + 1260 + 290 + 210 + 70 + + Bild::ShapedImage +-- + + + + + Relation + + 1220 + 240 + 170 + 70 + + lt=<. + 10.0;10.0;150.0;50.0 + + + UMLClass + + 130 + 90 + 210 + 110 + + <<Class>> +FarbCode +-- +ByteCode +DisplayName + + + + + + UMLClass + + 570 + 30 + 210 + 120 + + Tool +-- +toolID +-- +/Anwenden(Bild)/ + + + + + UMLClass + + 750 + 180 + 210 + 120 + + Tool::ToolHistory +-- +schrittzahl +schrittdaten[schritt][daten] +-- +/SchrittHinzufügen(Tool, Aktion)/ +/Rückgängig()/ +/Vorwärts()/ + + + + + Relation + + 680 + 140 + 200 + 60 + + lt=<. + 10.0;10.0;180.0;40.0 + + + Relation + + 500 + 140 + 180 + 110 + + lt=<. + 160.0;10.0;10.0;90.0 + + + UMLClass + + 60 + 430 + 230 + 100 + + Set-Color-Tool::Pen +-- + +-- +/Draw(Koordinaten, Farbe)/ + + + + + UMLClass + + 520 + 420 + 230 + 120 + + Tool::Drehen +-- + +-- +/Drehen(Koordinaten, Modus)/ + + + + + UMLClass + + 760 + 420 + 230 + 120 + + Tool::Resize +-- + +-- +/Resize(Faktor)/ + + + + + UMLClass + + 1000 + 420 + 230 + 120 + + Tool::Zusammenfügen +-- + +-- +/Merge(Bild)/ + + + + + Relation + + 170 + 340 + 350 + 110 + + lt=<. + 330.0;10.0;300.0;80.0;10.0;90.0 + + + Relation + + 630 + 140 + 120 + 300 + + lt=<. + 50.0;10.0;100.0;220.0;10.0;280.0 + + + Relation + + 670 + 140 + 240 + 300 + + lt=<. + 10.0;10.0;60.0;220.0;220.0;280.0 + + + Relation + + 670 + 140 + 470 + 300 + + lt=<. + 10.0;10.0;60.0;220.0;450.0;280.0 + + + UMLClass + + 60 + 540 + 230 + 100 + + Set-Color-Tool::FloodFill +-- + +-- +/Draw(Koordinaten, Farbe)/ + + + + + Relation + + 160 + 340 + 360 + 220 + + lt=<. + 340.0;10.0;270.0;180.0;10.0;200.0 + + + UMLClass + + 60 + 650 + 230 + 100 + + Set-Color-Tool::Plain +-- + +-- +/Draw(Farbe)/ + + + + + Relation + + 160 + 340 + 360 + 330 + + lt=<. + 340.0;10.0;220.0;300.0;10.0;310.0 + + + UMLClass + + 450 + 590 + 230 + 100 + + Set-Color-Tool::Formen +-- + +-- +/Draw(Koordinaten, Objekt)/ + + + + + Relation + + 410 + 340 + 190 + 270 + + lt=<. + 90.0;10.0;10.0;200.0;170.0;250.0 + + + UMLClass + + 340 + 750 + 250 + 100 + + Formen::Linien +-- + +-- +/Line(Koordinaten, Dicke, Farbe, Typ)/ + + + + + Relation + + 470 + 680 + 120 + 90 + + lt=<. + 100.0;10.0;10.0;70.0 + + + UMLClass + + 600 + 750 + 410 + 100 + + Formen::Rechteck +-- + +-- +/Rectangle(Koordinaten, Modus, Farbe, Randfarbe, Randbreite)/ + + + + + Relation + + 560 + 680 + 180 + 90 + + lt=<. + 10.0;10.0;160.0;70.0 + + + UMLClass + + 1020 + 750 + 390 + 100 + + Formen::KonvexeForm +-- + +-- +/Convex(Koordinaten, Modus, Farbe, Randfarbe, Randbreite)/ + + + + + Relation + + 560 + 680 + 590 + 90 + + lt=<. + 10.0;10.0;570.0;70.0 + + diff --git a/UML/second_draft.uxf b/UML/second_draft.uxf new file mode 100644 index 0000000..59ecfbe --- /dev/null +++ b/UML/second_draft.uxf @@ -0,0 +1,505 @@ + + + // Uncomment the following line to change the fontsize and font: +// fontsize=14 +// fontfamily=SansSerif //possible: SansSerif,Serif,Monospaced + + 10 + + UMLClass + + 400 + 230 + 230 + 120 + + Tool::Set-Color-Tool +-- + +-- +/Färben(Layer, Koordinaten, Farbe)/ + + + + + UMLClass + + 1120 + 60 + 210 + 190 + + <<Interface>> +Bild +-- +bildID +layers +info[layer][info] +-- +/Anzeigen()/ +/Speichern()/ +/Laden()/ + + + + UMLClass + + 1010 + 290 + 210 + 70 + + Bild::RasterImage +-- + + + + + UMLClass + + 1290 + 460 + 210 + 70 + + Bild::ShapedImage +-- + + + + + UMLClass + + 140 + 90 + 210 + 110 + + <<Class>> +FarbCode +-- +ByteCode +DisplayName + + + + + + UMLClass + + 580 + 30 + 210 + 120 + + <<Interface>> +Tool +-- +toolID +-- +/Anwenden(Bild)/ + + + + + UMLClass + + 760 + 180 + 210 + 120 + + Tool::ToolHistory +-- +schrittzahl +schrittdaten[schritt][daten] +-- +/SchrittHinzufügen(Tool, Aktion)/ +/Rückgängig()/ +/Vorwärts()/ + + + + + UMLClass + + 70 + 430 + 230 + 100 + + Set-Color-Tool::Pen +-- + +-- +/Draw(Koordinaten, Farbe)/ + + + + + UMLClass + + 530 + 420 + 230 + 120 + + Tool::Drehen +-- + +-- +/Drehen(Koordinaten, Modus)/ + + + + + UMLClass + + 770 + 420 + 230 + 120 + + Tool::Resize +-- + +-- +/Resize(Faktor)/ + + + + + UMLClass + + 1010 + 420 + 230 + 120 + + Tool::Zusammenfügen +-- + +-- +/Merge(Bild)/ + + + + + UMLClass + + 70 + 540 + 230 + 100 + + Set-Color-Tool::FloodFill +-- + +-- +/Draw(Koordinaten, Farbe)/ + + + + + UMLClass + + 70 + 650 + 230 + 100 + + Set-Color-Tool::Plain +-- + +-- +/Draw(Farbe)/ + + + + + UMLClass + + 460 + 590 + 230 + 100 + + Set-Color-Tool::Formen +-- + +-- +/Draw(Koordinaten, Objekt)/ + + + + + UMLClass + + 350 + 750 + 250 + 100 + + Formen::Linien +-- + +-- +/Line(Koordinaten, Dicke, Farbe, Typ)/ + + + + + UMLClass + + 610 + 750 + 410 + 100 + + Formen::Rechteck +-- + +-- +/Rectangle(Koordinaten, Modus, Farbe, Randfarbe, Randbreite)/ + + + + + UMLClass + + 1030 + 750 + 390 + 100 + + Formen::KonvexeForm +-- + +-- +/Convex(Koordinaten, Modus, Farbe, Randfarbe, Randbreite)/ + + + + + UMLClass + + 1320 + 330 + 210 + 90 + + Bild::Dimensionen +-- +height +width +-- +/ausgeben()/ + + + + + + Relation + + 190 + 340 + 340 + 110 + + lt=<<- + 320.0;10.0;290.0;90.0;10.0;90.0 + + + Relation + + 180 + 340 + 350 + 330 + + lt=<<- + 330.0;10.0;240.0;240.0;240.0;310.0;10.0;310.0 + + + Relation + + 170 + 340 + 360 + 220 + + lt=<<- + 340.0;10.0;270.0;190.0;10.0;200.0 + + + Relation + + 430 + 340 + 160 + 270 + + lt=<<- + 80.0;10.0;10.0;190.0;140.0;250.0 + + + Relation + + 500 + 680 + 100 + 90 + + lt=<<- + 80.0;10.0;10.0;70.0 + + + Relation + + 570 + 680 + 270 + 90 + + lt=<<- + 10.0;10.0;250.0;70.0 + + + Relation + + 570 + 680 + 690 + 90 + + lt=<<- + 10.0;10.0;670.0;70.0 + + + Relation + + 630 + 140 + 100 + 300 + + lt=<<- + 60.0;10.0;80.0;180.0;10.0;280.0 + + + Relation + + 680 + 140 + 220 + 300 + + lt=<<- + 10.0;10.0;30.0;180.0;200.0;280.0 + + + Relation + + 680 + 140 + 460 + 300 + + lt=<<- + 10.0;10.0;30.0;180.0;440.0;280.0 + + + Relation + + 1230 + 240 + 210 + 110 + + lt=<<- + 10.0;10.0;190.0;90.0 + + + Relation + + 1100 + 240 + 160 + 70 + + lt=<<- + 140.0;10.0;10.0;50.0 + + + Relation + + 1110 + 350 + 310 + 130 + + lt=<<- + 10.0;10.0;290.0;110.0 + + + Relation + + 500 + 140 + 210 + 110 + + lt=<<- + 190.0;10.0;10.0;90.0 + + + Relation + + 680 + 140 + 210 + 60 + + lt=<<- + 10.0;10.0;190.0;40.0 + + + UMLClass + + 70 + 830 + 270 + 100 + + Set-Color-Tool::Kreis +-- + +-- +/Draw(Koordinaten,Radius1,Radius2,Farbe)/ + + + + + Relation + + 170 + 340 + 360 + 510 + + lt=<<- + 340.0;10.0;250.0;240.0;250.0;360.0;160.0;360.0;150.0;450.0;10.0;450.0;10.0;490.0 + + + UMLNote + + 1360 + 500 + 140 + 70 + + Tranzperens beachten +bg=blue + + + diff --git a/Use Case (Bastian, Jan)/IntelliPhoto.uxf b/Use Case (Bastian, Jan)/IntelliPhoto.uxf new file mode 100644 index 0000000..3458c0d --- /dev/null +++ b/Use Case (Bastian, Jan)/IntelliPhoto.uxf @@ -0,0 +1,405 @@ + + + 8 + + UMLActor + + 520 + 272 + 80 + 88 + + 3D-Künstler +bg=green + + + + UMLActor + + 544 + 392 + 64 + 88 + + Einsteiger +bg=red + + + + UMLUseCase + + 816 + 232 + 96 + 56 + + Zusammenfügen +von Bildern +bg=red + + + + UMLUseCase + + 816 + 296 + 96 + 56 + + Ändern der +Bilderauflösung +bg=red + + + + UMLUseCase + + 824 + 376 + 96 + 56 + + Drehen von +Bildern +bg=red + + + + UMLUseCase + + 816 + 536 + 96 + 56 + + Retuschieren +der Bilder +bg=magenta + + + + UMLActor + + 536 + 544 + 80 + 88 + + Casual User +bg=red + + + + Relation + + 568 + 256 + 264 + 152 + + + 310.0;10.0;10.0;170.0 + + + Relation + + 568 + 336 + 280 + 72 + + + 330.0;10.0;10.0;70.0 + + + Relation + + 568 + 376 + 272 + 40 + + + 320.0;30.0;10.0;20.0 + + + Relation + + 568 + 256 + 264 + 304 + + + 310.0;10.0;10.0;360.0 + + + Relation + + 568 + 336 + 280 + 224 + + + 330.0;10.0;10.0;260.0 + + + Relation + + 568 + 392 + 272 + 168 + + + 320.0;10.0;10.0;190.0 + + + Relation + + 568 + 536 + 264 + 40 + + + 310.0;30.0;10.0;10.0 + + + Relation + + 576 + 560 + 256 + 160 + + + 300.0;10.0;10.0;180.0 + + + UMLUseCase + + 816 + 744 + 96 + 56 + + Korrektur- +werkzeuge +bg=blue + + + + UMLNote + + 808 + 832 + 112 + 56 + + Helligkeit/Kontrast +Farbton/Sättigung +Gradationskurven +bg=blue + + + + Relation + + 576 + 696 + 256 + 88 + + + 300.0;90.0;10.0;10.0 + + + Relation + + 856 + 792 + 24 + 56 + + + 10.0;10.0;10.0;50.0 + + + UMLUseCase + + 816 + 616 + 96 + 56 + + Pinsel +bg=blue + + + + UMLUseCase + + 816 + 680 + 96 + 56 + + Auswahl- +werkzeuge +bg=blue + + + + Relation + + 576 + 688 + 256 + 32 + + + 300.0;20.0;10.0;20.0 + + + Relation + + 576 + 632 + 256 + 88 + + + 300.0;10.0;10.0;90.0 + + + UMLActor + + 512 + 704 + 144 + 88 + + Freiberufliche Fotografen +bg=blue + + + + UMLUseCase + + 824 + 456 + 96 + 56 + + Layerstruktur +bg=dark_gray + + + + Relation + + 552 + 184 + 280 + 104 + + + 330.0;10.0;10.0;110.0 + + + UMLUseCase + + 816 + 168 + 96 + 56 + + Schnittstelle +für 3D-Modelle +bg=green + + + + Relation + + 552 + 112 + 280 + 176 + + + 330.0;10.0;10.0;200.0 + + + UMLUseCase + + 816 + 96 + 96 + 56 + + Erzeugen von +3D-Objekten +bg=green + + + + Relation + + 576 + 480 + 264 + 240 + + + 310.0;10.0;10.0;280.0 + + + Relation + + 568 + 480 + 272 + 80 + + + 320.0;10.0;10.0;80.0 + + + Relation + + 568 + 384 + 272 + 120 + + + 320.0;130.0;10.0;10.0 + + + Relation + + 552 + 264 + 288 + 240 + + + 340.0;280.0;10.0;10.0 + + + UMLClass + + 760 + 56 + 216 + 864 + + lw=2 +IntelliPhoto Benchmark 1.0 +bg=gray + + + diff --git a/Zusammenfassung/Klassen_Verantwortlichkeiten_und_Kollaborationen.txt b/Zusammenfassung/Klassen_Verantwortlichkeiten_und_Kollaborationen.txt new file mode 100644 index 0000000..6c77ca5 --- /dev/null +++ b/Zusammenfassung/Klassen_Verantwortlichkeiten_und_Kollaborationen.txt @@ -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 + + + + + \ No newline at end of file