Fdf is a program that creates simplified 3D graphic representation of a relief landscape using MiniLibX library. Subject can be found here.
FDF is short for ’fil de fer’ in French which means ’wireframe model’.
- Create a basic computer graphics project
- Learn about mapping
- Drawing lines in 3D using maths
- Implement axis rotation, zoom and transmittion
Motion_effect.mov
Run the following commands in Terminal:
# to build
> make
# to run
> ./fdf test_maps/julia.fdf
The program accepts a map in .fdf
file as argument. Those files can be found at test_maps/
folder. Those include lines of numbers separated by spaces (sometimes with HEX colour codes) representing height of the points on map.
To close window press esc
.
Use [+]
& [-]
to zoom in and out
Use [a]
& [d]
to rotate on x-axis
Use [s]
& [w]
to rotate on y-axis
Use [scroll up]
& [scroll down]
to rotate on z-axis
Press [↑]
to move upwards
Press [↓]
to move downwards
Press [←]
to move left
Press [→]
to move right
![Screen Shot 2024-03-24 at 4 52 39 PM](https://private-user-images.githubusercontent.com/101641443/316309844-30a86f3b-b7c7-4c41-81db-647471eaceb2.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTgyNzg0NzksIm5iZiI6MTcxODI3ODE3OSwicGF0aCI6Ii8xMDE2NDE0NDMvMzE2MzA5ODQ0LTMwYTg2ZjNiLWI3YzctNGM0MS04MWRiLTY0NzQ3MWVhY2ViMi5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwNjEzJTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDYxM1QxMTI5MzlaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT01NWE0NTY4YmFhYTFjMjJhZjZkYmFjYjdjODZiOGIyYzA2MzhhOGNhNGQyYWJlMDAyMTBhZDg3NGE4ZDRmZGEwJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.uVerEt_CttsXPofPAQ84m97s3zHWH134Hz1cGa5h94g)
![Screen Shot 2024-03-23 at 11 07 14 AM](https://private-user-images.githubusercontent.com/101641443/316310036-5ec68623-1972-4377-a9ed-b401c7b9e66a.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTgyNzg0NzksIm5iZiI6MTcxODI3ODE3OSwicGF0aCI6Ii8xMDE2NDE0NDMvMzE2MzEwMDM2LTVlYzY4NjIzLTE5NzItNDM3Ny1hOWVkLWI0MDFjN2I5ZTY2YS5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwNjEzJTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDYxM1QxMTI5MzlaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT0zOTc4NTA1MTEyM2QwMjEzMTkyODhlMjk4MDQ3YjFhMDY1MWNlZTQxZDZlZjdjMGRmYTkxM2Y0Y2Y0NjNiMjE5JlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.tjO3OW9j5f5I4aoupzZn4vec5Siv-PhBGeTfyV5O_W4)
![Screen Shot 2024-03-23 at 11 17 07 AM](https://private-user-images.githubusercontent.com/101641443/316310059-38fad0c4-a1ef-4e52-8556-e3619a03b00f.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTgyNzg0NzksIm5iZiI6MTcxODI3ODE3OSwicGF0aCI6Ii8xMDE2NDE0NDMvMzE2MzEwMDU5LTM4ZmFkMGM0LWExZWYtNGU1Mi04NTU2LWUzNjE5YTAzYjAwZi5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwNjEzJTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDYxM1QxMTI5MzlaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT0wZjNhZWJlM2UxZDhmYzFlMWYyY2FkOTkzNjQ2YmIzYzJlMTFjYjM2MGQzMjExNTllNjgxYTIwYWIyOTg4Y2IyJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.TJteje2jkyOvwqbdVKB9ilQt4eRhacp-K0r4hTT23lQ)
![Screen Shot 2024-03-24 at 5 09 25 PM](https://private-user-images.githubusercontent.com/101641443/316310904-fdab6fa4-9cc0-4001-ba2b-f0ee12bb4b82.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTgyNzg0NzksIm5iZiI6MTcxODI3ODE3OSwicGF0aCI6Ii8xMDE2NDE0NDMvMzE2MzEwOTA0LWZkYWI2ZmE0LTljYzAtNDAwMS1iYTJiLWYwZWUxMmJiNGI4Mi5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwNjEzJTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDYxM1QxMTI5MzlaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1jYThhYjE4ZTA1NDE4Y2M5ZmJmNmVkMmZmMThlNGY0ZDU5MThkOTM5ZGE3MjJiZGUwYmRhNTBjMDFjNDViMDg0JlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.gKgZtX7JMxb-MZyjXKuQytB4PbW1X7WGU0KGudI3r7M)
![Screen Shot 2024-03-24 at 5 05 00 PM](https://private-user-images.githubusercontent.com/101641443/316310912-8e0f39ee-9f5c-4299-a319-2cdf922b111c.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTgyNzg0NzksIm5iZiI6MTcxODI3ODE3OSwicGF0aCI6Ii8xMDE2NDE0NDMvMzE2MzEwOTEyLThlMGYzOWVlLTlmNWMtNDI5OS1hMzE5LTJjZGY5MjJiMTExYy5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwNjEzJTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDYxM1QxMTI5MzlaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT02ZTAwZjI2ZDAzOGNlNzU0NzA5YTQ5YjFlOTlhYWFlMTExNjFmYWY5YjRhMTJmMDEzY2JkNjYyYTU4ZDY1OGViJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.3TZX9KdyftGaZ9EmpynPV9rWvcOlXrXQfSfxvXisOk4)
![Screen Shot 2024-03-24 at 5 03 45 PM](https://private-user-images.githubusercontent.com/101641443/316310919-c3d3c1d1-75ef-48dd-a6f8-255287295101.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTgyNzg0NzksIm5iZiI6MTcxODI3ODE3OSwicGF0aCI6Ii8xMDE2NDE0NDMvMzE2MzEwOTE5LWMzZDNjMWQxLTc1ZWYtNDhkZC1hNmY4LTI1NTI4NzI5NTEwMS5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwNjEzJTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDYxM1QxMTI5MzlaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1kYzBmOGJjOTM1MWRjMWQ4ODY3YjBhYmFjZTczY2NlYjlmMDJhMWY5MDlhYWUwMDcwYzFhMGY0ZGIxM2EzY2YzJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.ZdcHaCr9i18dOwFrAsjPTWnzlHqIqHcwrooS53P9eRA)