LoginSignup
0
0

More than 5 years have passed since last update.

スライサー(FDM式3Dプリンタ向け)の作成 考察2(外壁の厚みについて)

Posted at

1.はじめに

 本ソフトでは出力対象の輪郭を表す部分を外壁と称しています。
my-tblayers2.jpg
 立方体で例えると、水平な面(2面:上面/下面),垂直な面(4面:正面/背面/右側面/左側面)となります。
 これらの面の厚みについての考察です。

# 2.パラメータ
 パラメータで外壁の厚みが指定されます。
 水平面については、[print-Layer-topSolidLayers]で上面の厚み,[print-Layer-bottomSolidLayers]で下面の厚みです。
 垂直面については、[print-Layer-perimeterOutlines]です。

 積層高さ=0.3[mm]/ノズル径=0.4[mm]の場合で例えると
  topSolidLayersが 3(層)指定の場合、3×0.3=0.9[mm]となります。
  perimeterOutlinesが3(ループ)指定の場合、3×0.4=1.2[mm]となります。

3.考慮点

 この指定方法は、スライサーとして利用しているSimplify3Dの指定方法なのですが、スライサー目線の指定方法だと考えます。
 ユーザ目線からの指定方法は、「一律1[mm]としたい」や「最低でも1[mm]以上欲しい」などではないでしょうか?私はそう思います。
 ノズル径の違うツールヘッドを利用したり、積層高さを変更したりすると、上記厚み部分も合わせて調整しなければいけない状況です。

 本ソフトは、上記[topSolidLayers]/[bottomSolidLayers]/[perimeterOutlines]のパラメータは元々の(層)や(ループ)指定の代わりに[mm]単位指定もできりょうにしました。
 [mm]指定の場合、その時の層高さや、ノズル径から必要な、層数やループ数を逆算させることになります。
 他のパラメータもいくつか同様の改良をしています。
 参考:付録C パラメータ

4.ところで...

 下図のような形状の場合、外壁の厚みはどのようになるでしょうか?
キャプチャ1.JPG(横からの図。三角柱を横にした形状)
 垂直,水平面(下記黄色枠)は前記直方体と同じですが、斜めの面(下記赤色枠)については別に考慮する必要があります。
キャプチャ2.JPG
 上図の場合、面が上方向であるめた、上面厚みと側面厚みを考慮します。
 水平方向の厚みは、パラメータ[perimeterOutlines]で必要な厚みがとれます。
 しかし上面方向の厚みについては注意が必要です。
 下図の場合、垂直方向の厚みが不足します。(水平方向3ループ)赤黄緑。垂直方向を見ると3層無く、1層や2層分となる)
キャプチャ3.JPG
 これを解消するため、下図のエリアを外壁として扱う必要があります。(水色塗りつぶし。斜め部分ではオレンジ囲い
キャプチャ4.JPG

 本スライサでは、この領域(外壁とする領域)を求めるため、以下の方法としています。
1. 出力対象の各面のうち法線が上向きの面(法線のZ>0)を元に垂直方向の厚み(topSolidLayers相当の厚み)分下にシフトした面から構成される上面モデルを生成(下図ではオレンジ)
2. 上記同様に法線が下向きの面(法線のZ<0)の面を元に垂直方向の厚み(bottomSolidLayers相当の厚み)分上にシフトした面から構成される下面モデルを生成(下図では水色)
キャプチャ5.JPG
3. 出力対象と、上面モデル,下面モデルを同一層高さでスライス
4. 求めた3つの閉領域のうち、出力対象の閉領域と、上面モデルの閉領域または、下面モデルの閉領域が重なる部分を外壁部分とする
キャプチャ6.JPG

  • 実際は、出力対象の閉領域からまず、水平方向の外壁となるループ分を求め、残るインフィル領域と上面モデルの閉領域,下面モデルの閉領域の重なる部分を求めています。重ならい部分は通常インフィルとなり、重なる部分は100%インフィルとして処理します。
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0