制限事項:ユーザ指定の値を使ってOpenGLを使ってプロットする/値を求める方法は?
- 私は プログラム内の関数を使用する必要がありますフレームワーク
- を変更することはできません(私の最愛の先生が自分以外で与えられた機能を使用して、私たちが好きではありません)
(私はそれにしたいと同じくらい滑らかでない)#include<OpenGL/gl.h> #include<OpenGL/glu.h> #include<GLUT/glut.h> #include <stdlib.h> #include <math.h> int lb=-30, ub=30; double cpoints=9999999; void init (void) { glClearColor(1,1,1,1); glMatrixMode(GL_PROJECTION); gluOrtho2D(-30,30,-30,30); } void graphfunct2D(void) { double dx, xi, yi; dx = (ub-lb)*1.0/cpoints; glColor3f(0,0,0); glClear(GL_COLOR_BUFFER_BIT); xi = lb; yi = xi*sin(xi); int i; for (i=0; i<=cpoints;i++) { glBegin(GL_POINTS); glVertex2i(xi,yi); glEnd(); xi = xi+dx; yi = xi*sin(xi); } glFlush(); } int main (int argc, char** argv) { glutInit(&argc, argv); /*printf("lower bound: "); scanf(" %d",&lb); printf("upper bound:"); scanf(" %d",&ub); printf("Give me the number of points to plot (int)"); scanf(" %d",&cpoints);*/ glutInitWindowSize(500,500); glutCreateWindow("Graph function in 2D"); init(); glutDisplayFunc(graphfunct2D); glutMainLoop(); }
は、ここでのコードだと、それだけでこのように動作します
私はユーザーに上限と下限を提供し、それらの2つに基づいて関数をプロットできるようにしたいが、入力をコメント解除してプログラムを実行すると、何も表示されない(それらを要求せず、私はこのような何か試してみてください
あなたは何を意味するか明確にすることはできますが上限と下限を入力するプロンプトが表示されない、またはユーザーが入力した後に結果が表示されないことを意味しますか? – user1118321
@ user1118321私はプログラムが始まる(それは開始のようにドックにジャンプし続けますが、実際には起動しない/ウィンドウを表示する/ジャンプを停止する)これはコンパイラから実行すると発生します。私はいくつかの警告が表示されます: –
'func2d.h:関数 'main': func2d.h:49:警告:互換性のない暗黙の宣言組み込み関数 'printf' func2d.h:50:警告:組み込み関数 'scanf'の暗黙の宣言がありません func2d.h:54:警告:形式 '%d'は 'int *' 2には 'double *'タイプのタイプがあります。 –