KOMPAS-3D APIの操作→レッスン5→グラフィックプリミティブ

VNII Signal JSCのソフトウェアエンジニアであるKOMPAS-3D CAD API Sergey Norseevの使用に関する一連の記事を続けています。DelphiでのKOMPASのアプリケーション開発の著者です。 使用される環境はC ++ Builderです。 KOMPAS APIの基本図面設計に関する以前のレッスンでは、KOMPASが実行されていないと想定しました。KOMPAS 正しい接続のレッスンでは、 KOMPASが既に実行され、接続されていることを確認しました。 最後のレッスンでは、主要な碑文について、図面の主要な碑文の記入方法について説明しました。 このレッスンでは、KOMPASシステムインターフェイスを引き続き確認し、最終的に描画を開始します。







複雑な図面を作成する前に、点、線、線、円などのグラフィックプリミティブを作成する方法を学ぶ必要があります。 今日はこれを行う方法についてお話します。



ポイント



ポイントを作成するには、 ksDocument2DインターフェイスのksPointメソッドを使用します。 以下は、このメソッドのプロトタイプです。



long ksPoint ( double x, //  double y, long style). // 
      
      





有効なポイントスタイルを次の表に示します。





ポイントスタイル



成功した場合、 ksPointメソッドは作成されたポイントへのポインターを返し、エラーの場合はzeroを返します

以下はポイント構築プログラムのスニペットです。



 Document2D->ksPoint(100, 100, 0);
      
      





この記事のこれ以降の例では、記事のトピックに関連する最も重要なコードのみを提供します。 ksDocument2Dインターフェースを取得する方法は、シリーズの以前の記事で説明されています。



線のスタイル



セグメントと円の作成に進む前に、線のスタイルに言及する必要があります。 KOMPASは複数のシステムラインスタイルを提供し、それぞれが正の整数で決定されます。 合計25のスタイルがあります。 完全なリストは提供しません。 最も頻繁に使用されるものだけに名前を付けます。





最も使用される線のスタイル



ドキュメントのスタイルの完全なリストを参照してください( パラメータ構造と定数/定数/グラフィックオブジェクト定数/システムラインスタイル )。





SDKのシステムラインスタイルの説明



直接



直線を作成するには、 ksDocument2DインターフェイスのksLineメソッドを使用します。 そのプロトタイプ:



 long ksLine ( double x, //  double y, double Angle). // 
      
      





このメソッドには、ラインが通過するポイントの座標、およびラインと水平ラインの間の角度(度)の3つのパラメーターしかありません。 角度は反時計回りに遅れます。

成功した場合、 ksLineメソッドは作成された行へのポインターを返し、エラーの場合は数値0を返します。

以下は、直線構築プログラムの例です。



 Document2D->ksLine(100, 100, 45);
      
      





ksLineメソッドでは線のスタイルを指定できないことに注意してください。 彼は常に補助線を作成します KOMPASのラインは補助構造です。



以下の図は、構築されたラインのフラグメントを示しています。





直線の断片



線分



行を作成するには、 ksDocument2DインターフェイスのksLineSegメソッドを使用します。 以下が彼のプロトタイプです。



 long ksLineSeg ( double x1, //   double y1, double x2, //   double y2, long style). // 
      
      





成功した場合、 ksLineSegメソッドは作成されたセグメントへのポインターを返し、エラーの場合はゼロを返します

以下は、線分を構成するプログラムの例です。



 Document2D->ksLineSeg(100, 100, 150, 150, 1);
      
      





次の図は、このプログラムによって作成されたセグメント自体を示しています。





線分



円周



円を作成するには、 ksDocument2DインターフェイスのksCircleメソッドを使用します。 彼のプロトタイプは次のとおりです。



 long ksCircle ( double xc, //  double yc, double rad, // long style). // 
      
      





成功した場合、このメソッドは作成された円へのポインターを返し、エラーの場合、値はzeroです。

以下は、サークル構築プログラムの例です。



 Document2D->ksCircle(100, 100, 30, 1);
      
      





下の図は、プロットされた円を示しています。





円周



円は中心なしで構築されているという事実に注目します。 ビルド方法は、サイクルの以下の記事のいずれかで説明されます。



おわりに

この記事では、線のスタイルに精通し、点、線、線分、円などの単純な幾何学的オブジェクトの作成方法を学びました。 シリーズの以下の記事では、より複雑なオブジェクトの構築とそれらに対する操作を詳細に検討します。



継続するには、ブログのニュースに従ってください。



Sergey Norseev、「DelphiでのCOMPASのアプリケーション開発」の著者。



All Articles