[QGIS Commit] r12118 - in docs/trunk/english_us/user_guide: . plugins_openstreetmap_images

svn_qgis at osgeo.org svn_qgis at osgeo.org
Sun Nov 15 06:15:33 EST 2009


Author: dassau
Date: 2009-11-15 06:15:32 -0500 (Sun, 15 Nov 2009)
New Revision: 12118

Added:
   docs/trunk/english_us/user_guide/plugins_openstreetmap_images/Makefile
   docs/trunk/english_us/user_guide/plugins_openstreetmap_images/osmweb.png
Modified:
   docs/trunk/english_us/user_guide/Makefile
   docs/trunk/english_us/user_guide/plugins_openstreetmap.tex
Log:
worked again on OSM plugin section


Modified: docs/trunk/english_us/user_guide/Makefile
===================================================================
--- docs/trunk/english_us/user_guide/Makefile	2009-11-15 10:11:31 UTC (rev 12117)
+++ docs/trunk/english_us/user_guide/Makefile	2009-11-15 11:15:32 UTC (rev 12118)
@@ -97,6 +97,7 @@
 	(cd ./working_with_projections_screenies && make)
 	(cd ./grass_integration_screenies && make)
 	(cd ./print_composer_screenies && make)
+	(cd ./plugins_openstreetmap_images && make)
 #	(cd ./help_and_support_screenies && make)
 	(cd ./operating_system_icons && make)
 
@@ -152,11 +153,12 @@
 	(cd ./print_composer_screenies && make clean)
 	(cd ./help_and_support_screenies && make clean)
 	(cd ./operating_system_icons && make clean)
+	(cd ./plugins_openstreetmap_images && make clean)
 	(cd ./plugins_diagram_overlay_images && make clean)
 	(cd ./plugins_oracle_raster_images && make clean)
 	for i in `find . -name *.eps` ; do rm -f $i ; done
 
