Estou tentando testar um mapa da web simples com base na pilha PostGIS / Geoserver / OpenLayers no Windows Server 2008.
Quando carrego minha camada WMS:
var gwctest = new OpenLayers.Layer.WMS(
"gwctest",
"http://localhost:1979/geoserver/wms",
{
'layers': 'Index2000:index_vect_s100',
'format': 'image/png',
'srs': 'EPSG:3857',
'units': 'm',
'transparent': true
},
{'opacity': 0.8, 'isBaseLayer': false, 'visibility': false}
);
Tudo parece estar bem.
No entanto, quando tento adicionar a camada WMS ao meu mapa usando o GeoWebCache, substituindo
"http://localhost:1979/geoserver/wms"
com:
"http://localhost:1979/geoserver/gwc/service/wms"
Meus dados repentinamente passam da posição correta:
Alguma idéia sobre qual pode ser a causa?
EDIT: algumas informações adicionais sobre GWC lista de discussão pós .
Respostas:
Atualizar
Veja as respostas à postagem de Radek no fórum da GWC para obter causas e soluções reais. Agora entendo por que o TileCache optou por exibir erros como "O valor atual x -1311047.936977 está muito longe do canto do bloco x -1493907.560000" em vez de retornar os blocos "mais próximos" dentro de um intervalo de erros arbitrários.
Seus dados originais estão no EPSG 3857? Caso contrário, é quase certamente uma mudança de dados (não) acontecendo em algum lugar.
Tente alterar sua definição de OpenLayers para fazer referência ao EPSG: 900913 - talvez o GeoWebCache não reconheça o novo código de comerciante da web?
No link que você postou:
Parece que o Geoserver e o GeoWebCache usam arquivos de projeção diferentes. Talvez o seu Geoserver tenha um parâmetro to_wgs e o GWC não.
Como você está no Windows, execute o Process Monitor - http://technet.microsoft.com/en-us/sysinternals/bb896645 para ver quais arquivos você realmente está acessando.
Também presumo que as imagens não foram armazenadas em cache depois que você alterou alguns parâmetros de projeção? Tente reenviar / excluir para verificar.
fonte
Você tem a origem de bloco correta definida para o seu OpenLayers.Map como no GeoWebCache. Verifique como o TileOrigin está definido na demonstração GeoWebCache da camada e verifique se você tem o mesmo TileOrigin no seu OpenLayers.Map Constructor.
fonte
Desalinhamentos como esse são quase sempre uma questão de projeção. Os dados estão armazenados no EPSG: 3857? Verifique se a camada GeoWebCache está configurada para saída no EPSG: 3857.
fonte
Você já tentou limpar o cache?
fonte