]> Pileus Git - grits/blobdiff - src/gis-opengl.c
Add preliminary support for points/markers
[grits] / src / gis-opengl.c
index 31e1f393ca14906ac813a90700acfbf2270d3896..0352fce0a75ba8713390b46a165052af0fd9a93a 100644 (file)
@@ -105,6 +105,8 @@ static void set_visuals(GisOpenGL *self)
 
        glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
        //glShadeModel(GL_FLAT);
+
+       roam_sphere_update_view(self->sphere);
 }
 
 
@@ -286,6 +288,19 @@ void gis_opengl_center_position(GisOpenGL *self, gdouble lat, gdouble lon, gdoub
        glTranslatef(0, 0, elev2rad(elev));
 }
 
+void gis_opengl_project(GisOpenGL *self,
+               gdouble lat, gdouble lon, gdouble elev,
+               gdouble *px, gdouble *py, gdouble *pz)
+{
+       gdouble x, y, z;
+       lle2xyz(lat, lon, elev, &x, &y, &z);
+       gluProject(x, y, z,
+               self->sphere->view->model,
+               self->sphere->view->proj,
+               self->sphere->view->view,
+               px, py, pz);
+}
+
 void gis_opengl_render_tile(GisOpenGL *self, GisTile *tile)
 {
        if (!tile || !tile->data)