{"id":26903464,"url":"https://github.com/wiktoriachojnacka/graphic_transformations","last_synced_at":"2025-06-15T04:33:45.769Z","repository":{"id":284799173,"uuid":"956106785","full_name":"wiktoriachojnacka/Graphic_transformations","owner":"wiktoriachojnacka","description":"Tasks made for study in QT creator. Tasks include drawing a segment, 3d solid transformations, 2d transformations, flood fill and other graphics functions.","archived":false,"fork":false,"pushed_at":"2025-03-27T18:08:58.000Z","size":0,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-27T18:50:08.417Z","etag":null,"topics":["cpp","matrix-operations"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wiktoriachojnacka.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-03-27T17:54:34.000Z","updated_at":"2025-03-27T18:11:39.000Z","dependencies_parsed_at":"2025-03-27T19:01:28.975Z","dependency_job_id":null,"html_url":"https://github.com/wiktoriachojnacka/Graphic_transformations","commit_stats":null,"previous_names":["wiktoriachojnacka/graphic_transformations"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wiktoriachojnacka%2FGraphic_transformations","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wiktoriachojnacka%2FGraphic_transformations/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wiktoriachojnacka%2FGraphic_transformations/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wiktoriachojnacka%2FGraphic_transformations/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wiktoriachojnacka","download_url":"https://codeload.github.com/wiktoriachojnacka/Graphic_transformations/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246623005,"owners_count":20807242,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cpp","matrix-operations"],"created_at":"2025-04-01T10:28:30.597Z","updated_at":"2025-04-01T10:28:31.188Z","avatar_url":"https://github.com/wiktoriachojnacka.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Graphic Transformations\n\nThis repository contains various image processing programs developed using **Qt** and **C++**. The programs demonstrate different types of graphic transformations, such as 2D operations, 3D operations, B-spline, color models, morphological operations, and others. Each program showcases the transformation process through visualizations captured in GIFs for certain operations.\n\n## Table of Contents\n1. [2D Transformations](#2d-transformations)\n2. [3D Transformations](#3d-transformations)\n3. [B-Spline](#b-spline)\n4. [Color Models](#color-models)\n5. [Morphological Operations](#morphological-operations)\n6. [Flood Fill](#flood-fill)\n7. [Ellipse and Circle](#ellipse-and-circle)\n8. [Line Drawing](#line-drawing)\n9. [Scanline Algorithm](#scanline-algorithm)\n10. [Getting Started](#getting-started)\n11. [License](#license)\n\n## 2D Transformations\nIn this section, 2D geometric transformations are applied to an image, such as scaling, rotation, and translation. These operations manipulate the image coordinates to transform its geometry in various ways.\n\n![Gif 1](gifs/2dgif.gif)\n\n### Example of 2D Transformation\nThis example demonstrates how scaling, rotation, and translation are applied to an image. The program allows users to interactively apply transformations and observe the changes in real-time.\n\n## 3D Transformations\nThis section deals with 3D transformations, including scaling, rotation, and translation in three-dimensional space. These transformations are used to manipulate the geometry of 3D objects or images (including scaling, rotation, and translation).\n\n## B-Spline\nB-Spline is a curve fitting and interpolation method commonly used in graphic modeling and image processing. It provides smooth and flexible curves through a series of control points.\n\n![Gif 2](gifs/B-splinegif.gif)\n\n### Example of B-Spline Transformation\nThis example demonstrates the application of the B-spline algorithm to smooth and interpolate data points, creating a smooth curve through the set of control points.\n\n## Color Models\nColor models are mathematical representations of colors in digital images. In this section, different color spaces such as RGB, CMYK, and HSL are explored, providing insight into how colors are represented in digital media.\n\n![Gif 5](gifs/colormodelsgif.gif)\n\n### Example of Color Models Transformation\nThis section shows the transformation of an image as it is converted between different color models, allowing for better manipulation of color data for tasks like image enhancement or color correction.\n\n## Morphological Operations\nMorphological operations are techniques used in image processing to extract image components useful in the representation and description of shape. Common operations include dilation, erosion, opening, and closing.\n\n![Gif 4](gifs/MorphologicalOperationsgif.gif)\n\n### Example of Morphological Operations\nThe GIF shows the application of morphological transformations like dilation and erosion to emphasize or reduce certain features in the image. This is particularly useful in image segmentation and feature extraction tasks.\n\n## Flood Fill\nThe Flood Fill algorithm is used to fill a region of an image with a specific color. It is commonly used in computer graphics for tasks like coloring bounded regions in a bitmap or performing region-growing operations.\n\n![Gif 3](gifs/FloodFillgif.gif)\n\n### Example of Flood Fill\nThis section demonstrates how the Flood Fill algorithm is used to fill a closed boundary within an image with a specific color, useful for tasks like object segmentation.\n\n## Ellipse and Circle\nThis section includes algorithms that work with ellipses and circles, including drawing, transforming, and manipulating these shapes in images.\n\n## Line Drawing\nThe Line Drawing algorithm focuses on efficient ways to draw lines between two points. It covers techniques such as Bresenham's line algorithm for raster graphics.\n\n## Scanline Algorithm\nThe Scanline algorithm is widely used in computer graphics for tasks like filling polygons, removing hidden surfaces, and performing shading in raster graphics.\n\n## Getting Started\n\n### Prerequisites\nTo run the project, make sure you have the following software installed:\n- **Qt** (Version X.X)\n- **C++ Compiler** (GCC, Clang, or Visual Studio)\n- **CMake** (Version X.X)\n\n### Installation\nClone the repository to your local machine:\ngit clone https://github.com/your_username/GraphicTransformations.git\n\nNavigate to the project directory:\ncd GraphicTransformations\n\nBuild the project:\nmkdir build cd build cmake .. make\n\n### Running the Programs\nAfter building the project, you can run any of the individual programs. For example, to run the 2D transformation program, execute the following command:\n./2DTransformation\n\n\n## License\nCopyright (c) 2022 [Wiktoria Chojnacka]\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwiktoriachojnacka%2Fgraphic_transformations","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwiktoriachojnacka%2Fgraphic_transformations","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwiktoriachojnacka%2Fgraphic_transformations/lists"}