Model
- class compas_model.model.Model(name=None)
Bases:
Datastructure
Class representing a general model of hierarchically organised elements, with interactions.
Notes
A model has an element tree to store the hierarchical relationships between elements, and an interaction graph to store the interactions between pairs of elements. Model elements are contained in the tree hierarchy in tree nodes, and in the interaction graph in graph nodes.
Every model element can appear only once in the tree, and only once in the graph. This means that every element can have only one hierarchical parent. At the same time, independently of the hierarchy, every element can have many interactions with other elements.
- Attributes:
- elementsdict
The elements of the model mapped by their guid.
- tree
ElementTree
A tree representing the spatial hierarchy of the elements in the model.
- graph
InteractionGraph
A graph containing the interactions between the elements of the model on its edges.
Methods
Add an element to the model.
Add multiple elements to the model.
Add a group to the model.
Add an interaction between two elements of the model.
Add a material to the model.
Assign a material to an element or a list of elements.
Find groups of elements connected by a specific type of interaction.
Returns True if the model contains the given element.
Returns True if two elements have an interaction set between them.
Verify that the model contains a specific material.
Remove an element from the model.
Remove the interaction between two elements.
Transform the model and all that it contains.
Inherited Methods
Converts the instance to a string.
Compute the axis-aligned bounding box of the datastructure.
Compute the oriented bounding box of the datastructure.
Make an independent copy of the data object.
Construct an object of this type from a JSON file.
Construct an object of this type from a JSON string.
Rotate the datastructure.
Returns a rotated copy of this geometry.
Scale the datastructure.
Returns a scaled copy of this geometry.
Compute a hash of the data for comparison during version control using the sha256 algorithm.
Convert an object to its native data representation and save it to a JSON file.
Convert an object to its native data representation and save it to a JSON string.
Transforms the data structure.
Returns a transformed copy of this data structure.
Returns a transformed copy of this data structure.
Translate the datastructure.
Returns a translated copy of this geometry.
Validate the data against the object's data schema.