Blenderで出力したSTLファイルをRepetierに持って行ってSlic3rでスライスした時に、レイヤーがおかしくなる場合がある。
言葉でうまく言えないが、こんな感じ。
赤矢印で示した白い部分だが、ここに何かあるわけでもなく、同じ層の他の部分と比べてここだけなぜ密度を濃くしようとするのか全く分からない。
少なくともデータの上ではここだけ異なる理由がない。
分かりにくいので、修正後の同じ層の正常な状態を下に示す。
全く理由が分からなかったが、ふと思うことがあってBlenderでこのあたりの頂点を選択し、
[ R ] + [ Z ] + [ N ] + [ 0 ]
を実行してから保存してRepetierで読み込み直したら上のように直った。
[ R ] + [ Z ] + [ N ] + [ 0 ]は、Z軸方向に位置を揃えるのによく使うコマンドで、選択した頂点をZ軸方向でゼロ倍に拡大・縮小することを意味する。
理由はわからないが、Z軸の値が微妙に違っていて、その差をレイヤーで表そうとしたために上のようになったと思われる。
Blender上でそんなことになるような作り方をした覚えはない。
直し方はわかったが、根本的な原因がBlenderにあることは確かなのに詳細は不明だ。
追記
該当する辺りの頂点をBlender上で調べてみた。
正しくはピッタリ「-2.50000mm」となるところなのに、下のように微妙な値になっている点があった。
疑問な点は2つ。
Blenderで、なぜ勝手に0.00001とかが付け加わるのか。
今回の例で値がおかしくなったのは、Booleanを使ってCubeにCylinderでネジ穴をあけた場所だ。
計算の過程でゴミが混じったのかもしれない。
再現性について調べてみる必要がある。
Slic3rで、なぜこんな微小な値に反応するのか。
0.00001mmとかは3Dプリンターの精度の範囲を完全に外れていると思うが、こんなものをレイヤーに反映させるって変なのではないかと思う。