En aquel Imperio, el Arte de la Cartografía logró tal Perfección que el Mapa de una sola Provincia ocupaba toda una Ciudad, y el Mapa del Imperio, toda una Provincia. Con el tiempo, estos Mapas Desmesurados no satisficieron y los Colegios de Cartógrafos levantaron un Mapa del Imperio, que tenía el Tamaño del Imperio y coincidía puntualmente con él. Menos Adictas al Estudio de la Cartografía, las Generaciones Siguientes entendieron que ese dilatado Mapa era Inútil y no sin Impiedad lo entregaron a las Inclemencias del Sol y los Inviernos. En los Desiertos del Oeste perduran despedazadas Ruinas del Mapa, habitadas por Animales y por Mendigos; en todo el País no hay otra reliquia de las Disciplinas Geográficas.
[Del rigor en la ciencia, Jorge Luis Borges]

2013-05-15

Safe Harbor for Forward-Looking Statements


Encontrado hoje e adaptado às minhas necessidades pessoais...

This [blog / site / page / document / message] contains forward-looking statements, including, but not limited to, statements regarding the value and effectiveness of [my opinions,] products, the introduction of product enhancements, functionality and capabilities or of additional products [...], that involve risks, uncertainties, assumptions and other factors which, if they do not materialize or prove correct, could cause [...] results to differ materially from those expressed or implied by such forward-looking statements.
All statements, other than statements of historical fact, are statements that could be deemed forward-looking statements, including statements containing the words “predicts,” “plan,” “expects,” “anticipates,” “believes,” “goal,” “target,” “estimate,” “potential,” “may”, “will,” “might,” “momentum,” “could,” “seek,” and similar words.
[ I intend ] all such forward-looking statements to be covered by the safe harbor provisions for forward-looking statements contained in Section 21E of the Exchange Act and the Private Securities Litigation Reform Act of 1995.
The forward-looking statements included in this [blog / site / page / document / message] represent [my] views as of [yesterday]. 
[ I anticipate] that subsequent events and developments will cause [my] views to change.
[ I undertake ] no intention or obligation to update or revise any forward-looking statements, whether as a result of new information, future events or otherwise. These forward-looking statements should not be relied upon as representing [my] views as of any date subsequent to [yesterday].

Tenho dito.

2013-04-03

Mapnik 2.0 em Windows (arghhh...)

agora que parece estar a funcionar...

Mais uma cábula onde não se perca...

1) O sistema operativo é Windows 7 64b. 
... mas a versão de Python 2.7 tem de ser de 32b.

2) A instalação do Mapnik 0.7.0-1 através do Advanced Install do OSGEO4W não funcionou. 
Não vou perder mais tempo a tentar perceber porquê...

3) Usando o Mapnik 2.0 RC0 funciona sem problemas.

Instalar para %OSGEO4W_ROOT%\apps\mapnik-2.0.1rc0. 

Alterar / acrescentar o  %OSGEO4W_ROOT%\etc\ini\python.bat 
PATH %OSGEO4W_ROOT%\apps\mapnik-2.0.1rc0\lib;%PATH% 
SET PYTHONPATH=%PYTHONPATH%;%OSGEO4W_ROOT%\apps\mapnik-2.0.1rc0\python\2.7\site-packages

4) Alterar a mapniklibpath no ficheiro \mapnik-2.0.1rc0\python\2.7\site-packages\mapnik\paths.py

[Fim de cábula] ...espero eu.

Fontes: OpenStreetMap; Mapnik.

2013-04-02

CRS_PT - Ficheiro de configuração para o PROJ.4

Em tempos necessitei de fazer um apanhado dos códigos EPSG dos sistemas de coordenadas usados em Portugal, bem como dos métodos e valores de parâmetros de transformação registados na base de dados EPSG.
Acabei por juntar tudo num ficheiro de configuração para usar no Proj.4 - baseado em grande parte no trabalho do Prof. José Alberto Gonçalves.

A notação está diferente, e não é tão amigável, mas pode ser que seja útil a alguém.
Cá fica.

(Pelo menos, eu vou deixar de andar à procura da última versão do ficheiro de cada vez que o quiser colocar noutro PC).

