Add docs to layer API

This commit is contained in:
Dion Moult
2022-12-07 08:59:24 +11:00
parent 45953c6b49
commit 9650bbb5ee
8 changed files with 149 additions and 28 deletions
@@ -18,11 +18,32 @@
class Usecase:
def __init__(self, file, **settings):
def __init__(self, file, Name=None):
"""Adds a new layer
An IFC layer is like a CAD layer. Portions of an object's geometry
(typically portions of its 2D linework) can be assigned to layers, which
can provide stylistic information such as line weights, colours, or
simply be used for filtering.
Layers have historically been used to organise CAD data and included in
ISO standards such as ISO 13567 or by the AIA. This alllows IFC data to
be compatible with older, 2D-oriented, layer-based workflows.
Some software that are still based on layers, such as Tekla or ArchiCAD
may also use this layer information for filtering.
:param Name: The name of the layer. Defaults to "Unnamed".
:type Name: str, optional
:return: The newly created IfcPresentationLayerAssignment element
:rtype: ifcopenshell.entity_instance.entity_instance
Example:
ifcopenshell.api.run("layer.add_layer", model, Name="AI-WALL-FULL-DIMS-N")
"""
self.file = file
self.settings = {}
for key, value in settings.items():
self.settings[key] = value
self.settings = {"Name": Name or "Unnamed"}
def execute(self):
return self.file.create_entity("IfcPresentationLayerAssignment", **{"Name": "Unnamed"})
return self.file.create_entity("IfcPresentationLayerAssignment", Name=self.settings["Name"])