[postgis-tickets] [PostGIS] #3318: ST_MapAlgebra with mask seems to hard-code distance 1 instead of inferring distance from mask matrix

PostGIS trac at osgeo.org
Mon Oct 5 22:02:30 PDT 2015


#3318: ST_MapAlgebra with mask seems to hard-code distance 1 instead of inferring
distance from mask matrix
---------------------+---------------------------
 Reporter:  robe     |      Owner:  pramsey
     Type:  defect   |     Status:  new
 Priority:  medium   |  Milestone:  PostGIS 2.3.0
Component:  postgis  |    Version:  trunk
 Keywords:           |
---------------------+---------------------------
 I've moved this from the now closed mask documentation #2603 to here


 {{{
 DROP TABLE IF EXISTS shapes;
 CREATE TABLE shapes(rid integer, rast raster);

 INSERT INTO shapes(rid,rast)
 VALUES ( 1, ST_AsRaster(
                 ST_Buffer(
                         ST_GeomFromText('LINESTRING(50 50,150 150,150
 50)'), 10,'join=bevel'),
                         200,200,ARRAY['8BUI'], ARRAY[118], ARRAY[0]) );

  SELECT st_mapalgebra(rast,1,'st_mean4ma(double precision[], int[],
 text[])'::regprocedure,'{{1,0,1,1,1}, {1,0,1,1,1}, {1,0,1,1,1},
 {1,0,1,1,1}, {1,0,1,1,1}}'::double precision[],false)
 FROM shapes;
 }}}

 Gives error:


 {{{
 ERROR:  rt_pixel_set_array: mask dimensions 5 x 5 do not match given dims
 3 x 3
 }}}


 It's my understanding based on dusty's comments that the neighborhood size
 should be inferred from the mask size, so there seems to me something
 wrong here.


 Bborie's comments copied from other ticket

 ----


 Distance is two pixels left, right, up, down from the pixel of interest...


 {{{
 2 2 2 2 2
 2 1 1 1 2
 2 1 0 1 2
 2 1 1 1 2
 2 2 2 2 2
 }}}


 So the distance x/y are correct. As for that error message, I'll need to
 dig.

 ----

--
Ticket URL: <https://trac.osgeo.org/postgis/ticket/3318>
PostGIS <http://trac.osgeo.org/postgis/>
The PostGIS Trac is used for bug, enhancement & task tracking, a user and developer wiki, and a view into the subversion code repository of PostGIS project.


More information about the postgis-tickets mailing list