Hi John,

I think it's fine to use 'views' but you'll need to amend geometry_columns
table with appropriate metadata.
Best
Artem

2009/11/23 John Mitchell <[email protected]>

> Hi,
>
> I experimenting with different ways of calling some layers within my
> osm_4326.xml (map) file to see if I can get better performance for the
> "minor-roads-fill" open street map layer.
>
> I have created a materialized view within postgres based on the query that
> the osm_4326.xml "minor-roads-fill" layer uses and also a normal view and
> also generated a shape file based on the view.  None of the 3 new ways for
> the <Datasource> show anything for the "minor-roads-fill" layer.
>
> I have listed below an example where I call the materialized view this one
> has the fields listed (I have also tried select *) and below that commented
> out is the normal way of calling the <Datasource> which has always worked.
>
> Any ideas why only the "planet_osm_line" table method works?
>
> Thanks,
>
> John
>
> <Layer name="minor-roads-fill" status="on" srs="+proj=longlat +ellps=WGS84
> +datum=WGS84 +no_defs">
>     <StyleName>minor-roads-fill-links</StyleName>
>     <StyleName>minor-roads-fill</StyleName>
>     <Datasource>
>       <Parameter name="type">postgis</Parameter>
>       <Parameter name="user">postgres</Parameter>
>       <Parameter name="password">postgres</Parameter>
>       <Parameter name="dbname">osm_4326</Parameter>
>       <Parameter name="table">
>       (select
> way,highway,horse,bicycle,foot,construction,railway,aeroway,service,tunnel,bridge
> from minor_roads_fill_mv) as roads
>       </Parameter>
>       <Parameter name="estimate_extent">false</Parameter>
>       <Parameter
> name="extent">-20037508,-19929239,20037508,19929239</Parameter>
>     </Datasource>
> </Layer>
>
> <!--
> <Layer name="minor-roads-fill" status="on" srs="+proj=longlat +ellps=WGS84
> +datum=WGS84 +no_defs">
>     <StyleName>minor-roads-fill-links</StyleName>
>     <StyleName>minor-roads-fill</StyleName>
>     <Datasource>
>       <Parameter name="type">postgis</Parameter>
>       <Parameter name="user">postgres</Parameter>
>       <Parameter name="password">postgres</Parameter>
>       <Parameter name="dbname">osm_4326</Parameter>
>       <Parameter name="table">
>       (select
> way,highway,horse,bicycle,foot,construction,railway,aeroway,service,
>        case when tunnel in ('yes','true','1') then 'yes'::text else tunnel
> end as tunnel,
>        case when bridge in ('yes','true','1') then 'yes'::text else bridge
> end as bridge
>        from planet_osm_line
>        where highway is not null
>           or aeroway in ('runway','taxiway')
>           or railway in
> ('light_rail','narrow_gauge','funicular','rail','subway','tram','spur','siding','platform')
>        order by z_order) as roads
>       </Parameter>
>       <Parameter name="estimate_extent">false</Parameter>
>       <Parameter
> name="extent">-20037508,-19929239,20037508,19929239</Parameter>
>     </Datasource>
> </Layer>
> -->
>
>
> _______________________________________________
> Mapnik-users mailing list
> [email protected]
> https://lists.berlios.de/mailman/listinfo/mapnik-users
>
>
_______________________________________________
Mapnik-users mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/mapnik-users

Reply via email to