Changes

Jump to: navigation, search

GeoView

6,391 bytes added, 02:02, 8 July 2021
no edit summary
Work in progress{{man warn|The GeoView addon was originally integrated into earlier Gramps versions than Gramps 3.3 then I created a new map renderer since some month now. go there : [[GeoViewHelp]]|The newer [[Geography]] renderer based on OsmGpsMap was integrated into Gramps 3.3, see the [[User_manual|user manual]] for further information <br>[[Gramps_{{man version}}_Wiki_Manual_-_Categories#Geography_Category]]}}
'''All we need to understand and test {{man warn|Instructions for the older GeoView.'''addon that was based on webkit/gtkmozembed}}
'''All we need to understand GeoView.'''
== Why GeoView ? ==
I would like to see my ancestors all around the world on a map. And if possible, I would like to see them moving during time periods.
 
== The future ==
 
For approximatively three years, geoview is based on html technology using webkit or gtkmozembed.
We have some problems depending on the distribution, the webkit version, ... : crashes, messages on console, ...
 
The mecanism for rendering the map is asynchronous and difficult to manage : the renderer and gramps are two different things which don't easily communicate.
 
So, I am working on a new map renderer since some month now.
 
If you are impatient, go there : [[Geography]]
 
==GeoView is divided in two parts : ==
This module is now in two parts in 3.2. I'll try to explain how to install them and how to use them. You have two new views named Geography (geoviev) and Web (htmlrenderer).
=== The html rendering engine ===
This module is called htmlrenderer. We use it when we use the Web view.
How to do this easily and with the minimum of software to install ?
==== The html kits ====
The Html rendering machine is used to show remote and local "urls" inside of GRAMPS. We need to be connected to the network. You probably also need a broadband connection to have a smooth result. Try eg Google maps in your browser to see if your internet connection is sufficiently fast.
 
GRAMPS can use two different kind of engines, webkit or gtkmozembed, to view HTML pages. If they are not installed, you'll never see [[Geography]] and the Web appearing among your views. If you are looking on how to install these, see [[GeoView#How_to_get_the_HTML_kits_.3F| below]]
 
If both two kits are installed, webkit will be used.
===== WebKit =====
Be aware, WebKit is always in development.
 
More and more projects are integrating webkit ...
Eg, epiphany states:
*http://blogs.gnome.org/epiphany/2008/04/01/the-future-of-epiphany/
 
WebKit uses the libsoup library for the proxy.
===== Gecko ( GtkMozEmbed ) =====
What will gtkmozembed be in the future ?
 
The embedding API of Gecko (GtkMozEmbed) has been unmaintained and stagnant for a long time.
 
GtkMozEmbed is proxy aware. I implemented this and I use the http_proxy environment variable.
Authentication is allowed. The http_proxy format used is :
 
''http://[user:[email protected]]proxy:port/''
==== The proxies ====
Most people don't need a proxy. The majority of us are connected directly to internet. In this case, forget all this.
 
You need a proxy only if you installed one or if you depend on some internet providers.
 
You need to set the environment variable http_proxy or use your desktop proxy configuration.
 
==== How to get the HTML kits ? ====
It depends on the distribution you're working on ! They are listed in reverse order.
 
python-webkitgtk is also called pywebkitgtk in some distributions.
 
===== debian =====
====== webkit ======
''aptitude install python-webkit''
====== gecko ======
''aptitude install python-gnome2-extras''
or
''aptitude install python-gtkmozembed''
 
===== fedora =====
====== webkit ======
You must use : WebKit-gtk
 
''yum install WebKit-gtk pywebkitgtk''
 
====== gecko ======
 
===== MAC/OS X =====
====== webkit ======
WebKit is the standard renderer on OSX, but WebKitGtk doesn't work with the installed WebKit framework. You must build WebKitGtk or obtain it via Fink or MacPorts. Gtk-OSX provides a patch for building WebKitGtk with quartz. Once WebKitGtk is built or installed, PyWebKitGtk installs and works well.
====== gecko ======
 
===== mandriva =====
====== webkit ======
for 2009.0 and 2009.1:
Use the package manager and install python-webkitgtk or :
''urpmi python-webkitgtk''
====== gecko ======
Seems not to work. Causes segmentation fault.
 
===== suse =====
====== webkit ======
* libwebkit-1_0
 
I didn't test GeoView on suse or opensuse. I need some feedback.
 
I found on example in :
ftp5.gwdg.de/pub/opensuse/repositories/home:/bmotmans/openSUSE_<VERSION>/<ARCH>/
 
Replace <VERSION> by the fedora version you use. ie : Factory, 10.3, 1.0, ...
GeoView is one solutionReplace <ARCH> by i586, x86_64, ... * pywebkit
== The html kits ==We can use webkit or gtkmozembed to view html pageshttp://packages.opensuse-community. If no one is installed, you'll never see GeoVieworg/index.jsp?searchTerm=pywebkit
If the two kits are installed, * pyton-webkit will be used.
For web browsing, we need to be connected to On OpenSUSE 11.3 that is the networkappropriate name.
Even if you have a html kit installed, you can always say : I don't mind ! I don't want to see the HtmlView.====== gecko ======
For this, you can disallow Geoview in the Internet Maps preferences tab.===== ubuntu =========== webkit ======
=== WebKit ===It ''aptitude install python-webkit''s the future. Be aware, WebKit is always in development.
More and more projects are integrating webkit ..====== gecko ======If you want gtkmozembed on ubuntu, you must install : python-gnome2-extras or python-gtkmozembed depending on you distrib version.
The reason why for epiphany : ''aptitude install python-gnome2-extras'' or ''aptitude install python-gtkmozembed''
http://blogs.gnome.org/epiphany/2008/04/01/the-future-of-epiphany===== windows XP/Vista =========== webkit ======
==== Proxies ====* WebKitGTK is the port of the portable web rendering engine WebKit uses to the libsoup libraryGTK+ platform on Windows. This zip file contains webkitgtk itself and all needed dynamic link libraryes (DLL). You will need the environment variable http_proxy[http://www.7-zip.org 7zip] to extract its contents ''This file is highly experimental and all functions may not work as expected!''** [http://www.gramps-project.org/wiki/images/d/d2/WebKitGTK-1.1.16.zip WebKitGTK-1.1.16.zip]
=== Gecko * Update to version 1.1.23 ( GtkMozEmbed binary and devel files only) ===What will gtkmozembed be in the future ?** [http://www.gramps-project.org/wiki/images/d/db/WebKitGTK-1.1.23-win32.zip WebKitGTK-1.1.23]
The embedding API of Gecko (GtkMozEmbed) has been unmaintained and stagnant for a long time* [http://code.google.com/p/pywebkitgtk PyWebKitGtk] provide Python bindings to WebKitGTK==== Proxies ====GtkMozEmbed is proxy aware** [http://www.gramps-project.org/wiki/images/4/4d/PyWebKitGTK-1.1.7.win32-py2.6.zip PyWebKitGTK-1.1.7. I implement this and I use the http_proxy environment variablewin32-py2.Authentication is allowed6. The http_proxy format used is :msi]
http://[user:[email protected][All In One Gramps Software Bundle for Windows|Gramps AIO package]]proxy:port/contains WebKitGTK-1.2.5 and PyWebKitGTK-1.1.8
To confirm : We need to use gnome-control-center to set ===== ... =====Your distributions are welcomed ...=== The Geographic part ===This module is called geoview. It depends on the proxyhtmlrenderer module.== The maps providers === In GRAMPS 3.1.x =====There If you really are a lot of providersin 3.1.2 and greater, you only have the geoview module. Some are freeThe htmlrenderer is included in geoview.For installing the html renderer, you can see the documentation above.
By default, It is present as an experimental view you can activate. For GeoView to work you need to:# change the GRAMPS configuration file to list the provider is OSM view in the list of views# install the required backend so you can see webpages inside of GRAMPS.# set the GeoView Preferences# use the appropriate latidude and longitude format in your data ( OpenStreetMap Note: the [[Place completion tool]] can look up latitude and longitude of the places defined in GRAMPS.).
This provider depends on the community The first is simple to achieve. Start a text editor and go to your gramps home directory, and open the maps are very light depending on keys.ini file. Scoll down to the country. Neverthelessinterface section, and look for the community made an extraordinary job since ''data-views'' variable. On a few month. We can say OpenStreetMap clean install of GRAMPS, this variable is and will be normally: data-views=GrampletView,PersonView,RelationshipView,FamilyListView,PedigreeView,EventView,SourceView,PlaceView,MediaView,RepositoryView,NoteViewTo add GeoView, just add it to the map for gramps.back, so your configuration reads: data-views=GrampletView,PersonView,RelationshipView,FamilyListView,PedigreeView,EventView,SourceView,PlaceView,MediaView,RepositoryView,NoteView,GeoView
Openlayers is free too and uses by default OSM map.A lot of private or non free maps depends on OpenLayersThat's it.
The most interesting is To install the IGN ( Institut Géographique National Français )backend, scroll down to [http://www[GeoView#How_to_get_the_HTML_kits_.geoportail.fr/visu2D.do?cg=djoxLjEqYzptZXRyb3BvbGUqY3Y6MS4wKnZ2OjEuMSp4eToyLjM0NTI3NDM5ODQwMTE4ODN8NDguODYwODMyNTU3MTczODgqczoxMCpwdjoxLjAqcDpkZWNvdXZlcnRlKmw6UGhvdG98fHwsU2NhbnwxfDEwMHwsQ2Fzc2luaXwxfHw%3D3F|the installation section]] which offers an old map of France ( about 1780 ) but this provider needs a key. I'll speek about keys later.
You have GooglemapsFinally, Yahoo! maps, Microsoft maps, ...you need to set the Geoview Preferences:
== mapstraction ==Like you can see, it's impossible to implement all providers maps[[Image:GeoViewPreferences. For this reason, some people created an api over all these providers apipng]].
With only a few modification, you can use the Openlayers is free too and uses by default OSM map you want. And better! you can switch between the A lot of private or non free maps keeping the zoom and the centered positiondepends on OpenLayers.
ItThe most interesting is the IGN ( Institut Géographique National Français )[http://www.geoportail.fr/visu2D.do?cg=djoxLjEqYzptZXRyb3BvbGUqY3Y6MS4wKnZ2OjEuMSp4eToyLjM0NTI3NDM5ODQwMTE4ODN8NDguODYwODMyNTU3MTczODgqczoxMCpwdjoxLjAqcDpkZWNvdXZlcnRlKmw6UGhvdG98fHwsU2NhbnwxfDEwMHwsQ2Fzc2luaXwxfHw%3D] which offers an old map of France ( about 1780 ) but this provider needs a key. I's also in the development phase and is sometimes buggyll speak about keys later.
For performances issuesThen you have Googlemaps, I can confirm it takes approximatively 30 secondes Yahoo! maps, Microsoft maps, ... ===== In GRAMPS 3.2 =====You don't need to view 1000 markers for openstreetmap or googleset the providers.If you have 2000 markers, this time The first one is always OpenStreetMap and the alternate is about 2 times 30 secondesGoogleMaps.
For this, I limit one html page to 200 markers. I ==== Supported longitude/latitude formats ====When you have more than this limitcreate/modify a place, I create the necessary pages to see all your markers.possible formats used for longitude/latitude are:
During testing with a places database for France ( > 35000 markers ), I set the limit to 20 markers which permit to create 1760 pages without problems. So we can say we have an unlimited number of markers. Only the file system space will limit us.* Floating point
== The provider Key ==Gramps is not a web sitee. Keys are only for web sitesg.In GeoView, I use a specific functionality : We are working on local file instead of url, so we don't need a key+12.some providers like IGN needs key even in this case. So I can't use them. Why ?#Too complex for final user's.#We need a key by providerIn these case, I hope you understand the choice is limited even is mapstraction can do more.=== Constraint ===We have no key, so we have a restricted access : About 10,000 to 15,000 requests by IP per day depending on the provider0154 -124.3647
What is a request ? As I understand with the IGN ( OpenLayers ), a request is a tile ( an image ). You need several tiles for a view.* Classic
I think it is sufficient for the lambda genealogiste.g. 50°52'21.92"N 124°52'21.92"E
== The proxies ==degree symbol can be either UTF-8 code c2b00a, UTF-8 code c2ba0a or the hash (#) character.Everybody doesnThe seconds symbol can be either one double quote (") character or two single quote ('t need a proxy. The majority of us are connected directly to internet. In this case, forget all this) characters.
You need a proxy only if you installed one or if you depend on some internet providers.* Colon
== How to get the html kits ? ==It depends on the distribution you're working on ! They are listed in reverse ordere.g. -50:52:21.92 124:52:21.92
python-webkitgtk is also called pywebkitgtk=== ubuntu ======= webkit ====You needs libwebkit and python-webkitgtk.* Modified GEDCOM
Add to the /etc/apt/sourcese.list :g. 12.0154N 124.3647E
# for python-webkitgtk==== The maps providers ==== deb http://ppaThere are a lot of providers.launchpadSome are free.net/gwibber-team/ubuntu hardy main # for libwebkit deb http://ppa.launchpad.net/webkit-team/ubuntu hardy main
It's from nightly buildsBy default, so the provider GRAMPS uses is OSM ( OpenStreetMap ). As a free project, we find it can crashour duty to first and foremost support another free initiative.
If you have some crash OpenStreetMap depends on the community and want to install the working packagemaps are very light depending on the country. Nevertheless, the community made an extraordinary job and the quality is improving rapidly. And you can get libwebkitfrom [http://openstreetbugs.appspot.com/ help make it better]! We can say OpenStreetMap is and will be the following url :map GRAMPS uses per default.
https://edge.launchpad.net/~stemp/+archive==== gecko mapstraction ====If Like you want gtkmozembed on ubuntucan see, it's impossible to implement all providers maps. For this reason, you must install : python-gnome2-extrassome people created an api over all these providers api.
It's stable but install many gnome packages even if With only a few modification, you can use the map you want. And better! you are on a kde based distributioncan switch between the maps keeping the zoom and the centered position.
PleaseFor performances issues, don't troll !I can confirm it takes approximately 30 seconds to view 1000 markers for openstreetmap or google.=== suse ======= webkit ====* libwebkit-1_0If you have 2000 markers, this time is about 2 times 30 seconds.
For this, I didn't test GeoView on suse or opensuselimit one HTML page to 200 markers. I need some feedbackIf you have more than this limit, GRAMPS creates the necessary pages to see all your markers.
During testing with a places database for France ( > 35000 markers ), I found on example in : ftp5set the limit to 20 markers which permit to create 1760 pages without problems. So we can say we have an unlimited number of markers.gwdgOnly the file system space will limit us.de/pub/opensuse/repositories/home:/bmotmans/openSUSE_<VERSION>/<ARCH>/
Replace <VERSION> by the fedora version you use==== The provider Key ====GRAMPS is not a web site. ie : Factory, 10 Keys are mostly only for web sites.3In GeoView, 1.0I use a specific functionality : we are working on a local file instead of an url, ..so we normally don't need a key.
Replace <ARCH> by i586, x86_64However, some providers like IGN need a key even in those cases.So we can't use them.Why ?#To require a key would be too complex for the normal GRAMPS user#We need a key from the providerWe hope it is understood that our choice of maps is limited even if mapstraction can do more.
* pywebkit===== Constraint =====We have no key, so we have a restricted access : About 10,000 to 15,000 requests by IP per day depending on the provider.
http://packagesWhat is a request ? As I understand with the IGN ( OpenLayers ), a request is a tile ( an image ).opensuse-communityYou need several tiles for a view.org/index.jsp?searchTerm=pywebkit
==== gecko ======= mandriva ======= webkit ======== gecko ======= fedora ======= webkit ====You must use : WebKit-gtkI think it is sufficient for the lambda genealogist.
I didn==== Creating new places from the Geography view ====You center the map for the place you want to create.You can use the double click for that.When you are sure the position is OK, click on the "+" button in the tools bar.Now, the place editor is opened. Enter all the field necessary for this new place then click on the OK button. That't test GeoView s all.==== Associate a new position to an already existing place ====You center the map for the place you want to modify like for creating a new place.When you are sure the position is OK, click on Fedorathe "map" button in the tools near the "+" button described above. I need some feedbackA places list is opened. Choose the place you want to modify then click on the OK button.
http://downloadYou can use this method to modify the position you used in a prior creation.fedora.redhat.com/pub/fedora/linux/releases/<VERSION>/Everything/<ARCH>/os/Packages/====Results====
Replace <VERSIONgallery> by the fedora version you useImage:Geoview1. ie png|Fig.1 All event places with coordinates for an individualImage: 7, 9, 10, Geoview2.png|Fig.2 All individual's family places with coordinatesImage:Geoview3.png|Fig.3 All event places with coordinates on Family TreeImage:Geoview4.png|Fig.4 All places with coordinates on Family Tree</gallery>
Replace <ARCH> by i386, x86_64, ...==== gecko If you get a crash when starting gramps ====It's probably a webkit problem.So, you have two possibilities :=== debian ==Remove the webkit rendering engine only ===== Remove webkit ====This and install gtkmozembed (gecko) is not already installed. See the same packager specific package for ubuntu and debian, so go to your distribution.You'll have the ubuntu paragraphgecko rendering.==== gecko = Remove all rendering engines =====install the Remove python-webkit and python-gtkmozembed package.=== windows XP/Vista ===Perhaps You'll never see geoview. See the following link can help windows developpers :specific packages for your distribution.
http://priscimon.com/blog/2008/06/04/four-easy-steps-to-running-webkit-on-windows/==See also==* [[GeoViewHelp]] Addon
=== MAC/OS X ===[[Category:GEPS|G]]==== webkit ====[[Category:Plugins]]This is standard on MAC. Can someone confirm this.Is there a python-webkit package on MAC ?==== gecko ====== ... ==[[Category:Developers/General]]Your modifications are welcomed ...[[Category:Views|G]]
2,102
edits

Navigation menu