Translations:Part Module/19/ja

パートモジュールで使用されている主なデータ構造はOpenCascadeのBRep（境界表現）データ型です. 現在ではパートモジュールのほとんど全ての機能とオブジェクト型がPythonスクリプトから利用可能になっています. これにはLineやCircle（あるいはArc）などの幾何プリミティブとVertexes、Edges、Wires、Faces、SolidsそしてCompoundsなどTopoShapesの全てが含まれます. これらの各オブジェクトにはいくつかの異なる作成方法があり、またオブジェクトの一部、特にTopoShapesではブーリアン演算の和集合/差集合/共通集合といったより高度な操作が可能になっています. パートモジュールの機能の詳細についてはFreeCADスクリプト処理の基礎ページを調べてください.

例
ライン要素を作成するにはPythonコンソールを開き、以下のように入力します： import Part,PartGui doc=App.newDocument l=Part.Line l.StartPoint=(0.0,0.0,0.0) l.EndPoint=(1.0,1.0,1.0) doc.addObject("Part::Feature","Line").Shape=l.toShape doc.recompute

上記のPythonスクリプトの例をステップごとに見ていきましょう： import Part,PartGui doc=App.newDocument パートモジュールを読み込み、新しいドキュメントを作成します. l=Part.Line l.StartPoint=(0.0,0.0,0.0) l.EndPoint=(1.0,1.0,1.0) ラインは実際は線分なので始点と終点があります. doc.addObject("Part::Feature","Line").Shape=l.toShape Partオブジェクト型をドキュメントに追加し、追加したオブジェクトの'Shape'プロパティに線分のシェイプ表現を代入します. ここで理解すべき重要な点は幾何プリミティブ（Part.Line）を使ってそこから位相シェイプを作成した（toShapeメソッド）ということです. ドキュメントに追加できるのはシェイプだけです. FreeCADでは幾何プリミティブはシェイプのための"作成用構造体"として使用されます. doc.recompute ドキュメントを更新します. 新しいパートオブジェクトの視覚的な表現を用意するための処理でもあります.

LineはPart.Line(point1,point2)という風にその始点と終点をコンストラクタで直接指定して作成することもできますし、ここで行ったようにデフォルトのラインを作成してあとでそのプロパティを設定することもできるということを憶えておいてください.

同じようにして円を作ることもできます： import Part doc = App.activeDocument c = Part.Circle c.Radius=10.0 f = doc.addObject("Part::Feature", "Circle") f.Shape = c.toShape doc.recompute 先ほどと同様、円（幾何プリミティブ）を使ってそのシェイプを作成しました. もちろんこの後、下記のような方法で作成した形状にアクセスすることができます： s = f.Shape e = s.Edges[0] c = e.Curve ここではオブジェクトfのシェイプを取得した後、そのエッジのリストを取得しています. 今回の場合、エッジは一つしかありません. 円一つからシェイプ全体を作成しているためです. 従ってEdgesリストの最初のアイテムだけ取得し、その後でそのCurve（曲線）を取得しています. Edgeは全てCurveを持ちます. これはエッジの元になっている幾何プリミティブです.

さらに詳しく知りたい場合は位相データのスクリプト処理ページを見て下さい.