/geometrize

:white_square_button: Geometrize is a desktop app that geometrizes images into geometric primitives

Primary LanguageC++OtherNOASSERTION

Geometrize Logo

Travis Build Status Geometrize AppVeyor Build Status License

Geometrize is a desktop app that geometrizes images into geometric primitives.

Download Geometrize here, or run the web demo in your browser.

Geometrize Shape Animation

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 geometrized images as HTML5 canvas or WebGL webpages.
  • 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. Video tutorials for Geometrize are posted here.

Geometrize Getting Started Animation

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 50 Circles 200 Circles 500 Circles
Triangles 50 Triangles 200 Triangles 500 Triangles
Rotated Rectangles 50 Rotated Rectangles 200 Rotated Rectangles 500 Rotated Rectangles
Rotated Ellipses 50 Rotated Ellipses 200 Rotated Ellipses 500 Rotated Ellipses
All Shapes 50 All Shapes 200 All Shapes 500 All Shapes

Screenshots

For more examples of geometrized images, see the gallery.

Geometrized Flower 330 Rotated Ellipses

Geometrized Train 230 Rotated Ellipses

Geometrized Trees 210 Ellipses

Geometrized Woodland Cemetery 600 Rotated Rectangles

Resources

Building

Geometrize is a Qt app written in C++.

  • Download and install Qt 5.10 or above.
  • Install Python 3.x. The build process includes a few Python scripts for creating resource files.
  • Checkout this repository and all submodules, and build and run geometrize.pro within Qt Creator.

Notes