現在地 >> メニュー >> 基本編12 >> OpenGL::曲線 >> 曲線::メッシュでの描画


メッシュでの描画


「glEvalCoord1f()関数」などで描画する以外に、メッシュで描画する方法がある。

手順


手順は曲線::glMap()関数と同じほぼ同じだが、「エバリュエータの設定」に加え、
「グリッドの設定」を行う。

描画は「glEvalMesh1()関数」で行う。

グリッドの設定


glMapGrid1f()などで設定する。


glMapGrid1f(
 	GLint un,   //u方向の分割数
 	GLfloat u1, //u1,u2:方向のパラメータ関係。たいていは(u1,u2)=(0,1)
 	GLfloat u2, 
)



[例]

//--------- 制御点 -----------//
float CtlPoint[]=
{
	0.1, 0.1, 0,
	0.2, 0.4, 0,
	0.5, 0.5, 0,
	0.7, 0.2, 0
};

const float Uslice = 10; //分割数

	//---エバリュエータの設定---//
	glMap1f(GL_MAP1_VERTEX_3, 0.0, 1.0, 3, 4, CtlPoint);
	glMapGrid1f(Uslice,0,1);  //グリッド設定
	glEnable(GL_MAP1_VERTEX_3); //有効化




描画


描画は
glEvalMesh1(GLenum mode, たいてい0, u方向の分割数, たいてい0,v方向の分割数)
で行う。

「GLenum mode」には「GL_POINT」、「GL_LINE」の2つを指定できる。


[例]

//分割数
const float Uslice = 10;
 ... ...
glEvalMesh1(GL_LINE,0,Uslice); //描画





サンプルコード >> 曲線::まとめコード1_2
×

この広告は60日間更新がないwikiに表示されております。

目次

― その他 ―

Wiki内検索

計測中...(07.10.8〜)

Save The World






▲よろしければ広告のクリックもお願いします


▲ランキングに参加しました

管理人/副管理人のみ編集できます