MCPcopy Create free account
hub / github.com/IfcOpenShell/IfcOpenShell / parse_applied_condition

Method parse_applied_condition

src/ifc2ca/ifc2ca.py:346–380  ·  view source on GitHub ↗
(
        self, condition: ios.entity_instance, geometry_type: str, should_fix_condition: bool = False
    )

Source from the content-addressed store, hash-verified

344 return data
345
346 def parse_applied_condition(
347 self, condition: ios.entity_instance, geometry_type: str, should_fix_condition: bool = False
348 ):
349 if condition is None:
350 if should_fix_condition:
351 return self.fixed_conditions[geometry_type]
352 else:
353 return None
354
355 if geometry_type == "Vertex":
356 return {
357 "dx": condition.TranslationalStiffnessX.wrappedValue,
358 "dy": condition.TranslationalStiffnessY.wrappedValue,
359 "dz": condition.TranslationalStiffnessZ.wrappedValue,
360 "drx": condition.RotationalStiffnessX.wrappedValue,
361 "dry": condition.RotationalStiffnessY.wrappedValue,
362 "drz": condition.RotationalStiffnessZ.wrappedValue,
363 }
364
365 if geometry_type == "Edge":
366 return {
367 "dx": condition.TranslationalStiffnessByLengthX.wrappedValue,
368 "dy": condition.TranslationalStiffnessByLengthY.wrappedValue,
369 "dz": condition.TranslationalStiffnessByLengthZ.wrappedValue,
370 "drx": condition.RotationalStiffnessByLengthX.wrappedValue,
371 "dry": condition.RotationalStiffnessByLengthY.wrappedValue,
372 "drz": condition.RotationalStiffnessByLengthZ.wrappedValue,
373 }
374
375 if geometry_type == "Face":
376 return {
377 "dx": condition.TranslationalStiffnessByAreaX.wrappedValue,
378 "dy": condition.TranslationalStiffnessByAreaY.wrappedValue,
379 "dz": condition.TranslationalStiffnessByAreaZ.wrappedValue,
380 }
381
382 def parse_element(self, element: ios.entity_instance):
383 data = {k: v for k, v in element.get_info().items() if k in self.member_keys}

Callers 2

parse_connectionMethod · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected