Your SlideShare is downloading. ×
Advanced Kml
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Advanced Kml


Published on

Published in: Technology, News & Politics
  • Be the first to comment

  • Be the first to like this

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide


  • 1. Advanced KML Bent Hagemark May 29, 2008
  • 2. Overview OGC Standard KML Architecture Advanced features Future enhancement
  • 3. OGC Standard
  • 4. OGC KML 2.2 April 14, 2008 Standard: 07-147r2 Abstract Test Suite: 07-134r2 100% quot;Googlequot; KML 2.2 compatible xmlns=quot;;
  • 5. OGC KML 2.2
  • 6. KML Architecture
  • 7. KML Architecture Object Feature Geometry Style Link Extension mechanism
  • 8. Object most complex elements id=quot;IDquot; targetId=quot;IDquot; for Update AbstractXxxObjectExtensionGroup kml:AbstractObjectGroup (8.1)
  • 9. Feature left panel entry: name, snippet, visibility balloon style viewpoint, flyTo custom data kml:AbstractFeatureGroup (9.1)
  • 10. Feature: concrete elements Placemark NetworkLink Container: Document, Folder Overlay: GroundOverlay, PhotoOverlay, ScreenOverlay
  • 11. Geometry 2d or 3d extrude tessellate kml:AbstractGeometryGroup (10.1)
  • 12. Geometry: concrete elements Point (icon) LineString, LinearRing Polygon Model (textured 3d) MultiGeometry
  • 13. Style shared style (6.4) inline style style resolution kml:AbstractStyleSelectorGroup (12.1)
  • 14. Style: concrete elements Style StyleMap styleUrl SubStyle: BalloonStyle, ListStyle, ColorStyle ColorStyle: IconStyle, LabelStyle, LineStyle, PolyStyle
  • 15. Link href network-shared style network-shared schema images, 3d models, more KML balloon ascription
  • 16. Link: concrete elements NetworkLink/Link/href Overlay/Icon/href Model/Link/href styleUrl schemaUrl html:img src=quot;...quot; html:a href=quot;...quot; atom:link
  • 17. Extension mechanism ExtendedData/Data Document/Schema, ExtendedData/SchemaData ExtendedData/XML XSD extension mechanism
  • 18. XML and JavaScript same model (same system!)
  • 19. Advanced features
  • 20. Review: Basic features Placemark Overlay Folder Style NetworkLink
  • 21. Advanced features Region Time Update ExtendedData
  • 22. Region Feature LOD visibility transitions millions of points SuperOverlay
  • 23. Region: any Feature Placemark: visibility NetworkLink: fetch Overlay: fetch of image and visibility Document/Folder: cascade
  • 24. Region: simple effects simple Lod pop in and out fade clean swap with fade
  • 25. Region: Example 1: simple Lod <Placemark> <Region> <Lod> <minLodPixels>128</minLodPixels> </Lod> <LatLonAltBox>...</LatLonAltBox> </Region> <Point>...</Point> </Placemark>
  • 26. Region: Example 2: pop in and out <Placemark> <Region> <Lod> <minLodPixels>128</minLodPixels> <maxLodPixels>512</maxLodPixels> </Lod> <LatLonAltBox>...</LatLonAltBox> </Region> <Point>...</Point> </Placemark>
  • 27. Region: Example 3: clean swap <Placemark id=quot;coarsequot;> <Region> <Lod> <!-- minLodPixels defaults to 0 --> <maxLodPixels>256</maxLodPixels> </Lod> <LatLonAltBox>...</LatLonAltBox> </Region> <Point>...</Point> <!-- quot;come look herequot; --> </Placemark>
  • 28. Region: Example 3: clean swap <Placemark id=quot;finequot;> <Region> <Lod> <minLodPixels>256</minLodPixels> </Lod> <!-- maxLodPixels defaults to -1 quot;infinitequot; --> <LatLonAltBox>...</LatLonAltBox> </Region> <Polygon>...</Polygon> <!-- more detail --> </Placemark>
  • 29. Region: NetworkLink <NetworkLink> <Region> <Lod> <minLodPixels>256</minLodPixels> </Lod> <LatLonAltBox>...</LatLonAltBox> </Region> <Link> <href>load-when-viewer-close-enough.kml</href> <viewRefreshMode>onRegion</viewRefreshMode> </Link> </NetworkLink>
  • 30. Region: quot;RbNLquot; and tools cascade of Region-based NetworkLinks KML Layers - CSV -> RbNL - KML -> RbNL - walks RbNL - checks RbNL Regions
  • 31. Region: quot;RbNLquot; Google Earth layers Rumsey Historical Maps Gigapan/Gigapxl Photos YouTube Books News Weather
  • 32. Region: SuperOverlay quot;RbNLquot; of GroundOverlays Examples: Google Earth Weather disaster imagery
  • 33. Region: tips and tricks focus on Lod, especially minLodPixels minLodPixels most likely > 128 Region with any Feature including ScreenOverlay minLodPixels = 1/2 wid/ht of image tile 256x256 image -> minLodPixels 128 512 is 1/4 a typical screen
  • 34. Time Feature TimeStamp TimeSpan Example: Google Earth Weather
  • 35. Time: tips and tricks TimeStamp for Points TimeStamp: geographically non-coincident TimeSpan for Overlays TimeSpan: geographically coincident Containers cascade checkHideChildren
  • 36. Update Change Create Delete Example: Santa
  • 37. Update: Change <!-- original fetched with NetworkLink --> <kml xmlns=quot;;> <Folder> <Placemark id=quot;p1quot;> <name>Point @ 3,-4.2</name> <description>My movable Point</description> <styleUrl>#some-style</styleUrl> <Point> <extrude>true</extrude> <coordinates>3,4.2</coordinates> </Point> </Placemark> </Folder> </kml>
  • 38. Update: Change <kml><NetworkLinkControl> <Update> <Change> <Placemark targetId=quot;p1quot;> <name>Point @ 3,-4.2</name> <Point> <coordinates>3,4.2</coordinates> </Point> </Placemark> </Change> </Update> </NetworkLinkControl> </kml>
  • 39. Update: NetworkLinkControl and cookie <kml><NetworkLinkControl> <!-- name=value compat with cgi parsing --> <cookie>count=123</cookie> <Update> <Change> <Placemark targetId=quot;p1quot;> <Point> <coordinates>[coords for 123]</coordinates> </Point> </Placemark> </Change> </Update> </NetworkLinkControl></kml>
  • 40. ExtendedData Feature Data: untyped data Schema and SchemaData: typed data quot;<xs:any>quot;: any XML balloon templating with shared style Example: Google Earth Weather (Metadata deprecated)
  • 41. ExtendedData: Example: Weather <Placemark> <name>...</name> <styleUrl>http://.../style.kml#sunny</styleUrl> <ExtendedData>...</ExtendedData> <Point>...</Point> </Placemark>
  • 42. ExtendedData: Example: Weather <!-- style.kml --> <Style id=quot;sunnyquot;> <IconStyle> <Icon><href>sunny.jpg</href></Icon> </IconStyle> <LabelStyle>...</LabelStyle> <BalloonStyle> <text> <!-- 50 entities replaced in one template --> ...<td>$[01_Temperature]</td>... </text> </BalloonStyle> </Style>
  • 43. ExtendedData: Example: Weather <ExtendedData> <Data name=quot;locationquot;> <value>Shillong, IN as of 2008-05-28 17:00</value> </Data> <Data name=quot;00_Temperaturequot;> <value>80°F / 27°C</value> </Data> <Data name=quot;00_Phrasequot;> <value>Haze</value> </Data> </ExtendedData>
  • 44. ExtendedData: Example: weather Feature Data: untyped data Schema and SchemaData: typed data quot;<xs:any>quot;: any XML balloon templating with shared style Example: Google Earth Weather (Metadata deprecated)
  • 45. ExtendedData: tips and tricks ExtendedData/Data the comment trick
  • 46. Future enhancement
  • 47. Future enhancement ExtendedData XSD extension mechanism OGC SWG
  • 48. Demo
  • 49.