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.
The result would be the following images:
And because its a space-filling curve, if you rise the iteration enough, you will get a full image.
to build the project run:
./build -f
to clean build files run:
./build -c
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.
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