ParametricFeature
- class compas.datastructures.ParametricFeature[source]
Bases:
Feature
Base class for Features that may be applied to the parametric definition of a
compas.datastructures.Part
.Examples
>>> class ExtensionFeature(ParametricFeature): >>> def __init__(self, extend_by): >>> super(ExtensionFeature, self).__init__() >>> self.extend_by = extend_by >>> >>> def apply(self, part): >>> part.length += self._extend_by >>> >>> def restore(self, part): >>> part.length -= self._extend_by >>> >>> def accumulate(self, other): >>> return BeamExtensionFeature(max(self.extend_by, other.extend_by))
Methods
Returns a new ParametricFeature which has the accumulative effect of this and the given feature.
Reverses the effect this ParametricFeature has incured onto the given part.
Inherited Methods
Converts the instance to a string.
Apply this Feature to the given part.
Make an independent copy of the data object.
Construct an object of this type from the provided data.
Construct an object of this type from a JSON file.
Construct an object of this type from a JSON string.
Compute a hash of the data for comparison during version control using the sha256 algorithm.
Convert an object to its native data representation.
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.
Validate the data against the object's data schema.