作成日 2015-07-27
最終更新日
概要
FreeCADで歯車をアニメーション化します。マクロを作成します。
参考動画
FreeCAD: Gear Animation Tutorial(外部サイト)
作成者のホームページ(外部サイト)
使用するFreeCADのバージョン
操作
マクロを作成します。
「作成」をクリックします。
マクロ名を入力し、OKをクリックします。
マクロタブが作成されます。
コードを入力します。
2つの歯車を配置したタブを選択します。
位置を変更した先程、歯車を選択します。
データタブのPlacementの「...」をクリックします。
OKをクリックします。
Pythonコンソールに行が追加されますので、追加された行をマクロタブに貼り付けます。
Pythonコンソールから、コピーします。
マクロコードに貼り付けます。
from PySide import QtCore i=0 def update() global i App.getDocument("MeishoMisette2").Pad001.Placement=App.Placement(App.Vector(0,127.5,0), App.Rotation(App.Vector(0,0,1),0), App.Vector(0,0,0))
張り付けたコードの一部を変更します。変更前
変更後
2つの歯車を配置したタブを選択します。
もう1つの歯車を選択します。
データタブのPlacementの「...」をクリックします。
OKをクリックします。
Pythonコンソールに行が追加されますので、追加された行をマクロタブに貼り付けます。
張り付けたコードの一部を変更します。変更前
変更後
残りのコードを入力します。
from PySide import QtCore i=0 def update(): global i App.getDocument("_Gear").Pad001.Placement=App.Placement(App.Vector(0,127.5,0), App.Rotation(App.Vector(0,0,1),-i), App.Vector(0,0,0)) App.getDocument("_Gear").Pad.Placement=App.Placement(App.Vector(0,0,0), App.Rotation(App.Vector(0,0,1),i*(74.0/28.0)), App.Vector(0,0,0)) i +=0.01 timer = QtCore.QTimer() timer.timeout.connect(update) timer.start(1)
2つの歯車を配置したタブを選択します。
Pythonコンソールに、コピーしたコードを貼り付け、エンターキーを押します。
このままだと回り続けます。終了するには、Pythonコンソールで「timer.stop()」を入力し、リターンを押します。