# EXAMPLES:
# ogr2ogr -f "ESRI Shapefile" -s_srs "+init=CRS_PT:4274_9615 +wktext" -t_srs "+init=CRS_PT:3763_NIL +wktext" output.shp input.shp
# gdalwarp -s_srs "+init=CRS_PT:3763_NIL +wktext" -t_srs "+init=CRS_PT:3857_NIL +wktext" -r bilinear input.tif output.tif
# SYNTAX: EACH TRANSFORMATION IS IDENTIFIED AS "epsgCoordinateReferenceSystemCode_epsgCoordinateOperationMethod"
# IF, WITHIN A CRS AREA OF USE, DIFFERENT TRANSFORMATIONS ARE AVAILABLE FOR SPECIFIC AREAS THEN EACH TRANSFORMATION IS IDENTIFIED AS "epsgCoordinateReferenceSystemCode_epsgCoordinateOperationMethod_epsgAreaOfUse"
#
### ENUMERATION OF epsg Coordinate Reference System Code
# 4326 "WGS84/Geographic 2D"
# 4258 "ETRF89/Geographic 2D"
# 4274 "Datum 73/Geographic 2D"
# 4207 "Datum Lisboa/Geographic 2D" (obs: Prime Meridian is Greenwich, otherwise same CRS as epsg:4803 where Prime Meridian is Lisbon)
# 4230 "ED50/Geographic 2D)"
# 4666 "Lisbon 1890/Geographic 2D" (obs: Prime Meridian is Greenwich, otherwise same CRS as epsg:4904 where Prime Meridian is Lisbon)
#
# 5013 "PTRA08/Geographic 2D" (datum aliases: "Autonomous Regions of Portugal 2008") (obs: Area of Use is "Madeira province,Azores, and surronding EEZ", epsg:3670)
# 4663 "Porto Santo 1995/Geographic 2D" (datum aliases: "Base SE")
# 4615 "Porto Santo 1936/Geographic 2D" (datum aliases: "Base SE")
# 4616 "Selvagem Grande/Geographic 2D"
# 4664 "Azores Oriental 1995/Geographic 2D" (datum aliases: "Datum Forte S. Braz", "Sao Bras")
# 4184 "Azores Oriental 1940/Geographic 2D" (datum aliases: "Datum Forte S. Braz", "Sao Bras")
# 4665 "Azores Central 1995/Geographic 2D" (datum aliases: "Datum Base SW","Graciosa","Base SW")
# 4183 "Azores Central 1948/Geographic 2D" (datum aliases: "Datum Base SW","Graciosa","Base SW")
# 4182 "Azores Occidental 1939/Geographic 2D" (datum aliases: "Datum Observatório", "Observatario Flores", "Azores Occidental 1939","Observatorio 1966","Observatorio Meteorologico 1939")
#
# 3763 "ETRS89/PT-TM06"
# 27493 "Datum 73/Hayford-Gauss" (CRS aliases: "PT_D73/TM_D73", "HG D73")
# 5018 "Datum Lisboa/Hayford-Gauss" (CRS aliases: "Lisbon/Portuguese Grid New", "PT_DLX(HAY)/TM_DLX", "HG DLX")
# 20790 "Datum Lisboa/Hayford-Gauss - Coordenadas militares" (CRS aliases: "Lisbon (Lisbon)/Portuguese National Grid") (obs: THIS CRS IS ASSOCIATED WITH DATUM epsg:4803, SEE epsg:4207 ABOVE, IN THE EPSG DATABASE IT SHOULD BE REPLACED BY A DEFINITON BASED ON THE GREENWICH MERIDIAN)
# 23029 "ED50/UTM zone 29N" (obs: in this context Area of Use for the transformations is "Portugal mainland - onshore", epsg:1294)
# 5017 "Datum Lisboa 1890/Bessel-Bonne" (CRS aliases: "Lisbon 1890/ Portugal Bonne New","PT_DLX(BES)/BONNE","BB DLX") (w/ positive I quadrant)
# 19303 "WGS84/Gauss-Krüger - Coordenadas militares" (obs: THIS CRS IS NOT YET REGISTERED IN THE EPSG DATABASE. THE CODE 19303 IS A MNEMONIC FOR "igeoe". PROPOSED alias: "WGS84/Portuguese National Grid")
#
# 5016 "PTRA08 / UTM zone 28N" (obs: Area of Use is "Madeira province and surronding EEZ, between 12ºW and 18ºW", epsg:3678)
# 5015 "PTRA08 / UTM zone 26N" (obs: Area of Use is "Azores and surronding EEZ, between 24ºW and 30ºW", epsg:3677)
# 5014 "PTRA08 / UTM zone 25N" (obs: Area of Use is "Azores and surronding EEZ, west of 30ºW", epsg:3682)
# 5632 "PTRA08 / LCC Europe" (obs: Area of Use is "Madeira province,Azores, and surronding EEZ", epsg:3670)
# 5633 "PTRA08 / LAEA Europe" (obs: Area of Use is "Madeira province,Azores, and surronding EEZ", epsg:3670)
# 3061 "Porto Santo 1995 / UTM zone 28N" (obs: Area of Use is "Madeira, Porto Santo, Desertas - onshore", epsg:1314)
# 2942 "Porto Santo 1936/ UTM zone 28N" (obs: Area of Use is "Madeira, Porto Santo, Desertas - onshore", epsg:1314)
# 2943 "Selvagem Grande / UTM zone 28N" (obs: Area of Use is "Ilhas Selvagens" epsg:2779)
# 3062 "Azores Oriental 1995 / UTM zone 26N" (obs: Area of Use is "Azores Oriental - onshore" epsg:1345)
# 2190 "Azores Oriental 1940 / UTM zone 26N" (obs: Area of Use is "Azores Oriental - onshore" epsg:1345)
# 3063 "Azores Central 1995 / UTM zone 26N" (obs: Area of Use is "Azores Central - onshore" epsg:1301)
# 2189 "Azores Central 1948 / UTM zone 26N" (obs: Area of Use is "Azores Central - onshore" epsg:1301)
# 2188 "Azores Occidental 1939 / UTM zone 25N" (obs: Area of Use is "Azores Occidental - onshore" epsg:1344)
#
# 32629 "WGS84 / UTM zone 29N"
# 32628 "WGS84 / UTM zone 28N"
# 32626 "WGS84 / UTM zone 26N"
# 32625 "WGS84 / UTM zone 25N"
#
# 3034 "ETRS89 / LCC Europe"
# 3035 "ETRS89 / LAEA Europe"
# 3041 "ETRS89 / UTM zone 29N (N-E)"
#
# 3857 "WGS84 / Pseudo-Mercator" (obs: THIS IS THE CORRECT EPSG CODE FOR THE CRS A.K.A ""Google Spherical Mercator")
# 9009l3 "Google Spherical Mercator" (obs: THIS IS *NOT* A VALID EPSG CODE. IT IS INCLUDED FOR SOFTWARE INTEROPERABILITY REASONS ONLY. CODE 3857 IS THE CORRECT EPSG CODE FOR THIS CRS)
#
### ENUMERATION OF epsg Dataset Coordinate Operation Method Code
# 9615 "NTv2" (aliases: "Geographic Offset by Interpolation of Gridded Data" , "Grid Shift Method")
# 9606 "Position Vector" (aliases: "7-parameter transformations" , "Helmert" , "Bursa-Wolf")
# 9603 "Geocentric Translation" (aliases: "3-parameter transformations" , ""Molodensky"")
# NIL THIS IS NOT A VALID EPSG CODE. IT WILL BE USED TO IDENTIFY ETRF89 TO WGS84 TRANSFORMATIONS USING +towgs84=0,0,0 (SEE epsg:1149). IT WILL BE USED TO IDENTIFY PTRA08 TO WGS84 TRANSFORMATIONS USING +towgs84=0,0,0 (SEE epsg:4905).
# NOTE THAT FOR ALL TRANSFORMATIONS HEREIN, THE GEODETIC DATUM epsg:6258 (ETRS89) IS ASSUMED EQUAL TO THE GEODETIC DATUM epsg:4326 (WGS84). NOTE THAT FOR ALL TRANSFORMATIONS HEREIN, THE GEODETIC DATUM epsg:1041 (PTRA08) IS ASSUMED EQUAL TO THE GEODETIC DATUM epsg:4326 (WGS84)
#
### ENUMERATION OF epsg Area of Use Code (related to Portugal)
# 1193 Portugal coordsNESW=(43.07,-06.19,29.25,-35.58)
# 1294 Portugal - mainland - onshore coordsNESW=(42.15,-06.19,36.96,-09.55) (Change request 2012.020: N=42.16)
# 3537 Portugal - mainland - offshore coordsNESW=(41.87,-07.36,34.92,-13.86) (Change request 2012.020: E=-07.25,S=34.91,W=-13.88)
# 3670 Portugal - Azores and Madeira coordsNESW=(43.07,-12.48,29.25,-35.58)
# 3678 Portugal - Madeira province and EEZ 18°W to 12°W coordsNESW=(36.46,-12.48,29.25,-18.00)
# 1314 Portugal - Madeira archipelago onshore coordsNESW=(33.14,-16.23,32.36,-17.30)
# 2870 Portugal - Madeira and Porto Santo islands onshore coordsNESW=(33.14,-16.23,32.59,-17.30)
# 3679 Portugal - Madeira island onshore coordsNESW=(32.92,-16.67,32.59,-17.30)
# 3680 Portugal - Porto Santo island onshore coordsNESW=(33.14,-16.23,32.97,-16.43)
# 2779 Portugal - Selvagens onshore coordsNESW=(30.20,-15.79,29.98,-16.10)
# 3677 Portugal - Azores E of 30°W coordsNESW=(42.95,-24.00,33.52,-30.00)
# 1345 Portugal - Azores E onshore coordsNESW=(37.96,-24.96,36.88,-25.91)
# 3683 Portugal - Azores - Santa Maria onshore coordsNESW=(37.07,-24.96,36.88,-25.25)
# 2871 Portugal - Azores - S Miguel onshore coordsNESW=(37.96,-25.08,37.66,-25.91)
# 1301 Portugal - Azores central onshore coordsNESW=(39.14,-26.97,38.32,-28.90)
# 2872 Portugal - Azores - Terceira onshore coordsNESW=(38.85,-26.97,38.58,-27.44)
# 2875 Portugal - Azores - S Jorge onshore coordsNESW=(38.80,-27.71,38.49,-28.37)
# 3681 Portugal - Azores - Graciosa onshore coordsNESW=(39.14,-27.89,38.97,-28.12)
# 2874 Portugal - Azores - Pico onshore coordsNESW=(38.61,-27.99,38.32,-28.61)
# 2873 Portugal - Azores - Faial onshore coordsNESW=(38.69,-28.55,38.46,-28.90)
# 3682 Portugal - Azores W of 30°W coordsNESW=(43.07,-30.00,35.26,-35.58)
# 1344 Portugal - Azores W onshore coordsNESW=(39.76,-31.02,39.30,-31.34)
# 3685 Portugal - Azores - Corvo onshore coordsNESW=(39.76,-31.02,39.64,-31.17)
# 3684 Portugal - Azores - Flores onshore coordsNESW=(39.57,-31.08,39.30,-31.34)
### ADDITIONAL INFORMATION
# [nery 20110601: For each transformation method, only the most recent adjustments are included.]
# [nery 20120123: The NTv2 grids referenced in this file are available online at:
# http://www.igeo.pt/produtos/Geodesia/download/DLx_ETRS89_geo.zip
# http://www.igeo.pt/produtos/Geodesia/download/D73_ETRS89_geo.zip
# http://www.ign.es/ign/resources/herramientas/PENR2009.zip
# http://www.fc.up.pt/pessoas/jagoncal/coordenadas/pt73_e89.gsb
# http://www.fc.up.pt/pessoas/jagoncal/coordenadas/ptLX_e89.gsb
# http://www.fc.up.pt/pessoas/jagoncal/coordenadas/ptLB_e89.gsb
# http://www.fc.up.pt/pessoas/jagoncal/coordenadas/ptED_e89.gsb ]
# [nery 20120109: For Lisbon 1890->WGS84 and e ED50->WGS84 transformations, the currently available portuguese NTv2 grids are those produced by Prof. José Alberto Gonçalves.]
# [nery 20120109: For ED50->WGS84 transformations, the spanish NTv2 grid (PENR2009.gsb) is used outside the spatial scope of the portuguese NTv2 grid.]
# [nery 20120124: For "Google Spherical Mercator"->WGS84/Geographic 2D, the Proj.4 definition and transformation parameters were obtained at:
# http://trac.osgeo.org/proj/wiki/FAQ#ChangingEllipsoidWhycantIconvertfromWGS84toGoogleEarthVirtualGlobeMercator]
### [nery 20120117: current CRS_PT]
<4258_NIL> +proj=latlong +ellps=GRS80 +towgs84=0,0,0 +wktext +no_defs <> # SEE epsg:1149
<3763_NIL> +proj=tmerc +ellps=GRS80 +lat_0=39d40'05.73"N +lon_0=08d07'59.19"W +towgs84=0,0,0 +wktext +no_defs <> # SEE epsg:1149
<5013_NIL> +proj=latlong +ellps=GRS80 +towgs84=0,0,0 +wktext +no_defs <> # SEE epsg:4905
<5016_NIL> +proj=utm +zone=28 +ellps=intl +units=m +towgs84=0,0,0 +wktext +no_defs <> # SEE epsg:4905
<5015_NIL> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=0,0,0 +wktext +no_defs <> # SEE epsg:4905
<5014_NIL> +proj=utm +zone=25 +ellps=intl +units=m +towgs84=0,0,0 +wktext +no_defs <> # SEE epsg:4905
# The following is the new IGeoE CRS "WGS84/Gauss-Krüger - Coordenadas militares". It is not yet registered is the EPSG database.
<19303_NIL> +proj=tmerc +ellps=WGS84 +datum=WGS84 +lat_0=39d40 +lon_0=8d07'54.862"W +x_0=200000 +y_0=300000 +k=1 +units=m +wktext +no_defs <>
### [nery 20120117: (EUROPEAN CRS) ETRS / UTM, no transformation required]
<3041_NIL> +proj=utm +zone=29 +ellps=GRS80 +units=m +towgs84=0,0,0 +wktext +no_defs <> # SEE epsg:1149
<3040_NIL> +proj=utm +zone=28 +ellps=GRS80 +units=m +towgs84=0,0,0 +wktext +no_defs <> # SEE epsg:1149
### [nery 20120117: (EUROPEAN CRS) ETRS / LCC e LAEA, no transformation required]
<3034_NIL> +proj=lcc +lat_1=35 +lat_2=65 +lat_0=52 +lon_0=10 +x_0=4000000 +y_0=2800000 +ellps=GRS80 +units=m +towgs84=0,0,0 +wktext +no_defs <> # SEE epsg:1149
<3035_NIL> +proj=laea +lat_0=52 +lon_0=10 +x_0=4321000 +y_0=3210000 +ellps=GRS80 +units=m +towgs84=0,0,0 +wktext +no_defs <> # SEE epsg:1149
### [nery 20120201: (EUROPEAN CRS ADAPTED TO MADEIRA AND AZORES. AREA OF USE IS epsg:3670) PTRA / LCC e LAEA, no transformation required]
<5632_NIL> +proj=lcc +lat_1=35 +lat_2=65 +lat_0=52 +lon_0=10 +x_0=4000000 +y_0=2800000 +ellps=GRS80 +units=m +towgs84=0,0,0 +wktext +no_defs <> # SEE epsg:4905
<5633_NIL> +proj=laea +lat_0=52 +lon_0=10 +x_0=4321000 +y_0=3210000 +ellps=GRS80 +units=m +towgs84=0,0,0 +wktext +no_defs <> # SEE epsg:4905
### [nery 20120117: WGS84 / UTM, no transformation required]
<32629_NIL> +proj=utm +zone=29 +ellps=WGS84 +units=m +datum=WGS84 +wktext +no_defs <>
<32628_NIL> +proj=utm +zone=28 +ellps=WGS84 +units=m +datum=WGS84 +wktext +no_defs <>
<32626_NIL> +proj=utm +zone=26 +ellps=WGS84 +units=m +datum=WGS84 +wktext +no_defs <>
<32625_NIL> +proj=utm +zone=25 +ellps=WGS84 +units=m +datum=WGS84 +wktext +no_defs <>
### [nery 20120126: These CRS are included for software interoperability reasons only. The 900913 code (GOOGLE "SPHERICAL MERCATOR") is NOT a valid EPSG CODE.
<3857_NIL> +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs <> # SOURCE http://trac.osgeo.org/proj/
<900913_NIL> +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs <> # SOURCE http://trac.osgeo.org/proj/
### [nery 20120117: obsolete CRS based on Datum 73; AREA_OF_USE is "Portugal - mainland onshore" (espg:1294)]
<4274_9615> +proj=latlong +ellps=intl +nadgrids=@D73_ETRS89_geo.gsb,@pt73_e89.gsb +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 20110531 SEE epsg:"NOT_REGISTERED"
<4274_9606> +proj=latlong +ellps=intl +towgs84=-230.994,102.591,25.199,0.633,-0.239,0.900,1.950 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 2009 SEE epsg:5037
<4274_9603> +proj=latlong +ellps=intl +towgs84=-223.150,110.132,36.711 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 2009 SEE epsg:5036
<27493_9615> +proj=tmerc +ellps=intl +lat_0=39d40 +lon_0=8d07'54.862"W +x_0=180.598 +y_0=-86.990 +k=1 +units=m +nadgrids=@D73_ETRS89_geo.gsb,@pt73_e89.gsb +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 20110531 SEE epsg:"NOT_REGISTERED"
<27493_9606> +proj=tmerc +ellps=intl +lat_0=39d40 +lon_0=8d07'54.862"W +x_0=180.598 +y_0=-86.990 +k=1 +units=m +towgs84=-230.994,102.591,25.199,0.633,-0.239,0.900,1.950 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 2009 SEE epsg:5037
<27493_9603> +proj=tmerc +ellps=intl +lat_0=39d40 +lon_0=8d07'54.862"W +x_0=180.598 +y_0=-86.990 +k=1 +units=m +towgs84=-223.150,110.132,36.711 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 2009 SEE epsg:5036
### [nery 20120117: obsolete CRS based on Datum Lisboa; AREA_OF_USE is "Portugal - mainland onshore" (espg:1294)]
<4207_9615> +proj=latlong +ellps=intl +nadgrids=@DLX_ETRS89_geo.gsb,@ptLX_e89.gsb +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 20110531 SEE epsg:"NOT_REGISTERED"
<4207_9606> +proj=latlong +ellps=intl +towgs84=-283.088,-70.693,117.445,-1.157,0.059,-0.652,-4.058 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 2009 SEE epsg:"NOT_REGISTERED"
<4207_9603> +proj=latlong +ellps=intl +towgs84=-303.861,-60.693,103.607 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 2009 SEE epsg:5038
<5018_9615> +proj=tmerc +ellps=intl +lat_0=39d40 +lon_0=8d07'54.862"W +k=1 +units=m +nadgrids=@DLX_ETRS89_geo.gsb,@ptLX_e89.gsb +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 20110531 SEE epsg:"NOT_REGISTERED"
<5018_9606> +proj=tmerc +ellps=intl +lat_0=39d40 +lon_0=8d07'54.862"W +k=1 +units=m +towgs84=-283.088,-70.693,117.445,-1.157,0.059,-0.652,-4.058 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 2009 SEE epsg:"NOT_REGISTERED"
<5018_9603> +proj=tmerc +ellps=intl +lat_0=39d40 +lon_0=8d07'54.862"W +k=1 +units=m +towgs84=-303.861,-60.693,103.607 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 2009 SEE epsg:5038
<20790_9615> +proj=tmerc +ellps=intl +lat_0=39d40 +lon_0=8d07'54.862"W +x_0=200000 +y_0=300000 +k=1 +units=m +nadgrids=@DLx_ETRS89_geo.gsb,@ptLX_e89.gsb +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 20110531 SEE epsg:"NOT_REGISTERED"
<20790_9606> +proj=tmerc +ellps=intl +lat_0=39d40 +lon_0=8d07'54.862"W +x_0=200000 +y_0=300000 +k=1 +units=m +towgs84=-283.088,-70.693,117.445,-1.157,0.059,-0.652,-4.058 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 2009 SEE epsg:"NOT_REGISTERED"
<20790_9603> +proj=tmerc +ellps=intl +lat_0=39d40 +lon_0=8d07'54.862"W +x_0=200000 +y_0=300000 +k=1 +units=m +towgs84=-303.861,-60.693,103.607 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 2009 SEE epsg:5038
### [nery 20120117: old and obsolete CRS_PT based on Datum Lisbon 1890; AREA_OF_USE is "Portugal - mainland onshore" (espg:1294)]
<4666_9615> +proj=latlong +ellps=bessel +nadgrids=ptLB_e89.gsb +wktext +no_defs <> # SOURCE "Jose Alberto Goncalves" DATE 2008 SEE epsg:"NOT_REGISTERED"
<4666_9606> +proj=latlong +ellps=bessel +towgs84=631.392,-66.551,481.442,1.090,-4.445,-4.487,-4.430 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 1998 SEE epsg:"NOT_REGISTERED" # OBS "EQUIVALENT_TO epsg:1990"
<4666_9603> +proj=latlong +ellps=bessel +towgs84=508.088,-191.042,565.223 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 1998 SEE epsg:1986
<5017_9615> +proj=bonne +ellps=bessel +lat_1=39d40 +lon_0=08d07'54.862"W +units=m +nadgrids=ptLB_e89.gsb +wktext +no_defs <> # SOURCE "Jose Alberto Goncalves" DATE 2008 SEE epsg:"NOT_REGISTERED"
<5017_9606> +proj=bonne +ellps=bessel +lat_1=39d40 +lon_0=08d07'54.862"W +units=m +towgs84=631.392,-66.551,481.442,1.090,-4.445,-4.487,-4.430 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 1998 SEE epsg:"NOT_REGISTERED" # OBS "EQUIVALENT_TO epsg:1990"
<5017_9603> +proj=bonne +ellps=bessel +lat_1=39d40 +lon_0=08d07'54.862"W +units=m +towgs84=508.088,-191.042,565.223 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 1998 SEE epsg:1986
### [nery 20120117: european CRS based on ED50; the AREA_OF_USE for transformations is "Portugal - mainland onshore" (espg:1294)]
<4230_9615> +proj=latlong +ellps=intl +nadgrids=@ptED_e89.gsb,@PENR2009.gsb +wktext +no_defs <> # SOURCE "Jose Alberto Goncalves" DATE 2008 SEE epsg:"NOT_REGISTERED"
<4230_9606> +proj=latlong +ellps=intl +towgs84=-74.292,-135.889,-104.967,-0.524,-0.136,0.61,-3.761 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 1998 SEE epsg:"NOT_REGISTERED" # OBS "EQUIVALENT_TO epsg:1989"
<4230_9603> +proj=latlong +ellps=intl +towgs84=-87.987,-108.639,-121.593 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 1998 SEE epsg:1985
<23029_9615> +proj=utm +zone=29 +ellps=intl +units=m +nadgrids=@ptED_e89.gsb,@PENR2009.gsb +wktext +no_defs <> # SOURCE "Jose Alberto Goncalves" DATE 2008 SEE epsg:"NOT_REGISTERED"
<23029_9606> +proj=utm +zone=29 +ellps=intl +units=m +towgs84=-74.292,-135.889,-104.967,-0.524,-0.136,0.61,-3.761 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 1998 SEE epsg:"NOT_REGISTERED" # OBS "EQUIVALENT_TO epsg:1989"
<23029_9603> +proj=utm +zone=29 +ellps=intl +units=m +towgs84=-87.987,-108.639,-121.593 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 1998 SEE epsg:1985
### [nery 20120117: obsolete CRS based on Datum Porto Santo 1995 (a.k.a. Base SE); the AREA_OF_USE for transformations is "Portugal - Madeira Region - Madeira, Porto Santo e Desertas - onshore" (espg:1314)]
<4663_9606> +proj=latlong +ellps=intl +towgs84=-160.410,-21.066,-99.282,2.437,-17.250,-7.446,0.168 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<4663_9603> +proj=latlong +ellps=intl +towgs84=-503.229,-247.375,312.582 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5021
<3061_9606> +proj=utm +zone=28 +ellps=intl +units=m +towgs84=-160.410,-21.066,-99.282,2.437,-17.250,-7.446,0.168 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<3061_9603> +proj=utm +zone=28 +ellps=intl +units=m +towgs84=-503.229,-247.375,312.582 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5021
### [nery 20120117: obsolete CRS based on Datum Porto Santo 1995 (a.k.a. Base SE); the AREA_OF_USE for transformations is "Portugal - Madeira Region - Porto Santo - onshore" (espg:3680)]
<4663_9606_3680> +proj=latlong +ellps=intl +towgs84=-494.088,-312.129,279.877,-1.423,-1.013,1.590,-0.748 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<4663_9603_3680> +proj=latlong +ellps=intl +towgs84=-503.300,-247.574,313.025 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5023
<3061_9606_3680> +proj=utm +zone=28 +ellps=intl +units=m +towgs84=-494.088,-312.129,279.877,-1.423,-1.013,1.590,-0.748 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<3061_9603_3680> +proj=utm +zone=28 +ellps=intl +units=m +towgs84=-503.300,-247.574,313.025 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5023
### [nery 20120117: obsolete CRS based on Datum Porto Santo 1995 (a.k.a. Base SE); the AREA_OF_USE for transformations is "Portugal - Madeira Region - Madeira - onshore" (espg:3679)]
<4663_9606_3679> +proj=latlong +ellps=intl +towgs84=-303.956,224.556,214.306,9.405,-6.626,-12.583 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5022
<4663_9603_3679> +proj=latlong +ellps=intl +towgs84=-503.174,-247.255,312.316 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<3061_9606_3679> +proj=utm +zone=28 +ellps=intl +units=m +towgs84=-303.956,224.556,214.306,9.405,-6.626,-12.583 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5022
<3061_9603_3679> +proj=utm +zone=28 +ellps=intl +units=m +towgs84=-503.174,-247.255,312.316 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
### [nery 20120117: obsolete CRS based on Datum Porto Santo 1936 (a.k.a. Base SE); THE DATUM RECORD COULD/SHOULD BE DEPRECATED AS IT WAS DUPLICATED/REPLACED BY Datum Porto Santo 1995; AREA_OF_USE for transformations is "Portugal - Madeira Region - Madeira, Porto Santo e Desertas - onshore" (espg:1314)]
# <4615_9606> +proj=latlong +ellps=intl +towgs84=?,?,?,?,?,?,? +wktext +no_defs <> # SOURCE "NONE_AVAILABLE"
<4615_9603> +proj=latlong +ellps=intl +towgs84=-499,-249,314 +wktext +no_defs <> # SOURCE "U.S. Defense Mapping Agency" DATE 200001 SEE epsg:1888
# <2942_9606> +proj=utm +zone=28 +ellps=intl +units=m +towgs84=?,?,?,?,?,?,? +wktext +no_defs <> # SOURCE "NONE_AVAILABLE"
<2942_9603> +proj=utm +zone=28 +ellps=intl +units=m +towgs84=-499,-249,314 +wktext +no_defs <> # SOURCE "U.S. Defense Mapping Agency" DATE 200001 SEE epsg:1888
### [nery 20120117: obsolete CRS based on Datum Selvagem Grande; NO NATIONAL TRANSFORMATIONS WERE FOUND; AREA_OF_USE for transformation is "Portugal - Madeira Region - Ilhas Selvagens" (espg:2779)]
# <4616_9606> +proj=latlong +ellps=intl +towgs84=?,?,?,?,?,?,? +wktext +no_defs <> # SOURCE "NONE_AVAILABLE"
<4616_9603> +proj=latlong +ellps=intl +towgs84=-289,-124,60 +wktext +no_defs <> # SOURCE "U.S. Defense Mapping Agency" DATE 200001 SEE epsg:1965
# <2943_9606> +proj=utm +zone=28 +ellps=intl +units=m +towgs84=?,?,?,?,?,?,? +wktext +no_defs <> # SOURCE "NONE_AVAILABLE"
<2943_9603> +proj=utm +zone=28 +ellps=intl +units=m +towgs84=-289,-124,60 +wktext +no_defs <> # SOURCE "U.S. Defense Mapping Agency" DATE 200001 SEE epsg:1965
### [nery 20120117: obsolete CRS based on Datum Azores Oriental 1995 (a.k.a. Datum Forte de S. Braz); the AREA_OF_USE for transformations is "Portugal - Azores Oriental Group - onshore" (espg:1345)]
<4664_9606> +proj=latlong +ellps=intl +towgs84=-269.089,186.247,155.667,2.005,3.606,-0.366,0.097 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<4664_9603> +proj=latlong +ellps=intl +towgs84=-204.926,140.353,55.063 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5024
<3062_9606> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=-269.089,186.247,155.667,2.005,3.606,-0.366,0.097 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<3062_9603> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=-204.926,140.353,55.063 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5024
### [nery 20120117: obsolete CRS based on Datum Azores Oriental 1995 (a.k.a. Datum Forte de S. Braz); the AREA_OF_USE for transformations is "Portugal - Azores Oriental Group - Santa Maria - onshore" (espg:3683)]
<4664_9606_3683> +proj=latlong +ellps=intl +towgs84=-440.296,58.548,296.265,1.128,10.202,4.559,-0.438 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<4664_9603_3683> +proj=latlong +ellps=intl +towgs84=-205.808,140.771,54.326 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5026
<3062_9606_3683> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=-440.296,58.548,296.265,1.128,10.202,4.559,-0.438 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<3062_9603_3683> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=-205.808,140.771,54.326 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5026
### [nery 20120117: obsolete CRS based on Datum Azores Oriental 1995 (a.k.a. Datum Forte de S. Braz); the AREA_OF_USE for transformations is "Portugal - Azores Oriental Group - Sao Miguel - onshore" (espg:2871)]
<4664_9606_2871> +proj=latlong +ellps=intl +towgs84=-249.507,179.302,119.92,1.406,2.423,-0.479,0.952 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<4664_9603_2871> +proj=latlong +ellps=intl +towgs84=-204.519,140.159,55.404 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5025
<3062_9606_2871> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=-249.507,179.302,119.92,1.406,2.423,-0.479,0.952 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<3062_9603_2871> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=-204.519,140.159,55.404 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5025
### [nery 20120117: obsolete CRS based on Datum Azores Oriental 1940 (a.k.a. Datum Forte de S. Braz); THE DATUM RECORD COULD/SHOULD BE DEPRECATED AS IT WAS DUPLICATED/REPLACED BY Datum Azores Oriental 1995; the AREA_OF_USE for transformations is "Portugal - Azores Oriental Group - onshore" (espg:1345)]
# <4184_9606> +proj=latlong +ellps=intl +towgs84=?,?,?,?,?,?,? +wktext +no_defs <> # SOURCE "NONE_AVAILABLE"
<4184_9603> +proj=latlong +ellps=intl +towgs84=-203,141,53 +wktext +no_defs <> # SOURCE "U.S. Defense Mapping Agency" DATE 200001 SEE epsg:1885
# <2190_9606> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=?,?,?,?,?,?,? +wktext +no_defs <> # SOURCE "NONE_AVAILABLE"
<2190_9603> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=-203,141,53 +wktext +no_defs <> # SOURCE "U.S. Defense Mapping Agency" DATE 200001 SEE epsg:1885
### [nery 20120117: obsolete CRS based on Datum Azores Central 1995 (a.k.a. Datum Base SW); the AREA_OF_USE for transformations is "Portugal - Azores Central Group - onshore" (espg:1301)]
<4665_9606> +proj=latlong +ellps=intl +towgs84=-185.391,122.266,35.989,0.12,3.18,2.046,-1.053 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<4665_9603> +proj=latlong +ellps=intl +towgs84=-105.679,166.100,-37.322 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5027
<3063_9606> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=-185.391,122.266,35.989,0.12,3.18,2.046,-1.053 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<3063_9603> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=-105.679,166.100,-37.322 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5027
### [nery 20120117: obsolete CRS based on Datum Azores Central 1995 (a.k.a. Datum Base SW); the AREA_OF_USE for transformations is "Portugal - Azores Central Group - Terceira - onshore" (espg:2872)]
<4665_9606_2872> +proj=latlong +ellps=intl +towgs84=-216.355,107.044,48.015,-0.204,4.158,2.605,0.297 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<4665_9603_2872> +proj=latlong +ellps=intl +towgs84=-106.235,166.236,-37.768 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5032
<3063_9606_2872> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=-216.355,107.044,48.015,-0.204,4.158,2.605,0.297 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<3063_9603_2872> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=-106.235,166.236,-37.768 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5032
### [nery 20120117: obsolete CRS based on Datum Azores Central 1995 (a.k.a. Datum Base SW); the AREA_OF_USE for transformations is "Portugal - Azores Central Group - São Jorge - onshore" (espg:2875)]
<4665_9606_2875> +proj=latlong +ellps=intl +towgs84=-201.545,109.048,32.218,-0.286,3.471,2.443,0.309 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<4665_9603_2875> +proj=latlong +ellps=intl +towgs84=-105.756,165.972,-37.313 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5031
<3063_9606_2875> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=-201.545,109.048,32.218,-0.286,3.471,2.443,0.309 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<3063_9603_2875> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=-105.756,165.972,-37.313 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5031
### [nery 20120117: obsolete CRS based on Datum Azores Central 1995 (a.k.a. Datum Base SW); the AREA_OF_USE for transformations is "Portugal - Azores Central Group - Graciosa - onshore" (espg:3681)]
<4665_9606_3681> +proj=latlong +ellps=intl +towgs84=-210.371,49.768,0.808,-2.036,3.046,3.709,0.934 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<4665_9603_3681> +proj=latlong +ellps=intl +towgs84=-105.359,165.804,-37.050 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5029
<3063_9606_3681> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=-210.371,49.768,0.808,-2.036,3.046,3.709,0.934 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<3063_9603_3681> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=-105.359,165.804,-37.050 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5029
### [nery 20120117: obsolete CRS based on Datum Azores Central 1995 (a.k.a. Datum Base SW); the AREA_OF_USE for transformations is "Portugal - Azores Central Group - Pico - onshore" (espg:2874)]
<4665_9606_2874> +proj=latlong +ellps=intl +towgs84=-364.422,243.651,274.822,5.477,12.092,1.538,2.243 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<4665_9603_2874> +proj=latlong +ellps=intl +towgs84=-105.531,166.390,-37.326 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5030
<3063_9606_2874> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=-364.422,243.651,274.822,5.477,12.092,1.538,2.243 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<3063_9603_2874> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=-105.531,166.390,-37.326 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5030
### [nery 20120117: obsolete CRS based on Datum Azores Central 1995 (a.k.a. Datum Base SW); the AREA_OF_USE for transformations is "Portugal - Azores Central Group - Faial - onshore" (espg:2873)]
<4665_9606_2873> +proj=latlong +ellps=intl +towgs84=-76.822,257.457,-12.817,2.136,-0.033,-2.392,-0.031 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<4665_9603_2873> +proj=latlong +ellps=intl +towgs84=-105.377,165.769,-36.965 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5028
<3063_9606_2873> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=-76.822,257.457,-12.817,2.136,-0.033,-2.392,-0.031 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<3063_9603_2873> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=-105.377,165.769,-36.965 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5028
### [nery 20120117: obsolete CRS based on Datum Azores Central 1948 (a.k.a. Datum Base SW); THE DATUM RECORD COULD/SHOULD BE DEPRECATED AS IT WAS DUPLICATED/REPLACED BY Datum Azores Central 1995; the AREA_OF_USE for transformations is "Portugal - Azores Central Group - onshore" (espg:1304)]
# <4183_9606> +proj=latlong +ellps=intl +towgs84=?,?,?,?,?,?,? +wktext +no_defs <> # SOURCE "NONE_AVAILABLE"
<4183_9603> +proj=latlong +ellps=intl +towgs84=-104,167,-38 +wktext +no_defs <> # SOURCE "U.S. Defense Mapping Agency" DATE 200001 SEE epsg:1886
# <2189_9606> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=?,?,?,?,?,?,? +wktext +no_defs <> # SOURCE "NONE_AVAILABLE"
<2189_9603> +proj=utm +zone=26 +ellps=intl +units=m +towgs84=-104,167,-38 +wktext +no_defs <> # SOURCE "U.S. Defense Mapping Agency" DATE 200001 SEE epsg:1886
### [nery 20120117: obsolete CRS based on Datum Azores Occidental 1939 (a.k.a. Datum Observatorio); the AREA_OF_USE for transformations is "Portugal - Azores Occidental Group - onshore" (espg:1344)]
<4182_9606> +proj=latlong +ellps=intl +towgs84=-487.978,-226.275,102.787,-0.743,1.677,2.087,1.485 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<4182_9603> +proj=latlong +ellps=intl +towgs84=-423.058,-172.868,83.772 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5033
<2188_9606> +proj=utm +zone=25 +ellps=intl +units=m +towgs84=-487.978,-226.275,102.787,-0.743,1.677,2.087,1.485 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<2188_9603> +proj=utm +zone=25 +ellps=intl +units=m +towgs84=-423.058,-172.868,83.772 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5033
### [nery 20120117: obsolete CRS based on Datum Azores Occidental 1939 (a.k.a. Datum Observatorio); the AREA_OF_USE for transformations is "Portugal - Azores Occidental Group - Flores - onshore" (espg:3684)]
<4182_9606_3684> +proj=latlong +ellps=intl +towgs84=-511.151,-181.269,139.609,1.05,2.703,1.798,3.071 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<4182_9603_3684> +proj=latlong +ellps=intl +towgs84=-423.053,-172.871,83.771 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5034
<2188_9606_3684> +proj=utm +zone=25 +ellps=intl +units=m +towgs84=-511.151,-181.269,139.609,1.05,2.703,1.798,3.071 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<2188_9603_3684> +proj=utm +zone=25 +ellps=intl +units=m +towgs84=-423.053,-172.871,83.771 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5034
### [nery 20120117: obsolete CRS based on Datum Azores Occidental 1939 (a.k.a. Datum Observatorio); the AREA_OF_USE for transformations is "Portugal - Azores Occidental Group - Corvo - onshore" (espg:3685)]
<4182_9606_3685> +proj=latlong +ellps=intl +towgs84=-1333.976,-487.235,945.031,6.674,35.963,20.438,-11.187 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<4182_9603_3685> +proj=latlong +ellps=intl +towgs84=-423.024,-172.923,83.830 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5035
<2188_9606_3685> +proj=utm +zone=25 +ellps=intl +units=m +towgs84=-1333.976,-487.235,945.031,6.674,35.963,20.438,-11.187 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:"NOT_REGISTERED"
<2188_9603_3685> +proj=utm +zone=25 +ellps=intl +units=m +towgs84=-423.024,-172.923,83.830 +wktext +no_defs <> # SOURCE "Instituto Geografico Portugues" DATE 200905 SEE epsg:5035
view raw CRS_PT hosted with ❤ by GitHub

