AW: Google Maps über COM (Component Object Model)
Liste der Anhänge anzeigen (Anzahl: 2)
Hi Thom,
Zitat:
Meinst du BikeRouteToaster oder GPSies macht dies in ähnlicher Weise, siehe JPG? Bin leider nicht in der Lage über den Browser/Quelltext den JavaScript Code zu verstehen :cry: Gruß DelphiFan2008 |
AW: Google Maps über COM (Component Object Model)
Hallo
{Nachtrag: Alles klar konnte es selbst lösen. in dem ich den GeoCoder in ruhe lasse. Danke } Das Framwork liegt schon länger auf meiner ToDo Liste, nun ist es endlich soweit. Hab eine kleine Applikation erstellt in welche ich Lat/Long eingeben und mir dann einen Marker an die Eingegebene Position setzt. Nun scheint es so dass eine Optimierung vorgenommen wird bevor der Marker an die Position gelangt. Daher meine Frage: wie setze ich einen Marker an genau die Koordinaten welche eingegeben werden? Die folgenden Koordinaten hatte ich zum Testen verwendet: Diese sollte nach meiner Auffassung eine geradelinie ergeben. Dem ist aber nicht so. 47.47356 8.4646488 47.47686 8.4679488 47.48021 8.4712988 47.48361 8.4746988 47.48706 8.4781488 47.49056 8.4816488 47.49411 8.4851988 47.49771 8.4887988 47.50136 8.4924488 47.50506 8.4961488 47.50881 8.4998988 47.51261 8.5036988 47.51646 8.5075488 47.52036 8.5114488 47.52431 8.5153988 47.52831 8.5193988 Besten Dank und Gruss Heinrich^ |
AW: Google Maps über COM (Component Object Model)
Liste der Anhänge anzeigen (Anzahl: 1)
@DelphiFan2008:
Entschuldige bitte die späte Antwort. Ja - es sieht wirklich so aus, als ob die beiden von Dir genannten Beispiele die Route mit eigenen Mitteln anzeigen und nicht das DirectionsRenderer-Objekt aus dem API benutzen. Will man etwas mehr Einflußmöglichkeiten (wie zum Beispiel Kontextmenüs oder Ereignishandler für die einzelnen Wegpunkte), ist das DirectionsRenderer-Objekt leider völlig ungeeignet, da es nach dem Black-Box-Prinzip so gut wie alle Funktionen kapselt und nur sehr geringe Einflußmöglichkeiten durch den Programmierer zuläßt. Momentan habe ich leider keine Zeit, ein alternatives Objekt zu entwickeln, da ich mit Hochdruck an der Fertigstellung der Version 3 des Frameworks arbeite. Das ist aber auf der ToDo-Liste vermerkt. @Heinrich: Die Marker befinden sich doch auf einer Linie!? :gruebel: Anhang 36850 Falls das bei Dir nicht der Fall sein sollte, wäre es schön, wenn Du mal den Quelltext und/oder einen Screenshot zeigen würdest. Edit: Alles klar - ich hatte Deinen Nachtrag zu spät gelesen... |
AW: Google Maps über COM (Component Object Model)
Hallo.
Erst mal großes Lob und Danke für das Framework, beschäftige mich erst ein paar Tage damit aber läuft toll ! Habe hier Delphi 6 auf XP mit IE 8, wobei aber anscheinend der IE8 die Krücke ist, delphichromiumembedded läuft auch mit Delphi 6 wie ne 1. Hat jemand einen Tip für mich wie ich das Framework mit delphichromiumembedded zum laufen bekommen könnte der Geschwindigkeitsunterschied würde mich interessieren ? lg Albert |
AW: Google Maps über COM (Component Object Model)
Hallo Albert,
vielen Dank für das Lob! Inwiefern gibt es Probleme mit dem Internet Explorer ActiveX? Auf meinem Entwicklungsrechner arbeite ich ohne Probleme mit XP und dem IE8. Auch auf einem Netbook läuft Google Maps mit akzeptabler Geschwindigkeit. Allerdings habe ich auch feststellen müssen, daß mit jeder neuen Version das API etwas zäher wird - das liegt einfach auch am ständig zunehmenden Funktionsumfang. Außerdem sitzen die Jungs/Mädchen von Google wahrscheinlich an schnelleren Kisten... Und JavaScript bleibt nun mal JavaScript. Um auf Deine Frage zu antworten: Das Framework arbeitet ausschließlich mit dem IE. Sollen andere Browser unterstützt werden, ist der Zugriff über COM nicht geeignet und Du müßtest andere Komponenten benutzen. Die wichtigsten mir bekannten sind im ersten Beitrag aufgelistet. TECMap unterstützt Chromium Embedded. Auf Anfrage schickt Dir der Entwickler auch gern eine Demo-Komponente zu. Damit könntest Du dann einen Vergleich zwischen den Browsern machen. Möchtest Du einen Geschwindigkeitsvergleich beim IE zwischen der von allen Komponentenentwicklern genutzen Exec-Methode zur Ausführung von JavaScript und dem direkten Zugriff über COM, so ist die von diesem Framework verwendete Methode etwa doppelt so schnell. Das liegt daran, daß das Parsen und Ausführen des JavaScript-Codes entfällt. |
AW: Google Maps über COM (Component Object Model)
Thomas:
Are planning some day to port your component to be uses to intraweb or annother web solution for delphi? |
AW: Google Maps über COM (Component Object Model)
Hi fduenas!
IntraWeb: Probably not. The documentation of IntraWeb is unfortunately very bad. And buy source code for the development of a freeware component is currently too expensive to me. Other web solutions: At which do you think? Currently I am working on version 3 of the framework. Then I will proceed with the development of a solution without Internet Explorer or another browser components. So may be a cross-platform application would be possible. |
AW: Google Maps über COM (Component Object Model)
Zitat:
Ich bin sehr an dem Quellcode interessiert. Würdest du ihn mir zur Verfügung stellen? Gruss Greg |
AW: Google Maps über COM (Component Object Model)
Hallo Greg,
vielen Dank für Dein Interesse und das Lob! Bitte entschuldige, daß ich Dich so lange habe warten lassen. Das liegt daran, daß ich momenentan mehr Arbeit habe, als Zeit zur Verfügung steht. Dadurch sind leider etliche Anfragen länger liegen geblieben, als es höflich ist. Zu Deiner Frage: Selbstverständlich kannst Du den Quelltext zur Ansteuerung des OpenLayer-Players haben. Allerdings muß ich Dich vorwarnen: Die Umsetzung ist absolut unvollständig und paßt wahrscheinlich nicht mehr zur aktuellen Frameworkversion. Das Framework selbst ist in zwei Teile gegliedert: Der erste Teil - der Kern - besteht aus einer DelphiToJavaScript-Bridge (D2JS-Engine), die ausschließlich über COM-Interfaces mit der JScript-Engine des IE-ActiveX kommuniziert. Damit kann auf beliebige JavaScript-Funktionen und -Objekte zugegriffen werden. Das geschieht in Form von Wrapper-Objekten, die über vorhandene JavaScript-Objekte gelegt werden oder die selbst neue JavaScript-Objekte erstellen. Darauf baut der zweite Teil des Frameworks auf, der damit alle Objekte und Methoden des Google Maps API's zugänglich macht. Genauso kann man das natürlich mit allen anderen JavaScript-Frameworks machen - es ist nur eine Frage des Aufwandes, den man treiben möchte. Darauf basieren dann auch die Anfänge der Umsetzung des OpenLayer-Players. Ich hatte das allerdings nur zum Testen geschrieben und hatte nicht geplant, es in dieser Form weiterzuentwickeln. Insofern ist es nur eine Studie nach dem Motto "So könnte man das auch machen...". Zu den Gründen, weshalb ich den OpenLayers-Player nicht auf die Art in Delphi einbinden möchte: JavaScript in Verbindung mit einem Browser(-Plugin) kommt von der Geschwindigkeit her nicht annähernd an ein kompiliertes Programm heran. Tests haben gezeigt, daß ein in Delphi geschriebener Player zur Darstellung von Kartendaten ohne Probleme um den Faktor 10 schneller ist, als eine Kombination aus Browser und JavaScript. Selbst auf einem gemächlichen Netbook sind ruckelfreie Animationen (wie das Verschieben der Karte oder die Veränderung des Zoomfaktors) möglich. Deshalb investiere ich lieber die Zeit in einen nativen Delphi-Player. Für das Datenmaterial des Open StreetMap-Projektes ist das möglich - Google besteht in seinen Lizenzbedingungen (momentan) aber leider auf den ausschließlichen Zugriff über das JavaScript-API. Du kannst den Ansatz des OpenLayers-Players aber gern weiterentwickeln. Um das Ganze dann auch mit der D2JS-Engine der neuen Version des Frameworks kompatibel zu machen, sind allerdings einige Anpassungen notwendig, da die Version 3.0 auch Delphi-seitig Interfaces unterstützen wird. Bei Fragen würde ich Dir selbstverständlich helfen. Den Quelltext der Demo mit dem OpenLayers-Player schicke ich Dir per Email. Viele Grüße Thomas |
AW: Google Maps über COM (Component Object Model)
Erstmal eine RIESENLOB, feine Arbeit, das gehört belohnt *Spende ist unterwegs*
und gleich die erste Frage: Wie kann man auf einen Link im InfoFenster eines Markers, intern vom Programm reagieren, habe (noch) nichts gefunden. Gruß Borni |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:12 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz