Parasolid における幾何エンティティ(Geometric Entity)の概要
はじめに
Parasolid では、幾何エンティティ(Geometric Entity)は主にトポロジエンティティ(Topological Entity)に付随して使用されます。
幾何エンティティは次のような用途で利用されます。
- ボディ内部のサブトポロジに関連付けられ、ボディの形状や境界を定義する
- ボディやアセンブリに直接関連付けられ、構築用ジオメトリ(Construction Geometry)として利用される
- どのトポロジエンティティにも関連付けられていない孤立ジオメトリ(Orphan Geometry)として存在する
Geometric Entity の分類
Parasolid では、幾何エンティティは大きく次の4種類に分類されます。
1. Lattice(格子構造)
- クラス名:
PK_CLASS_lattice
格子構造を表現するためのエンティティです。
2. Surface(曲面)
- クラス名:
PK_CLASS_surf
Parasolid における各種曲面クラスの基底クラスです。
3. Curve(曲線)
- クラス名:
PK_CLASS_curve
各種曲線クラスの基底クラスとして利用されます。
4. Point(点)
- クラス名:
PK_CLASS_point
3次元空間上の点を表現します。
Geometry の共有
Geometric Entity は、単一のボディ内で複数のトポロジ要素から共有される場合があります。
さらに、特定の条件下では複数のボディ間で同一の Geometry を共有することも可能です。
Nominal Geometry
Parasolid は Nominal Geometry(標称ジオメトリ)をサポートしています。
これは、実際には近似形状であっても、局所的な精度情報を利用して理論上の正確な曲線や曲面として扱う仕組みです。
CAD モデルにおける寸法精度や設計意図の保持に有効な機能となっています。
B-Curve と B-Surface
Parasolid では B-Curve および B-Surface が完全に統合されています。
これらは通常の曲線・曲面と同様に、
- エッジ(Edge)
- フェイス(Face)
へ関連付けることができ、Parasolid が提供する各種演算処理をそのまま適用できます。
Surface(曲面)
曲面は主に Face に関連付けられますが、Construction Geometry として Body に直接関連付けることもできます。
通常、1つの Face には1つの Surface が関連付けられています。
ただし、モデル生成や編集処理の途中では、一時的に Face と Surface が分離される場合もあります。
Parasolid が提供する代表的な Surface クラスは以下の通りです。
| 曲面タイプ | クラス名 |
|---|---|
| Plane(平面) | PK_CLASS_plane |
| Cylinder(円柱面) | PK_CLASS_cyl |
| Cone(円錐面) | PK_CLASS_cone |
| Torus(トーラス面) | PK_CLASS_torus |
| Sphere(球面) | PK_CLASS_sphere |
| Blending Surface(ブレンド面) | PK_CLASS_blendsf |
| B-Surface | PK_CLASS_bsurf |
| Foreign Geometry Surface | PK_CLASS_fsurf |
| Offset Surface | PK_CLASS_offset |
| Swept Surface(掃引面) | PK_CLASS_swept |
| Spun Surface(回転面) | PK_CLASS_spun |
| Mesh | PK_CLASS_mesh |
これらすべてのクラスは共通の親クラスである
PK_CLASS_surf
から派生しています。
Curve(曲線)
曲線は主にモデルの Edge や Fin に関連付けられます。
また、Construction Geometry として Body に直接関連付けることも可能です。
Parasolid がサポートする主な Curve クラスは以下の通りです。
| 曲線タイプ | クラス名 |
|---|---|
| Line(直線) | PK_CLASS_line |
| Circle(円) | PK_CLASS_circle |
| Ellipse(楕円) | PK_CLASS_ellipse |
| Intersection Curve(交線) | PK_CLASS_icurve |
| B-Curve | PK_CLASS_bcurve |
| SP-Curve | PK_CLASS_spcurve |
| Foreign Geometry Curve | PK_CLASS_fcurve |
| Polyline(ポリライン) | PK_CLASS_pline |
これらはすべて
PK_CLASS_curve
を親クラスとして持っています。
Trimmed Curve について
Parasolid には Trimmed Curve(トリム曲線)を表す
PK_CLASS_trcurve
が存在します。
ただし、このクラスは旧バージョンのモデルとの互換性維持を目的として残されているものであり、現在では新規作成や編集操作はサポートされていません。
そのため、基本的には参照・問い合わせ用途のみで使用されます。
