Difference between revisions of "How to Edit"

From OSGeo
Jump to navigation Jump to search
m (rv)
(New rules for the Topology Framework in gvSIG Desktop)
Line 1: Line 1:
== Link to other pages inside this Wiki ==
+
== Project ==
To add an internal link to a new page simply enclose a word, phrase or sentence in double square brackets:  
+
Title: New rules for the Topology Framework in gvSIG Desktop.
<nowiki>[[This will be the new Page]]</nowiki>
 
After saving the page you can click on the now red words ([[This will be the new Page]]) and the new page will open up in edit mode. Write down what you have to say and save the new page. Done.  
 
  
== Link to External URL ==
+
Student: Mauro Carlevaro.
Just enter the URL directly: http://www.osgeo.org. If it is ugly or long append a blank and add a more descriptive word, phrase or sentence. Then enclosing it with '''single''' square brackets:
 
<nowiki>[http://logs.qgis.org/geofoundation/%23geofoundation.2006-02-04.log Transcription of the IRC]</nowiki>
 
Only the text will show up: [http://logs.qgis.org/geofoundation/%23geofoundation.2006-02-04.log Transcription of the IRC]
 
  
= Titles =
+
Mentors: Óscar Martínez, Mario Carrera Rodriguez, Alfred de Jager and Francisco Peñarrubia.
Enclose titles with equal signs, 1 for first level (=), two for second level (==), etc... Titles show up in the Table of Contents at the top of the page and help navigation in larger pages.  
 
  
== Second Level Title ==
+
Repository: [https://github.com/Maureque/gvsig-gsoc2019-topology Link to GitHub repository].
We will probably not need more fancy formatting at this stage. Maybe you want to add a bulleted list by starting the line with an asterisk '*' or a numbered list by starting with hashes '#'.
 
* bulleted list
 
  
# automatically
+
== Brief Description ==
# numbered list
+
A new topology toolbox. This tool will provide a group of integrity rules that will check the validation of the geometries relationship in the data. A new topology data model can be created for each project. This toolbox provide a new set of tools to navigate, find and fix validation errors different from each topology rule. Right now, there are just a few topology rules implemented with a limited actions. This project will analize, implement and optimize a new set of rules that will be incorporated to this framework. This tools can be created in Java or in Jython through the Scripting composer tool.
# good to easily reorder items
 
  
=== Third Level Title ===
+
== State of the Project Before GSoC.==
For more help on formatting refer to the [http://en.wikipedia.org/wiki/Wikipedia:How_to_edit_a_page Online Wikipedia Help].
+
Only a few topology rules have been implemented until now, the most of them are still pending to be developed.
  
= Discussion on the Talk Page =
+
== Deliverables==
Each Wiki page has a talk page that can be used to comfortably discuss what is going on without directly messing up what's already there.
+
A new set of topology rules for vector datasets validation/fixing, that will improve and expand the existing one:
 +
* Must be coincident with.
 +
* Must be disjoint.
 +
* Must be covered by endpoint of.
 +
* Points must be covered by line.
 +
* Must be properly inside polygons (PointMustBeProperlyInsidePolygonRule)
 +
* Must be covered by boundary of.
 +
* Must not overlap (Must not overlap polygon).
 +
* Must not have gaps.
 +
* Contains point.
 +
* Contains one point.
 +
* Must not overlap with.
 +
* Must be covered by.
 +
 
 +
== Weekly Reports ==
 +
 
 +
=== Third Evaluation Period (July 22nd - August 18th)===
 +
* Week 12 (August 12th - August 18th) 
 +
  - Make further changes in the code to improve the functionality.
 +
  - Improve existing documentation.
 +
  - Weekly reports.
 +
* Week 11 (August 5th - August 11th)
 +
  - Topological rule: Must be covered by.
 +
  - Make further changes in the code to improve the functionality.
 +
  - Improve existing documentation.
 +
  - Weekly reports.
 +
* Week 10 (July 29th - August 4th)
 +
  - Topological rule: Must not overlap with.
 +
  - Test, debug and improve the developed code.
 +
  - Generate documentation specially oriented to users without any programming knowledge.
 +
  - Weekly reports.
 +
* Week 9 (July 22nd - July 28th)
 +
  - Topological rule: Contains point.
 +
  - Topological rule: Contains one point.
 +
  - Test, debug and improve the developed code.
 +
  - Weekly reports.
 +
 
 +
=== July 22, 2019 (beginning)- July 26, 2019 (deadline).===
 +
* Submit evaluations.
 +
 
 +
=== Second Evaluation Period (June 24th - July 21st)===
 +
* Week 8 (July 15th - July 21st)
 +
  - Topological rule: - Must not have gaps.
 +
  - Test and debug the developed code.
 +
  - Test and document existing code more thoroughly.
 +
  - Weekly reports.
 +
* Week 7 (July 8th - July 14th)
 +
  - Topological rule: - Must not overlap (Must not overlap polygon).
 +
  - Optimize algorithms.
 +
  - Test and debug the developed code.
 +
  - Test and document existing code more thoroughly.
 +
  - Weekly reports.
 +
* Week 6 (July 1st - July 7th)
 +
  - Topological rule: Must be covered by boundary of.
 +
  - Optimize algorithms.
 +
  - Weekly reports.
 +
* Week 5 (June 24th - June 30th)
 +
  - Topological rule: Must be properly inside polygons (PointMustBeProperlyInsidePolygonRule)
 +
 
 +
=== June 24, 2019 (beginning)- June 28, 2019 (deadline).===
 +
* Submit evaluations.
 +
 
 +
=== First Evaluation Period (May 27th - June 23rd)===
 +
* Week 4 (June 17th - June 23rd)
 +
  - Topological rule: Must be covered by endpoint of.
 +
  - Topological rule: Points must be covered by line.
 +
  - Test and document existing code more thoroughly.
 +
  - Weekly reports.
 +
* Week 3 (June 10th - June 16th)
 +
  - Topological rule: Must be disjoint.
 +
  - Test and debug the developed code.
 +
  - Test and document existing code more thoroughly.
 +
  - Weekly reports.
 +
* Week 2 (June 3nd - June 9th)
 +
  - Topological rule: Must be coincident with.
 +
  - Test and debug the developed code.
 +
  - Weekly reports.
 +
* Week 1 (May 27th - June 2nd)
 +
  - Topological rule: Must be coincident with.
 +
  - Define all the required, all the corresponding Classes and Objects.
 +
  - Define the interactions with the database.
 +
  - Weekly reports.
 +
 
 +
=== Community Bonding Period (May 6th - May 27th)===
 +
* Familiarize more deeply with the code, with the mentors of the project and with the documentation.
 +
* Study the Topology Framework API.
 +
* Study the algorithm for a correct implementation according to the established rules.
 +
* Set up the development environment.
 +
* Interact with mentors, introduce myself to the community and actively get involved in the discussion.
 +
* Set up the wiki page to keep track of weekly progress.
 +
* Introduce myself and the project on OSGeo's SOC mailing list.
 +
* Improve in the creation of scripts
 +
 
 +
=== Pre-Bonding Period (April 9th - May 6th)===
 +
* Set up working environment, choose tools to be used in the project and set up repository.
 +
* Familiarize more deeply with the community.
 +
* Review and learn as much as possible about Python, Jython and Java.
 +
* Test the topology plugin and study the code of some rules that are already made.
 +
 
 +
== References==
 +
 
 +
== Student's Biography ==
 +
 
 +
''Country:'' Uruguay
 +
 
 +
''School and Degree:''
 +
* Technological University (UTEC, Fray Bentos, Uruguay), Student of Bachelor of IT (2019-2022).
 +
* University of Engineering (ORT, Montevideo, Uruguay), Programmer Analyst (2014-2018).
 +
* University of Engineering (UdelaR, Montevideo, Uruguay), Cartographic Technician (2013-2016).
 +
 
 +
=== Computing experience ===
 +
 
 +
I have been working as a web developer and implementing geographic information systems. The technologies that i work with daily are: Java, Python, MySQL, PostgreSQL/PostGIS, Apache Tomcat and GeoServer.
 +
 
 +
=== GIS experience as a user ===
 +
 
 +
I have experience using gvSIG and QGIS. Thematic cartography course (Uruguay edition), dictated by The National Geographic Institute and the National Geographic Information Center of Spain. 40 hours duration.
 +
Participation in the webinar “gvSIG applied to wildlife and protected natural spaces", on October 14, 2014, made by MundoGEO and Asociación gvSIG, with 60 minutes duration.
 +
 
 +
=== GIS programming ===
 +
* Colombana, Carlos. 2018. ''5th gvSIG Uruguay Conference. Material of the lecture and workshop of the workshop "Scripting: Exprimiendo / Extendiendo gvSIG"''. Link: http://www.gvsig.com/es/eventos/jornadas-uruguay/2018/comunicaciones/-/asset_publisher/zAf8UO2Aurwr/content/taller-2-scripting-exprimiendo-extendiendo-gvsig?
 +
* Scripting in gvSIG. I learned about scripting studying the material of the “Introduction to Scripting in gvSIG 2.1” (2014 ed.) MOOC, this course was offered by the gvSIG Association. This course was useful for me as started point to continue practicing.
 +
 
 +
[[Category:Google Summer of Code]]

Revision as of 16:30, 23 May 2019

Project

Title: New rules for the Topology Framework in gvSIG Desktop.

Student: Mauro Carlevaro.

Mentors: Óscar Martínez, Mario Carrera Rodriguez, Alfred de Jager and Francisco Peñarrubia.

Repository: Link to GitHub repository.

Brief Description

A new topology toolbox. This tool will provide a group of integrity rules that will check the validation of the geometries relationship in the data. A new topology data model can be created for each project. This toolbox provide a new set of tools to navigate, find and fix validation errors different from each topology rule. Right now, there are just a few topology rules implemented with a limited actions. This project will analize, implement and optimize a new set of rules that will be incorporated to this framework. This tools can be created in Java or in Jython through the Scripting composer tool.

State of the Project Before GSoC.

Only a few topology rules have been implemented until now, the most of them are still pending to be developed.

Deliverables

A new set of topology rules for vector datasets validation/fixing, that will improve and expand the existing one:

  • Must be coincident with.
  • Must be disjoint.
  • Must be covered by endpoint of.
  • Points must be covered by line.
  • Must be properly inside polygons (PointMustBeProperlyInsidePolygonRule)
  • Must be covered by boundary of.
  • Must not overlap (Must not overlap polygon).
  • Must not have gaps.
  • Contains point.
  • Contains one point.
  • Must not overlap with.
  • Must be covered by.

Weekly Reports

Third Evaluation Period (July 22nd - August 18th)

  • Week 12 (August 12th - August 18th)
 - Make further changes in the code to improve the functionality.
 - Improve existing documentation.
 - Weekly reports.
  • Week 11 (August 5th - August 11th)
 - Topological rule: Must be covered by.
 - Make further changes in the code to improve the functionality.
 - Improve existing documentation.
 - Weekly reports.
  • Week 10 (July 29th - August 4th)
 - Topological rule: Must not overlap with.
 - Test, debug and improve the developed code.
 - Generate documentation specially oriented to users without any programming knowledge. 
 - Weekly reports.
  • Week 9 (July 22nd - July 28th)
 - Topological rule: Contains point.
 - Topological rule: Contains one point.
 - Test, debug and improve the developed code.
 - Weekly reports.

July 22, 2019 (beginning)- July 26, 2019 (deadline).

  • Submit evaluations.

Second Evaluation Period (June 24th - July 21st)

  • Week 8 (July 15th - July 21st)
 - Topological rule: - Must not have gaps.
 - Test and debug the developed code.
 - Test and document existing code more thoroughly.
 - Weekly reports.
  • Week 7 (July 8th - July 14th)
 - Topological rule: - Must not overlap (Must not overlap polygon).
 - Optimize algorithms.
 - Test and debug the developed code.
 - Test and document existing code more thoroughly.
 - Weekly reports.
  • Week 6 (July 1st - July 7th)
 - Topological rule: Must be covered by boundary of.
 - Optimize algorithms.
 - Weekly reports.
  • Week 5 (June 24th - June 30th)
 - Topological rule: Must be properly inside polygons (PointMustBeProperlyInsidePolygonRule)

June 24, 2019 (beginning)- June 28, 2019 (deadline).

  • Submit evaluations.

First Evaluation Period (May 27th - June 23rd)

  • Week 4 (June 17th - June 23rd)
 - Topological rule: Must be covered by endpoint of.
 - Topological rule: Points must be covered by line.
 - Test and document existing code more thoroughly.
 - Weekly reports.
  • Week 3 (June 10th - June 16th)
 - Topological rule: Must be disjoint.
 - Test and debug the developed code. 
 - Test and document existing code more thoroughly.
 - Weekly reports.
  • Week 2 (June 3nd - June 9th)
 - Topological rule: Must be coincident with.
 - Test and debug the developed code. 
 - Weekly reports.
  • Week 1 (May 27th - June 2nd)
 - Topological rule: Must be coincident with.
 - Define all the required, all the corresponding Classes and Objects.
 - Define the interactions with the database.
 - Weekly reports.

Community Bonding Period (May 6th - May 27th)

  • Familiarize more deeply with the code, with the mentors of the project and with the documentation.
  • Study the Topology Framework API.
  • Study the algorithm for a correct implementation according to the established rules.
  • Set up the development environment.
  • Interact with mentors, introduce myself to the community and actively get involved in the discussion.
  • Set up the wiki page to keep track of weekly progress.
  • Introduce myself and the project on OSGeo's SOC mailing list.
  • Improve in the creation of scripts

Pre-Bonding Period (April 9th - May 6th)

  • Set up working environment, choose tools to be used in the project and set up repository.
  • Familiarize more deeply with the community.
  • Review and learn as much as possible about Python, Jython and Java.
  • Test the topology plugin and study the code of some rules that are already made.

References

Student's Biography

Country: Uruguay

School and Degree:

  • Technological University (UTEC, Fray Bentos, Uruguay), Student of Bachelor of IT (2019-2022).
  • University of Engineering (ORT, Montevideo, Uruguay), Programmer Analyst (2014-2018).
  • University of Engineering (UdelaR, Montevideo, Uruguay), Cartographic Technician (2013-2016).

Computing experience

I have been working as a web developer and implementing geographic information systems. The technologies that i work with daily are: Java, Python, MySQL, PostgreSQL/PostGIS, Apache Tomcat and GeoServer.

GIS experience as a user

I have experience using gvSIG and QGIS. Thematic cartography course (Uruguay edition), dictated by The National Geographic Institute and the National Geographic Information Center of Spain. 40 hours duration. Participation in the webinar “gvSIG applied to wildlife and protected natural spaces", on October 14, 2014, made by MundoGEO and Asociación gvSIG, with 60 minutes duration.

GIS programming