A brand new and totally unique way of transforming your photos. Give Primitive a picture and watch as it recreates it using simple shapes like triangles, rectangles, ellipses, or bezier curves. The result is vector-based, so it can be saved as SVG. An intuitive settings panel provides you with creative control.

The program looks for the best shape that can be drawn to maximize the similarity between the target image and the drawn image. It repeats this process, adding one shape at a time. Using this process, the program can recreate a photo with surprisingly few shapes, and it creates a very unique artistic effect. And the output is inherently vector-based!

Supports PNG, JPEG and SVG output.

The following configuration settings are provided:

- IMAGE: Choose the input image that you want the program to draw using primitive shapes.
- SHAPE TYPE: Choose the type of shape that the program should use to draw your image. Most of these are filled shapes, but the beziers are stroked. Combo mode allows the program to pick the best shape at each iteration.
- SHAPE ALPHA: Constrain the program to use a particular alpha value for each shape, or uncheck the box to let the program optimize the alpha value for each shape individually.
- STROKE WIDTH: Set the stroke width to be used for quadratic bezier curves. Uncheck the box to let the program optimize the stroke width for each curve.
- SHAPES PER ITERATION: Generate multiple shapes during each iteration with a more localized search. This is most useful for bezier curves to get good image coverage more quickly.
- BACKGROUND COLOR: Set the background color upon which the shapes will be drawn. Uncheck the box to use the average color of the input image as the background.
- WORKING SIZE: Choose between speed and quality. This option scales the input image to a certain size before running the algorithm on it.
- RUN UNTIL STOPPED: Choose this mode to run indefinitely, until the image appearance is to your liking.
- RUN UNTIL SHAPES: Choose this mode to stop running after a certain number of shapes have been generated.
- RUN UNTIL SCORE: Choose this mode to stop running once the drawn image has a certain amount of similarity to the original input image.
- RUN IN DRAWING MODE: Choose this mode to paint shapes using the mouse cursor. Just click and drag and Primitive will add shapes in the general area of the mouse cursor. This makes the Primitive experience more interactive and user-driven.
- CLEAR DRAWING: Clear the drawing to start over with new options.
- REVERT TO DEFAULTS: Reset all of the options except for image and shape type back to their original settings.

What’s New

Version 1.1

- New "drawing mode" allows the user to paint shapes in areas of interest using the mouse. Just click and drag and Primitive will add shapes in the general area of the mouse cursor. This makes the Primitive experience more interactive and user-driven.
- Press and hold the spacebar to view the original image.
- Added links to the Help menu.
- Fixed a minor issue with text fields not using their typed values.

Ratings and Reviews

5.0 out of 5
28 Ratings

28 Ratings

elimoon8 ,

Fantastic Little Tool

This is a pretty basic but genius concept that lets you generate stylized svgs from random images (works best with less complex images). If there was 1 thing that I’d ask for, it would be the ability to select exactly which shapes you want to be included instead of either just 1 shape or all shapes. For example, I don’t like how lines make the results look streaky/drawn, but I can only choose either all shapes or just choose a single shape. I’d like the option to select a subset of shapes (squares, triangles, etc. only) and have it draw based on only those. In any case, great work!

Dan Web ,

Great app

This kind of app is probably useful to different people for different reasons. For me, I wanted a way to make several different photos taken under very different conditions look similar in style. This accomplishes that beatifully. The actual interface itself could use a little polish, but that doesn’t take away from the fact that this app works and works well. Thanks!

slc_np ,

Sophisticated Results

Am using the app to transform digital paintings done with Sketchbook Pro into more abstract pieces. The results are sophisticated and actually helpful in showing where you need to strengthen values, etc in your original painting. Also had a question, emailed the developer and he answered the next morning. This sets the standard for high-quality apps.


Michael Fogleman
1.5 MB

OS X 10.10 or later, 64-bit processor



Age Rating
Rated 4+
© 2016 Michael Fogleman


  • Family Sharing

    With Family Sharing set up, up to six family members can use this app.

More By This Developer