diff --git a/openglcanvas.cpp b/openglcanvas.cpp index ddc8d1c21810b5c01976ed57bb83ce6e44744bd6..16a2b4873580459edc3f6c6a35b5e4cfbaf9ae1b 100644 --- a/openglcanvas.cpp +++ b/openglcanvas.cpp @@ -778,9 +778,9 @@ void OpenGLCanvas::paintGL(){ else if (visualization=="3D Sphere") vis_mode=2.f; else if (visualization=="Equi-Rectangular") vis_mode=3.f; else if (visualization=="Stereographic") vis_mode=4.f; + else if (visualization=="Orthographic") vis_mode=4.5f; else if (visualization=="Mercator") vis_mode=5.f; else if (visualization=="Zorin-Barr") vis_mode=6.f; - else if (visualization=="Orthographic") vis_mode=7.f; glMatrixMode(GL_PROJECTION); glLoadIdentity(); glOrtho(0.0, 2.0/extent, 0.0, 2.0/scale, 0.0, -2.0/vis_mode); diff --git a/shaders/vertex_shader.vert b/shaders/vertex_shader.vert index daa99b838e5e1e8154b58fd7db88f3c5dd766053..cdc9b5c26f7d2b43c387ca5390091d34751127a3 100644 --- a/shaders/vertex_shader.vert +++ b/shaders/vertex_shader.vert @@ -61,7 +61,7 @@ void main(void){ phi = asin(y)/1.5708; // Visualize using specified visualization (remove for timings in the paper! Use only "Perspective" in the paper!) - if (vis_mode==1.0) { // Moebius + if (vis_mode==1.0) { // Moebius or Perspective u = x/(-z); v = y/(-z); gl_Position = vec4(u/extent,v/extent,z,1.0); @@ -75,6 +75,11 @@ void main(void){ v = 2.0*y/(-z+1.0); gl_Position = vec4(u/extent,v/extent,z,1.0); } + else if (vis_mode==4.5){ // Orthographic + u=x; + v=y; + gl_Position = vec4(u/extent,v/extent,z,1.0); + } else if (vis_mode==5.0) { // Mercator u = lambda; v = log((1.0/cos(phi)) + tan(phi)); @@ -92,12 +97,5 @@ void main(void){ v=zbrho*sin(zbalpha); gl_Position = vec4(u/extent,v/extent,z,1.0); } - else if (vis_mode==7.0){ // Orthographic - u=x; - v=y; - gl_Position = vec4(u/extent,v/extent,z,1.0); - } - -// gl_Position = vec4(u/2.0,v/2.0,z,1.0); }