スクリプトメッシュ生成ソフトウェア


17

私はメッシュ生成ソフトウェアを探しています

  • 無料でオープンソースです。
  • ドメイン指定のための健全なスクリプトインターフェイスを提供します。
  • 複雑な形状に機能し、
  • 2Dおよび3Dメッシュを生成できます。

どのようなオプションがありますか?

回答:


10

gmshをご覧になることをお勧めします。テキストとCADのような入力の両方があり、2Dおよび3Dの高次メッシュが可能です。GPLの下でライセンスされているため、クローズドソースソフトウェアへの統合にはいくつかの制限がありますが、それ以外は完全にフリー/オープンソースです。


残念ながら、スクリプト言語は非常識です。;)
ニコシュレーマー

どのように?テキストファイルの入力、または他のインターフェイスを参照していますか?
ゴドリックシーア

2
私の問題はほとんどの場合、ジオメトリ以外の要因によって複雑になるため、gmshは単純なジオメトリでのみ使用しました。私はこれらの単純なジオメトリのみに取り組んできましたが、gmshが最も直感的で簡単に習得できることは間違いありません。私はこれらの経験がないので、より複雑な手順を実行しようとすることについては議論しません。
ゴドリックシーア

5
いつでも好きな言語でスクリプトを記述し、スクリプトの結果としてファイルを作成してから、gmshへの入力として渡すことができます。
ウォルフガングバンガース

1
@WolfgangBangerth実際、github.com / nschloe / python4gmshでPythonの小さなおもちゃプロジェクトを始めました。
ニコ・シュレーマー

4

私は通常、3Dにはtetgen(研究/非商用のMITライセンス)を、2Dには三角形を使用します(非商用のカスタムライセンスは無料)。スクリプトを作成するには、入力ファイルを作成してコマンドラインを呼び出します。


2
「TetGenは研究および非営利目的での使用は無料であることに注意してください。商用利用については、要求に応じて商用ライセンスを利用できます。」-これは、無料またはオープンソースのソフトウェアライセンスではなく(OSIまたはFSFの定義に基づく)、MITライセンスではありません。
ジェドブラウン

はい、ライセンスファイルの最初のビットを読みました。ほとんどの人は、OSIやFSFほどFreeの意味に厳格ではありません。
aterrel

私も同様の質問をしようとしていました。tetgenはFEniCSと互換性がありますか?
seb

@aterrel LICENSEファイルを読んでください:「これは、TetGenがフリーソフトウェアではないことを意味しますが、私用、研究、および教育目的のために、それは絶対に無料で、追加の手配なしで使用できます。」
ジェドブラウン

1
はい、@ JedBrown、あなたに同意し、回答を編集しました。しかし、素人にとって、無料とは通常、RMSが合法化するのではなく、「私はそれを支払う必要がない」ことを意味します。また、GPLは「無料」ではないと主張しますが、おそらくこのフォーラムでは適切な議論ではありません。
aterrel

3

MeshPyは、三角形および四面体メッシュを取得するために使用できます。スクリプトメッシュ生成の簡単な手段を提供します。

MeshPyは、Aterrelが言及したTriangleおよびTetGenへのPythonインターフェイスを提供します。


1

私が発見したサロメが GMSHよりもはるかに良い環境と、非常に柔軟です。それは私見よりもはるかに専門的な感じを持っています。さらに、六面体メッシュも生成できます。試してみる価値はあります!


ジオメトリモデルの何もUIまたはPythonコンソールから編集できないという事実が気に入らない。基本的に、変更を行う場合は、削除して再作成する必要があります。これにより、設計中に多くのオーバーヘッドが追加されます
ラーシャー

これは、たとえばSTEPファイルで指定されたジオメトリをインポートする場合に当てはまります。しかし、私が間違っていなければ、これはここで言及した他のプログラムにも当てはまります!さらに、HDFファイルまたはPythonダンプスクリプトがある場合は、確実に変更できます。
FlatronL1917

1

OpenSCADは、ボリュームメッシュを除くすべてのポイントに適合します。入力スクリプトに基づいており、STLサーフェスメッシュを生成します。


1

その間に、私は作成しました

  • gmshのPythonフロントエンドとしてのpygmshおよび
  • CGALの3Dメッシュ作成機能のPythonフロントエンドとしてのpygalmesh

どちらもかなり好評なので、他の人にも役立つと思います。


1

なぜBlenderではないのですか?Pythonスクリプトをサポートする強力で無料のオープンソースソフトウェアです。

Blender 2.79ではScripting、として選択する必要がありますScreen layout

左上の[ Text Editor+]を押して、新しいテキストデータブロックを作成します。で開始してimport bpyから、GUIから実行できる各操作に関連するpythonコマンドを挿入し、GUIアイテムの上にマウスを置いて相対コマンドを読み取ります。

添付のスクリーンショットには、デフォルトのシーンをキューブで開始して、円を三角形化するコマンドが示されています。

ここに画像の説明を入力してください

このように、GUIなしでBlenderをスクリプトモードで使用して、たとえば出力ファイルをエクスポートして、ターミナルでpythonスクリプトを実行できます。

blender --background --python myscript.py

こちらがYouTubeのチュートリアルです。

乾杯


Blenderはこれを行うことができますか?知らなかった。たとえば、円を三角形分割するにはどうすればよいですか?
ニコ・シュレーマー

@ChristianClason:これはどうして答えではないのですか?質問に対処します。あなたはそれが詳細に欠けているか、それが間違っているとさえ文句を言うことができます、しかしそれはdownvotesの目的です。確かにコメントではありません。
Wrzlprmft

@Wrzlprmftどうもありがとう。NicoSchlömerに詳細なビデオチュートリアルを提供し、ここに重要なコードを書くといいと思います。しかしその間、私は自分自身がイタリア語で書いたトピックをリンクして、Blenderのスクリプトを使用してメッシュをエクスポートするためのヘルプを求めます(そのWebサイトは更新されています 。 it / forums / topic / difetto-texture-file-obj-da-wrl YouTubeのビデオチュートリアルの例:youtube.com/watch
Riccardo Volpe

質問に追加するものがある場合は、編集してください
。– Wrzlprmft
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.