From: s d. <syl...@ya...> - 2002-09-16 19:57:59
|
Hi, I'm investigating why openev doesn't display OGR/S57 like other viewer (7C & dkartlook). Here what I found: 1- replace code in gvviewarea.c:2096: gv_view_area_fit_extents() ... zoomx = view->state.shape_x / width; zoomy = view->state.shape_y / ABS(height); // ADDED zoomx = zoomx * cos(lly); // COMMENTED //view->state.linear_zoom = MIN(zoomx, zoomy); // ADDED view->state.linear_zoom_x = zoomx; view->state.linear_zoom_y = zoomy; 2- change struct _GvViewAreaState in gviewarea.h from: gvfloat linear_zoom; /* xy plane zoom */ to gvfloat linear_zoom_x; /* xy plane zoom */ gvfloat linear_zoom_y; /* xy plane zoom */ 3- adpate code where the compiler choke :) After that S57 is displayed somewhat better. So I'm woundering if there is a reason for having "round" pixel (ie the zoom is the same in X and Y) for GIS purpose! S57 is in Mercator to preserve angle so pixel can only be "round" at the equator. Or maybe I'm missing a step somewhere (PROJ!). Thanks, Sylvain. __________________________________________________ Do you Yahoo!? Yahoo! News - Today's headlines http://news.yahoo.com |