{"id":26341088,"url":"https://github.com/treechcer/graphical-python-drawing","last_synced_at":"2025-07-14T15:37:22.923Z","repository":{"id":261997296,"uuid":"885893427","full_name":"Treechcer/Graphical-python-drawing","owner":"Treechcer","description":null,"archived":false,"fork":false,"pushed_at":"2024-11-09T20:23:01.000Z","size":3,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-11-09T20:23:11.612Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","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/Treechcer.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":"2024-11-09T17:07:59.000Z","updated_at":"2024-11-09T20:23:05.000Z","dependencies_parsed_at":"2024-11-09T20:23:16.143Z","dependency_job_id":"9f8bccee-90bc-449d-bc1e-b5adf1b71f2d","html_url":"https://github.com/Treechcer/Graphical-python-drawing","commit_stats":null,"previous_names":["treechcer/graphical-python-drawing"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Treechcer%2FGraphical-python-drawing","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Treechcer%2FGraphical-python-drawing/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Treechcer%2FGraphical-python-drawing/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Treechcer%2FGraphical-python-drawing/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Treechcer","download_url":"https://codeload.github.com/Treechcer/Graphical-python-drawing/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243826809,"owners_count":20354220,"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":[],"created_at":"2025-03-16T04:28:41.004Z","updated_at":"2025-03-16T04:28:41.432Z","avatar_url":"https://github.com/Treechcer.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Graphical-python-drawing\nThis repository features a graphical drawing application built using the pygame library, allowing users to interactively draw points and squares on the screen. It implements basic drawing features like adding color, resizing squares, and positioning objects using mouse and keyboard inputs.\n\n## Features:\n-Draw a Point: Left-click on the screen after pressing the \"A\" key to place a point at the clicked position.\n\n-Draw a Square: Left-click on the screen after pressing the \"S\" key to place a square at the clicked position.\n\n-Change Colors: Use the following key combinations to change the colors of the point and square:\n\n-**\"QA\"**: Red\n\n-**\"WA\"**: Green\n\n-**\"EA\"**: Blue\n\n-**\"QS\"**: Red (for square)\n\n-**\"WS\"**: Green (for square)\n\n-**\"ES\"**: Blue (for square)\n\n-Resize Square: Press **\"F1\"** to increase the square size and **\"F2\"** to decrease it.\n\n-Real-Time Drawing: Points and squares are immediately updated as you move them around the screen or change their properties.\n\n## Files\n-**main.py**: The main entry point of the application. It initializes the pygame window, sets up the game loop, and handles user inputs to update and render graphical objects. The objects (point and square) are drawn on the screen, and their properties can be modified interactively.\n\n-**classes.py**: Contains the *Point* and *Square* classes. The *Point* class represents a simple pixel, while the *Square* class represents a square shape made up of multiple pixels. Both classes support various methods for altering their position, color, and size.\n\n-**event_key_handler.py**: Handles user inputs. The *eventhandler* function processes mouse clicks and keyboard events to move the *Point* and *Square*, as well as change their color or size. The *keyhandler* function listens for key presses to modify the drawing.\n\n## Planned Enhancements\nAdding additional shapes, such as circles, squares, and lines.\nAbility to dynamically change shape sizes etc.\nExpanding interactive control options and real-time parameter adjustments.\n\n## Screenshot\n![Screenshot](screenshot_folder/screenshot1)\n- This demonstrates the ability to create multiple shapes with all colors.\n\n## Requirements:\n[Pygame](https://www.pygame.org/wiki/GettingStarted)\n\n[Python 3.x](https://www.python.org/downloads/)\n\n## Installation:\n1. Clone this repository:\n```bash\ngit clone https://github.com/Treechcer/Graphical-python-drawing.git\n```\n\n2. Install the necessary dependencies:\n ```bash\npip install pygame\n ```\n\n3. Run the application:\n ```bash\npython main.py\n ```\n\n## License:\nThis project is licensed under the MIT License - see the LICENSE file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftreechcer%2Fgraphical-python-drawing","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftreechcer%2Fgraphical-python-drawing","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftreechcer%2Fgraphical-python-drawing/lists"}