ทำให้สาย openGL เชื่อมต่อกัน

ตอนนี้ฉันสร้างรูปหลายเหลี่ยมแล้ว จากนั้นฉันก็ทำแบบเดียวกันแต่ใช้ line_loop เพื่อวาดรูปโครงร่าง ปัญหาของฉันตอนนี้คือ ถ้าฉันตั้งค่าความหนาของเส้นเป็นสูง เส้นจะไม่เชื่อมต่อกัน ปลายของพวกเขาจะต้องยาวขึ้น (linewidth) ... มีวิธีแก้ไขปัญหานี้หรือไม่?

ขอบคุณ

glMatrixMode (GL_PROJECTION);
        glLoadIdentity ();
        glOrtho (0, 600, 600, 0, 0, 1);
        glMatrixMode (GL_MODELVIEW);
......
glLineWidth(5.0);
glTranslatef(250,250,0);
glRotated(x,0,0,50.0);
    glBegin(GL_POLYGON); //Begin quadrilateral coordinates
    //Trapezoid
    glColor3f(255,0,0);
glVertex2f(0,0);
glVertex2f(100,0);
glVertex2f(100,100);
glVertex2f(50,50);
glVertex2f(0,100);

    glEnd(); //End quadrilateral coordinates

    glBegin(GL_LINE_LOOP); //Begin quadrilateral coordinates

    //Trapezoid
    glColor3f(0,255,0);
    glVertex2f(0,0);
    glVertex2f(100,0);
    glVertex2f(100,100);
    glVertex2f(50,50);
    glVertex2f(0,100);

    glEnd(); //End quadrilateral coordinates

person jmasterx    schedule 01.05.2010    source แหล่งที่มา
comment
คุณช่วยแสดงรหัสหน่อยได้ไหม? เนื่องจากเป็นช่วงเช้า ทักษะการอ่านใจของฉันจึงไม่ค่อยดีนัก   -  person AndersK    schedule 02.05.2010
comment
คุณสามารถใช้ rotated(x, 0.0, 0.0, 1.0) ได้ การใช้ 50 ไม่ได้ให้ความแตกต่าง เนื่องจากแกนถูกทำให้เป็นมาตรฐาน   -  person Xavier Ho    schedule 02.05.2010


คำตอบ (1)


บทความที่นี่ แสดงวิธีการสร้างเส้นใหญ่แบบโค้งมนและเส้นลดรอยหยักโดยใช้เคล็ดลับพื้นผิว

person Marcelo Cantos    schedule 01.05.2010
comment
โอเค นั่นคือสิ่งที่ฉันคิดว่าเป็น แค่คิดว่าบางทีอาจมีฟีเจอร์ของมันก็ได้ - person jmasterx; 02.05.2010
comment
ลิงก์เสีย :( หากคุณสามารถค้นหาได้อีกครั้ง การแก้ไขรายละเอียดเพิ่มเติมในคำตอบจะได้รับการชื่นชมอย่างมาก! - person Thomas; 20.01.2015