Changes

Jump to: navigation, search

GeoView

7,698 bytes added, 10:19, 3 March 2012
m
no edit summary
Work always in progress.
Be patient'''All we need to understand GeoView.'''
== Why GeoView ? == Iwould 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'm 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:password@]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 native english writerpatch for building WebKitGtk with quartz. Once WebKitGtk is built or installed, so 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 surely do mistakesdidn'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, ... Replace <ARCH> by i586, x86_64, ... * pywebkit http://packages.opensuse-community.org/index.jsp?searchTerm=pywebkit * pyton-webkit On OpenSUSE 11.3 that is the appropriate name. ====== gecko ====== ===== ubuntu =========== webkit ======  ''aptitude install python-webkit'' ====== gecko ======If you want gtkmozembed on ubuntu, you must install : python-gnome2-extras or python-gtkmozembed depending on you distrib version.
''aptitude install python-gnome2-extras'All we need to understand and test GeoView.' or ''aptitude install python-gtkmozembed''
===== windows XP/Vista =====
====== webkit ======
== Why GeoView ? ==* WebKitGTK is the port of the portable web rendering engine WebKit to the GTK+ platform on Windows. This zip file contains webkitgtk itself and all needed dynamic link libraryes (DLL). You will need [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]
I would like * Update to see my ancestors all around the world on a mapversion 1. And if possible, I would like to see them moving during time periods1. How to do this easily ? 23 (binary and with the minimum of software !devel files only)** [http://www.gramps-project.org/wiki/images/d/db/WebKitGTK-1.1.23-win32.zip WebKitGTK-1.1.23]
GeoView is one solution* [http://code. You can always google.com/p/pywebkitgtk PyWebKitGtk] provide yours !Python bindings to WebKitGTK** [http://www.gramps-project.org/wiki/images/4/4d/PyWebKitGTK-1.1.7.win32-py2.6.zip PyWebKitGTK-1.1.7.win32-py2.6.msi]
== The html kits ==We can use webkit or gtkmozembed to view html pages[[All In One Gramps Software Bundle for Windows|Gramps AIO package]] contains WebKitGTK-1. If no one is installed, you'll never see GeoView2.5 and PyWebKitGTK-1.1.8
===== ... =====Your distributions are welcomed ...=== The Geographic part ===This module is called geoview. It depends on the htmlrenderer module.===== In GRAMPS 3.1.x =====If you really are in 3.1.2 and greater, you only have the two kits are installedgeoview module. The htmlrenderer is included in geoview.For installing the html renderer, webkit will be usedyou can see the documentation above.
It is present as an experimental view you can activate. For web browsing, we GeoView to work you need to be connected :# change the GRAMPS configuration file to list the 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 (Note: the [[Place completion tool]] can look up latitude and longitude of the networkplaces defined in GRAMPS.)
Even if you have The first is simple to achieve. Start a html kit installedtext editor and go to your gramps home directory, can can always say : I donand open the keys.ini file. Scoll down to the interface section, and look for the ''data-views't mind ! I don't want variable. On a clean install of GRAMPS, this variable is normally: data-views=GrampletView,PersonView,RelationshipView,FamilyListView,PedigreeView,EventView,SourceView,PlaceView,MediaView,RepositoryView,NoteViewTo add GeoView, just add it to see the HtmlView.back, so your configuration reads: data-views=GrampletView,PersonView,RelationshipView,FamilyListView,PedigreeView,EventView,SourceView,PlaceView,MediaView,RepositoryView,NoteView,GeoView
For this, you can disallow Geoview in the Internet Maps preferences tabThat's it.
=== WebKit ===It's To install the future. Be awarebackend, WebKit is always in development. I already test this with segmentation fault, .scroll down to [[GeoView#How_to_get_the_HTML_kits_.3F|the installation section]].
More and more projects are integrating webkit ...Finally, you need to set the Geoview Preferences:
The reason why for epiphany [[Image: GeoViewPreferences.png]].
http://blogsOpenlayers is free too and uses by default OSM map.gnomeA lot of private or non free maps depends on OpenLayers.org/epiphany/2008/04/01/the-future-of-epiphany/
The most interesting is the IGN ( Institut Géographique National Français )[http://www.geoportail.fr/visu2D.do?cg==== Proxies ====I don't know how WebKit works at djoxLjEqYzptZXRyb3BvbGUqY3Y6MS4wKnZ2OjEuMSp4eToyLjM0NTI3NDM5ODQwMTE4ODN8NDguODYwODMyNTU3MTczODgqczoxMCpwdjoxLjAqcDpkZWNvdXZlcnRlKmw6UGhvdG98fHwsU2NhbnwxfDEwMHwsQ2Fzc2luaXwxfHw%3D] which offers an old map of France ( about 1780 ) but this levelprovider needs a key. I think it uses some configuration file or environment variable'll speak about keys later.
libsoup ?Then you have Googlemaps, Yahoo! maps, Microsoft maps, ... ===== In GRAMPS 3.2 =====You don't need to set the providers. The first one is always OpenStreetMap and the alternate is GoogleMaps.
''I need help about this.''=== Gecko ( GtkMozEmbed ) = Supported longitude/latitude formats ====What will gtkmozembed be in When you create/modify a place, the future ?possible formats used for longitude/latitude are:
The embedding API of Gecko (GtkMozEmbed) has been unmaintained and stagnant for a long time.==== Proxies ====GtkMozEmbed is proxy aware. I implement this and I use the http_proxy environment variable.Authentication is allowed. The http_proxy format used is :* Floating point
http://[user:password@]proxy:port/== The maps providers ==There are a lot of providerse. Some are freeg.+12.0154 -124.3647
By default, the provider is OSM ( OpenStreetMap ).* Classic
This provider depends on the community and the maps are very light depending on the countrye. Nevertheless, the community made an extraordinary job since a few monthg. We can say OpenStreetMap is and will be the map for gramps50°52'21.92"N 124°52'21.92"E
Openlayers is free too and uses by default OSM mapThe degree symbol can be either UTF-8 code c2b00a, UTF-8 code c2ba0a or the hash (#) character.A lot of private The seconds symbol can be either one double quote (") character or non free maps depends on OpenLayerstwo single quote (') characters.
The most interesting is the IGN ( Institut Géographique National Français ) which offers an old map of France ( about 1780 ) but this provider needs a key. I'll speek about keys later.* Colon
You have Googlemaps, Yahoo! maps, Microsoft maps, e.g.-50:52:21.92 124:52:21.92
== mapstraction ==Like you can see, it's impossible to implement all providers maps. For this reason, some people created an api over all these providers api.* Modified GEDCOM
With only a few modification, you can use the map you wante. And better! you can switch between the maps keeping the zoom and the centered positiong.12.0154N 124.3647E
It's also in the development phase and is sometimes buggy==== The maps providers ====There are a lot of providers. Some are free.
== The By default, the provider Key ==Gramps GRAMPS uses is not a web site. Keys are only for web site.In GeoView, I use a specific functionality : We are working on local file instead of url, so we don't need a key.some providers like IGN needs key even in this case. So I can't use them. Why ?#Too complex for final user'sOSM ( OpenStreetMap ).#We need As a key by providerIn these case, I hope you understand the choice is limited even is mapstraction can do more.=== Constraint ===We have no keyfree project, so we have a restricted access : About 10,000 find it our duty to 15,000 requests by IP per day depending on the providerfirst and foremost support another free initiative.
What is a request ? As I understand with OpenStreetMap depends on the community and the maps are very light depending on the IGN ( OpenLayers )country. Nevertheless, a request the community made an extraordinary job and the quality is an imageimproving rapidly. And you can [http://openstreetbugs.appspot. You need several images for a viewcom/ help make it better]! We can say OpenStreetMap is and will be the map GRAMPS uses per default.
I think ==== mapstraction ====Like you can see, it is sufficient for the lambda genealogist's impossible to implement all providers maps. For this reason, some people created an api over all these providers api.
== The proxies ==Everybody doesn't need With only a proxyfew modification, you can use the map you want. The majority of us are connected directly to internet. In this case, forget all thisAnd better! you can switch between the maps keeping the zoom and the centered position.
You need a proxy only if you installed one For performances issues, I can confirm it takes approximately 30 seconds to view 1000 markers for openstreetmap or if google.If you depend on some fai which provides onehave 2000 markers, this time is about 2 times 30 seconds.
== How For this, I limit one HTML page to get 200 markers. If you have more than this limit, GRAMPS creates the html kits ? ==It depends on the distribution you're working on ! They are listed in reverse ordernecessary pages to see all your markers.
python-webkitgtk is also called pywebkitgtk=== ubuntu ======= webkit ====You needs libwebkit and python-webkitgtkDuring 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.
Add to the /etc/apt/sources==== The provider Key ====GRAMPS is not a web site.list Keys are mostly only for web sites.In GeoView, I use a specific functionality :we are working on a local file instead of an url, so we normally don't need a key.
However, 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 python-webkitgtkthe 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.
deb http===== Constraint =====We have no key, so we have a restricted access ://ppaAbout 10,000 to 15,000 requests by IP per day depending on the provider.launchpad.net/gwibber-team/ubuntu hardy main
# What is a request ? As I understand with the IGN ( OpenLayers ), a request is a tile ( an image ). You need several tiles for libwebkita view.
deb http://ppaI think it is sufficient for the lambda genealogist.launchpad.net/webkit-team/ubuntu hardy main
It==== 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's from nightly buildsall.==== 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, so it can crashclick on the "map" button in the tools near the "+" button described above.A places list is opened. Choose the place you want to modify then click on the OK button.
If you have some crash and want You can use this method to install modify the working package, position you can get libwebkitused in a prior creation.from the following url :====Results====
https<gallery>Image://edgeGeoview1.launchpadpng|Fig.net/~stemp/+archive1 All event places with coordinates for an individual==== gecko ====Image:Geoview2.png|Fig.2 All individual's family places with coordinatesIf you want gtkmozembed Image:Geoview3.png|Fig.3 All event places with coordinates on ubuntu, Family Treeyou must install Image: python-gnome2-extrasGeoview4.png|Fig.4 All places with coordinates on Family Tree</gallery>
==== If you get a crash when starting gramps ====It's stable but probably a webkit problem.So, you have two possibilities :===== Remove the webkit rendering engine only =====Remove webkit and install many gnome gtkmozembed (gecko) is not already installed. See the specific package for your distribution.You'll have the gecko rendering.===== Remove all rendering engines =====Remove python-webkit and python-gtkmozembed. You'll never see geoview. See the specific packages even if you are on a kde based for your distribution.
Please, don't troll !
=== suse ===
==== webkit ====
==== gecko ====
=== mandriva ===
==== webkit ====
==== gecko ====
=== fedora ===
==== webkit ====
==== gecko ====
=== debian ===
==== webkit ====
==== gecko ====
== ... ==
Your modifications are welcomed ...
 
 
[[Category:GEPS|G]][[Category:Plugins]]
[[Category:Developers/General]]
[[Category:Views|G]]

Navigation menu