SlideShare a Scribd company logo
Jody Garnett
Boundless
Projects
Welcome
2
Jody Garnett
Senior Software Engineer
jgarnett@boundlessgeo.com
@jodygarnett
Open Source Geospatial Foundation
OSGeo Incubation Chair
GeoTools Project Officer
Eclipse Foundation
LocationTech Project Steering Committee
LocationTech Technology Project
Boundless
Boundless provides geospatial tools and
services for managing data and building
applications.
Projects
GeoTools
GeoServer
uDig
3
Loca%onTech
LocationTech
“Loca&onTech	
  is	
  a	
  working	
  group	
  developing	
  
advanced	
  loca&on	
  aware	
  technologies.”
4
5
Members
Strategic
Participating
Guest
Full Service Foundation
Forge
&
Build
IP
mgmt
Dev
Process
Licensing
Model
Community
Member
Network
Governance
Run by:
Follows Eclipse Development
Processes & IP Management
6
7
Infrastructure
Working Groups
Advanced Geospatial Software
Internet of ThingsLong Term Support Embedded Systems
Vendor neutral
collaboration:
★265+ projects
★~1100 active devs
★205+ members
★9M+ users
★
Scientific Research
8
0. Deny
1. Use
2. Contribute
3. Champion
4. Collaborate
5. Redefine
Value
Time
Developer driven Business driven
★Widespread software
adoption.
★Vibrant commercial
ecosystem.
From Bailetti
& Carbone
2009
9
Commercialising open source
Contact
info@locationtech.org
@locationtech
We are growing fast & need
your ideas & participation
http://locationtech.org
and click LEARN MORE
Andrew Ross
andrew.ross@eclipse.org
@42aross
Contact	
  Loca%onTech
10
11
Events
www.loca%onintelligence.net
Location Intelligence Summit 2014
May	
  19-­‐21,	
  Washington	
  DC	
  Conven6on	
  Center
Monday	
  –	
  Hands-­‐on	
  workshops
Tuesday	
  –	
  Loca6on	
  Intelligence,	
  HERE,	
  and	
  Loca6onTech	
  tracks
-­‐ “Loca%on	
  Analy%cs	
  and	
  Visual	
  Data	
  Discovery	
  …	
  New	
  Pathways	
  to	
  Business	
  Intelligence”
-­‐ Sessions	
  on	
  BI,	
  LI,	
  Indoor	
  Posi%oning,	
  Open	
  Source	
  Geospa%al,	
  Big	
  Data,	
  Dashboards/Visual	
  Data	
  Discovery
-­‐ Keynote:	
  Paul	
  Donato,	
  EVP/Research,	
  Nielsen
Wednesday	
  –	
  Oracle	
  Spa6al	
  Summit
-­‐ 3	
  technical	
  training	
  tracks	
  led	
  by	
  Oracle	
  experts:	
  	
  raster,	
  LIDAR,	
  geocoding,	
  rou%ng
-­‐ Performance	
  benchmarks,	
  Cer%fica%on	
  exam	
  prepara%on
-­‐ Customer	
  sessions:	
  	
  BI,	
  land	
  management,	
  LI	
  in	
  public	
  sector	
  &	
  retail;	
  SIG	
  User	
  Group
6 cities
By the numbers
★ 723 registrations
★ 640+ attendees
★ 56 speakers
★ Videos on YouTube
★ Positive feedback
13
Tour 2013
3 continents
http://tour.locationtech.org
★ Planning about to begin.
★ Sponsorship:
$2K members
$4.5K non-members
14
Tour 2014
15
Visit http://georabble.org for fun local events! (Pun intended)
GeoRabble All Stars
Allied with Locate 14 Canberra (Monday 7 April)
★Pia Waugh – Open Data Ninja
★Julian Carver – Land Information New Zealand
★Denise McKenzie – Open Geospatial Consortium
★Mike Bradford – Landgate WA
★Jody Garnett – Boundless
★Chris Tucker – Mapstory
Thanks to Sponsors LocationTech and Boundless
Libraries
16
JTS	
  Topology	
  Suite
