Web Control Google Maps and Google Earth

Using a combination of JScript and HTML+TIME, Google Earth can be controlled and animated.

This makes it possible to connect Google Maps and Google Earth. Channelling point positions between the two applications. This will be tested Today in this page.

Updated for Nov 26th: Test page November 27th, 2005
  • Update Nov 26: Launching and Closing Google Earth from script.
  • Update Nov 26: Controlling/Animating Latitude, Longitude, Range, Tilt and Azimuth
  • Update Nov 26: Making a B and W Screen dump and saving it.
  • Update Nov 27: Launching the Screen Shot in a IE Popup for Printing.
  • Update Nov 27: Sending a GMaps point to GEarth and have a Fly to with speed setting.
  • Update Nov 27: Getting real-time cursor lat/lon locations and saving them.
  • Update Nov 27: Setting GEarth window size by script(at onload webpage).
  • Todo: Retrieving map downloaprogress for ScreenShot image timing.
  • Update Nov 27: Opening local GPX from script.
  • Update Nov 27: Opening Local KML from script.
  • Todo: Opening Web URL files in GEarth by script.
  • Todo: Send a cursored track from GEarth to GMaps and show Polyline on Gmaps.
  • Todo: Send a cursored track from GEarth to webpage and transform it to GPX file/KML file.


Latitude: Longitude: Range: Tilt: Heading: Speed:

Table with current point values 0

Set Naviagation Mode/Click-and-Zoom or G-Force. Control/Advanced/Fly-To-Speed at 0.35 ~0.5 and viewport at Fullscreen


get coordinates

Animations for Range, Tilt,Azimuth, Latitudeand Longitude
Range Timer: 0Range range From: To:
Tilt Timer: 0Tilt range From: To:
Azimuth Timer: 0Azimuth range From: To:
Latitude Timer: 0Latitude range From: To:
Longitude Timer: 0Longitude range From: To:

Click the map for a new location. Coordinates will pop-up.
The new point is send automatically to Google Earth for a Fly to new point and a Snapshot is taken from the destination. Enjoy the flight, Cybarber!

GMaps Zoom versus GEarth Eye Alititude

Gmaps xGEarth mGmaps xGEarth KmGmaps xGEarth Km
1625740132560
21250880145120
3250091601510240
45000103201620480
510000116401740960
6200001212801863710

Make a Screen dumb of the Google Earth Viewport

A Screen dump in Black/White jpeg Quality (2~99):

Launch a KML/KMZ/GPX local PC file in Google Earth (Web URLs fail?)


Load KML stringdata in Google Earth by loadKML(string) function


GoogleEarth API
__ ____________________________________________

Library KEYHOLELib
Keyhole 1.0 Type Library
____________________________
Class KHFeature
element of KEYHOLELib
KHFeature Class

Property hasView As Long
write protected
element of KEYHOLELib.KHFeature
property hasView

Property visibility As Long
element of KEYHOLELib.KHFeature
property visibility
____________________________
Class KHInterface
element of KEYHOLELib
KHInterface Class

Property autopilotSpeed As Double
element of KEYHOLELib.KHInterface
property autopilotSpeed

Function currentView(terrain As Long) As KHViewInfo
element of KEYHOLELib.KHInterface
property currentView

Property currentViewExtents As KHViewExtents
write protected
element of KEYHOLELib.KHInterface
property currentViewExtents

Function getFeatureByName(name As String) As KHFeature
element of KEYHOLELib.KHInterface
method getFeatureByName

Function getPointOnTerrainFromScreenCoords(screen_x As Double, screen_y As Double) As Double()
element of KEYHOLELib.KHInterface
method getPointOnTerrainFromScreenCoords

Sub LoadKml(kmlData As String)
element of KEYHOLELib.KHInterface
method LoadKml

Sub OpenFile(fileName As String)
element of KEYHOLELib.KHInterface
method OpenFile

Sub QuitApplication()
element of KEYHOLELib.KHInterface
method QuitApplication

Sub SaveScreenShot(fileName As String, quality As Long)
element of KEYHOLELib.KHInterface
method SaveScreenShot

Sub setFeatureView(feature As KHFeature, speed As Double)
element of KEYHOLELib.KHInterface
method setFeatureView

Sub SetRenderWindowSize(width As Long, height As Long)
element of KEYHOLELib.KHInterface
method SetRenderWindowSize

Sub setView(view As KHViewInfo, terrain As Long, speed As Double)
element of KEYHOLELib.KHInterface
method setView

Sub setViewParams(lat As Double, lon As Double, range As Double, tilt As Double, azimuth As Double, terrain As Long, speed As Double)
element of KEYHOLELib.KHInterface
method setViewParams

Property streamingProgressPercentage As Long
write protected
element of KEYHOLELib.KHInterface
property streamingProgressPercentage
____________________________
Class KHViewExtents
element of KEYHOLELib
KHViewExtents Class

Property east As Double
write protected
element of KEYHOLELib.KHViewExtents
property east

Property north As Double
write protected
element of KEYHOLELib.KHViewExtents
property north

Property south As Double
write protected
element of KEYHOLELib.KHViewExtents
property south

Property west As Double
write protected
element of KEYHOLELib.KHViewExtents
property west
____________________________
Class KHViewInfo
element of KEYHOLELib
KHViewInfo Class

Property azimuth As Double
element of KEYHOLELib.KHViewInfo
property azimuth

Property latitude As Double
element of KEYHOLELib.KHViewInfo
property latitude

Property longitude As Double
element of KEYHOLELib.KHViewInfo
property longitude

Property range As Double
element of KEYHOLELib.KHViewInfo
property range

Property tilt As Double
element of KEYHOLELib.KHViewInfo
property tilt
	  
		This is a Web page with a Google Earth activeX object and
		a Google Maps JScript interface.
		The page is  a bridge between GMaps and GEarth.
		It uses HTML+TIME and VML for animation and display.
		Therefore please view this page with Internet Explorer 6 or 7 
		instead of the one you used to come here.
	
		Script: William A Slabbekoorn - Nov 2005
    __   
   / _)      _        __   _    _  __ 
   |(_ \\ /||_) //_\ ||_)||_) ||_ ||_)
   \__) || ||__)|| | || \||__)||_ || \
	 
	

	Copyright: Cybarber Web Services, William A Slabbekoorn, November 2005.
	http://members.home.nl/cybarber/geomatters/GoogleEarthGUIwithHtmlTimeScript.html