Giter Club home page Giter Club logo

xbimpropertysets's Introduction

Xbim.PropertySets

Subproject of https://github.com/xBimTeam/

What is it?

The xBIM Tookit (eXtensible Building Information Modelling) is an open-source, software development BIM toolkit that supports the BuildingSmart Data Model (aka the Industry Foundation Classes IFC).

xBIM allows developers to read, create and view Building Information (BIM) Models in the IFC format. There is full support for geometric, topological operations and visualisation. In addition xBIM supports bi-directional translation between IFC and COBie formats

Getting Started

This package is independent so you can use it standalone. It implements buildingSMART data model for description of property and quantity sets. It also contains these definitions taken from buildingSMART as a resources so you can just take it and instantiate all predefined property sets for IFC2x3 or IFC4. It is as simple as this:

var defs = new Definitions<PropertySetDef>(Version.IFC4);
defs.LoadAllDefault();
var prop = defs["Pset_ActionRequest"]["RequestSourceName"] as PropertyDef;

Xbim is a software library, and is currently deployed with a number of sample applications to demonstrate its capabilities

  • XbimXplorer - a Windows WPF sample application that can open and render 3D IFC models (and native XBIM models ) as well as displaying semantic data.
  • Xbim.SceneJSWebViewer - a MVC web application that can open and render 3D IFC models (previously converted to XBIM) using a WebGL compatible browser.
  • XbimConvert - a sample console application to generate native XBIM model and geometry files from an IFC file.
  • Xbim.COBie.Client - A sample windows application demonstrating how a COBie spreadsheet can be generated from an IFC model.
  • CodeExamples - a sample console application demonstrating how to undertake a number of BIM processes using XBIM

Please note: all the samples in this solution are examples of how to use the Xbim library, and not intended to be used in a production environment without further development.

Licence

The XBIM library is made available under the CDDL Open Source licence. See the licences folder for a full text.

All licences should support the commercial usage of the XBIM system within a 'Larger Work', as long as you honour the licence agreements.

Third Party Licences

The core XBIM library makes use of the following 3rd party software packages, under their associated licences:

Additionally the Samples also make use of the following libraries

All licences are included in full under the Licences\3rd Party solution folder.

xbimpropertysets's People

Contributors

andyward avatar cbenghi avatar lloydpickering avatar martin1cerny avatar stevelockley avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

xbimpropertysets's Issues

Updatet propertysets definitions to IFC4 ADD 2 TC1

I had a look at the latest release of IFC4 Add2 TC1 - this is implemented as i can se in the XBIM enviroment,
but when checking if the new PSet's was presenent I found them missing.

Is there any plans of implementing these before the release of 4.3 ?

I have started to do something about it, but might need som sparring around two minor issues.
These two issues is
Handeling of IFCValue in DataType - _type setter.

In Pset_ReinforcingBarCommon - BendingParameters => IfcValue is defined as valuetype for the list.
This is as I can understand it a base type for other valuetypes.
Should it just be added to the Enum ? or is there better ways of solving it ?

If I just add it to Enum, it is correct in definitinons, and I can use it inside Revit.

Tags in the xml headers
The new Xml definisjons found in the IFC4 ADD2 TC1 download has a tag as shown under.
xsi:noNamespaceSchemaLocation="http://buildingSMART-tech.org/xml/psd/PSD_IFC4.xsd"
To get it to work, i changed the xsi:noNamespaceSchemaLocation to just "xmlns:"

The link it self is obvious wrong, but i can't locate the where it has been moved.

Is this a valid solution ?
All the other xml files has only refs to xmlns, not the other one.

Trying to get all Pset properties

Hello

I'm here again, this time i would like to know what is the correct method to obtain all properties of an object, including properties by type and specific properties of the object.

At the moment i'm using this code:

    if (SelectedText == "IFCCOLUMN")
    {
        var TotalColumns = XBModel.Instances.OfType<Xbim.Ifc2x3.SharedBldgElements.IfcColumn>();
        Xbim.Ifc2x3.SharedBldgElements.IfcColumn col = TotalColumns.ElementAt(listBox1.SelectedIndex);
        textBox1.Text = "";
        var ifcObj = col as Xbim.Ifc2x3.Kernel.IfcObject;
        var ifcType = Xbim.IO.IfcMetaData.IfcType(ifcObj);

         Dictionary<IfcLabel, Dictionary<IfcIdentifier, IfcValue>> result = col.GetAllPropertySingleValues();

         for (int i = 0; i < result.Count; i++)
         {
             var Meta = result.ElementAt(i).Value;
             for (int j = 0; j < Meta.Count; j++)
             {
                 var SubMeta = Meta.ElementAt(j);
                 textBox1.Text += "\t" + SubMeta.Key + ": " + SubMeta.ToString() + Environment.NewLine;
             }
         }
    }

But i'm sure this is not the best way to do it.

Thank you in advance.

.Net framework 4.5 version

Now I have a program related to gltf files, it is developed in visual studio2012 with .Net framework 4.5. Microsoft released visual studio2012 with .Net framework 4.5 at the same time, so I can't add new class library with .Net framework 4.5 environment.
I aimed at adding new function that can convert ifc file to gltf file. So I need Xbim.Geomery and Xbim.PropertySets. So I want to ask is there .Net framework 4.5 version for Xbim.Geomery and Xbim.PropertySets?

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.