void glmotion_zoom_inc(int zoomin) { float inc_value; inc_value = (float) (view->Topview->fitin_zoom * MAX_ZOOM * -1 - view->Topview->fitin_zoom * MIN_ZOOM * -1) / ZOOM_STEPS; if (zoomin) /*zooming in , zoom value should be decreased */ graph_zoom(view->zoom - view->zoom * 0.25); else graph_zoom(view->zoom + view->zoom * 0.25); /*zoom out */ glexpose(); }
void glmotion_zoom(ViewInfo * v) { float real_zoom; if (view->active_camera == -1) { real_zoom = view->zoom + view->mouse.dragX / 10 * (view->zoom * -1 / 20); } else { real_zoom = (view->cameras[view->active_camera]->r + view->mouse.dragX / 10 * (view->cameras[view->active_camera]->r / 20)) * -1; } graph_zoom(real_zoom); }
static void on_zoom_in_clicked(GtkWidget *button, gpointer data) { GtkWidget *graph = GTK_WIDGET(data); graph_zoom(graph, +1); set_buttons(graph); }