1

我使用图像层在我的 Web 应用程序的特定位置使用 gwt-openlayers 绘制一些数据。假设原始图像为 400x400 像素。当我放大地图时,图像被拉伸了。问题是拉伸效果是“模糊的”。如何避免这种模糊效果并指示 openlayers 在图像上应用正常的“原始”拉伸?有什么选择吗?当我说模糊时,我的意思是:

如您所见,图像的中心混合了颜色,而原始图像完全由四个具有四种不同颜色的子正方形组成

上图展示了这个概念。我有一个 400x400 像素的图像。图像由 4 个子正方形组成,每个子正方形 200x200 像素。左上角为蓝色,右上角为红色,左下角为黄色,右下角为红色。当我在 openlayers 中将此图像绘制为图像图层并缩放地图时,图像的中心变得模糊,四种颜色混合在一起。有没有办法避免这种模糊效果并进行“原始”拉伸?谢谢。

这是我用来创建图像层的代码(在 gwt-openlayers 中):

org.gwtopenmaps.openlayers.client.layer.ImageOptions imgOptions = new org.gwtopenmaps.openlayers.client.layer.ImageOptions();
imgOptions.setIsBaseLayer(false);
imgOptions.setTransitionEffect(TransitionEffect.RESIZE);
imgOptions.setAlwaysInRange(true);
imgOptions.setLayerOpacity(0.7);
imgOptions.setProjection("EPSG:900913");

imgLayer = new org.gwtopenmaps.openlayers.client.layer.Image("my_name",
                    null, bounds, new Size(1, 1), imgOptions);
map.addLayer(imgLayer);
4

1 回答 1

1

使用带有外部图形的点来解决这个问题。在缩放时调整外部图形的大小。

查看展示:http ://demo.gwt-openlayers.org/gwt_ol_showcase/GwtOpenLayersShowcase.html?example=Image%20vector

于 2013-10-25T10:09:46.137 回答