[GRASS-user] Re: [Proj] trouble transforming corine landcover raster projection Lambert laea to lcc

Dear Hamish and Yves,

Results OK on one hand and screwed up on the other:

In the corineurope location try

g.region rast=fc

and then go back into your franceLIIe mapset and try again.

has not been conclusive, BUT

another trick is in your source location (corine) zoom around your map
and run v.in.region to make a box, then in Lambert location use v.proj
to import the box, then "g.region vect=box" to get the zoom ready for
the raster map.

Worked excellent…

So definitely one can go a step further with this improved definition of GRASS regions (thanks for the trick, will be most helpful, Hamish),

HOWEVER,

The raster obtained failed to fall into the right coordinate range… which may well fit with Yves’ remark:

This not a lambert 2 etendu region. 1 000 000 diffents to the west (I may be wrong)

I am a bit loosing my mind on that. The shapefiles given by BD carto have a coordinate range and projections given to be “Lambert II etendu” (eg Besancon is 2256000 880000) and corine landcover has Lambert Azimutal Equal Area. I have parametrized projections from indications given on Corine and IGN notices respectively. To sum up, within the Corine Land Cover I have got this region for the Franche-Comte window:

GRASS 6.0.2 (corineurope):~ > g.region -p
projection: 99 (Lambert Azimuthal Equal Area)
zone: 0
datum: ** unknown (default: WGS84) **
ellipsoid: grs80
north: 2781245
south: 2571341
west: 3952172
east: 4110683
nsres: 100.00190567
ewres: 100.00694006
rows: 2099
cols: 1585

An acceptable window in for France in Lambert II etendu would be
north: 2677442
south: 1620430
west: 47679
east: 1197823

When I project from what I believe to be Corine Land Cover to what I believe to be Lambert II etendu, I get this region for the Franche-Comte region:

GRASS 6.0.2 (franceLambertIIe):~ > g.region -p
projection: 99 (Lambert Conformal Conic)
zone: 0
datum: ** unknown (default: WGS84) **
ellipsoid: clark80
north: 5781377.23822138
south: 5575874.90520341
west: 5197476.01104252
east: 5391683.44065733
nsres: 100.00113529
ewres: 100.00382575
rows: 2055
cols: 1942

Which is really crazy…

Any suggestion welcome,

Best regards,

Patrick

Hamish a écrit :

Patrick Giraudoux wrote:
  
GRASS 6.0.2 (franceLIIe):~ > r.proj input=fc location=corineurope 
mapset=giraudoux output=fc
    

In the corineurope location try

g.region rast=fc

and then go back into your franceLIIe mapset and try again.

another trick is in your source location (corine) zoom around your map
and run v.in.region to make a box, then in Lambert location use v.proj
to import the box, then "g.region vect=box" to get the zoom ready for
the raster map.

good luck,
Hamish

  

Hi Patrick,

I succeed to import Corine Land Cover inside GRASS wittout problem.

First of all, you need to create correct projection for your location. Both of
them seems to me incorrecte. Here what I get for my location where I import
corine Land Cover :
-PROJ_INFO-------------------------------------------------
name : Lambert Conformal Conic
proj : lcc
a : 6378249.2
es : 0.0068034876
lat_1 : 45.89891888901534
lat_2 : 47.69601444454726
lat_0 : 46.8000000000016
lon_0 : 2.3372291666985
x_0 : 600000
y_0 : 2200000
towgs84 : -168,-60,320,0,0,0,0
no_defs : defined
-PROJ_UNITS------------------------------------------------
unit : Meter
units : Meters
meters : 1

Which is really different from yours. I imported some other data from other
data provider as well (town, ...) and it seems correct.

Your projection seems to be WGS84 (not defined so default used) and so you got
some error (latlong begin -180,-90 to 180,90).

When you create a projection, you can try to use EPSG code (27572 for lambert
2 et.), use french country as region (bbox). If you use raster data, take
care of the resolution of your region.

Regards,

Y.
PS : why do you talk about raster for corrine land cover? This is a vector
file! isn't ?
Le Lundi 26 Mars 2007 18:28, Patrick Giraudoux a écrit :

Dear Hamish and Yves,

Results OK on one hand and screwed up on the other:
> In the corineurope location try
>
> g.region rast=fc
>
>
> and then go back into your franceLIIe mapset and try again.