• This	
  is	
  the	
  “Rocket	
  Science”	
  of	
  GIS
• Implementa%on	
  of	
  Geometry
• OGC	
  Standard:	
  Simple	
  Features	
  for	
  SQL	
  
• Vivid	
  Solu%ons
• Mar%n	
  Davis	
  (Project	
  Lead)
• License:
• Eclipse	
  Distribu%on	
  License	
  <-­‐-­‐	
  BSD!
• Eclipse	
  Public	
  License
17
Incoming!
Key to Open Source Spatial
18
Project Environment
JTS Topology Suite Java JVM Languages
GEOS C/C++
Net Topology Suite C#
JSTS JavaScript (Partial Port)
Shapely Python (via GEOS)
RGeo Ruby (via GEOS)
r-GEOS R (via GEOS)
LocationTech Projects
Geometry Example
20
GeoTools Example: http://docs.geotools.org/latest/userguide/library/jts/geometry.html
GeometryFactory geometryFactory = JTSFactoryFinder.getGeometryFactory();
Coordinate coord = new Coordinate(1, 1);
Point point = geometryFactory.createPoint(coord);
WKT Example
21
GeoTools Example: http://docs.geotools.org/latest/userguide/library/jts/geometry.html
GeometryFactory geometryFactory = JTSFactoryFinder.getGeometryFactory();
WKTReader reader = new WKTReader(geometryFactory);
Point point = (Point) reader.read("POINT (1 1)");
Buffer Example
22
GeoTools Example: http://docs.geotools.org/latest/userguide/library/jts/geometry.html
GeometryFactory geometryFactory = JTSFactoryFinder.getGeometryFactory( null );
WKTReader reader = new WKTReader( geometryFactory );
LineString line = (LineString) reader.read("LINESTRING(0 2, 2 0, 8 6)");
Geometry buffer = line.buffer( 0.75 );
Geometry Model
23
JTS TestBuilder Demo
Transform Example
25
GeoTools Example: http://docs.geotools.org/latest/userguide/library/referencing/crs.html
CoordinateReferenceSystem wgs84 = CRS.decode("EPSG:4326");
CoordinateReferenceSystem google = CRS.decode("EPSG:3857");
MathTransform transform = CRS.findMathTransform(wgs84, google, false);
Geometry target = JTS.transform( geometry, transform );
Mobile	
  Map	
  Tools
• SDK	
  For	
  na%ve	
  mobile	
  applica%ons.
• Supports:
• Mobile	
  maps	
  in	
  2D,	
  2.5D	
  and	
  3D
• Works	
  on	
  iOS,	
  Android,	
  webGL
• Built	
  using	
  C++	
  and	
  translated	
  to	
  Java	
  and	
  JavaScript
• License:	
  Eclipse	
  Distribu%on	
  License	
  1.0	
  (BSD)
26
Incoming!
GeoMesa
• Key/value	
  store
• Supports:	
  
• Distributed	
  &	
  highly	
  scalable
• Based	
  on	
  Accumulo
• License
• Apache	
  License,	
  Version	
  2.0
27
Approved!
Spa%al4j
• Adds	
  “Geometry	
  on	
  Curve”	
  to	
  JTS
• Supports:
• Geometry	
  on	
  a	
  Spherical
• Geometry	
  on	
  a	
  Cylinder
• Euclidean	
  (via	
  JTS)
• Great	
  Circle	
  Distance	
  Calculators
• License:	
  Apache	
  License,	
  Version	
  2.0
