Python binding of HorizonGUI a graphical interface in c++ with OpenGl
Project description
HorizonGUI
Introduction
HorizonGUI is a Graphic User Interface library made in C++ with OpenGL. There are also Python bindings available.
Installation Instructions
C++ library
You can also simply install a pre-built version here.
Get Source Code
You first need to clone the repository. Make sure to use git and don't forget to
include --recurse-submodules
when cloning.
git clone https://github.com/Horizon-NTH/HorizonGUI.git --recurse-submodules
You will now able to choose between script or manual installation
Script Installation
Use the install.sh
script to compile the
library. You can also erase build files by adding -e
/ --erase
.
./install.sh -e
Manual Installation
Create Build Environment
Ensure you have CMake installed. Generate the build environment using CMake:
cd HorizonGUI
mkdir build && cd build
cmake ..
Build
CMake
Build directly using CMake:
cmake --build .
This command will create all the lib files you need in HorizonGUI/lib
.
Microsoft Visual Studio
Alternatively, you can use Microsoft Visual Studio to launch the project
and build it. Open the horizongui.sln
file with Microsoft Visual Studio.
Python binding
To install the Python bindings, you can install it from PyPi using this command: Don't forget to install the scikit-build-core package.
pip install scikit-build-core hgui
Or you can build it from source using those commands:
git clone https://github.com/Horizon-NTH/HorizonGUI.git --recurse-submodules
cd HorizonGUI
pip install ./python
Note: Both methods can take some time due to the compilation of the underlying C++ library.
Once the installation is complete, you can import the module into your Python script using the following statement:
import hgui
Documentation
Please refer to the wiki.
Dependencies
- OpenGL is used for all graphics in the application.
- GLFW is used to create windows, contexts, and handle user input.
- Glad is used to load OpenGL functions.
- Freetype is used to load fonts and render text.
- STB is used to load and save images.
- GLM is used for mathematical operations.
- OpenAL-Soft is used to play sound.
- Libsndfile is used to load audio file.
- Pybind11 is used to create python binding.
License
HorizonGUI is licensed under the MIT license.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file hgui-4.0.3.tar.gz
.
File metadata
- Download URL: hgui-4.0.3.tar.gz
- Upload date:
- Size: 25.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 579e6ac06b825c8b68ee5ab252ca1b96b6a4819b383a5ad2775a79958b3bcd78 |
|
MD5 | 1a6a176e393506bb99cbdffd822694e4 |
|
BLAKE2b-256 | 965c75a63b85ac04df24bfc6c35bf46b691e0904004165a723704c2197bdc0e2 |