プログラミングのopenglで困っています.
OpenGlの超初心者です.
openglで,円を一つ作ってあるsampleプログラムを拾ってきたのですが,
円をもう一つ,別の座標で作りたいのですが,以下のプログラムをどのように編集すればいいですか?
誰か助けてください.
==========================================
#include <GLUT/glut.h>
#include "glut.h"
#include <math.h>
//--初期化処理------------------------------------------------------------------
void myinit(void){
glClearColor(1.0f, 1.0f, 1.0f, 1.0f);//背景色の設定(R,G,B,ALPHA) 0.0-1.0の範囲で
}
//--描画内容--------------------------------------------------------------------
void display(void){
float x1,y1,x2,y2;
float th1,th2;
float th1_rad, th2_rad;
float hankei = 0.1;
glClear(GL_COLOR_BUFFER_BIT);//画面全体を背景色で塗りつぶす
glMatrixMode(GL_MODELVIEW);
glLoadIdentity(); //単位行列を行列スタックに読み込む
glColor3f(0.0f, 0.0f, 0.0f);//頂点カラーの指定( R, G, B すべてが1.0fなら白)
for (th1 = 0.0; th1 <= 360.0; th1 = th1 + 10.0){
th2 = th1 + 10.0;
th1_rad = th1 / 180.0 * 3.1415926; // 「度」を「ラジアン」に直す
th2_rad = th2 / 180.0 * 3.1415926;
x1 = hankei * cos(th1_rad);
y1 = hankei * sin(th1_rad);
x2 = hankei * cos(th2_rad);
y2 = hankei * sin(th2_rad);
glBegin(GL_LINES);//glBegin(GL_LINES)とglEnd()の間に
glVertex2f( x1, y1 ); //描画したい直線の頂点を並べる
glVertex2f( x2, y2 );
glEnd(); //ここまでで,ひとつのオブジェクトの宣言がおわる
}
glFlush();//OpenGLで実際に描画を行う
}
//--再描画----------------------------------------------------------------------
void myReshape(GLsizei w, GLsizei h){
glViewport(0,0,w,h); //ウィンドウ全体をビューポートにする
glMatrixMode(GL_PROJECTION);
glLoadIdentity();//単位行列を行列スタックに読み込む
glOrtho(-1.0f, 1.0f, -1.0f, 1.0f, -1.0f, 1.0f);
}
//--メイン関数------------------------------------------------------------------
int main(int argc, char **argv){
glutInitWindowPosition(100, 100); //(図形が描画される)ウィンドウ位置の設定
glutInitWindowSize(600, 600); //(図形が描画される)ウィンドウサイズの設定
glutInit(&argc, argv);//環境の初期化
glutInitDisplayMode(GLUT_RGBA|GLUT_SINGLE); //表示モードの設定
glutCreateWindow("kadai"); //ウィンドウを開く
glutDisplayFunc(display); //図形表示関数の指定
myinit();
glutReshapeFunc(myReshape); //座標軸・ビューポート設定関数の指定
glutMainLoop();//無限ループ
return 0;
}
==========================================
お礼
ありがとうございます。値の範囲は大丈夫です。助かりました。