描画コードに問題があります.いくつかの矢印を表示する必要がありますが、軸の原点から遠すぎると消えます..
ここに関連するコードを投稿します。
static void drawArrow( double trans[3][4] , double **d, int num, double *altitude)
{
int i;
double c_min=0.3;
double gl_para[16];
GLfloat mat_ambient[] = {0.0, 0.0, 1.0, 1.0};
GLfloat mat_flash[] = {0.0, 0.0, 1.0, 1.0};
GLfloat mat_flash_shiny[] = {50.0};
GLfloat light_position[] = {100.0,-200.0,200.0,0.0};
GLfloat ambi[] = {0.1, 0.1, 0.1, 0.1};
GLfloat lightZeroColor[] = {0.9, 0.9, 0.9, 0.1};
...
argConvGlpara(trans, gl_para);
glMatrixMode(GL_PROJECTION);
glLoadIdentity
glLoadMatrixd( gl_para );
glRotated(180,1,0,0);
glutWireCone(40,40*arrow_factor,10,100);
//arrowfactor can change by keyboard input
...
glDisable( GL_LIGHTING );
glDisable( GL_DEPTH_TEST );
}
GL_PROJECTION マトリックス モードを使用する必要があると思いますが、まったく変更せずに機能させるためのより良い方法があると信じています..
編集:コードの不要な部分を削除