Explore chapters and articles related to this topic
Middleware—A New Frontier for Building Systems and Analytics
Published in John J. “Jack” Mc Gowan, Energy and Analytics, 2020
The analytics network infrastructure for the application discussed above could be depicted in Figure 12-5. In fact this is a generic illustration from Tridium Product literature for a product called the JACE-6. Before discussing that product, it is worthwhile to note that Tridium offers a complete portfolio of technologies that extend connectivity, integration and interoperability to millions of devices deployed in the market, but that are capable of being deployed as BAS offerings as well. The product portfolio is delivered in the form of hardware and software, but it is built around the Niagara™ software framework. This software framework is a universal, reusable software platform to develop applications, products and solutions. Software frameworks include support programs, compilers, code libraries, scripting language, an application programming interface (API) and tool sets that bring together all the different components to enable development of a project or solution. This chapter is in no way intended to be a training program for these products, rather it is providing this information to assist the reader in understanding the complexity of these network infrastructures. In the context of energy and analytics, these products are used to resolve the challenges associated with open systems integration and interoperability, by integrating diverse systems and devices, regardless of the manufacturer, or communication protocol, into a unified platform that can be managed and can access data over the internet. The hardware platform that is deployed in the building is a JACE, an acronym for Java Application Control Engine, as shown in Figure 12-5.
CityGML goes mobile: application of large 3D CityGML models on smartphones
Published in International Journal of Digital Earth, 2019
Christoph Blut, Timothy Blut, Jörg Blankenbach
For rendering we use the game engine jMonkey. The advantage of such a software framework is that low-level methods are already implemented and are provided to the developer in an encapsulated form. Commonly, well established and cutting-edge technologies are integrated. Typically, a game engine provides support for scene graph-based rendering of 2D and/or 3D graphics, physical simulations, sound, animations, artificial intelligence and networking (Fugger 2004). Therefore, employing a game engine for CityGML is not only advantageous for efficient visualizations, but also for carrying out further tasks, as for example, complex simulations using realistic physics. For our use case the jMonkey (2017) game engine is best suited since it is a fully customizable Java™-based open-source framework that provides all necessary high-level functions while simultaneously facilitating low-level access. From experience it delivers the most complete package. It is stable, comprehensibly structured and offers all necessary features. Additionally it is well documented and has an active community. Though some commercial game engines such as Unity3D or Unreal Engine indeed contain some more sophisticated development tools and features, they typically restrain the developer to use engine specific concepts that make low-level adjustments particularly difficult or even impossible. There are several smaller non-commercial open-source game engines similar to jMonkey such as OGRE3D or libGDX, but these are typically focussed on a specific use case, limited in functionality or poorly documented.