Skip to content

Library fo light pre-calculation based on real data (urban data and sun position).

License

Notifications You must be signed in to change notification settings

VCityTeam/Sunlight

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sunlight

About The Project

Library fo light pre-calculation based on real data (urban data and sun position). It's a project extract from 3DUSE separate from parsing operations and as such, with less dependency.

Sunlight is one repository of the Sunlight project, including :

Getting Started

External Dependencies

We are using C++ 20 because we are using latest functionalities (optional, filesystem...).

External Sources Policies

In CMake, we will fetch all externals libraries to avoid external sources in VCity repository. For more information on how include the fetch content, click here.
⚠️ Fetching an external content will always populate the build directory following the standard of a lower-case name. For instance, the package LibXml2 will have a macro libxml2_SOURCE_DIR and a directory libxml2-src directory.

More information here.

For Linux

Prerequisistes

  1. Install git LFS package

    sudo apt-get install git-lfs

Installation

  1. Clone the repository and move to sunlight folder.

    git clone https://github.com/VCityTeam/Sunlight.git
    cd Sunlight
  2. Fetch all cityGML files.

    git lfs fetch --all
  3. Create a build folder in Sunlight that will contains the build of sunlight.

    mkdir build/
  4. Compile Sunlight.

    cd build/
    cmake .. && make

For Windows

Prerequisistes

  1. Follow this tutorial to install and configure Visual Studio.

  2. Download CMake 3.27.

Installation

  1. Clone the repository and move to sunlight folder.

    git clone https://github.com/VCityTeam/Sunlight.git
    cd Sunlight
  2. Fetch all cityGML files.

    git lfs fetch --all
  3. Create a build folder in Sunlight that will contains the build of sunlight.

  4. Open CMake and specify the source code path (Sunlight folder) and the build binaries path (Sunlight/build).

  5. Click on Configure, Generate then Open Project and you are good to go.

Usage

Directory Hierarchy

Sunlight (repo)
├── datas                     # Datas use for testing
├── docs                      # Documentations (original charts...)
├── src                       # Source code
|    ├── cores                # Core program / Main functionality
|    ├── maths                # Mathematical and geometrical class
|    ├── parsers              # Annual sun position parser
|    ├── utils                # Small utils / helpers (timer, operators override...)
|
├── .gitattributes            # Define Large Files (.gml, .dat...)
├── .gitignore                # Files/folders ignored by Git
├── CMakeLists.txt            # CMake file to create a crossplatform software
├── README.md

License

Distributed under the LGPL-2.1 License. See LICENSE and Libraries Licenses for more information.

Main Contributors

Acknowledgments