Fix #1462. Standardise IfcOpenShell API to use Pythonic argument names.

This commit is contained in:
Dion Moult
2021-05-28 10:59:20 +10:00
parent 0a2adbb632
commit 1cd243f13c
19 changed files with 119 additions and 114 deletions
@@ -8,7 +8,7 @@ class Usecase:
def __init__(self, file, **settings):
self.file = file
self.settings = {
"AxisCurve": None, # A Blender object
"axis_curve": None, # A Blender object
"grid_axis": None,
}
for key, value in settings.items():
@@ -24,8 +24,8 @@ class Usecase:
grid = [i for i in self.file.get_inverse(self.settings["grid_axis"]) if i.is_a("IfcGrid")][0]
points = [
Matrix(ifcopenshell.util.placement.get_local_placement(grid.ObjectPlacement)).inverted()
@ (self.settings["AxisCurve"].matrix_world @ v.co)
for v in self.settings["AxisCurve"].data.vertices[0:2]
@ (self.settings["axis_curve"].matrix_world @ v.co)
for v in self.settings["axis_curve"].data.vertices[0:2]
]
self.settings["grid_axis"].AxisCurve = self.file.createIfcPolyline(
[
@@ -2,20 +2,20 @@ class Usecase:
def __init__(self, file, **settings):
self.file = file
self.settings = {
"AxisTag": "A",
"SameSense": True,
"UVWAxes": "UAxes", # Choose which axes
"Grid": None,
"axis_tag": "A",
"same_sense": True,
"uvw_axes": "UAxes", # Choose which axes
"grid": None,
}
for key, value in settings.items():
self.settings[key] = value
def execute(self):
element = self.file.create_entity("IfcGridAxis", **{
"AxisTag": self.settings["AxisTag"],
"SameSense": self.settings["SameSense"]
"axis_tag": self.settings["axis_tag"],
"SameSense": self.settings["same_sense"]
})
axes = list(getattr(self.settings["Grid"], self.settings["UVWAxes"]) or [])
axes = list(getattr(self.settings["grid"], self.settings["uvw_axes"]) or [])
axes.append(element)
setattr(self.settings["Grid"], self.settings["UVWAxes"], axes)
setattr(self.settings["grid"], self.settings["uvw_axes"], axes)
return element