2013-02-27

LUCAS 2009

Land Use / Cover Area Frame Survey


A pedido: apontadores rápidos para a informação relevante sobre o projeto LUCAS (dados de campo de 2009)
Outra documentação anexa aos metadados...
Annex 1 - Nomenclature
Annex 2 - LUCAS 2009 Quality Assurance
Annex 3 - LUCAS Peer Review Final report
Annex 4 - LUCAS 2009 non sampling errors
Annex 5 - LUCAS 2009 Field Form
Annex 6 - LUCAS 2009 Instructions for surveyors
Annex 7 - LUCAS 2009 Quality Control
Annex 8 - LUCAS 2009 Landscape indicators



2013-02-22

Ubuntu para Pais

Cábula para os pais da família... 

... que decidiram instalar o Ubuntu naquele portátil velho lá de casa.

Passo 1 - Ativar o controle de acesso PAM 

Numa janela de terminal, editar o ficheiro lightdm:

  sudo gedit /etc/pam.d/lightdm

E acrescentar no fim a seguinte linha:

account required pam_time.so

(Se o ficheiro lightdm não existir ou estiver vazio, procurar o ficheiro gdm e fazer a mesma coisa)

(PAM = Pluggable Authentication Modules)

Passo 2 - Definir o horário de entrada...


