Table of Contents
Arc overhangsは、GitHubでstmccullochが最初にプロトタイプを作成した手法です。この手法により、サポート材なしで大きなオーバーハングを実現できました。その後、同じサイト上でnicolai-wachenschwanによって、PrusaSlicerおよびSuperSlicer用のポストスクリプトに移植されました。ここでは、これを使用するために必要なことと、その仕組みについて説明します。
必要条件
Arc overhangsはPythonで記述されているため、コンピューターにPythonインタープリターをインストールする必要があります。ARM MacとほとんどのLinuxディストリビューションには、最近のPython 3があらかじめインストールされています。Windowsにはインストールされておらず、Microsoft Store版は動作しません。Pythonは公式サイトからダウンロードする必要があります。このスクリプトで使用するライブラリの1つには3.12用のビルドがなく、Windowsでコンパイルするのは困難です。Windowsマシンを使用している場合、執筆時点では3.10または3.11が必要です。何らかの理由でARM MacまたはLinuxに3.12がインストールされている場合は、自動的にコンパイルされるはずですが、私はテストしていません。
Python
この作業には、Pythonの仮想環境を使用するのがよい方法です。Windowsでは、Pythonインストーラーにこれが含まれています。Python -m venv arcを実行するだけで作成できます。名前はarcでなくても構いませんが、私はこの名前を使っています。Linuxでは通常、お使いのPythonのバージョンとディストリビューションに対応する仮想環境パッケージをインストールする必要があります。Windowsの場合と同じコマンドを、python3 に置き換えて実行すれば、必要なものが表示されるはずです。Windowsでは、ドライブのいずれかのルートでこれを行うとよいでしょう。Linuxでは、ホームディレクトリで行うか、コンピューターを複数人で使用する場合は共有フォルダーの下で行ってください。
次に、pyvenv内にスクリプトの依存関係をインストールする必要があります。スクリプトのリポジトリにあるrequirements.txtを使えば、必要なものがインストールされます。pyvenvがあるディレクトリでターミナルを開き、Linuxでは/venv/bin/activate 、Windowsでは/venvScripts/activateを実行します。ただしWindowsでは、スクリプトを有効にする必要があります。リポジトリからrequirements.txtファイルをターミナルを開いた場所に移動し、venvを有効にした状態でpip install -r requirements.txt を実行します。なお、Linuxではpip3 を使用する必要があります。別の方法として、依存関係は4つしかないため、1つずつインストールすることもできます。
スライサー
PrusaSlicerとSuperSlicerでは、スクリプトは変更なしで動作します。後処理スクリプトに、WindowsではDrive letter:/path/to/venv/python.exe Drive letter:/path/to/script.py、Linuxでは/path/to/venv/python/executable /path/to/script.pyを追加する必要があります。Linuxでは通常、現在のユーザーのホームディレクトリから開始されることに注意してください。なお、Orca Slicerでは動作しません。設定機能を使って変更しようとしましたが、OrcaでスライスしたGコード内の相対押出量を検出するオプションがないようです。Curaでも使用できます。
使用方法
このスクリプトは、対象にするオーバーハングの条件がかなり厳密です。私の経験では、単調または直線状の上面・下面インフィルだけを対象にしますが、上面に円弧を生成しようとはしません。また、2レイヤー連続して正しく円弧を生成することもできず、代わりにヒルベルト曲線インフィルだけを生成します。さらに、オーバーハングの一部が接続位置より低い場合も効果がありません。その場合は依然としてサポートが必要です。スライス後、スクリプトを実行するにはファイルをエクスポートする必要があります。Windowsではターミナルが開き、完了時にキーボードのEnterキーを押すよう求められます。Linuxではそのプロンプトは表示されず、すべて自動的に処理されました。
仕組み
基本的に、プリンターは同じZ高さでいくつかの円弧を、5mm/s程度の非常に低速で印刷します。これにより、大きなオーバーハングが可能になります。その後、反りを抑えるため、次のレイヤーのインフィルをヒルベルト曲線インフィルに置き換えます。最終的に、ほぼサポートなしで印刷できるようになります。
結果
すべて計画どおりに進めば、Gコードのプレビューで、オーバーハングの下部にあるソリッドインフィルの一部が円弧に置き換わって表示されます。
——————————————————