-
Notifications
You must be signed in to change notification settings - Fork 616
Eclipse Modeling Framework
#summary Eclipse Modeling Framework.
= Introduction =
Building Information Models (BIM) are typically Object Oriented and tend to be large. For example the Industry Foundations Classes (IFC) have more than one thousand different classes. Because the BIMserver has been written in Java (an Object Oriented Language), it is very useful to have typed Java classes in the used BIM model. This is where the [http://www.eclipse.org/modeling/emf/ Eclipse Modeling Framework (EMF)] comes into play. For now, the BIMserver uses IFC2x3tc1 internally.
= IFC Schema =
Most BIM meta models are described in a data format. As IFC is based on [http://en.wikipedia.org/wiki/EXPRESS_(data_modeling_language) STEP/EXPRESS] technology, the schema is available as an .EXP file. This file has been converted to an [http://download.eclipse.org/modeling/emf/emf/javadoc/2.6.0/org/eclipse/emf/ecore/package-summary.html#details EMF ECore] file with the [https://bimserver.googlecode.com/svn/branches/1.0/buildingSMARTLibrary BuildingSMARTLibrary] (part of BIMserver project).
= Generating Code =
The EMF framework generates Java classes with the given ECore file, these classes are used to store BIM models and passed to the [Database_internals database layer].
= Caveats =
If you load a model from an IFC-Step file, the String values of floating point numbers are being stored as a String as well. If you change the float values programatically, you should update (or clear) the string value.
= Three models =
BIMserver consists of 3 different EMF models:
Get Started
- Quick Guide
- Requirements Version 1.2
- Requirements Version 1.3
- Requirements Version 1.4
- Requirements Version 1.4 > 2015-09-12
- Requirements Version 1.5
- Download
- JAR Starter
- Setup
Deployment
- Ubuntu installation 1.3
- Windows installation
- Security
- Memory Usage
- More memory
- Performance statistics
- Large databases
Developers
- Service Interfaces
- Common functions
- Data Model
- Low Level Calls
- Endpoints
Clients
BIMServer Developers
- Plugins in 1.5
- Plugin Development
- Eclipse
- Eclipse Modeling Framework
- Embedding
- Terminology
- Database/Versioning
- IFC STEP Encoding
- Communication
- Global changes in 1.5
- Writing a service
- Services/Notifications
- BIMserver 1.5 Developers
- Extended data
- Extended data schema
- Object IDM
New developments
- New remote service interface
- Plugins new
- Deprecated
- New query language
- Visual query language
- Reorganizing BIMserver JavaScript API
General