Hallo Christoph,
soweit mir bekannt ist, unterstützt das Google Maps
API die Transparenz bzw. Opazität nur bei kompletten Layern, die von (T)ImageMapType abgeleitet wurden, aber nicht bei Overlays.
Aber mit einem tiefen Griff in die Trickkiste geht es doch:
Delphi-Quellcode:
procedure USGSOverlay.OnAdd;
begin
[...]
ImageNode.Style.Width:='100%';
ImageNode.Style.Height:='100%';
ImageNode.Style.Filter:='Alpha(opacity=50)'; //<- Opazität in %
[...]
end;
Hallo Peter,
vielen Dank für das Lob!
Hmmm... Google Earth... Ich hatte das Plugin einmal auf meinem Rechner installiert - dann aber wieder auf Grund des penetranten und aggressiven Updaters wieder deaktiviert. Deshalb habe ich das
Google Earth API bisher auch noch nicht getestet. Eine Ein- bzw. Anbindung an das Framework wäre technisch sicherlich machbar (siehe Diskussion zur Realisierung eines OpenLayer-Frameworks einige Seiten weiter vorn).
Aber:
Durch die Experimente mit den verschiedenen JavaScript-
API's weiß ich jetzt ungefähr, was meiner Meinung nach zu einem derartigen Player/Viewer gehört und habe auch etliche Stellen gefunden, mit denen ich nicht so glücklich bin (zum Beispiel verliert OpenLayers den Focus, wenn der Cursor den Bereich verläßt oder auch nur über ein integriertes Steuerelement bewegt wird; Google Maps ist dagegen wesentlich träger als OpenLayers).
Deshalb habe ich aufgehört, JavaScript-
API's einfach nur nachzubauen und arbeite seit einiger Zeit an einer nativen Delphi-Lösung. Damit wird die Abhängigkeit von einem Browser-
ActiveX beendet (ein wichtiger Schritt in Richtung plattformübergreifende Nutzung) und durch den Übergang von einer Skript- (JavaScript) zu einer compilierten Sprache die Darstellung um den Faktor 5 bis 10 beschleunigt. Und so ganz nebenbei werden dann auch Tricks wie der mit der Transparenz von Bildern (siehe oben) überflüssig.