1. はじめに
Delphi グラフィックスの描画は、glBegin() と glEnd() の間で完了できます。描画フレーム コードは、Delphi での OpenGL2d 描画の初期化コードを使用できます。具体的な内容については、このサイト //www.VeVB.COm/article を参照してください。 /52141.htm 。変更部分はDraw関数の内容です。
2. ポイントを描く
glPointSize 関数を使用して、ラスター化されたポイントの直径を指定します。デフォルトは 1.0 で、これは GL_POINTS でのみ機能します。アンチエイリアシングとその他の機能については後で説明します。 glBegin(GL_POINTS) を使用して、OpenGL に点を描画するように指示します。パラメータ GL_POINTS は点を表し、線の描画 GL_LINES などのパラメータもあります。詳細については、OpenGL ユニットのソース コードを参照してください。 glBegin() 関数と glEnd() 関数は次のように説明されます。
関数プロトタイプ:
void glBegin(GLenum モード)
void glEnd(void)
パラメータの説明:
mode: 作成されるプリミティブのタイプ。次の値を指定できます
GL_POINTS: 各頂点を点として処理します。頂点 n は点 n を定義し、合計 N 点が描画されます。
GL_LINES: 各頂点を独立した線分として扱い、頂点 2n-1 と 2n の間に合計 n 個の線分が定義され、合計 N/2 個の線分が描画されます。
GL_LINE_STRIP: 最初の頂点から最後の頂点まで順番に接続された一連の線分を描画します。n 個の頂点と n+1 個の頂点によって、合計 n-1 個の線分が描画されます。
GL_LINE_LOOP: 最初の頂点から最後の頂点まで順番に接続された一連の線分を描画し、その後、最後の頂点が最初の頂点に接続され、n 番目の頂点と n+1 番目の頂点で線分 n が定義され、合計 n 本の線分が定義されます。セグメントが描画されます。
GL_TRIANGLES: 各頂点を独立した三角形として扱います。頂点 3n-2、3n-1、および 3n が n 番目の三角形を定義し、合計 N/3 個の三角形が描画されます。
GL_TRIANGLE_STRIP: 接続された三角形のセットを描画します。奇数 n の場合、頂点 n、n+1、および n+2 が n 番目の三角形を定義します。偶数 n の場合、頂点 n+1、n、および n+2 が定義します。 n 番目の三角形。合計 N-2 個の三角形が描画されます。
GL_TRIANGLE_FAN: 接続された三角形のセットを描画します。三角形は最初の頂点によって決定され、頂点 1、n+1、および n+2 によって合計 N-2 個の三角形が描画されます。
GL_QUADS: 4 つの頂点で構成される別個の四角形のセットを描画します。頂点 4n-3、4n-2、4n-1、および 4n は、n 番目の四角形を定義します。合計N/4個の四角形を描く
GL_QUAD_STRIP: 接続された四角形のセットを描画します。各四角形は、頂点のペアとそれに続く特定の頂点のペアによって定義されます。頂点 2n-1、2n、2n+2、2n+1 が n 番目の四角形を定義し、合計 N/2-1 個の四角形が描画されます。
GL_POLYGON: 凸多角形を描画します。頂点 1 ~ n がこの多角形を定義します。
機能の説明:
glBegin 関数と glEnd 関数は、1 つ以上のプリミティブ グループの固定小数点定義を定義します。
描画ポイントを実装するソースコードは次のとおりです。
プロシージャ TForm1.Draw;begin // バッファをクリアします。 glClear(GL_COLOR_BUFFER_BIT または GL_DEPTH_BUFFER_BIT) // ポイント サイズを設定します。glBegin と glEnd の間に設定することはできません。 glBegin(GL_POINTS); // ポイントを設定します。ポイントカラー glColor3f(1, 0, 0); //ポイントを描画します glVertex2f(0, 1, 0); glVertex2f(150, 50);ダブル バッファの内容を交換し、新しく描画されたグラフィックスを画面にコピーします。終わり;
glColor3f() はポイントの色を描画するために使用され、glVertex2f はポイントの位置を描画します。
完全なコードをダウンロードするにはここをクリックしてください