Numa janela de terminal, editar o ficheiro:

  sudo gedit /etc/security/time.conf

E acrescentar no fim do fcheiro as linhas com as permissões pretendidas.
Por exemplo:

*;*;primogenito;Al1500-2200
*;*;junior;Al1500-2100
*;*;benjamim;Al1700-1900

O próprio ficheiro time.conf tem exemplos para outras opções (e.g. só durante o fim-de-semana, só em alguns dias da semana, etc.)

Passo 3 - Definir o horário de saída...

Utiliza-se o utilitário cron para calendarizar tarefas repetitivas (e.g. ser pai).
Neste caso, para obrigar o utilizador a sair, matam-se-lhe todos processos...

Para editar o ficheiro de configuração utiza-se o comando:
  sudo crontab -e

O ficheiro vai abrir num editor de texto muito simples (para sair fazer CTRL+X e gravar as alterações).

00 22 * * * pkill -u primogenito
00 21 * * * pkill -u junior
00 19 * * * pkill -u benjamim


Esta é a abordagem "nem mais 5 minutos" e mata mesmo tudo...
Ah, e não esquecer de carregar no Enter no fim da última linha.

Se quiserem ser simpáticos, é possível avisar antes (depois coloco aqui, mas por agora já deve resolver).

E já agora...

