在 .NET Web ADF 中叠加地图缓存
在 .NET Web ADF 中创建要被其他缓存叠加的缓存时,需要注意以下事项:
地图的坐标系
缓存的地图使用相同坐标系时可获得最快的性能。如果使用不同的坐标系,则只会使用主地图资源(见下文)的缓存,且服务器会生成地图中所有其他服务的动态图像,因此丧失了这些缓存的性能优势。
比例级别
只有两个缓存的比例级别匹配时才会取得它们的性能优势。如果存在比例级别间隙(指比例级别仅存在于一个缓存中),则叠加图像无法从缓存中取出且必须动态生成,因而降低了性能。这种情况下图像质量也会降低,因为必须根据现有比例级别重新采样动态图像。
在下图中,Cache A 中不存在 Scale 3;因此 .NET Web ADF 将生成动态图像,并按该比例叠加 Cache B 中的图像。
不会为了匹配超出缓存最高或最低比例的比例而创建动态图像。因此对于 Cache A,不会以 Scale 5 生成动态图像。Cache A 在 Scale 5 上不可见;只会显示 Cache B 的缓存图像。同样,在 Scale 1 上只有 Cache A 可见。
图像格式
选择要在 .NET Web ADF 中查看的缓存的图像格式时,要注意以下几点:
- 虽然 JPEG 图像格式的显示速度更快,但它不支持透明度。因此,只有在确定缓存始终为地图底部的图层时才对它使用 JPEG 图像格式。
- 基于 PNG 24 的缓存在 Internet Explorer 6 中不显示透明度。(请参见 http://support.microsoft.com/kb/294714 上 Microsoft 的相关技术文章。)如果在其他缓存的顶层使用基于 PNG 24 的缓存,则 .NET Web ADF 自动将顶层 PNG 24 图像转换为 PNG 32,因此可能会降低性能。一种更快的解决方案是创建 PNG 32 格式的叠加缓存。
在 Web 应用程序中设置主地图资源
在包含多个地图服务的 .NET Web 应用程序中,主地图资源 决定由哪个服务提供地图坐标系和缩放级别。在管理器中构建 Web 应用程序时,请注意使用来自以下内容的坐标系下拉列表。在此处所选择的服务将成为主地图资源。如果使用 Visual Studio 构建 Web 应用程序,则主地图资源为“地图”控件的一个属性。设置主地图资源时请遵循以下指导:
- 如果要叠加具有相同坐标系和匹配比例的多个缓存服务(如上所述),则选择缓存服务作为主地图资源。这种情况下,缩放级别 (Zoom Level) 控件将包括所有缓存服务的比例级别。
- 如果要叠加具有不同坐标系或比例的多个缓存服务,则选择满足以下条件的服务作为主地图资源:该服务的坐标系要用在地图中。缩放级别 (Zoom Level) 控件将只包括此项服务的比例级别。系统会动态绘制其他服务中的图像以匹配主地图资源的坐标系和比例。也就是说,不会使用非主地图资源的缓存。
- 如果要用非缓存服务叠加缓存服务,通常应选择缓存服务作为主地图资源。这种情况的唯一一个例外是,您想要在地图中使用非缓存服务的坐标系并且愿意牺牲缓存的性能优势。
3/7/2012