Skip to content

Latest commit

 

History

History
57 lines (37 loc) · 1.67 KB

README.md

File metadata and controls

57 lines (37 loc) · 1.67 KB

hilbert_img

This project creates a hilbert curve and sets the colors according to the given image and draws it using opengl. For example consider we are using this picture.

img

The result would be the following images:

screenshot_20221013-184646_1920x1080

screenshot_20221013-184643_1920x1080

And because its a space-filling curve, if you rise the iteration enough, you will get a full image.

screenshot_20221013-184733_1920x1080

Build

to build the project run:

./build -f

to clean build files run:

./build -c

Usage

After building, you may find executable and build files in 'Release' directory. To run it go into Release Directory and:

./hilbert {image_file_path}

# Example:
./hilbert ./image.png

you can zoom in and zoom out arrows up and down, and change iteration with left and right arrows.

Dependencies

opencv | OpenCV is a library of programming functions mainly aimed at real-time computer vision.

opengl | OpenGL is a cross-language, cross-platform application programming interface for rendering 2D and 3D vector graphics.

Other dependencies: (you don't need to install them, they are already in the thirdparty directory)

argh
fmt
glew
glfw
glm
vivid