... para impedir alguns utilizadores de calendarizar tarefas periódicas:

Editar o ficheiro cron.deny
   sudo gedit /etc/cron.d/cron.deny
e acrescentar o nome de cada utilizador (um por linha) que não pode usar o cron.

... para impedir utilizadores de calendarizar uma tarefa pontual:
   sudo gedit /etc/cron.d/at.deny
e acrescentar o nome de cada utilizador (um por linha).

(sim é uma guerra, mas vai obrigando ambas as partes a aprender coisas novas)

Fontes:
http://askubuntu.com/questions/68918/how-do-i-restrict-my-kids-computing-time 
http://www.devin.com.br/crontab/
http://linuxconfig.org/Bash_scripting_Tutorial

2013-02-18

Hobbes


"By this it appears that reason is not, as sense and memory, born with us; nor gotten by experience only, as prudence is; but attained by industry: first in apt imposing of names; and secondly by getting a good and orderly method in proceeding from the elements, which are names, to assertions made by connexion of one of them to another; and so to syllogisms, which are the connexions of one assertion to another, till we come to a knowledge of all the consequences of names appertaining to the subject in hand; and that is it, men call science."
[in Leviathan, 1651] 

2013-02-07

GeoServer 2.2.4 - Workaround para o erro com o ImageWorker

