-
Notifications
You must be signed in to change notification settings - Fork 26
How it works or should work
Ania A edited this page Nov 22, 2022
·
22 revisions
General stuff from compas Part
class [source]:
- types:
MeshFeature
,BrepFeature
,ParametricFeature
(?) - know their feature shape and operation
- hold reference to
Part
- part holds list of references to features
- store a deepcopy of previous part geometry
- apply themselves
- do not know where they come from
- do they know if already applied?
What part.add_geometry_feature()
does:
- creates a feature instance
- adds it to
part.features()
list - optionally calls
feature.apply()
What feature.apply()
does:
- performs feature operation
- stores new geometry of the part (transformed) in
part._part_geometry
Each joint type has specific features to apply to the parts, beams etc. For example: trim with a plane, extend length on one side, boolean subtract a notch geometry.
What joint.add_features()
does:
- using
part.add_feature()
:- creates joint-specific features
- adds them to
part.features()
list
- adds them to
joint.features()
list - optionally calls
feature.apply()
TODO:
- prevent duplicates of features from the same joint