ich hab mal eine Feder gebaut, das geht so easy, es ist ein Traum, erstmal... Die ist angelegt, geschliffen und Progressiv.
Der Sketch ist nur ein Kreis mit Durchmesser und Distanz zum Nullpunkt.
Das ist auch schön parametrisch, Draht- und Feder-Durchmesser betreffend.
Und danach gings bergab...um Hilde Knef zu bemühen.
links sind die Eigenschaften zu sehen.
Steigung und Windungen Modus, und die Werte des Segments. Derer 4 sind's insgesamt.
Profile ist, wo dieses Segment an das vorherige anschließt. Also Face4 von Helix1.
in dem Moment wo ich eine Windungszahl verändere, bricht das Model zusammen weil Face4 nicht mehr existiert oder wo anders liegt.
Ein grundsätzliches Freecad Problem.
ich fand das jetzt un-fixbar, keine Ahnung welche und ob Möglichkeiten zur Reparatur es gibt.
Phyton mag ich total...nicht, egal, hab folgendes in die Konsole getan (bei dem noch heilen Model):
Code: Alles auswählen
>>> doc=FreeCAD.ActiveDocument
>>> feder1=doc.getObject('AdditiveHelix')
>>> feder2=doc.getObject('AdditiveHelix001')
>>> feder3=doc.getObject('AdditiveHelix002')
>>> feder4=doc.getObject('AdditiveHelix003')
>>> print(feder1.Turns)
1.0
>>> print(feder2.Turns)
2.0
>>> print(feder3.Turns)
2.0
>>> print(feder4.Turns)
1.0
>>> print(feder1.Profile)
(<Sketcher::SketchObject>, [])
>>> print(feder2.Profile)
(<PartDesign::AdditiveHelix>, ['Face3'])
>>> print(feder3.Profile)
(<PartDesign::AdditiveHelix>, ['Face5'])
>>> print(feder4.Profile)
(<PartDesign::AdditiveHelix>, ['Face7'])
>>>
Auffällig ist, das im Unterschied zur Gui hier nur von AdditiveHelix die rede ist, bei dem Wert von Profile.
Der, fand ich heraus, ist ein Tuple und nicht veränderbar, muss also neu gebaut werden.
edit. ich will die Windungszahl um 1 erhöhen, das ergibt dann 1 Face mehr, und Profile muss dementsprechend angepasst werden.
Ich sage also:
Code: Alles auswählen
feder2.Turns= 3
feder3.Profile=(feder2,'Face6')
feder4.Profile=(feder3,'Face8')
Der "geschliffen" subtracive Zylinder kann manuell verschubbelt werden.
könnte man auch per script machen, wenn man spas dran hat.