Frage

Ich versuche, eine Kontrolle zu machen, die von der MapPoint 3D-Rendering-Engine macht. Die Steuerung erhält eine GlobeControl (über den GlobeControl Konstruktor) und macht dann eine 3D-Karte. Das Problem ist, dass, wenn ich versuchen, einen anderen GlobeControl zu erhalten später die globeControl.Host Aufgabe der neu errichteten GlobeControl hat fast alle seine Mitglieder null sein, einschließlich der Renderengine.

Dies macht es problematisch, diese in einem Szenario zu verwenden, wo wir mehrere Karten auf unserer Oberfläche haben wollen.

Eine Abhilfe ich gedacht habe von ist eine ganze Reihe von GlobeControls im Voraus zu konstruieren (bevor ich mache alles) und behandel sie dann als GlobeControl Pool, obwohl ich nicht wirklich wissen, ob ich für Probleme bin nur fragen nach unten die Straße (zum Beispiel, wenn MapPoint unterstützt nur eine GlobeControl pro Prozess oder etwas).

Jede Hilfe oder Einsicht wird sehr geschätzt. Bitte lassen Sie mich wissen, wenn Sie mehr Klärungsbedarf.

War es hilfreich?

Lösung

Ich habe eine Antwort finden, die mich zufrieden. Ich stellte auch eine ähnliche Frage auf CodePlex mit folgenden Antwort:

„Aufgrund von technischen Einschränkungen in Virtual Earth 3D selbst, nur eine Instanz der 3D-Engine kann pro Prozess initialisiert werden. Es gibt Singleton Variablen, die VE3D intern verwendet, so gibt es keine Möglichkeit mehr als eine hat.“

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

Wir haben schließlich zu einem Deepzoom-basierten Silverlight-Lösung nach oben bewegt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top