https://github.com/Tw1ddle/geometrize
:white_square_button: Geometrize is a desktop app that geometrizes images into geometric primitives
https://github.com/Tw1ddle/geometrize
art chaiscript cpp geometrize geometry-processing
Last synced: about 2 months ago
JSON representation
:white_square_button: Geometrize is a desktop app that geometrizes images into geometric primitives
- Host: GitHub
- URL: https://github.com/Tw1ddle/geometrize
- Owner: Tw1ddle
- License: other
- Created: 2017-01-08T11:19:01.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2022-08-18T07:35:58.000Z (over 2 years ago)
- Last Synced: 2025-03-10T19:13:08.822Z (about 2 months ago)
- Topics: art, chaiscript, cpp, geometrize, geometry-processing
- Language: C++
- Homepage: https://www.geometrize.co.uk
- Size: 88.6 MB
- Stars: 1,985
- Watchers: 21
- Forks: 130
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://www.geometrize.co.uk/)
[](https://github.com/Tw1ddle/geometrize/blob/master/LICENSE)
[](https://ci.appveyor.com/project/Tw1ddle/geometrize)[Geometrize](https://www.geometrize.co.uk/) is a desktop app that geometrizes images into geometric primitives.
Download Geometrize [here](https://www.geometrize.co.uk/), or run the [web demo](https://www.samcodes.co.uk/project/geometrize-haxe-web/) in your browser.
[](https://www.geometrize.co.uk/)
## Features
* Recreate images as geometric primitives.
* Start with hundreds of images with preset settings.
* Export geometrized images to SVG, PNG, JPG, GIF and more.
* Export shape data as JSON for use in custom projects and creations.
* Control the algorithm at the core of Geometrize with ChaiScript scripts.## Usage
Open the app, select an image, pick your desired shape types, and hit start.
[](https://www.geometrize.co.uk/)
Video tutorials for Geometrize are posted [here](https://www.youtube.com/playlist?list=PLe9ogi_J4cFgcqLdpmPC7GdFV5ohJPEzN):
## Shape Comparison
The matrix shows results for circles, triangles, rotated rectangles, rotated ellipses and all supported shapes at 50, 200 and 500 total shapes:
| - | 50 Shapes | 200 Shapes | 500 Shapes |
| ------------------ | ------------- | ------------- | ------------ |
| Circles | [](https://www.geometrize.co.uk/) | [](https://www.geometrize.co.uk/) | [](https://www.geometrize.co.uk/) |
| Triangles | [](https://www.geometrize.co.uk/) | [](https://www.geometrize.co.uk/) | [](https://www.geometrize.co.uk/) |
| Rotated Rectangles | [](https://www.geometrize.co.uk/) | [](https://www.geometrize.co.uk/) | [](https://www.geometrize.co.uk/) |
| Rotated Ellipses | [](https://www.geometrize.co.uk/) | [](https://www.geometrize.co.uk/) | [](https://www.geometrize.co.uk/) |
| All Shapes | [](https://www.geometrize.co.uk/) | [](https://www.geometrize.co.uk/) | [](https://www.geometrize.co.uk/) |## Animations
By batch editing and exporting images, and then combining the results using a tool such as [ScreenToGif](https://github.com/NickeManarin/ScreenToGif), you can produce animations using Geometrize:
[](https://www.geometrize.co.uk/)
[](https://www.geometrize.co.uk/)
[](https://www.geometrize.co.uk/)
## Screenshots
For more examples of geometrized images, see the [gallery](https://gallery.geometrize.co.uk/).
[](https://www.geometrize.co.uk/)
[](https://www.geometrize.co.uk/)
[](https://www.geometrize.co.uk/)
[](https://www.geometrize.co.uk/)
## Resources
* See the Geometrize [resources](https://resources.geometrize.co.uk/) page.
## Building
Geometrize is a Qt app written in C++.
* Download and install Qt 5.10 or above.
* Install Python 3.x and add it to your path. The build process includes a few Python scripts for creating resource files.
* Checkout this repository and all submodules, and build and run [geometrize.pro](https://github.com/Tw1ddle/geometrize/blob/master/geometrize.pro) within Qt Creator.
If you want to develop or extend Geometrize, look at the [top level repo](https://github.com/Tw1ddle/geometrize-top-level-repo) for a high-level overview of the repositories in the Geometrize project.## Notes
* Got an idea or suggestion? Open an issue on GitHub, or send Sam a message on [Twitter](https://twitter.com/Sam_Twidale).
* Geometrize is inspired by [primitive](https://github.com/fogleman/primitive), a Go library and tool created by [Michael Fogleman](https://github.com/fogleman).
* There is up to date Doxygen documentation for [Geometrize](https://appdocs.geometrize.co.uk/index.html) and the underlying Geometrize [library](https://docs.geometrize.co.uk/).
* Also see the Geometrize [gallery](https://gallery.geometrize.co.uk/), [bot](https://twitter.com/Geometrizer) and [tweening demo](https://tweens.geometrize.co.uk/).