O problema (e a solução) estão descritos online... mas para referência futura aqui fica a cábula.

Numa recentente instalação da versão 2.2.4 do GeoServer - numa plataforma Windows 7 de 32-bit com Java 7 JRE - surge o seguinte erro:

java.lang.NoClassDefFoundError: Could not initialize class org.geotools.image.ImageWorker

Could not initialize class org.geotools.image.ImageWorker

O problema deve-se à ausência do ficheiro PYCC.pf na versão Java 7 JRE de 32-bit.
O que já acontece desde uma versão anterior do Java JRE (ver aqui).

O ficheiro está disponível na versão JDK, de onde pode ser copiado:

The limited set of files from the Java SE Development Kit (JDK)
listed below may be included in vendor redistributions of the Java SE
Runtime Environment.  All paths are relative to the top-level
directory of the JDK. The corresponding man pages should be included for
any included executables (with paths listed below beginning with bin/ ,
for the Solaris(TM) Operating System and Linux).
    jre/lib/cmm/PYCC.pf
        Color profile.  This file is required only if one wishes to
        convert between the PYCC color space and another color space.
E pronto. Basta um restart ao GeoServer.

2013-02-01

National Parcel Database

 The Feasibility of Developing a National Parcel Database

Não, não se trata do cadastro em Portugal mas sim nos EUA:
"In 2010, the U.S. Department of Housing and Urban Development (HUD) charted new territory in an effort to develop a national database of standardized parcel-level (property) data collected directly from the most authoritative sources: local counties.
HUD contracted [...] an exploratory project for assembling local assessor data, including key attributes such as property address, assessed value, land use, sales price, and sales history, for 127 targeted counties. The primary tasks of the project included identifying the appropriate data sources in each community, assembling the data and metadata, and standardizing the data in a common format to be accessible for HUD research efforts and for possibly aggregating data to higher levels of geography for public dissemination."
O estudo foi publicado agora e está disponível aqui e tem matéria para reflexão também neste lado do Atlântico.

