Giter VIP home page Giter VIP logo

energy-ade-citygml4j's Introduction

Energy ADE module for citygml4j

This is a citygml4j module for the Energy Application Domain Extension (Energy ADE) for CityGML.

ℹ️ The Energy ADE module is intended to be used with citygml4j v2 and works fine in this context. However, note that citygml4j v2 is in maintenance mode and that the current release of the Energy ADE module cannot be used with the latest citygml4j v3 development. There are currently no plans to migrate the Energy ADE module to citygml4j v3.

About the module

The Energy ADE extends CityGML by features and properties necessary to perform energy simulations and to store and exchange the corresponding results. This module adds support for parsing and writing Energy ADE enriched CityGML datasets to citygml4j. The support is tailored to the Karlsruhe Institute of Technology (KIT) profile of the Energy ADE version 1.0.

How to use the module

This module uses the ADEContext interface mechanism of citygml4j. Simply register the module with the citygml4j library to build an Energy ADE application and to read and write Energy ADE datasets.

Registering the Energy ADE module with citygml4j only requires one additional line of code compared to a regular citygml4j program. Be careful to register the ADEContext before creating a CityGMLBuilder object.

CityGMLContext context = CityGMLContext.getInstance();

// register i-UR module
context.registerADEContext(new EnergyADEContext());

CityGMLBuilder builder = context.createCityGMLBuilder();
...

The Energy ADE module can also be loaded dynamically, for instance, using the Java Service Provider interface.

Once loaded, citygml4j will automatically (de)serialize Energy ADE v1.0 content according to the KIT profile from CityGML datasets into the model classes defined in the package org.citygml4j.ade.energy.model, which extend the predefined citygml4j model classes. Simply use these classes to build your Energy ADE specific application logic.

Latest release

The latest stable release of energy-ade-citygml4j is 1.0.4.

Download the energy-ade-citygml4j 1.0.4 release binaries here. Previous releases are available from the releases section.

Maven artifact

energy-ade-citygml4j is also available as Maven artifact from the Maven Central Repository. To add energy-ade-citygml4j to your project with Maven, add the following code to your pom.xml. You may need to adapt the energy-ade-citygml4j version number.

<dependency>
  <groupId>org.citygml4j</groupId>
  <artifactId>energy-ade-citygml4j</artifactId>
  <version>1.0.4</version>
</dependency>

Here is how you use energy-ade-citygml4j with your Gradle project:

repositories {
  mavenCentral()
}

dependencies {
  implementation 'org.citygml4j:energy-ade-citygml4j:1.0.4'
}

Building from source

The Energy ADE module uses Gradle as build system. To build the module from source, clone the repository to your local machine and run the following command from the root of the repository.

> gradlew build

The script automatically downloads all required dependencies for building the module. So make sure you are connected to the internet. The build process runs on all major operating systems and only requires a Java 8 JDK or higher to run.

If the build was successful, you will find the JAR file of the Energy ADE module under energy-ade-citygml4j/build/libs.

Publications

License

The Energy ADE module is licensed under the Apache License, Version 2.0. See the LICENSE file for more details.

energy-ade-citygml4j's People

Contributors

clausnagel avatar yaozhihang avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

sensor-freak

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.