laptop and a wrench

Erro

The basemap layer does not display the correct extent and displays wrong values for latitude and longitude when turning off the ‘IBaseMapLayer::InvalidateCache’ method.

Última Publicação: August 25, 2014 ArcGIS Engine
Número de ID do Erro NIM075542
EnviadoNovember 17, 2011
Última ModificaçãoJune 5, 2024
Aplica-se àArcGIS Engine
Versão encontrada10.0
Idioma do programaC#
Sistema OperacionalWindows OS
Versão do Sistema Operacional7
StatusWill Not Be Addressed

Informações Adicionais

NotifyMapPropertiesChanged after the maps spatial reference has been updated.

Solução Provisória

Need to call NotifyMapPropertiesChanged after the maps spatial reference is updated. Below you see a modified version of the customers CenterMapAt procedure with this call added. Friend Sub CenterMapAt(ByVal pCenter As IPoint) Dim geo As CGeoGraphicsCjmtk = CGeoGraphicsCjmtk.Instance If m_MapControl IsNot Nothing Then 'Test to see if we are getting near the edge of the map If ResetCentralMeridian(m_ProjectedCoordinateSystem.CentralMeridian(True), New CPosition(pCenter.Y, pCenter.X)) Then 'If so, move the central meridian to the center point entered and re-project the map m_MapControl.SpatialReference = UpdateMapCentralMeridian(pCenter.X) Refresh(MapLayer.All) End If pCenter = geo.ConvertGeographicPointToProjectedPoint(pCenter.X, pCenter.Y) m_MapControl.CenterAt(pCenter) Dim baseLayer As IBasemapLayer = TryCast(m_MapControl.Layer(m_MapControl.LayerCount - 1), IBasemapLayer) If baseLayer IsNot Nothing Then If m_UseInvalidateCache Then baseLayer.InvalidateCache() Else baseLayer.NotifyMapPropertiesChanged(m_MapControl.Map, True) End If End If End If End Sub

Etapas para Reproduzir

ID do Erro: NIM075542

Software:

  • ArcGIS Engine

Seja notificado quando o status de um erro mudar

Baixe o Aplicativo de Suporte da Esri

Descubra mais sobre este tema

Obtenha ajuda de especialistas do ArcGIS

Entre em contato com Suporte Técnico

Baixe o Aplicativo de Suporte da Esri

Ir para as opções de download