has not been conclusive, BUT

> another trick is in your source location (corine) zoom around your map
> and run v.in.region to make a box, then in Lambert location use v.proj
> to import the box, then "g.region vect=box" to get the zoom ready for
> the raster map.

Worked excellent...

So definitely one can go a step further with this improved definition of
GRASS regions (thanks for the trick, will be most helpful, Hamish),

HOWEVER,

The raster obtained failed to fall into the right coordinate range...

which may well fit with Yves' remark:
> This not a lambert 2 etendu region. 1 000 000 diffents to the west (I may
> be wrong)

I am a bit loosing my mind on that. The shapefiles given by BD carto
have a coordinate range and projections given to be "Lambert II etendu"
(eg Besancon is 2256000 880000) and corine landcover has Lambert
Azimutal Equal Area. I have parametrized projections from indications
given on Corine and IGN notices respectively. To sum up, within the
Corine Land Cover I have got this region for the Franche-Comte window:

GRASS 6.0.2 (corineurope):~ > g.region -p
projection: 99 (Lambert Azimuthal Equal Area)
zone: 0
datum: ** unknown (default: WGS84) **
ellipsoid: grs80
north: 2781245
south: 2571341
west: 3952172
east: 4110683
nsres: 100.00190567
ewres: 100.00694006
rows: 2099
cols: 1585

An acceptable window in for France in Lambert II etendu would be
north: 2677442
south: 1620430
west: 47679
east: 1197823

When I project from what I believe to be Corine Land Cover to what I
believe to be Lambert II etendu, I get this region for the Franche-Comte
region:

GRASS 6.0.2 (franceLambertIIe):~ > g.region -p
projection: 99 (Lambert Conformal Conic)
zone: 0
datum: ** unknown (default: WGS84) **
ellipsoid: clark80
north: 5781377.23822138
south: 5575874.90520341
west: 5197476.01104252
east: 5391683.44065733
nsres: 100.00113529
ewres: 100.00382575
rows: 2055
cols: 1942

Which is really crazy...

Any suggestion welcome,

Best regards,

Patrick

Hamish a écrit :
> Patrick Giraudoux wrote:
>> GRASS 6.0.2 (franceLIIe):~ > r.proj input=fc location=corineurope
>> mapset=giraudoux output=fc
>
> In the corineurope location try
>
> g.region rast=fc
>
>
> and then go back into your franceLIIe mapset and try again.
>
>
> another trick is in your source location (corine) zoom around your map
> and run v.in.region to make a box, then in Lambert location use v.proj
> to import the box, then "g.region vect=box" to get the zoom ready for
> the raster map.
>
>
> good luck,
> Hamish

--
Yves Jacolin
-------------
http://yjacolin.gloobe.org
http://softlibre.gloobe.org

On Sun, Apr 08, 2007 at 02:50:59PM +0200, Yves Jacolin wrote:

Hi Patrick,

I succeed to import Corine Land Cover inside GRASS wittout problem.

First of all, you need to create correct projection for your location. Both of
them seems to me incorrecte. Here what I get for my location where I import
corine Land Cover :
-PROJ_INFO-------------------------------------------------
name : Lambert Conformal Conic
proj : lcc

I don't think that this is correct.

Corine data are to my knowledge in ETRS89-LAEA, not LCC:

GRASS 6.3.cvs (eu_laea):~ > g.proj -w
PROJCS["Lambert Azimuthal Equal Area",
    GEOGCS["grs80",
        DATUM["European_Terrestrial_Reference_System_1989",
            SPHEROID["Geodetic_Reference_System_1980",6378137,298.257222101],
            TOWGS84[0.000,0.000,0.000]],
        PRIMEM["Greenwich",0],
        UNIT["degree",0.0174532925199433]],
    PROJECTION["Lambert_Azimuthal_Equal_Area"],
    PARAMETER["latitude_of_center",52],
    PARAMETER["longitude_of_center",10],
    PARAMETER["false_easting",4321000],
    PARAMETER["false_northing",3210000],
    UNIT["meter",1]]

This corresponds to ETRS89 / ETRS-LAEA: EPSG 3035.

[...]

> GRASS 6.0.2 (corineurope):~ > g.region -p
> projection: 99 (Lambert Azimuthal Equal Area)
> zone: 0
> datum: ** unknown (default: WGS84) **