-# Update icons from qgis source if necessary
+# Update icons from qgis source if necessary (needs an update 11/09 OD)
 updateicon:
 	(cd ./images && rm -f *.png *.eps && cp $(QGISPLUGINSOURCE)/../../images/themes/default/*.png .)
 	(cd ./plugins_add_wfs_layer_images && rm -f *.png *.eps && cp $(QGISPLUGINSOURCE)/wfs/*.png .)	
@@ -171,4 +173,5 @@
 	(cd ./plugins_quick_print_images && rm -f *.png *.eps && cp $(QGISPLUGINSOURCE)/quick_print/*.png .)
 	(cd ./plugins_spit_images && rm -f *.png *.eps && cp $(QGISPLUGINSOURCE)/spit/*.png .)
 	(cd ./plugins_python_images && rm -f *.png *.eps && cp $(QGISPLUGINSOURCE)/*.png .)
+	(cd ./plugins_openstreetmap_images && rm -f *.png *.eps && cp $(QGISPLUGINSOURCE)/*.png .)
 

Modified: docs/trunk/english_us/user_guide/plugins_openstreetmap.tex
===================================================================
--- docs/trunk/english_us/user_guide/plugins_openstreetmap.tex	2009-11-15 10:11:31 UTC (rev 12117)
+++ docs/trunk/english_us/user_guide/plugins_openstreetmap.tex	2009-11-15 11:15:32 UTC (rev 12118)
@@ -6,24 +6,24 @@
 % comment out the following line:
 % \updatedisclaimer
 
-In recent years OpenStreetMap project has gained popularity because in many
-countries there were no freely available digital roadmaps. Target of the OSM
-project is to create a free editable map of the world from GPS data, aerial
-photography or simply from local knowledge. To support this idea we decided
-to create a plugin for QuantumGIS software that enables its users to work
+In recent years the OpenStreetMap project has gained popularity because in 
+many countries no free geo data such as digital roadmaps are available. 
+Target of the OSM project is to create a free editable map of the world 
+from GPS data, aerial photography or simply from local knowledge. To 
+support this idea QGIS provides a plugin that enables its users to work
 with OSM data.
 
-The plugin is a part of Qgis-mapper project and provides all basic
-functionalities for OSM data manipulation, such as data loading, importing,
-saving, downloading, editing and uploading back to OpenStreetMap server.
-While implementing OSM plugin an inspiration was taken from existing OSM data
-editors. The purpose was to combine their functionalities to get the best
+The plugin provides all basic functionalities for OSM data manipulation, 
+such as data loading, importing, saving, downloading, editing and 
+uploading data back to the OpenStreetMap server. While implementing OSM 
+plugin an inspiration was taken from existing OSM data editors. The 
+purpose was to combine their functionalities to get the best
 possible result.
 
-The following two sections gives you brief introduction to principles of both
-aforementioned projects. If you are not interested in information on OSM and
-QGIS just skip both sections. Parts of the following few paragraphs are
-copied from the OpenStreetMap web site.
+The following subsection gives a brief introduction to principles of the OSM 
+project. If you are not interested in information on OSM just skip the next 
+section. Parts of the following paragraphs are copied from the 
+OpenStreetMap web site.
 
 \minisec{The OpenStreetMap project}
 
@@ -35,83 +35,99 @@
 rendered images and the vector dataset of OSM are available for download
 under a Creative Commons Attribution ShareAlike 2.0 licence.
 
-OpenStreetMap was inspired by sites such as Wikipedia - the map display
-features a prominent 'Edit' tab and a full revision history is maintained.
-Registered users can upload GPS track logs and edit the vector data using the
-given editing tools.
+\begin{figure}[ht]
+   \begin{center}
+   \caption{OpenStreetMap data in the web \nixcaption}\label{fig:osmweb}\smallskip
+   \includegraphics[clip=true, width=\textwidth]{osmweb}
+\end{center}
+\end{figure}
 
+OpenStreetMap was inspired by sites such as Wikipedia - the map display 
+(see Figure \ref{fig:osmweb}) features a prominent \tab{Edit} tab and a 
+full revision history is maintained. Registered users can upload GPS track 
+logs and edit the vector data using the given editing tools.
+
 OSM data primitive is an object class that can be stored via the API in the
-server. Three types of data primitives are supported: Node, Way and Relation.
-A node is a latitude/longitude pair. It is used as building block for other
-features and as features themselves (Points Of Interest) if they're tagged as
-required. A way is a list of at least two nodes that describe a linear
+server. Three supported types of data are: \textbf{Node}, \textbf{Way} and 
+\textbf{Relation}. 
+
+\begin{itemize}
+\item \textbf{A node} is a latitude/longitude pair of coordinates. It is 
+used as building a block for other features and a feature itself (Points Of 
+Interest) if they are tagged as required. 
+\item \textbf{A way} is a list of at least two nodes that describe a linear
 feature such as a street, or similar. Nodes can be members of multiple ways.
-A relation is a group of zero or more primitives with associated roles. It is
-used to specify relationships between objects, and may also model an abstract
-object. 
+\item \textbf{A relation} is a group of zero or more primitives with 
+associated roles. It is used to specify relationships between objects, 
+and may also model an abstract object. 
+\end{itemize}
 
-Several different logical things in common map (like 'Point Of Interest',
-'Street', 'Tram Line', 'Bus Stop' etc.) are defined out of these primitives
-by specifying appropriate "Map Features". Map  features are well-known in OSM
-community and are stored as pairs of a key and a value - tags. OSM is
-usually distibuted in XML format. XML payload is used for communication with
-OSM server also.
+Several different logical features in a common map ('Point Of Interest',
+'Street', 'Tram Line', 'Bus Stop' etc.) are defined by these primitives. 
+Map features are well-known in the OSM community and are stored as tags, 
+based of a key and a value. OSM is usually distibuted in XML format. XML 
+payload is used for the communication with the OSM server as well.
 
 For more information visit the project website at:
 \url{http://www.openstreetmap.org}.
 
 \subsubsection{QGIS - OSM Connection}\label{qgis-osm-connection}
 
-There were some questions while designing OSM and QGIS connection. In
-this guide first of all we show the way how OSM data primitives are displayed
-in QGIS vector layers.
+The first part of this subsection describes the way how OSM data primitives 
+are displayed in QGIS vector layers.
 
-OSM data consists of Nodes, Ways and Relations. In our design they are
-displayed in three QGIS layers: Point layer, Line layer and Polygon layer.
-It's not possible to remove any of these layers and work with the other ones.
-Point layer displays all features of type Node that stands alone. That means
-that only Nodes that are not included in any Way belongs to the Point layer.
-Line layer displays those OSM features of type Way that are not closed. That
-means that none of these Ways starts and ends with the same Node.
-Polygon layer displayes all Ways that are not included in Line layer.
+As written above, OSM data consist of Nodes, Ways and Relations. In QGIS they 
+are displayed in three diffrent layer types: Point layer, Line layer and 
+Polygon layer. It's not possible to remove any of these layers and work with 
+the other ones.
 
+\begin{itemize}
+\item \textbf{Point layer} displays all features of type Node that stands 
+alone. That means that only Nodes that are not included in any Way belongs 
+to the Point layer.
+\item \textbf{Line layer} displays those OSM features of type Way that are 
+not closed. That means that none of these Ways starts and ends with the 
+same Node.
+\item \textbf{Polygon layer} displayes all Ways that are not included in 
+Line layer.
+\end{itemize}
+
 OpenStreetMap has one more data primitive except for the three mentioned
 above - Relation. In our design there is purposely no vector layer to display
 Relations. Relation defines relation between any number of data primitives.
 After Point, Line or Polygon is identified on map, plugin shows a list of all
 relations the identified feature is part of.
 
-A problem was discovered when designing interconnection between OSM data and
-standard QGIS editing tools. Those tools are made to edit single vector layer
-at a time, no matter of what feature types it displays. It means that if OSM
-data are loaded to QGIS through the plugin, you could (theoretically) edit
-Point layer, Line layer or Polygon layer with these standard tools
-separately.
+Challenging was designing the interconnection between OSM data and the 
+standard QGIS editing tools. These tools are made to edit a single vector 
+layer at a time, no matter of what feature types it displays. It means 
+that if OSM data are loaded to QGIS through the plugin, you could 
+(theoretically) edit Point layer, Line layer or Polygon layer with these 
+standard tools separately.
 
 The problem is that Line layer consists of two different types of OSM
-features - Ways and Nodes. Why? Because in OSM format Way is composed of
-Nodes. If you start editing of Line layer and change the shape of some line,
-your action must affect not only the OSM Way but also OSM Nodes that are part
-of it. But QGIS standard editing cannot tell the OSM Provider which members
+features - Ways and Nodes. Why? Because in OSM format a \texttt{Way} is 
+composed of Nodes. If you start editing a Line layer and change the 
+shape of some line, your action must affect not only the OSM Way but 
+also the OSM Nodes that are part of it. \\
+QGIS standard editing tools cannot tell the OSM Provider which members
 of which line has changed and how. It can tell only what's the new geometry
-of which line and that's not enough to propagate changes to OSM database
-correctly. The Line layer doesn't even know identifiers of line members.
+of which line, and that's not enough to propagate changes to OSM database
+correctly. The Line layer does also not know identifiers of line members.
 The same problem occurs when you try to edit the Polygon layer.
 
-For this reason plugin has its own simple tools for editing OSM data. While
-they are used plugin can react on every moving, removing or adding of
-line/polygon member and so it can change OSM data correctly. Plugin editing
-set consists of tools for Point, Line, Polygon and Relation creation,
-deletion and moving.
+For this reason, the OSM plugin need its own simple tools for editing 
+OSM data. While they are used, the OSM layers can be changed correctly. 
+The Plugin editing set consists of tools for Point, Line, Polygon and 
+Relation creation, deletion and moving.
 
-To create the real connection between OSM plugin and standard editing tools,
-changes in QuantumGIS core code would be necessary.
+\textbf{Note:} To create a connection between the OSM plugin and standard 
+editing tools, changes in QuantumGIS core code would be necessary.
 
 \subsubsection{Installation}
 
-Plugin is used inside QuantumGIS environment, so obviously it's necessary to
-install QGIS first. After that you must build some parts of the plugin. Here
-are the steps required to use OpenStreetMap plugin:
+The OpenStreetMap plugin is a core plugin inside the QGIS environment. To 
+use it, some steps have to be followed beforehand:
 
 \begin{enumerate}
 \item You have to have python support enabled in QuantumGIS
@@ -121,8 +137,9 @@
 \item make 
 \end{enumerate}
 
-Now you should be able to use the plugin by starting QGIS and enabling it in
-the Plugin manager. Just search for the name: "OpenStreetMap plugin". 
+Now you should be able to use the plugin by starting QGIS and enabling the 
+'OpenStreetMap plugin' in the Plugin Manager as described in section 
+\ref{sec:load_core_plugin}). 
 
 \subsubsection{Basic user interface}
 

Added: docs/trunk/english_us/user_guide/plugins_openstreetmap_images/Makefile
===================================================================
--- docs/trunk/english_us/user_guide/plugins_openstreetmap_images/Makefile	                        (rev 0)
+++ docs/trunk/english_us/user_guide/plugins_openstreetmap_images/Makefile	2009-11-15 11:15:32 UTC (rev 12118)
@@ -0,0 +1,41 @@
+# makefile to convert figures into eps format for the book
+
+# Comments from Michel Wurtz:
+# You will notice that the list given is the list of targets.  "all" just
+# refer to this list.  The most important rule is the next rule, that give
+# the generic rule for transforming a .fig into a .eps file.  Note the use
+# of % (define the couple target:source) and the use of
+# $< (source postfix, here .fig) and $@ (target postfix, here .eps)
+
+# with .eps extension:
+# JPG=qgis_icon_new_verylarge.eps\
+#	nextfile.eps
+
+PNG=osmweb.eps\
+	
+	
+##### TARGETS #####
+
+all: $(PNG) $(JPG)
+	if [ ! -d ../finalpix/ ]; then mkdir ../finalpix; fi
+	#do not use move (mv):
+	cp *.eps ../finalpix/
+
+#$(EPS):	%.eps: %.fig
+#	fig2dev -L eps $< > $@
+
+#$(FIGPNG): %.png: %.fig
+#	fig2dev -L png -m 2 $< > $@
+
+$(PNG): %.eps: %.png
+	# Workaround for PDF
+	#convert -geometry 300x -depth 1 $< $@
+	convert $< $@ 
+
+$(JPG): %.eps: %.jpg
+	# Workaround for PDF
+	#convert -geometry 300x -depth 1 $< $@
+	convert $< $@
+
+clean:
+	rm -f *.bak *~ *.pdf $(PNG) $(JPG)

Added: docs/trunk/english_us/user_guide/plugins_openstreetmap_images/osmweb.png
===================================================================
(Binary files differ)


Property changes on: docs/trunk/english_us/user_guide/plugins_openstreetmap_images/osmweb.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream



More information about the QGIS-commit mailing list