Pergunta

Eu estou tentando fazer um controle que faz uso do MapPoint rendição 3d motor. O controlo recebe um GlobeControl (através do construtor GlobeControl) e, em seguida, processa um mapa 3D. O problema é que se eu tentar obter um outro GlobeControl mais tarde o objeto globeControl.Host do GlobeControl recém-construído tem quase todos os seus membros sendo nula, incluindo o RenderEngine.

Isto torna problemático para usar isso em um cenário onde queremos ter vários mapas na nossa superfície.

Uma solução que eu tenho pensado é para construir um monte de GlobeControls antecipadamente (antes de eu me tornar qualquer coisa) e, em seguida, tratá-la como uma piscina GlobeControl, embora eu realmente não sei se eu estou apenas pedindo para ter problemas para baixo a estrada (por exemplo, se MapPoint suporta apenas um GlobeControl por processo ou algo assim).

Qualquer ajuda ou insight é muito apreciada. Por favor, deixe-me saber se você precisar de mais esclarecimentos.

Foi útil?

Solução

Eu fiz encontrar uma resposta que me satisfez. Eu também postei uma pergunta semelhante no CodePlex com a seguinte resposta:

"Devido a limitações técnicas no Virtual Earth 3D em si, apenas uma instância do motor 3D pode ser inicializado por processo. Existem variáveis ??únicas que VE3D usa internamente por isso não há maneira de ter mais de um."

http://bingmapswpf.codeplex.com/Thread/View.aspx ? ThreadId = 65223 & Anchor

Nós acabou de se mudar para uma solução Silverlight baseado em DeepZoom.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top