2013-01-27

reStructured Text

Crónica (e cábula) de uma conversão ao reST

Escrever textos no formato reStructured Text é simples e rápido.
Não nos distrai com a formatação final do documento mas permite criar documentos com muito bom aspeto.
Os documentos são armazenados em ficheiros de texto (com a extensão .txt, .rst) e por isso podem ser produzido no editor de texto que se prefira.
Um documento reST pode ser convertido para html, pdf, latex (ou para odf, se se quiser terminar a edição num processador de texto tradicional).
O documento pode ser simples ou complexo - por exemplo, um relatório com vários capítulos, cada um dos quais num ficheiro de texto independente, e que são agregados e paginados quando convertidos para o formato final de publicação/impressão.

... reST em 5 minutos

Para comuns mortais, só com acesso à Internet e só com 5 minutos para testar, o melhor a fazer é experimentar o Online reStructuredText editor.
O editor permite brincar com a síntaxe na janela da esquerda, enquanto se vê o resultado já formatado em html na janela da direita.
A barra de ferramentas permite aceder ao markup para as opções de formatação mais comuns.
Como é óbvio, é possível fazer copy/paste do texto para (ou de) um documento de texto local.
O código-fonte está disponível no GitHub.

... reST em 15 minutos

Com 15 minutos para gastar e acesso à internet, o editor NoTeX tem uma interface simples e funcional, um conjunto de exemplos informativos e ilustrativos (tanto simples como avançados), e opções para exportar para html, pdf e LaTeX.
É possível usar o NoTeX online ou descarregar uma máquina virtual (o pagamento do download é feito com bitcoins - para o que para info-excluídos desconfiados como eu, não é uma opção com a qual me sinta confortável). Novamente, o código-fonte é aberto e está disponível.

