Themen in Übersicht:
- Find Conditions
- Mapping Property Set und Property Attribut
- Mapping Conditions
- Spezielle Befehle - Parent Mapping
- Spezielle Mapping Conditions - Laufnummer
- Spezielle Befehle - Typenzusammenbau
- Beispiel Mapping
- Zugriff auf Projektparameter der IFC
- Oft gestellte Fragen
Find Conditions
- Die << Find Conditions >> bestimmen die Auswahl der Instanzen bzw. filtern die Instanzen nach dem Filter und der Mappingcondition.
- Die Find Conditions, sowie die Filter sind Case-Sensitive, sollen der Filter bei z.B. <<Badaustattung>> und <<Austattung>> treffen, so müssen diese in zwei Find Conditions geführt werden, oder es kann als Filter << ustattung >> angwandt werden.
| Condition | Schema | Bemerkung |
|---|---|---|
| Equals | Equals + Filter | Wert muss genau Zeichenfolge entsprechen |
| StartsWith | StartsWith + Filter | Wert muss mit der Zeichenfolge im Feld «Filter» beginnen |
| EndsWith | EndsWith + Filter | |
| Contains | Contains + Filter |
Wert muss in Zeichenfolge enthalten sein,
|
| NotContains | NotContains + Filter | |
| IsDefined (kein Filter) | IsDefined (kein Filter) |
Mapping Property Set und Property Attribut
Generell werden im Mappingeditor mögliche Mappings im Detailblatte beim Klicken ins Attribut angezeigt, wenn zuvor ein Objekt im Modell angeklickt worden ist.
Weitere Anmerkungen zum Mapping:
- Die Identifikation der Instanzen erfolgt bei IFC Dateienmit dem folgenden Mapping abgegriffen werden:
Item//GUID
- Die Identifikation der Instanzen erfolgt bei Revit Dateien mit dem folgenden Mapping abgegriffen werden:
$REVIT$//externalId
- Die Typen der Instanzen können bei Revit Dateien mit dem folgenden Mapping abgegriffen werden:
$REVIT$//type
- Die Familiender Instanzen können bei Revit Dateien mit dem folgenden Mapping abgegriffen werden:
$REVIT$//family
Es gibt Besonderheiten IFC Modell der Konvertierungsmethode V4, hier muss damit die Identifikation der Instanzen erfolgreich ist als Mapping die "GLOBALID" ① gemappt werden und die Mapping Condition "GUID dekomprimieren" ② gewählt werden.
Mapping Conditions
- Mapping Conditions, bestimmen die Transformation der Werte auf die big-Attribute
- Mehrfache Conditions für auf ein Attribut sind nicht möglich, über Hilfsattribute können diese mithilfe der Condition <<AttrJoin>> oder alternativ über weiter differenzierende <<Find Conditions>> und Gruppierungen des Attributs mit der Find Condition gelöst werden.
| Condition | Schema/Syntax | Beispiele | Bemerkung |
|---|---|---|---|
| divide | divide,[value] | divide,5.8 | geteilt durch, Achtung: gilt nur für Zahlendatentypen: Double |
| Mutli | multi,[value] | multi,5.8 | multipliziert mit, Achtung: gilt nur für Zahlendatentypen |
| Prefix | Prefix,[Symbol] | Prefix,_ | nur Symbole wie _ + / \ | |
| Suffix | Suffix,[Symbol] | Suffix_ | nur Symbole wie _ + / \ | |
| TrimEnd | TrimEnd,[Symbol],[Index] | TrimEnd,_,5 | |
| TrimStart | TrimStart,[Symbol],[Index] | TrimStart,_,5 | |
| Trim | Trim,[Symbol],[Index] | Trim,_,5 | Symbolindex fängt bei 0 an |
| Trim | Trim,[SYMBOL1|SYMBOL2],1 | Trim,[_| ],1 | Trim entweder auf einem "_" oder einem Space " " |
| Trim true |
Trim,[Symbol],[Index],true
|
Trim, ,1,true |
BOP_NOGO Rund -> Rund Trimmt einen String nur wenn die Bedingung zutrifft (Anzahl und Art des Delimeters)
|
| Substring | Substring,[StartIndex],[EndIndex] | Substring,1,5 | |
| Replace | Replace,[$$value1$replacevalue1$$value2$replaceValue2 | Replace,$$False$Falsch$$True$Wahr | |
| AttrJoin | AttrJoin,[IMAttributeName],[delimiter].... | AttrJoin,Tuertyp,_,Breite | |
| Regex (Regular Expression) | Regex,([^\_]+\_){Index} | Regex,([^\_]+\_){3} | Alles ab dem Unterstrich _ soll extrahiert werden, auch wenn dieser nicht immer vorkommt. |
Spezielle Befehle - Parent Mapping
Um Informationen aus dem Parent - also dem übergeordneten hierarchischen Bauteilen zu extrahieren ist das Mapping auf ebene des Propertysets - also der Spalte Pset Parent - parent1.[Pset]//[PsetAttr] zu hinterlegen, hiermit wird definiert, dass das Mapping eine Ebene nach oben gehen soll (durch parent1) und dort dann unter dem Pset [Pset] im Attribut [PsetAttr] nach dem Wert suchen soll.
Hinweis durch das Verändern des Parentindixes kann beliebig weit nach oben gesprungen werden
Praktisches Beispiel:
Parent1.Item//Name
Parent2.Item//Name
Die Mappings starten dabei jeweils basierend auf den durch die Selektoren gefangenen Instanzen.
Nachfolgendes Beispiel extrahiert die IFCBuilding, IFCSite, und das IFCProject, die Informationen werden dabei auf einer Instanz in big abgebildet.
| ID | Element ID | Disziplin | Group | IMAttribute | DataTyp | Pset | Pset | Filter | Condition |
| 185 | 37 | AR | $ELEMENT$ | Item | Type | IFCBUILDING | |||
| 186 | 37 | AR | $INSTANCES$ | Item | GUID | ||||
| 186 | 37 | AR | ... | ... | ... | ... | ... | .. | |
| 187 | 37 | AR | IfcBuilding | String | |||||
| 188 | 37 | AR | IfcSite | String | |||||
| 189 | 37 | AR | IfcProject | String |
Spezielle Mapping Conditions - Laufnummer
Es kann via der Condition ConsecutiveNo erzwungen werden, dass eine Laufnummer erzeugt wird. Hierbei muss an erster Stelle die Anzahl der Laufnummerstellen anzugeben, also ob diese 1, 2, 3 oder mehrstellig ist.
Anhand der Werte des Bezugsattributs werden die Laufnummer gruppiert wird (fängt bei jedem neuen Wert an neu zu zählen. Dies heisst, dass sollte als Attribut das Geschoss gewählt worden sein, fängt bei die Laufnummer im 2.Obergeschoss erneut bei 0 an zu zählen.
Damit grundsätzlich alle Instanzen innerhalb eines Elements eine einzigartige Laufnummer bekommen ist ein Bezugsattribut zu wählen welches in allen Instanzen des Elements der selben Wert hat, hier kann auch auf ein Systemattribut wie der Elementname zugegriffen werden.
ConsecutiveNo,[Anzahl der Stellen der Laufnummer],[Bezugsattribut]
Im unten gezeigten Beispiel wird eine dreistellige Laufnummer basierend auf den Attributswerten des Betriebsmittelattributs erzeugt.
ConsecutiveNo,3,Betriebsmittel ID
Die Laufnummercondition hat folgende Eigenschaften:
- Die Laufnummern werden mit dem Modelllauf erzeugt.
- Bestehende Laufnummern bleiben statisch, diese werde nicht mit einem Modelllauf erneut vergeben.
- Die Laufnummer von Objekten die gelöscht wird, kann bzw. wird nochmals verwendet werden. Sollte beispielswiese die Laufnummer 003 bzw. die Instanz dazu gelöscht werden, kann diese im nächsten Modelllauf wieder vergeben werden.
Hinweis: Es existiert innerhalb von big immer eine eindeutige Kennzeichnung der Instanzen, auf Benutzerseite ist dies als Instanz ID im Gesamtmodell ersichtlich. Beim Export oder beim Arbeiten mit Formeln oder Relationen kann zudem auf die GUID zugegriffen werden.
Spezielle Befehle - Typenzusammenbau
Der Typenzusammenbau kann Typen basierend auf verschiedenen Modellattribuierungen zusammenbaue, siehe dazu Typenzusammenbau.
Beispiel Mapping
- Unten aufgeführt ist ein Exemplarisches Mapping von Türattributen
| ID | Element ID | Disziplin | Group | IMAttribute | DataTyp | Pset | Pset | Filter | Condition |
| ... | ... | ... | ... | ... | ... | ... | ... | ||
| 18 | 37 | ARC | Tuernummer | string | Komponente | Name | |||
| 19 | 37 | ARC | Material_Tuerblatt | string | Komponente | Material_A | TrimStart,_,1 | ||
| 20 | 37 | ARC | Material_Druecker | string | Element | Layer | Trim,_,2 | ||
| 21 | 37 | ARC | Zustand | string | Komponente | Status | TrimEnd,_,2 | ||
| 22 | 37 | ARC | Breite | double | Komponente | Width | multi,2.54 | ||
| 23 | 37 | ARC | Länge | double | Komponente | Height | divide,2.54 | ||
| 24 | 37 | ARC | $TYPE$ | Komponente | Typname | Trim,_,2 | |||
| 25 | 37 | ARC | Rauchdicht | string | Komponente | RD | Substring,3,4 | ||
| 26 | 37 | ARC | Schallschutz | string | Komponente | A_Schutz | Trim | ||
| ... | ... | ... | ... | ... | ... | ... | ... | ... | |
| 27 | 37 | ARC | Brandschutztuer | string | Element | Material |
grau = automatisch vergeben beim Eintrag von Pset und PsetAttr
schwarz = manuell einzugeben
Zugriff auf Projektparameter der IFC
Das IfcProject kann wie folgt abgegriffen werden:
| ID | Element ID | Disziplin | Group | IMAttribute | Datatype | Pset | PsetAttr | Filter | Condition |
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
| 1760 | 37 | ARC | Standort | string | Element | IfcClass | IfcProject | ||
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
grau = automatisch vergeben beim Eintrag von Pset und PsetAttr
schwarz = manuell einzugeben
Oft gestellte Fragen
- Bei weiteren Fragen, gerne eine Email an: info@kaulquappe.com
- Wie extrahiere ich Wandschichten oder Deckenschichten? Siehe hierzu Extraktion von Schichten
Kommentare
0 Kommentare
Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.