xbimteam / xbimmvdxml Goto Github PK
View Code? Open in Web Editor NEWThis repository contains IO, functions and XplorerUI for the BuildingSMART mvdXML format. It supports validation of models.
This repository contains IO, functions and XplorerUI for the BuildingSMART mvdXML format. It supports validation of models.
Hey,
i am Using the inserCopy Function. But i want to use it deeper than the shown example. In the semanticFIlter it just copy types of "isdefinedby". I just want wo copy specific "PropertySets" und specific "Properties". Something like:
if(Pset01 == "Pset_WallCommon" && properties01 == "ThermalTransmittance)
{
insertCopy();
}
so it should be somewhere here
//only bring over IsDefinedBy and IsTypedBy inverse relationships which will take over all properties and types
if (property.EntityAttribute.Order < 0 && !(
property.PropertyInfo.Name == nameof(IIfcProduct.IsDefinedBy) ||
property.PropertyInfo.Name == nameof(IIfcProduct.IsTypedBy)
))
return null;
Thanks
A function to extract only the elements that are defined in a given mvdXML.
i.e. remove all data that is not part of the model view.
See https://github.com/BuildingSMART/IfcDoc/issues/4
Hi,
We got the following requirements from one of our clients.
Do you have support for these features?
Thanks in advance
Manikandan V
Hey,
in your test mvdxml Files, there are besides the PsetName in the "TemplateRule" also PropertyName, e.B:
<Concept uuid="5ee22c0f-1d09-48ef-bd76-3bae624c408e" name="Properties" status="sample" override="false">
<Template ref="f74255a6-0c0e-4f31-84ad-24981db62461" />
<TemplateRules operator="and">
<TemplateRule Parameters="" />
<TemplateRule />
<TemplateRule Parameters="PsetName[Value]='Pset_WallCommon' AND Property[Value]='IsExternal'" />
<TemplateRule />
</TemplateRules>
</Concept>
or
<Concept uuid="f584d43e-5855-4486-9f9b-e62fb0d4e80d" name="SingleValueProperty"
override="false">
<Template ref="3a0e6536-f2bb-46bd-a58a-eaa55511fabd" />
<Definitions>
<Definition>
<Body lang="en"><![CDATA[<p>This concept requires all the doors should have DoorCommon Pset and have perperties of FireExit and SelfClosing.
RGD 2.2.7.8 Attributes: Specifically for an IFC object which provides access to a space, such as a door, the following properties are additionally applicable:
Pset_###Common
o FireExit: [True|False]
o SelfClosing: [True|False]
o SmokeStop: [True|False]</p>]]>
</Body>
</Definition>
</Definitions>
<Requirements />
<Rules>
<TemplateRule
Parameters="PropertyName='FireExit' AND PropertySetName='PSet_DoorCommon'" />
<TemplateRule
Parameters="PropertyName='SelfClosing' AND PropertySetName='PSet_DoorCommon'" />
</Rules>
</Concept>
How did you write the mvdXML, because uisng ifcDoc there is no chance of exporting an mvdXML anywhere close to your schema. If i export mvdXML in ifcDoc it just exports the Pset Names but not my Properties.
And also if i import your mvdXML's in ifcDoc it is not showing all information or the complete schema that is written in your mvdXML.
I mean, i can export my View with ifcDoc in mvdXML 1.2, then everything is icluded. But xBIM and all other BIM tools, do not support MVD 1.2 and also, even if it does export now my parameters, it is a complete different schema then yours.
The following is an example of a constraint on an EntityRule; this feature is currently not implemented in the library
<EntityRule EntityName="IfcElementAssembly">
<AttributeRules>
<AttributeRule RuleID="ComplexReinforcement" AttributeName="PredefinedType">
<EntityRules>
<EntityRule EntityName="IfcElementAssemblyTypeEnum">
<Constraints>
<Constraint Expression="ComplexReinforcement[Value] = 'REINFORCEMENT_UNIT'" />
</Constraints>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
It seems that IFCPROPERTYENUMERATEDVALUE is not properly checked and not shown in the property tab.
This is an example:
#2739=IFCSPACE('1joJMsuM0e2DPoYGiOkFYq',#5,'Day care room',$,$,#2740,#2743,'Day care room',.ELEMENT.,.NOTDEFINED.,$);
#2755=IFCPROPERTYENUMERATEDVALUE('AccessSecurity',$,(IFCLABEL('A2')),#2552);
#2552=IFCPROPERTYENUMERATION('AccessSecurity',(IFCLABEL('A1'),IFCLABEL('A2'),IFCLABEL('A3'),IFCLABEL('A4'),IFCLABEL('A5')),$);
#2760=IFCPROPERTYSET('2mIneNqiyLlXIvmv5QIyMx',#5,'STREAMER_Labels_PoR',$,(#2755));
#170088=IFCRELDEFINESBYPROPERTIES('2oODzCyK8c_aL_5xT1AIbm',#5,$,$,(#2739),#2760);
Attached the full IFC file.
Step02_EDC_Output_correct_enums.txt
and the mvdXML.
PoR_EnumCheck_IFC2X3_V4_update.txt
Thank you for making this available. I've tried loading mvdXML plugin in Xbim, but get an error. Iโm attaching the log-file, the error is mentioned on line 217 through 229.
My system is Windows 10 on a Bootcamp partition on a MacBook Pro 2011.
Best regards,
Thorsten Lang
Hi,
i am unable to invoke the comment button after a check has been performed.
Hello xBIMTeam!
I am currently experimenting with the IfcDoc Tool and mvdXML. All my test with the example files went well, thanks for providing them!
I now tried to create my own mvdXML using the IfcDoc Tool and it seems like I am unable to create a proper file for Xbim. At the moment when I try to run my tests the following error messages show up:
==== 14:32 ERROR XbimPlugin.MvdXML.MainWindow
Error processing entity #672.
Der Wert darf nicht NULL sein.
Parametername: source
bei System.Linq.Enumerable.Distinct[TSource](IEnumerable1 source) bei Xbim.MvdXml.TemplateRules.GetIndicators() bei Xbim.MvdXml.ConceptRootApplicability.get_DataIndicators() bei Xbim.MvdXml.ConceptRootApplicability.GetData(IPersistEntity entity) bei Xbim.MvdXml.ConceptRootApplicability.IsApplicable(IPersistEntity entity) bei Xbim.MvdXml.Concept.AppliesTo(IPersistEntity entity) bei Xbim.MvdXml.Concept.Test(IPersistEntity ent, ConceptTestMode mode) bei Xbim.MvdXml.RequirementsRequirement.Test(IPersistEntity ent) bei XbimPlugin.MvdXML.MainWindow.ReportRequirementRequirement(RequirementsRequirement requirementsRequirement, IPersistEntity entity) bei XbimPlugin.MvdXML.MainWindow.PerformReport(HashSet
1 selectedConcepts, HashSet1 selectedExchReq, HashSet
1 selectedIfcClasses, List1 entities, MvdEngine doc, Object sender, DoWorkEventArgs ea, ObservableCollection
1 destinationResultCollection, BackgroundWorker reportingWorker, HashSet`1 requiredReportingSet)
It seems like a certain value is not allowed to be equal NULL, but as far as I know, I am following all the rules for creating an mvdXML using the IfcDoc Tool. Are there certain restrictions requirements for a mvdXML to work with xBIM?
When looking at the example mvdXMLs, most of the were created by AEC3, I guess by using their database behind BIMQ. Is there a major difference between their creation process for mvdXML?
Best regards,
Tobias
We have troubles checking statements like the following:
<TemplateRule Parameters="Set[Value]='Pset_SpaceCommon' AND Property[Value]='Category' AND (Value[Value]='Betriebstechnische Anlagen' OR Value[Value]='Sonstige Nutzungen' OR Value[Value]='Verkehrserschl. und -sicherung' OR Value[Value]='Wohnen und Aufenthalt')"/>
This is working for instance:
<TemplateRule Parameters="Set[Value]='Pset_SpaceCommon' AND PropertyName[Value]='Category' AND Value[Value]='Betriebstechnische Anlagen'"/>
It seems that configuring same RuleIDs in the TemplateRule parameters is the reason.
Hello, I am currently implementing a local hotfix for validating property set value integrity using regex.
Do you have any plans of implementing a feature like this at any point?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.