__ _ _ _
/ _(_) | | | |
__ _ ___ ___ | |_ _ ___| | __| |
/ _` |/ _ \/ _ \| _| |/ _ \ |/ _` |
| (_| | __/ (_) | | | | __/ | (_| |
\__, |\___|\___/|_| |_|\___|_|\__,_|
__/ |
|___/
Geofield is a module for storing geographic data in Drupal 7.
It supports all geo-types (points, lines, polygons, multitypes etc.)
http://drupal.org/project/geofield
---
INSTALLATION
Following are instructions for manual installation of Geofield and its
required pieces. Want to do it the easy way? Install drush
(http://drupal.org/project/drush) and drush-make
(http://drupal.org/project/drush_make), then issue the command:
drush make geofield.make
Otherwise:
1. Install the Libraries module (http://drupal.org/project/libraries)
2. If it's not already there, create the directory /sites/all/libraries
(or /sites/SITENAME/libraries for a multisite installation)
3. Download the geoPHP library from
https://github.com/downloads/phayes/geoPHP/geoPHP.tar.gz
(For more information, see the full project page at
https://github.com/phayes/geoPHP)
4. Unarchive the library files and place in the "libraries" directory
mentioned in Step 2
Your directory structure should now look something like:
/sites/all/libraries/geoPHP/geoPHP.inc
---
CONFIGURATION
To be written. Maybe by you?
---
DEPENDENCIES
libraries
provides API for handling libraries
http://drupal.org/project/libraries
geoPHP
provides geometry transformations
https://github.com/phayes/geoPHP
---
RELATED MODULES
openlayers
provides mapping for geofield
http://drupal.org/project/openlayers
geocoder
provides geocoding widget for geofield
https://drupal.org/project/geocoder
---
CREDITS
Original author: Tristan O'Neil
Contributors: Alex Barth, Jeff Miccolis, Young Hahn, Tom MacWright,
Patrick Hayes, Dave Tarc, Nikhil Trivedi, Marek Sotak,
Khalid Jebbari, Brandon Morrison, David Peterson
---
API NOTES
Geofield fields contain nine columns of information about the geographic data
that is stores. At its heart is the 'wkt' column where it stores the full
geometry in the 'Well Known Text' (WKT) format. All other columns are metadata
derived from the WKT column. Columns are as follows:
'wkt' WKT
'geo_type' Type of geometry (point, linestring, polygon etc.)
'lat' Centroid (Latitude or Y)
'lon' Centroid (Longitude or X)
'top' Bounding Box Top (Latitude or Max Y)
'bottom' Bounding Box Bottom (Latitude or Min Y)
'left' Bounding Box Left (Longitude or Min X)
'right' Bounding Box Right (Longitude or Max X)
When a geofield is saved using the provided widgets, these values are passed
through the geofield_compute_values function in order to compute dependent
values. By default dependent values are computed based on WKT, but this may be
overriden to compute values based on other columns. For example,
geofield_compute_values may be called like so:
geofield_compute_values($values, 'latlon');
This will compute the wkt field (and all other fields) based on the lat/lon
columns, resulting in a point. As a developer this is important to remember if
you modify geofield information using node_load and node_save. Make sure to
run any modified geofield instances through geofield_compute_values in order
to make all columns consistent.