This datum recognition error I have fixed last year:

2006-11-07 13:51 markus
        * convert.c: Handle non-standard ETRS_1989 datum name

I think that it is relevant. Please update to GRASS 6.2.1
to get the fix.

Hope this helps,
Markus

Hi Markus,

May be it depends from where you downloaded the data. For my corine Land Cover
file, I downloaded from here :
http://www.ifen.fr/donIndic/Donnees/corine/presentation.htm

Where it indicates that clc2000_fr got a Lambert conforme, zone II étendu
projection :
http://www.ifen.fr/donIndic/Donnees/corine/methode.htm (bottom of the page, in
the table).

All links are un french, sorry.

IFEN is the French Institute for ENvironments which publish the corine Land
Cover data for france. I think they changed the projection to adapt it to the
IGN data (ie BD topo, always info from the website).

My clc2000_fr data give me this infirmations :

Layer name: clc00_fr
Geometry: Polygon
Feature Count: 270465
Extent: (37256.000205, 1607395.375873) - (1207902.000605, 2687734.936295)
Layer SRS WKT:
PROJCS["NTF_Lambert_II_étendu",
    GEOGCS["GCS_NTF",
        DATUM["Nouvelle_Triangulation_Francaise",
            SPHEROID["Clarke_1880_IGN",6378249.2,293.46602]],
        PRIMEM["Greenwich",0.0],
        UNIT["Degree",0.0174532925199433]],
    PROJECTION["Lambert_Conformal_Conic_1SP"],
    PARAMETER["False_Easting",600000.0],
    PARAMETER["False_Northing",2200000.0],
    PARAMETER["Central_Meridian",2.3372291667],
    PARAMETER["Standard_Parallel_1",45.8989188889],
    PARAMETER["Standard_Parallel_2",47.6960144444],
    PARAMETER["Scale_Factor",1.0],
    PARAMETER["Latitude_Of_Origin",46.8],
    UNIT["Meter",1.0]]
CODE_00: String (3.0)

Actually the question is from where Patrick downloaded his data?

Regards,

Y.
Le Dimanche 8 Avril 2007 21:16, Markus Neteler a écrit :

On Sun, Apr 08, 2007 at 02:50:59PM +0200, Yves Jacolin wrote:
> Hi Patrick,
>
> I succeed to import Corine Land Cover inside GRASS wittout problem.
>
> First of all, you need to create correct projection for your location.
> Both of them seems to me incorrecte. Here what I get for my location
> where I import corine Land Cover :
> -PROJ_INFO-------------------------------------------------
> name : Lambert Conformal Conic
> proj : lcc

I don't think that this is correct.

Corine data are to my knowledge in ETRS89-LAEA, not LCC:

GRASS 6.3.cvs (eu_laea):~ > g.proj -w
PROJCS["Lambert Azimuthal Equal Area",
    GEOGCS["grs80",
        DATUM["European_Terrestrial_Reference_System_1989",
           
SPHEROID["Geodetic_Reference_System_1980",6378137,298.257222101],
TOWGS84[0.000,0.000,0.000]],
        PRIMEM["Greenwich",0],
        UNIT["degree",0.0174532925199433]],
    PROJECTION["Lambert_Azimuthal_Equal_Area"],
    PARAMETER["latitude_of_center",52],
    PARAMETER["longitude_of_center",10],
    PARAMETER["false_easting",4321000],
    PARAMETER["false_northing",3210000],
    UNIT["meter",1]]

This corresponds to ETRS89 / ETRS-LAEA: EPSG 3035.

[...]

> > GRASS 6.0.2 (corineurope):~ > g.region -p
> > projection: 99 (Lambert Azimuthal Equal Area)
> > zone: 0
> > datum: ** unknown (default: WGS84) **

This datum recognition error I have fixed last year:

2006-11-07 13:51 markus
        * convert.c: Handle non-standard ETRS_1989 datum name

I think that it is relevant. Please update to GRASS 6.2.1
to get the fix.

Hope this helps,
Markus

_______________________________________________
grassuser mailing list
grassuser@grass.itc.it
http://grass.itc.it/mailman/listinfo/grassuser

--
Yves Jacolin
-------------
http://yjacolin.gloobe.org
http://softlibre.gloobe.org