... editores reST para Windows

Notepad++

Se o objectivo é apenas produzir o documento, então qualquer editor de texto serve.
Um favorito pessoal é o Notepad++ - que permite fazer o highlight da síntaxe de várias linguagens de programação ou de markup.
Por omissão, o reST não está incluido nas linguagens reconhecidas pelo Notepad++ - mas existe um plugin disponível aqui. (Curiosamente, feito por um hidrologista transformado em programador SIG).
O plugin não é completo (i.e. não faz o highlight de toda a síntaxe), mas é uma ajuda e uma solução rápida.
Contudo, utilizar o Notepad++ não permite:
  • validar a síntaxe enquanto se escreve (e.g. como no Online reStructuredText editor);
  • converter para outros formatos (html, pdf, ...);
  • espreitar de vez em quando como é que o documento vai sair impresso (o que manifestamente deixa nervosas as pessoas habituadas ao WYSIWYG...)

Para o comum dos mortais (não-programador)...

Alternativas a explorar (e a documentar asap ou seja antes que me esqueça):
Aparentemente, qualquer destas opções requer a instalação do Sphinx ou do docutils para exportar o texto. (Hoje já não vai dar tempo...)

... mais informação em 

2013-01-04

Conversão lossless para JPEG2000


Mais uma cábula... 


o objetivo é armazenar ortofotomapas num formato compacto, para arquivo de segurança: as conversões de formato devem ser  "lossless", i.e. sem alteração da qualidade ou resolução da imagem.

Input

Cada imagem tem 8000 x 10000 células, 4 bandas (RGBI) com um byte por banda.
Está armazenada em formato TIF (band interleaved by pixel).
A informação de referenciação está num "world file" (idêntico "filename" e extensão TFW).
As células quadradas têm dimensão 0.5m no terreno, o centro das células está registado à origem do sistema de eixos coordenados, a matriz de transformação não tem componente de rotação.
Não existe informação quanto ao SRS, seja no "header" do ficheiro de imagem, seja num qualquer ficheiro externo (.prj, .wkt). Os metadados indicam contudo o sistema de referência PT-TM06 (epsg:3763).

Passo 1

Transferir para o "header" do ficheiro de imagem toda a informação de referenciação (incluindo informação de definição do SRS - armazenada para tal num ficheiro "epsg3763.wkt" no formato OGC WKT).

O processamento em batch usa a versão 1.9.2 do GDAL. O comando tem a forma:
gdal_translate -of GTIFF -a_srs epsg3763.wkt input.tif output.tif
O utilitário gdal_translate reconhece a presença do ficheiro tfw associado a cada imagem tif.

Utilizando o gdalinfo sobre o ficheiro output.tif verifica-se que a 4ª banda está a ser tratada e marcada como um alpha channel (i.e. uma máscara de transparência) - o que não corresponde à verdade (é uma banda de infravermelho próximo).

Consultando a documentação em http://www.gdal.org/frmt_gtiff.html, verifica-se que para versões anteriores à 1.10, a primeira banda extra é sempre marcada como "ALPHA".

Conclusão: passou a utilizar-se a versão 1.10 do GDAL disponível em http://www.gisinternals.com/sdk/Download.aspx?file=release-1600-x64-gdal-mapserver.zip

O comando aplicável passa a ser:
gdal_translate -of GTIFF -a_srs epsg3763.wkt -co ALPHA=UNSPECIFIED input.tif output.tif

Passo 2

A conversão "lossless" para JP2000 sem perda pode ser realizada no GDAL_TRANSLATE com o "driver" JP2ECW. O comando tem a forma:
gdal_translate -of JP2ECW -co TARGET=0 input.tif output.jp2
As condições de licenciamento do ECW 3.3 SDK permitem a conversão de imagens inferiores a 500MB.

Alternativas não testadas

Utilizar GDAL_TRANSLATE compilado com o "driver" JPEG2000, baseado na biblioteca JasPer.

Tentativas sem sucesso (por enquanto)...

1) A conversão com o GDAL 1.10 usando o "driver" JP2OpenJPEG não é possível sobre imagens com 4 bandas. O comando teria a forma:
gdal_translate -of JP2OpenJPEG -co REVERSIBLE=TRUE input.tif output.jp2

2) Em situações anteriores, utilizou-se o software GeoJasper, baseado na biblioteca JasPer e disponível em http://www.dimin.net/software/geojasper/
O comando tem a forma:
"C:\Programs\geojasper_win32\geojasper" -f input.tif -F output.jp2 -T jp2
Na presente tentativa, o utilitário deu problemas e não completa as conversões (possivelmente devido a incompatibilidade com o SO de 64bit?).

3) Teoricamente, numa conversão "lossless" para JP2000 seria possível utilizar a biblioteca Kakadu.
Em Windows, o utilitário kdu_compress (entre outros) está disponível em http://www.kakadusoftware.com
O comando tem a forma:
"C:\Program Files (x86)\Kakadu\kdu_compress" -i input.tif -o output.jp2 Creversible=yes
A informação de referenciação é transferida do "header" do ficheiro tif para o "header" do ficheiro jp2.

Contudo, a imagem resultante TEM PERDAS E É VISUALMENTE DIFERENTE DO ORIGINAL.
Não foi possível encontrar uma solução para o problema.

4) Alternativamente, o pacote FWTools 2.10 para Windows suporta JP2000 através da bibliteca kakadu.
As versões superiores não incluem o "driver" JP2KAK.
A versão 2.10 está disponível em http://home.gdal.org/fwtools/ .

As opções suportadas encontram-se em http://www.gdal.org/frmt_jp2kak.html
O comando tem a forma:
gdal_translate -of JP2KAK -co QUALITY=100 input.tif output.jp2

Novamente, a opção QUALITY=100, que deveria realizar a conversão "lossless", origina perdas na imagem. O problema já não é perceptível (visualmente) com uma compressão de 99%...
gdal_translate -of JP2KAK -co QUALITY=99 input.tif output.jp2

Nota sobre a extensão jp2:

The standardized filename extension is .jp2 for ISO/IEC 15444-1 conforming files and .jpx for the extended part-2 specifications, published as ISO/IEC 15444-2.
The registered MIME types are defined in RFC 3745. For ISO/IEC 15444-1 it is image/jp2.

Links + úteis ...

Toda a sequência de posts em http://blog.viasig.com: