今回は歯車を直線的にモデリングしていきます。
「ピニオン」は平歯車をそのまま使用、「ラック」を新しくモデリングとしました。
ラックとピニオンの構成により、回転運動を直線運動に置き換える歯車の動きが行われます。
ピニオンは、前回の冠歯車の時と同じサイズで半径50mm、歯数18の歯車としました。
1つの歯は以下のような「開いた線形状」となっています。
また、歯の幅は「17.3648」になります。
計算方法は、「冠歯車をモデリング」をご参照くださいませ。
この歯車の名前を「ピニオン」としました。
ラックをモデリング
今回は、「開いた線形状」の歯を直線的に並べます。
今までどおりすべてをスクリプトで処理してもよいですが、簡単な作業ですので手作業も含めてささっとやってしまいましょう。
歯の「開いた線形状」の幅を17.3648にする
ブラウザで歯の「開いた線形状」を選択し、形状情報ウィンドウの
バウンディングボックスの「縦横比を固定」チェックボックスをオン、
サイズのXに「17.3648」と入力します。
「開いた線形状」を複製
ブラウザで「開いた線形状」を選択します。
ツールボックスの「作成」-「移動/複製」-「複製」-「直線移動」を選択し、
図形ウィンドウ上でドラッグを行います。
ツールパラメータの「距離」で歯の幅と同じ「17.3648」を指定しました。
これで、歯は2つ隣接することになります。
ツールパラメータで「繰り返し」を指定して20個分並べました。
「開いた線形状」を連結
複数の「開いた線形状」を連結して、1つの「開いた線形状」にします。
「歯車のベース部分をモデリング」のときの「「開いた線形状」を連結する」の手順のように、
「記憶」と「追加」で線形状を連結します。
- 一番最後の「開いた線形状」をブラウザで選択
- ツールパラメータで「記憶」を選択
- 最後から1つ手前の「開いた線形状」をブラウザで選択
- ツールパラメータで「追加」を選択
この1ループ分をスクリプトで記載すると、以下のようになります。
scene = xshade.scene()
scene.memory() # 選択形状を「記憶」.
scene.select_sister(1) # ブラウザで1つ手前の形状を選択.
scene.append() # 「追加」を行う.
これで、2つの「開いた線形状」が連結されて1つになりました。
後はこれを繰り返します。
スクリプトウィンドウで上記のPythonコードを書いて、「実行」を線形状数分行えばよさそうです。
不要になった線形状を削除して、以下のようになりました。
厚みを付ける
自由曲面パートを作成し、その中にラック用の「開いた線形状」を入れます。
複製して+Y方向に10mm移動させました。
ラックの面を閉じる
厚みを付けた段階で、歯車の歯の部分は面が貼られます。
その側面部分を閉じていくことにします。
自由曲面パート内の「開いた線形状」のはじめと終わりをそれぞれ複製します。
このときの4つの「開いた線形状」の一番上と下を上面図で見ると歯車の山と谷があるので、
マニピュレータを使用してZ軸方向に縮小して一直線になるようにします。
マニピュレータの拡大縮小の四角をドラッグ後、ツールボックスの「移動:拡大縮小」でZを0.0にすると一直線になります。
そのまま「開いた線形状」を-Z方向に移動させておきます。
同様に、透視図から見て底面になる部分も閉じるようにしました。
透視図でカメラを回転させて歯車の歯の反対側を見ると、閉じていない箇所があるので
ここは自由曲面の「切り替え」を行った後に「閉じた線形状」にします。
ブラウザで自由曲面を選択。
ツールボックスの「編集」-「線形状」-「編集」-「切り替え」を選択すると、以下のようになりました。
次に、自由曲面内の「開いた線形状」をすべて選択し、形状情報ウィンドウで「閉じた線形状」チェックボックスをオンにします。
これで、歯車の歯と反対側の面が閉じられました。
最後に、自由曲面内の一番先頭と末尾の「閉じた線形状」をそれぞれ複製し、
自由曲面内の一番先頭と末尾に配置している「閉じた線形状」を「一点に収束」します。
もう片側も同じようにすると、自由曲面内のすべての面が閉じられた状態になりました。
これでラック部は完成になります。
自由曲面を「切り替え」て元の状態に戻して以下のようになりました。
自由曲面の名前を「ラック」としました。
ラックとピニオンを回転/移動してかみ合わせる
マーカー色を変えて、ラックとピニオンの形状を回転/移動させてかみ合わせます。
今回のラックとピニオンは、今までいくつか歯車を作り続けた応用になりますので簡単でした。
歯車の動きとしては、ピニオンが回転するとラックが直線移動することになります。
モーションの指定については次回に行います。