Your SlideShare is downloading. ×
Avances en la integración de GGL2 con gvSIG y QGIS
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

Avances en la integración de GGL2 con gvSIG y QGIS

385
views

Published on

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
385
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Avances en la integraciónde GGL2 con gvSIG y QGIS Víctor González (victor.gonzalez@geomati.co) Fernando González (fernando.gonzalez@geomati.co)
  • 2. Guión● ¿Qué es GGL2?● Avances en el lenguaje – Join – Librerías – Integración con gvSIG y Quantum GIS● Trabajo futuro
  • 3. ¿Qué es GGL2?GearscapeGeoprocessingLanguage 2
  • 4. ¿Qué es GGL2? Grass JavaSEXTANTE GGL2 C/C++ ... ...
  • 5. Join
  • 6. Joinresult = vias as v join municipios as m on (ST_Intersects(v/the_geom, m/the_geom));result = vias as v prefix v_ join municipios as m on (ST_Intersects(v/v_the_geom, m/the_geom));joined = vias as v prefix v_ join municipios as m on (ST_Intersects(v/v_the_geom, m/the_geom));result = joined select(...); Buffff!!
  • 7. Joinresult = vias join municipios (v,m | on (ST_Intersects(v/the_geom, m/the_geom) include ...);result = vias join municipios (v,m | ...);result = vias select (v | ...);result = vias filter (v | ...); Buff!
  • 8. Join 250 200 150Segundos 2012 2013 100 50 0 ~1 ~10 ~100 ~1000 Nº elementos (en miles)
  • 9. Librerías
  • 10. alg buildUnitVector2D(double angle) returns sequenceof double { return [cos(angle), sin(angle)];}alg buildVector2D(geometry p1, geometry p2) returns sequenceof double { return [ST_X(p2) - ST_X(p1), ST_Y(p2) - ST_Y(p1)];}alg unitVector(sequenceof double vector) returns sequenceof double { module = sqrt(pow(vector[0], 2) + pow(vector[1], 2)); return [vector[0] : module, vector[1] : module];}alg applyVector(sequenceof double unitVector, geometry origin, double distance)returns geometry { x = ST_X(origin) + unitVector[0] * distance; y = ST_Y(origin) + unitVector[1] * distance; return POINT(x y);}
  • 11. Librerías
  • 12. alg mean(sequenceof double values) returns double maps to org.gearscape.ggl.Statistics::mean;alg variance(sequenceof double values, double expected) returns double { acum = 0.0; foreach value in values { acum = acum + pow(value - expected, 2); } return acum : values/@length;}alg standardDeviation(sequenceof double values, double expected) returns double { return sqrt(variance(values, expected));}alg variationCoef(sequenceof double values, double value) returns double { return standardDeviation(values, value) : mean(values);}
  • 13. Integración Quantum GIS
  • 14. Integración gvSIG
  • 15. Trabajo futuro
  • 16. Gracias Víctor González (victor.gonzalez@geomati.co)Fernando González (fernando.gonzalez@geomati.co) http://www.gearscape.org