28
Incoming
A romance in many dimensions
29
Shape Euclidean Cylindrical Spherical
Point Y Y Y
Rectangle Y Y Y
Circle Y Y
LineString Y
Buffered L/S Y
Polygon Y Y
ShapeCollection Y Y Y
Distance Example
30
SpatialContext ctx = SpatialContext.GEO;
Circle sydney = ctx.makeCircle(151.3,33.9, 0.3);
Point perth = ctx.makePoint(115.8,32.9);
double distance = ctx.calcDistance(sydney.getCenter(), perth);
double km = DistanceUtils.degrees2Dist(
distance,
DistanceUtils.EARTH_MEAN_RADIUS_KM)
31
Processing
GeoTrellis
• Real-­‐%me	
  distributed	
  processing
• Supports:	
  
• Low	
  latency	
  &	
  Distributed
• Highly	
  scalable
• Based	
  on	
  Scala,	
  Akka,	
  &	
  Spark
• License:	
  Apache	
  License,	
  Version	
  2.0
32
Approved!
GeoTrellis Chattanooga Demo
33
http://demo.geotrellis.com/chatta/
Spa%alHadoop
• Batch	
  processing
• MapReduce	
  framework	
  for	
  efficient	
  processing	
  
of	
  spa%al	
  opera%ons
• Supports:	
  
• Spa%al	
  data	
  types	
  &	
  indexing
• Based	
  on	
  Hadoop
• Highly	
  scalable
• NOTE:	
  renaming	
  to	
  GeoJinni
• License:	
  Apache	
  License,	
  Version	
  2.0
34
Incoming!
Applica%ons
35
GEOFF
• Geo	
  Fast	
  Forward
• Embed	
  Simple	
  Maps	
  in	
  Eclipse	
  RCP
• Querying	
  a	
  geocoding	
  service
• Use	
  OpenLayers	
  3.0	
  as	
  a	
  resource	
  bundle
• SWT	
  Component	
  wrapping	
  embedded	
  browser
• Fluent	
  API	
  so	
  you	
  do	
  not	
  have	
  to	
  know	
  EMF
• License:	
  Eclipse	
  Public	
  License	
  1.0
36
Approved!
GeoGit
• Distributed	
  data	
  store
• Supports:	
  
• Distributed,	
  off-­‐line	
  opera%on
• Versioning,	
  compare	
  &	
  merge
• Push/pull	
  data
• License:	
  BSD	
  License
37
Incoming Project!
Incoming!
GeoGit	
  Story/Demo
38
GeoScript
• Adds	
  spa%al	
  capabili%es	
  to	
  dynamic
scrip%ng	
  languages.
• Supports:
• Groovy,	
  JavaScript,	
  Python,	
  and	
  Scala
• Backed	
  by	
  the	
  GeoTools	
  library
• geometry,	
  data	
  access	
  and	
  rendering
• Use	
  stand-­‐alone	
  or	
  embedded
• License:	
  MIT	
  License
