Я пытаюсь управлять поворотным шарниром с помощью набора контактов через скрипт - PullRequest
0 голосов
/ 08 ноября 2019

Я пытаюсь управлять поворотным соединением с помощью сценария с набором контактов, но анимация там только наполовину.

Работает с отключенным набором контактов, но как только я включаю контакт, устанавливаю революциюработает только до тех пор, пока два компонента не соприкоснутся. Затем вся анимация останавливается, пока компоненты не перестанут касаться. После того, как эти два компонента перестают касаться, анимация возвращается на ходу. Кажется, что отсутствует анимация набора контактов.

Модель - пример Женевского привода, и я хочу привести ротор вместе с крестовиной, как показано в этом уроке https://www.youtube.com/watch?v=UkGdrTyAaBg просто автоматически через скрипт

#Author-
#Description-

import adsk.core, adsk.fusion, adsk.cam, traceback, math

def run(context):
    ui = None
    try:
        app = adsk.core.Application.get()
        ui  = app.userInterface
        des = adsk.fusion.Design.cast(app.activeProduct)
        root = des.rootComponent

        joint = root.joints.itemByName('Rev2')
        rev = adsk.fusion.RevoluteJointMotion.cast(joint.jointMotion)

        for i in range(360):
            rev.rotationValue = i * (math.pi/180)
            adsk.doEvents()

    except:
        if ui:
            ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))
...