diff --git a/docs/Entwicklerhandbuch/Entwicklerhandbuch.docx b/docs/Entwicklerhandbuch/Entwicklerhandbuch.docx new file mode 100644 index 0000000..82fdc96 Binary files /dev/null and b/docs/Entwicklerhandbuch/Entwicklerhandbuch.docx differ diff --git a/docs/Entwicklerhandbuch/Entwicklerhandbuch.pdf b/docs/Entwicklerhandbuch/Entwicklerhandbuch.pdf new file mode 100644 index 0000000..d975634 Binary files /dev/null and b/docs/Entwicklerhandbuch/Entwicklerhandbuch.pdf differ diff --git a/docs/Entwicklerhandbuch/Sequenzdiagram-PenTool.svg b/docs/Entwicklerhandbuch/Sequenzdiagram-PenTool.svg new file mode 100644 index 0000000..ad9c491 --- /dev/null +++ b/docs/Entwicklerhandbuch/Sequenzdiagram-PenTool.svg @@ -0,0 +1,261 @@ + + +altloopuntil MouseLeftReleased(event) or MouseRightPressed(event):IntelliTool:IntelliToolPen:PaintingArea()()()updateInterface()updateInterface()DeleteSubLayer()MouseRightPressed(event)MouseRightPressed(event)MouseRightPressed(event)CreateSubLayer()MergeSubLayer()MouseLeftReleased(event)MouseLeftReleased(event)MouseLeftReleased(event)DrwaLineToCoordinates()MouseMove(coordinates)MouseMove(coordinates)MouseMove(event)MouseLeftPressed(event)MouseLeftPressed(event)updateInterface()MouseLeftPressed(event) diff --git a/docs/Entwicklerhandbuch/Sequenzdiagram-PlainTool.svg b/docs/Entwicklerhandbuch/Sequenzdiagram-PlainTool.svg new file mode 100644 index 0000000..074bb72 --- /dev/null +++ b/docs/Entwicklerhandbuch/Sequenzdiagram-PlainTool.svg @@ -0,0 +1,211 @@ + + +alt:IntelliTool:IntelliToolPlain:PaintingArea()()CreateSubLayer()MouseRightPressed(event)MouseRightPressed(event)DeleteSubLayer()updateInterface()MouseRightPressed(event)updateInterface()MergeSubLayer()MouseLeftReleased(event)MouseLeftReleased(event)MouseLeftReleased(event)CreateSubLayer()MouseLeftPressed(event)MouseLeftPressed(event)MouseLeftPressed(event) diff --git a/docs/Entwicklerhandbuch/UML.svg b/docs/Entwicklerhandbuch/UML.svg new file mode 100644 index 0000000..4e16946 --- /dev/null +++ b/docs/Entwicklerhandbuch/UML.svg @@ -0,0 +1,796 @@ + + +«NAMESPACE»IntelliDatamanager ::loadProject(Canvas, filePath): Boolean ::saveProject(Canvas, filePath): BooleanIntelliTriangulation+isInTriangle(tri, P): Boolean+calculateTriangles(polyPoints): vector<Triangle>+isInPolygon(triangles, point): BooleanIntelliRenderSettings-fastRendering: Boolean+isFastRendering(): Boolean+setFastRendering(Updatesetting): void«dataType»vector<T> Is a Vector of witch contains data with equal type as type T.«Enumeration»Tooltype CIRCLE FLOODFILL GRADIENT LINE PEN PLAIN POLYGON RECTANGLE NONEIntelliToolPen-penWidth: Integer-point: QPoint+onMouseRightPressed(x,y): void+onMouseLeftPressed(x,y): void+onMouseRightReleased(x,y): void+onMousLeftReleased(x,y): void+onWheelScrolled(value): void+onMouseMoved(x,y): void...«dataType»QColor Cotains RGBA Color Data.«dataType»QPoint Handles points with x,y,z.«dataType»QImage Handles the ImageData«dataType»Triangle+A: QPoint+B: QPoint+C: QPointIntelliColorPicker-firstColor: QColor-secondColor: QColor+switchColors(): void+setFirstColor(Color): void+setSecondColor(Color): void+getFirstColor(): QColor+getSecondColor(): QColorIntelliToolSetttings-lineWidth: Integer-innerAlpha: Integer+getInnerAlpha(): Integer+setInnerAlpha( innerAlpha): void+getLineWidth(): Integer+setLineWidth( LineWidth): void«dataType»LayerObject+image: IntelliImage+width: Integer+heigth: Integer+widthOffset: Integer+heigthOffset: Integer+alpha: IntegerPaintingArea-Canvas: QImage-maxWidth: Integer-maxHeigth: Integer-Tool: IntelliTool-colorPicker: IntelliColorPicker-layerBundle: vector<LayerObject>-activeLayer: Integer+open(fileName): Boolean+save(fileName, fileFormat): void+addLayer(width, heigth, widthOffset,heigthOffset, ImageType): Integer+addLayerAt(idx, width, heigth, widthOffset,heigthOffset, ImageType): Integer+deleteLayer(index): void+setLayerToActive(index): void+movePositionActive(x,y): void+moveActiveLayer(idx): void+setAlphaOfLayer(index, alpha): void+floodFill(r,g,b,a): void+getWidthOfActive(): Integer+getHeigthOfActive(): Integer Also overrides every Inputevent and creates every Tool.IntelliToolCircle-Middle: QPoint-alphaInner: Integer-edgeWidth: Integer+onMouseRightPressed(x,y): void+onMouseLeftPressed(x,y): void+onMouseRightReleased(x,y): void+onMousLeftReleased(x,y): void+onWheelScrolled(value): void+onMouseMoved(x,y): void...IntelliToolPolygon-lineWidth: Integer-isDrawingOfPolygon: Boolean-PointIsNearStart: Boolean-alphaInner: Integer+onMouseRightPressed(x,y): void+onMouseLeftPressed(x,y): void+onMouseRightReleased(x,y): void+onMousLeftReleased(x,y): void+onWheelScrolled(value): void+onMouseMoved(x,y): void...IntelliToolLine-start: QPoint-lineWidth: Integer-lineStyle: LineStyle+onMouseRightPressed(x,y): void+onMouseLeftPressed(x,y): void+onMouseRightReleased(x,y): void+onMousLeftReleased(x,y): void+onWheelScrolled(value): void+onMouseMoved(x,y): void...IntelliToolRectangle-alphaInner: Integer-edgeWidth: Integer+onMouseRightPressed(x,y): void+onMouseLeftPressed(x,y): void+onMouseRightReleased(x,y): void+onMousLeftReleased(x,y): void+onWheelScrolled(value): void+onMouseMoved(x,y): void...IntelliToolGradient-startPoint: QPoint-endPoint: QPoint-LineColor: QColor+onMouseRightPressed(x,y): void+onMouseLeftPressed(x,y): void+onMouseRightReleased(x,y): void+onMousLeftReleased(x,y): void+onWheelScrolled(value): void+onMouseMoved(x,y): void...IntelliToolPlain+onMouseRightPressed(x,y): void+onMouseLeftPressed(x,y): void+onMouseRightReleased(x,y): void+onMousLeftReleased(x,y): void+onWheelScrolled(value): void+onMouseMoved(x,y): void...IntelliToolFloodFill+onMouseRightPressed(x,y): void+onMouseLeftPressed(x,y): void+onMouseRightReleased(x,y): void+onMousLeftReleased(x,y): void+onWheelScrolled(value): void+onMouseMoved(x,y): void...«Enumeration»ImageType RASTERIMAGE SHAPEDIMAGEIntelliTool#Area: PaintingArea#colorPicker: IntelliColorPicker#Active: LayerObject#Canvas: LayerObject#drawing: Boolean#ActiveType: Tooltype+onMouseRightPressed(x,y): void+onMouseLeftPressed(x,y): void+onMouseRightReleased(x,y): void+onMousLeftReleased(x,y): void+onWheelScrolled(value): void+onMouseMoved(x,y): void...IntelliShapedImage-triangles: vector<Triangle>#polygonData: vector<QPoint>-calculateVisibility(): void+getDisplayable(displaySize, alpha): QImage+getPolygonData(): vector<QPoint>+setPolygon(polygonData): void...IntelliRasterImage#calculateVisibility(): void+getDisplayable(displaySize, alpha): QImage...IntelliImage#imageData: QImage-isFastRendering: Boolean#resizeImage(image, newSize): void+drawPixel(p1, color): void+drawLine(p1, p2, color, penWidth): void+drawPlain(color): void+getDisplayable(displaySize, alpha): QImage+loadImage(fileName): Boolean+getPixelColor(point): QColor... diff --git a/docs/Entwicklerhandbuch/Use_Case_1.svg b/docs/Entwicklerhandbuch/Use_Case_1.svg new file mode 100644 index 0000000..e6c0ffe --- /dev/null +++ b/docs/Entwicklerhandbuch/Use_Case_1.svg @@ -0,0 +1,301 @@ + + +IntelliPhoto 1.0"Shooting Star"Erzeugen von 3D-ObjektenSchnittstellefür 3D-ModelleLayerstrukturFreiberufliche FotografenAuswahl-werkzeugePinselHelligkeit/KontrastFarbton/SättigungGradationskurvenKorrektur-werkzeugeCasual UserRetuschierender BilderDrehen vonBildernÄndern derBilderauflösungZusammenfügenvon BildernEinsteiger3D-Künstler diff --git a/docs/Entwicklerhandbuch/Use_Case_2.svg b/docs/Entwicklerhandbuch/Use_Case_2.svg new file mode 100644 index 0000000..b7f34d6 --- /dev/null +++ b/docs/Entwicklerhandbuch/Use_Case_2.svg @@ -0,0 +1,172 @@ + + +CircleToolAnfertigen vonortographischen SkizzenFreiberufliche FotografenCasual UserErstellung einfacher MotiveErstellung komplexer DiagrammeHervorrheben bestimmterBildbereicheEinsteiger3D-Künstler diff --git a/docs/Entwicklerhandbuch/Zustandsiagram-Layer-Color.svg b/docs/Entwicklerhandbuch/Zustandsiagram-Layer-Color.svg new file mode 100644 index 0000000..5499341 --- /dev/null +++ b/docs/Entwicklerhandbuch/Zustandsiagram-Layer-Color.svg @@ -0,0 +1,185 @@ + + +color pickerset heightset widthidle statechoose colornew secondarycolornew primarycolormovelayercancelcancelcreatenew layeroknew layerendstart diff --git a/docs/Entwicklerhandbuch/Zustandsiagram-Tool.svg b/docs/Entwicklerhandbuch/Zustandsiagram-Tool.svg new file mode 100644 index 0000000..4f51d04 --- /dev/null +++ b/docs/Entwicklerhandbuch/Zustandsiagram-Tool.svg @@ -0,0 +1,178 @@ + + +inner Alphaline widthdrawingidle statechoose Alpha valueset inner Alphachoose tool widthset tool widthswitch Tooldiscardchangesmerch previewswitch Toolpreviewuse Toolendstart diff --git a/docs/Entwicklerhandbuch/~$twicklerhandbuch.docx b/docs/Entwicklerhandbuch/~$twicklerhandbuch.docx new file mode 100644 index 0000000..eb50670 Binary files /dev/null and b/docs/Entwicklerhandbuch/~$twicklerhandbuch.docx differ diff --git a/docs/Entwicklerhandbuch/~WRL0594.tmp b/docs/Entwicklerhandbuch/~WRL0594.tmp new file mode 100644 index 0000000..2421f48 Binary files /dev/null and b/docs/Entwicklerhandbuch/~WRL0594.tmp differ