39
Approved!
JavaScript
40
>> var geom = require("geoscript/geom");
>> var p = new geom.Point([-111.0, 45.7]);
>> p
<Point [-111, 45.7]>
>> var proj = require("geoscript/proj");
>> var p2 = proj.transform(p, "epsg:4326", "epsg:26912");
>> p2
<Point [500000, 5060716.31816507]>
>> var poly = p2.buffer(100);
>> poly.area
31214.451522458345
Python
41
>>> from geoscript import geom
>>> p = geom.Point(-111.0, 45.7)
>>> p
POINT(-111 45.7)
>>> from geoscript import proj
>>> p2 = proj.transform(p, 'epsg:4326', 'epsg:26912')
>>> p2
POINT (499999.42501775385 5060716.092032814)
>>> poly = p2.buffer(100)
>>> poly.getArea()
31214.45152247697
Scala
42
scala> import org.geoscript.geometry._
scala> import org.geoscript.projection._
scala> val p = Point(-110, 45.7) in Projection("EPSG:4326")
p: org.geoscript.geometry.Point = POINT (-110 45.7)
scala> val p2 = p in Projection("EPSG:26912")
p2: org.geoscript.geometry.Point = POINT (-370416.94184711506
-7935053.5498699695)
scala> p2.buffer(100).area
res0: Double = 31214.451522477902
Groovy
43
groovy:000> import geoscript.geom.*
groovy:000> import geoscript.proj.Projection
groovy:000> p = new Point(-111, 45.7)
===> POINT (-111 45.7)
groovy:000> p2 = Projection.transform(p, 'epsg:4326', 'epsg:
26912')
===> POINT (499999.42501775385, 5060716.092032814)
groovy:000> poly = p2.buffer(100)
groovy:000> poly.area
===> 31214.451522477902
uDig
• User-­‐friendly	
  Desktop	
  Internet	
  GIS
• Supports:	
  
• Desktop	
  GIS
• Based	
  on	
  Eclipse	
  RCP
• Reusable	
  components	
  for	
  RCP	
  Developers
• Supports	
  industry	
  standard	
  formats	
  and	
  services
• e.g.	
  WMS,	
  WFS,	
  etc.
• License:
• Eclipse	
  Distribu%on	
  License
• Eclipse	
  Public	
  License
44
Approved!
45
Quick uDig Demo
46
Eclipse Foundation
47
204 Members and growing.
48
Eclipse Foundation Members
Predictable Release Schedule
• Dozens	
  of	
  projects,	
  millions	
  of	
  lines	
  of	
  code	
  
releasing	
  each	
  year	
  on	
  %me	
  to	
  the	
  day	
  for	
  9	
  
years	
  straight.
• 265+	
  open	
  source	
  projects	
  and	
  growing.
49
Eclipse 3.0 Eclipse 3.1 Casllisto Europa Ganymede Galileo Helios Indigo Juno Kepler Luna
17 18
24
33
46
55
58
3
7
10
21 23
33
39
62
71 71
76
Projects Million LOC
EGit Project CDT Project
WTP Project Linux Tools Project
(Percentage of contributions for each project)
50
Industry Collaboration

More Related Content

PDF
OSGeo Incubation 2013
PDF
State of GeoServer 2013 (FOSS4G)
PPTX
State of GeoServer 2015
PPTX
GeoServer Feature Frenzy
PPTX
OSGeo Incubation 2014
PDF
OSGeo Aus-Nz
PDF
Advanced GeoServer Security with GeoFence
PDF
GeoServer an introduction for beginners
OSGeo Incubation 2013
State of GeoServer 2013 (FOSS4G)
State of GeoServer 2015
GeoServer Feature Frenzy
OSGeo Incubation 2014
OSGeo Aus-Nz
Advanced GeoServer Security with GeoFence
GeoServer an introduction for beginners

Similar to LocationTech Projects (20)

PPTX
LocationTech Projects
PDF
LocationTech Meetup Hamburg 2014 - GeoGig
PPTX
GIS User to Web-GIS Developer Journey
ODP
OSGeo Live Lightening Overview
PDF
State of GeoServer 2.10
PDF
Beyond GeoServer Basics
ODP
Mapping, GIS and geolocating data in Java
PDF
State of JTS 2018
PDF
State of JTS 2017
ODP
Java Tech & Tools | Mapping, GIS and Geolocating Data in Java | Joachim Van d...
ODP
Mapping, GIS and geolocating data in Java @ JAX London
PDF
Integrating PostGIS in Web Applications
PDF
Geospatial for Java
PDF
Teste de performance de WMS entre GeoServer e Mapserver
PDF
Saving Money with Open Source GIS
PDF
Geographica: A Benchmark for Geospatial RDF Stores - ISWC 2013
PPTX
GeoPackage, Context and POI (and a sprinkle of GeoJSON)
PDF
GITA PNW keynote presentation: Openness in Geospatial
PPTX
GeoPackage SWG Overview
LocationTech Projects
LocationTech Meetup Hamburg 2014 - GeoGig
GIS User to Web-GIS Developer Journey
OSGeo Live Lightening Overview
State of GeoServer 2.10
Beyond GeoServer Basics
Mapping, GIS and geolocating data in Java
State of JTS 2018
State of JTS 2017
Java Tech & Tools | Mapping, GIS and Geolocating Data in Java | Joachim Van d...
Mapping, GIS and geolocating data in Java @ JAX London
Integrating PostGIS in Web Applications
Geospatial for Java
Teste de performance de WMS entre GeoServer e Mapserver
Saving Money with Open Source GIS
Geographica: A Benchmark for Geospatial RDF Stores - ISWC 2013
GeoPackage, Context and POI (and a sprinkle of GeoJSON)
GITA PNW keynote presentation: Openness in Geospatial
GeoPackage SWG Overview
Ad

More from Jody Garnett (20)

PDF
GeoServer Orientation
PDF
Open Source Practice and Passion at OSGeo
PPTX
Introduction to OSGeo
PDF
Open Source Procurement
PDF
Java Image Processing for Geospatial Community
PPTX
Open Source Practice and Passion at OSGeo
PPTX
Open Source is hard, we are here to help!
PDF
GeoServer Developers Workshop
PDF
GeoServer Ecosystem 2018
PDF
State of GeoServer 2.14
PDF
OSGeo AGM 2018
PPTX
Working with the OSGeo Community
PDF
State of GeoServer 2.13
PDF
Open Data and Open Software Geospatial Applications
PDF
Map box styles in GeoServer and OpenLayers
PDF
Quick and easy web maps
PDF
State of GeoGig
PDF
OSGeo AGM 2017
PDF
Incubation Orientation
PDF
Understanding the Flexibility of Open Source
GeoServer Orientation
Open Source Practice and Passion at OSGeo
Introduction to OSGeo
Open Source Procurement
Java Image Processing for Geospatial Community
Open Source Practice and Passion at OSGeo
Open Source is hard, we are here to help!
GeoServer Developers Workshop
GeoServer Ecosystem 2018
State of GeoServer 2.14
OSGeo AGM 2018
Working with the OSGeo Community
State of GeoServer 2.13
Open Data and Open Software Geospatial Applications
Map box styles in GeoServer and OpenLayers
Quick and easy web maps
State of GeoGig
OSGeo AGM 2017
Incubation Orientation
Understanding the Flexibility of Open Source
Ad

Recently uploaded (20)

PPTX
Advanced SystemCare Ultimate Crack + Portable (2025)
PPTX
Patient Appointment Booking in Odoo with online payment
PDF
Designing Intelligence for the Shop Floor.pdf
PDF
iTop VPN Free 5.6.0.5262 Crack latest version 2025
PDF
Cost to Outsource Software Development in 2025
PDF
Website Design Services for Small Businesses.pdf
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PPTX
history of c programming in notes for students .pptx
PPTX
Reimagine Home Health with the Power of Agentic AI​
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PPTX
Computer Software and OS of computer science of grade 11.pptx
PPTX
AMADEUS TRAVEL AGENT SOFTWARE | AMADEUS TICKETING SYSTEM
PDF
iTop VPN 6.5.0 Crack + License Key 2025 (Premium Version)
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PDF
Digital Systems & Binary Numbers (comprehensive )
PDF
CCleaner Pro 6.38.11537 Crack Final Latest Version 2025
PPTX
Why Generative AI is the Future of Content, Code & Creativity?
Advanced SystemCare Ultimate Crack + Portable (2025)
Patient Appointment Booking in Odoo with online payment
Designing Intelligence for the Shop Floor.pdf
iTop VPN Free 5.6.0.5262 Crack latest version 2025
Cost to Outsource Software Development in 2025
Website Design Services for Small Businesses.pdf
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
Adobe Illustrator 28.6 Crack My Vision of Vector Design
history of c programming in notes for students .pptx
Reimagine Home Health with the Power of Agentic AI​
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
Computer Software and OS of computer science of grade 11.pptx
AMADEUS TRAVEL AGENT SOFTWARE | AMADEUS TICKETING SYSTEM
iTop VPN 6.5.0 Crack + License Key 2025 (Premium Version)
CHAPTER 2 - PM Management and IT Context
Odoo Companies in India – Driving Business Transformation.pdf
Design an Analysis of Algorithms I-SECS-1021-03
Digital Systems & Binary Numbers (comprehensive )
CCleaner Pro 6.38.11537 Crack Final Latest Version 2025
Why Generative AI is the Future of Content, Code & Creativity?

LocationTech Projects

  • 2. Welcome 2 Jody Garnett Senior Software Engineer jgarnett@boundlessgeo.com @jodygarnett Open Source Geospatial Foundation OSGeo Incubation Chair GeoTools Project Officer Eclipse Foundation LocationTech Project Steering Committee LocationTech Technology Project Boundless Boundless provides geospatial tools and services for managing data and building applications. Projects GeoTools GeoServer uDig
  • 4. LocationTech “Loca&onTech  is  a  working  group  developing   advanced  loca&on  aware  technologies.” 4
  • 8. Working Groups Advanced Geospatial Software Internet of ThingsLong Term Support Embedded Systems Vendor neutral collaboration: ★265+ projects ★~1100 active devs ★205+ members ★9M+ users ★ Scientific Research 8
  • 9. 0. Deny 1. Use 2. Contribute 3. Champion 4. Collaborate 5. Redefine Value Time Developer driven Business driven ★Widespread software adoption. ★Vibrant commercial ecosystem. From Bailetti & Carbone 2009 9 Commercialising open source
  • 10. Contact info@locationtech.org @locationtech We are growing fast & need your ideas & participation http://locationtech.org and click LEARN MORE Andrew Ross andrew.ross@eclipse.org @42aross Contact  Loca%onTech 10
  • 12. www.loca%onintelligence.net Location Intelligence Summit 2014 May  19-­‐21,  Washington  DC  Conven6on  Center Monday  –  Hands-­‐on  workshops Tuesday  –  Loca6on  Intelligence,  HERE,  and  Loca6onTech  tracks -­‐ “Loca%on  Analy%cs  and  Visual  Data  Discovery  …  New  Pathways  to  Business  Intelligence” -­‐ Sessions  on  BI,  LI,  Indoor  Posi%oning,  Open  Source  Geospa%al,  Big  Data,  Dashboards/Visual  Data  Discovery -­‐ Keynote:  Paul  Donato,  EVP/Research,  Nielsen Wednesday  –  Oracle  Spa6al  Summit -­‐ 3  technical  training  tracks  led  by  Oracle  experts:    raster,  LIDAR,  geocoding,  rou%ng -­‐ Performance  benchmarks,  Cer%fica%on  exam  prepara%on -­‐ Customer  sessions:    BI,  land  management,  LI  in  public  sector  &  retail;  SIG  User  Group
  • 13. 6 cities By the numbers ★ 723 registrations ★ 640+ attendees ★ 56 speakers ★ Videos on YouTube ★ Positive feedback 13 Tour 2013
  • 14. 3 continents http://tour.locationtech.org ★ Planning about to begin. ★ Sponsorship: $2K members $4.5K non-members 14 Tour 2014
  • 15. 15 Visit http://georabble.org for fun local events! (Pun intended) GeoRabble All Stars Allied with Locate 14 Canberra (Monday 7 April) ★Pia Waugh – Open Data Ninja ★Julian Carver – Land Information New Zealand ★Denise McKenzie – Open Geospatial Consortium ★Mike Bradford – Landgate WA ★Jody Garnett – Boundless ★Chris Tucker – Mapstory Thanks to Sponsors LocationTech and Boundless
  • 17. JTS  Topology  Suite • This  is  the  “Rocket  Science”  of  GIS • Implementa%on  of  Geometry • OGC  Standard:  Simple  Features  for  SQL   • Vivid  Solu%ons • Mar%n  Davis  (Project  Lead) • License: • Eclipse  Distribu%on  License  <-­‐-­‐  BSD! • Eclipse  Public  License 17 Incoming!
  • 18. Key to Open Source Spatial 18 Project Environment JTS Topology Suite Java JVM Languages GEOS C/C++ Net Topology Suite C# JSTS JavaScript (Partial Port) Shapely Python (via GEOS) RGeo Ruby (via GEOS) r-GEOS R (via GEOS)
  • 20. Geometry Example 20 GeoTools Example: http://docs.geotools.org/latest/userguide/library/jts/geometry.html GeometryFactory geometryFactory = JTSFactoryFinder.getGeometryFactory(); Coordinate coord = new Coordinate(1, 1); Point point = geometryFactory.createPoint(coord);
  • 21. WKT Example 21 GeoTools Example: http://docs.geotools.org/latest/userguide/library/jts/geometry.html GeometryFactory geometryFactory = JTSFactoryFinder.getGeometryFactory(); WKTReader reader = new WKTReader(geometryFactory); Point point = (Point) reader.read("POINT (1 1)");
  • 22. Buffer Example 22 GeoTools Example: http://docs.geotools.org/latest/userguide/library/jts/geometry.html GeometryFactory geometryFactory = JTSFactoryFinder.getGeometryFactory( null ); WKTReader reader = new WKTReader( geometryFactory ); LineString line = (LineString) reader.read("LINESTRING(0 2, 2 0, 8 6)"); Geometry buffer = line.buffer( 0.75 );
  • 25. Transform Example 25 GeoTools Example: http://docs.geotools.org/latest/userguide/library/referencing/crs.html CoordinateReferenceSystem wgs84 = CRS.decode("EPSG:4326"); CoordinateReferenceSystem google = CRS.decode("EPSG:3857"); MathTransform transform = CRS.findMathTransform(wgs84, google, false); Geometry target = JTS.transform( geometry, transform );
  • 26. Mobile  Map  Tools • SDK  For  na%ve  mobile  applica%ons. • Supports: • Mobile  maps  in  2D,  2.5D  and  3D • Works  on  iOS,  Android,  webGL • Built  using  C++  and  translated  to  Java  and  JavaScript • License:  Eclipse  Distribu%on  License  1.0  (BSD) 26 Incoming!
  • 27. GeoMesa • Key/value  store • Supports:   • Distributed  &  highly  scalable • Based  on  Accumulo • License • Apache  License,  Version  2.0 27 Approved!
  • 28. Spa%al4j • Adds  “Geometry  on  Curve”  to  JTS • Supports: • Geometry  on  a  Spherical • Geometry  on  a  Cylinder • Euclidean  (via  JTS) • Great  Circle  Distance  Calculators • License:  Apache  License,  Version  2.0 28 Incoming
  • 29. A romance in many dimensions 29 Shape Euclidean Cylindrical Spherical Point Y Y Y Rectangle Y Y Y Circle Y Y LineString Y Buffered L/S Y Polygon Y Y ShapeCollection Y Y Y
  • 30. Distance Example 30 SpatialContext ctx = SpatialContext.GEO; Circle sydney = ctx.makeCircle(151.3,33.9, 0.3); Point perth = ctx.makePoint(115.8,32.9); double distance = ctx.calcDistance(sydney.getCenter(), perth); double km = DistanceUtils.degrees2Dist( distance, DistanceUtils.EARTH_MEAN_RADIUS_KM)
  • 32. GeoTrellis • Real-­‐%me  distributed  processing • Supports:   • Low  latency  &  Distributed • Highly  scalable • Based  on  Scala,  Akka,  &  Spark • License:  Apache  License,  Version  2.0 32 Approved!
  • 34. Spa%alHadoop • Batch  processing • MapReduce  framework  for  efficient  processing   of  spa%al  opera%ons • Supports:   • Spa%al  data  types  &  indexing • Based  on  Hadoop • Highly  scalable • NOTE:  renaming  to  GeoJinni • License:  Apache  License,  Version  2.0 34 Incoming!
  • 36. GEOFF • Geo  Fast  Forward • Embed  Simple  Maps  in  Eclipse  RCP • Querying  a  geocoding  service • Use  OpenLayers  3.0  as  a  resource  bundle • SWT  Component  wrapping  embedded  browser • Fluent  API  so  you  do  not  have  to  know  EMF • License:  Eclipse  Public  License  1.0 36 Approved!
  • 37. GeoGit • Distributed  data  store • Supports:   • Distributed,  off-­‐line  opera%on • Versioning,  compare  &  merge • Push/pull  data • License:  BSD  License 37 Incoming Project! Incoming!
  • 39. GeoScript • Adds  spa%al  capabili%es  to  dynamic scrip%ng  languages. • Supports: • Groovy,  JavaScript,  Python,  and  Scala • Backed  by  the  GeoTools  library • geometry,  data  access  and  rendering • Use  stand-­‐alone  or  embedded • License:  MIT  License 39 Approved!
  • 40. JavaScript 40 >> var geom = require("geoscript/geom"); >> var p = new geom.Point([-111.0, 45.7]); >> p <Point [-111, 45.7]> >> var proj = require("geoscript/proj"); >> var p2 = proj.transform(p, "epsg:4326", "epsg:26912"); >> p2 <Point [500000, 5060716.31816507]> >> var poly = p2.buffer(100); >> poly.area 31214.451522458345
  • 41. Python 41 >>> from geoscript import geom >>> p = geom.Point(-111.0, 45.7) >>> p POINT(-111 45.7) >>> from geoscript import proj >>> p2 = proj.transform(p, 'epsg:4326', 'epsg:26912') >>> p2 POINT (499999.42501775385 5060716.092032814) >>> poly = p2.buffer(100) >>> poly.getArea() 31214.45152247697
  • 42. Scala 42 scala> import org.geoscript.geometry._ scala> import org.geoscript.projection._ scala> val p = Point(-110, 45.7) in Projection("EPSG:4326") p: org.geoscript.geometry.Point = POINT (-110 45.7) scala> val p2 = p in Projection("EPSG:26912") p2: org.geoscript.geometry.Point = POINT (-370416.94184711506 -7935053.5498699695) scala> p2.buffer(100).area res0: Double = 31214.451522477902
  • 43. Groovy 43 groovy:000> import geoscript.geom.* groovy:000> import geoscript.proj.Projection groovy:000> p = new Point(-111, 45.7) ===> POINT (-111 45.7) groovy:000> p2 = Projection.transform(p, 'epsg:4326', 'epsg: 26912') ===> POINT (499999.42501775385, 5060716.092032814) groovy:000> poly = p2.buffer(100) groovy:000> poly.area ===> 31214.451522477902
  • 44. uDig • User-­‐friendly  Desktop  Internet  GIS • Supports:   • Desktop  GIS • Based  on  Eclipse  RCP • Reusable  components  for  RCP  Developers • Supports  industry  standard  formats  and  services • e.g.  WMS,  WFS,  etc. • License: • Eclipse  Distribu%on  License • Eclipse  Public  License 44 Approved!
  • 45. 45
  • 48. 204 Members and growing. 48 Eclipse Foundation Members
  • 49. Predictable Release Schedule • Dozens  of  projects,  millions  of  lines  of  code   releasing  each  year  on  %me  to  the  day  for  9   years  straight. • 265+  open  source  projects  and  growing. 49 Eclipse 3.0 Eclipse 3.1 Casllisto Europa Ganymede Galileo Helios Indigo Juno Kepler Luna 17 18 24 33 46 55 58 3 7 10 21 23 33 39 62 71 71 76 Projects Million LOC
  • 50. EGit Project CDT Project WTP Project Linux Tools Project (Percentage of contributions for each project) 50 Industry Collaboration