図1に示すように、ケース:三角形、正方形(頂点)

/ * 注:
 *プロジェクトのプロパティを変更します(右クリックし、[プロパティ- >アプリケーション- >ターゲットフレームワーク- > NET Frameworkの4)、
 *それ以外の場合は"SharpGL"名前空間の参照エラー---- "OpenGLControl"を発生
 * * / 
 
1 、----ケース三角形、四角形(頂点)
 名前空間sharpGLTest01 
{ 
    パブリック 部分 クラスをForm1:をForm1 
    { 
        公共のForm1()
        { 
            のInitializeComponent(); 
        } 
        / * OpenGLInitialized(OpenGLを初期化する)イベントハンドラ
         *このイベントの主な目的は、ユーザーが必要なロジックをインストール提供することです。
         * 
         * * / 
        // 初期化する
        プライベート 無効 openGLControl1_OpenGLInitialized(オブジェクト送信者のEventArgs E)
        { 
            // OpenGLのGL = openGLControl1.OpenGL; / *コントロールへの参照を取得OpenGLControl * /
             // gl.ClearColor(0,0,0,0); / * glClearColor方法シーンの背景色を設定します* / 
        } 

        / * OpenGLDrawイベントハンドラは、
         *これは、OpenGLレンダリングイベントである:
         * 
         * * / 
        // 描画
        専用 空隙 openGLControl1_OpenGLDraw(オブジェクトSENDER、PaintEventArgsのE)を
        { 
            SharpGL.OpenGL GLは = この.openGLControl1.OpenGLを;
             //は、デプスバッファをクリア 
            gl.Clear(OpenGL.GL_COLOR_BUFFER_BIT |OpenGL.GL_DEPTH_BUFFER_BIT); 

            // 現在の指定されたマトリックスをリセットは単位行列、現在のユーザ座標系の原点を画面の中心に移動される
            gl.LoadIdentityは(); 

            // 位置(に軸座標変換-1.5,0、-6 ) 
            gl.Translate( - 1.5F、0F、 - 6F); 

            gl.Begin(OpenGL.GL_TRIANGLES); 
            { 
                // 頂点 
                gl.Vertex(は0.0f1.0Fは0.0f );
                 // 左エンドポイント       
                gl.Vertex( - 1.0F、 - 1.0Fは0.0f );
                 // 右端        
                gl.Vertex(1.0F、 -1.0Fは0.0f ); 
            } 
            gl.End(); 

            // 現在の座標右3つの単位によって、上記のように、これは比較的(-1.5,0、-6)測位た
            gl.Translate(3F、0F 、1F); 

            gl.Begin(OpenGL.GL_QUADS); 
            { 
                gl.Vertex( - 1.0F1.0Fは0.0f ); 
                gl.Vertex(1.0F1.0Fは0.0f ); 
                gl.Vertex(1.0F、 - 1.0Fは0.0f ); 
                gl.Vertex( - 1.0F、 - 1.0Fは0.0f ); 
            } 
            gl.End(); 
            gl.Flush();    // リフレッシュを強制
        } 
        
        / * OpenGLDrawイベントハンドラ
         *これはOpenGLの描画イベント:
         * 
         * * / 
        // 調整
        専用 のボイド openGLControl1_Resize(オブジェクト送信者、 EのEventArgs)を
        { 
            // OpenGLのGL = openGLControl1.OpenGL; 

            /// /電流マトリックスパターン、及びその後射影行列に行列演算を適用
            // gl.MatrixMode(OpenGL.GL_PROJECTION); 

            /// /指定された電流をリセットマトリックスは、画面の中心に移動される単位行列、現在のユーザ座標系の原点である
            // gl.LoadIdentity(); 

            /// /は透視投影変換を作成します
            // gl.Perspective(30.0f、(ダブル)幅/(ダブル)高,. 5、100.0); 

            /// /視点変換
            // (gl.LookAtを-5 ,. 5、-5、0、0、0、 0、1、0); 

            // /電流マトリックスモデルビュー行列
            // gl.MatrixMode(OpenGL.GL_MODELVIEW); 
        } 
    } 
}

参考記事:HTTPS://www.cnblogs.com/hackpig/p/5770458.html

注意:SharpGL学習記事では著者のブログに言及していました

おすすめ

転載: www.cnblogs.com/lotuses/p/11357893.html