Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在openGl中绘制线_循环并不是绘制框的一个角_Java_Opengl_Lwjgl - Fatal编程技术网

Java 在openGl中绘制线_循环并不是绘制框的一个角

Java 在openGl中绘制线_循环并不是绘制框的一个角,java,opengl,lwjgl,Java,Opengl,Lwjgl,当我使用这个代码时 private void drawSelected() { int width_border = 5; // border on left and right int height_border = 5; // border on top and bottom for (Entity e : selected) { glPushMatrix(); glPushAttrib(GL_CURRENT_BIT);

当我使用这个代码时

private void drawSelected() {
    int width_border = 5; // border on left and right
    int height_border = 5; // border on top and bottom

    for (Entity e : selected) {
        glPushMatrix();
        glPushAttrib(GL_CURRENT_BIT);
        glColor3f(1.0f, 1.0f, 1.0f);
        glTranslatef(e.getX()+cameraX, e.getY()+cameraY, 0);

        glBegin(GL_LINE_LOOP);
        {
            float x1 = -width_border + 1;
            float y1 = -height_border;
            float x2 = e.getSprite().getWidth() + width_border;
            float y2 = e.getSprite().getHeight() + height_border-1;
            glVertex2f(x1, y1);
            glVertex2f(x1, y2);
            glVertex2f(x2, y2);
            glVertex2f(x2, y1);
        }

        glEnd();
        glPopMatrix();
        glPopAttrib();

    }
}
我画了一个这样的盒子

这是openGL,其中0,0是地图的左上角


我不知道为什么这个代码会遗漏框的左下角。有什么我可以改变的,这样就不会遗漏那个角落吗?

非常类似于这个问题: