Closed GoogleCodeExporter closed 9 years ago
Add a specific layer buffer tool that selects features in one layer, buffers
them, and then can be used to select features in another layer (through
configuration this can be used as an abutter’s list tool)
MassGIS would like to provide a tool to generate an abutters notification list.
However, to also be able to provide a more generic buffer/select tool for
other applications MassGIS would like to design the tool to be configurable.
The following describes the workflow and requirements.
- This tool would be an additional tool on the toolbar to the right of the
Filter Builder tool (if shown).
- The icon should be a “buffer” type of picture. (A shape within a shape,
with the outlines being different colors perhaps.)
- The tool should be configurable to be active on two specific datalayers.
(Configurable by MassGIS in a config file, the user does not get to choose the
two datalayers). Note that the datalayers may be either SDE or shapefile
datalayers.
(“select datalayer”) - datalayer that the user will select features in.
Those features will be unioned if necessary and buffered to form a select shape
(“buffer result datalayer”) - datalayer that the select shape is applied
against to select features
Those two datalayers could be the same in the case of selecting a parcel and
wanting to select other parcels within 300 feet. Or they could be different
in the case of selecting a road segment and wanting to select parcels within 50
feet of the road segement.
- Similar to the Filter Builder tool once the user choses the tool the the
“select datalayer” and (“buffer result datalayer”) should be added to
the map if they are not already there.
- Ask the user the type of unit - provide drop down with the standard list from
the measure tool - miles, feet, meters, etc
- Ask the user the amount of unit - provide a box that only accepts numerals.
- Just like the Identify tool the user should be able to draw a box to select
features in the “select datalayer”.
- If the “select datalayer” is “out of scale” which would be indicated
by the yellow exclamation point the user should be told the same message as the
filter tool “not visible at scale”. (same identify code)
- If the “select datalayer” is “in scale” highlight the features in
orange as the identify tool already does
- If more than one feature (parcel) is selected let the user know if it is more
than X where X is a number configurable by MassGIS. Grey out a “Select”
button which would do the union (if necessary and selection of features in the
“buffer result datalayer”).
- Apply a filter query for the “select datalayer” (see below for more info)
so that unacceptable features are dropped before Union
- If more than one feature (parcel) is selected union the features using a
union operation (possibly in-browser, possibly using the GeoServer WPS server
at https://wiki.state.ma.us/confluence/display/massgis/GeoServer+-+WPS+-+Union)
- Buffer the selected feature (or geometry results of the unioned features)
using a buffer opreation (possibly in-browser, possibly using the GeoServer WPS
Buffer request
https://wiki.state.ma.us/confluence/display/massgis/GeoServer+-+WPS+-+Buffer+-+P
olygon+-+Quadrant+Segments)
- Display the buffered shape symbolized by a thin red outline with light red
shading (same as the select box that shows during a regular Identify)
- Submit a WFS query to calculate how many features would return. If > 500
features would return inform the user that there are > 500 features selected
which is too many to continue with the buffered selection process.
- If < 500 features would return, submit a WFS request using that buffered
geometry to select features in the “buffer result datalayer”, only
requesting the attributes in the configurable attribute list.
- Filter features in the output set based on the filter query for the “buffer
result datalayer”
- If the “buffer result datalayer” is the same datalayer as the “select
datalayer”, drop the original selected feature from the “select
datalayer”. (An abutter’s list of parcels within a distance from parcel A
does not need to contain parcel A).
Things that should be configurable in a toolConfig_buffer.js or other config
files:
- whether the tool is visible (show/hide)
- datalayer (“select datalayer”) - datalayer that the user will select
features in. Those features will be unioned if necessary and buffered to form
a select shape
- datalayer (“buffer result datalayer”) - datalayer that the select shape
is applied against to select features
Those two datalayers could be the same in the case of selecting a parcel and
wanting to select other parcels within 300 feet. Or they could be different
in the case of selecting a road segment and wanting to select parcels within 50
feet of the road segement.
- max features allowed to be selected in the “select datalayer”
(We do not want to let the user select unlimited features in the select
datalayer.)
- filter query for the “select datalayer”
In the case of parcels we don’t want the user to be be able to select and
then buffer on parcels that are POLY_FEE=”ROW”. (We want the user to
select parcels that are POLY_FEE <> “ROW”.) The datalayer will necessarily
contain some of these types and the datalayer will not be symbolized to show
the types so it will be difficult for the user to customize their selection by
being instructed to unselect. We would prefer to do this programmatically.
MassGIS will explain in documentation what is happening but does not want to
force the user to customize their selection. If the user has any
POLY_FEE=”ROW” in their set of parcels to buffer, drop them out before
doing the union. If the only parcel the user select is POLY_FEE=”ROW”
inform them that their selection “does not meet the criteria”.
MassGIS is using a spatial view called GISDATA.L3_TAXPAR_POLY_ASSESS which
drops out the majority of the water, road and rail features but some are still
included.
Original comment by Aleda.Fr...@state.ma.us
on 22 Apr 2013 at 1:04
This corresponds to Task Order 5 enhancement 4
Original comment by Aleda.Fr...@state.ma.us
on 22 Apr 2013 at 1:04
[deleted comment]
With r460 I have made a 1st cut at this. I know you'll have comments and
feedback for me. You are welcome to poke around on your own or ping me for a
screen share test drive. I am doing all the unioning and filtering client-side.
Original comment by cpl...@gmail.com
on 1 May 2013 at 4:27
Aleda, I don't think you copied over a new subdir that is necessary for this to
work.
js/jsts/
Original comment by cpl...@gmail.com
on 10 May 2013 at 8:47
You're right, I had it at the wrong level....
Original comment by Aleda.Fr...@state.ma.us
on 10 May 2013 at 8:48
Keeping it for now on how you set it up with school districts and schools.
I see the 500 limit, that works (it won't let me get > 500 schools as a result).
However, after I hit that then I can't seem to get the tool to work again.
Here's how:
1) open http://maps.massgis.state.ma.us/map_ol_to5/oliver.php
2) click the tool (2 layers are added)
3) choose 300 and miles
4) click somewhere in the middle of the state
5) get message "This data layer has over 500 features..."
6) click OK
7) close the identify results window
8) change 300 to 3
9) click somewhere in the middle of the state
10) get message "This data layer has zero features..."
Shouldn't it redo it OK? Because if I don't hit the 500 I can do one distance
after another in this manner and it recalculates fine.
Original comment by Aleda.Fr...@state.ma.us
on 13 May 2013 at 5:57
Aleda, I promise I followed those instructions 100%. But I am getting the
desired results, not the zero features business.
Original comment by cpl...@gmail.com
on 13 May 2013 at 6:11
I'm using FF 20.0.1 BTW.
Maybe I didn't write down everything correctly. I did it 2 or 3 times though
with the same result. Want to watch me do it through joinme?
Original comment by Aleda.Fr...@state.ma.us
on 13 May 2013 at 6:14
When the select data layer and the buffer result data layer are the same layer
the results should exclude the features in the select data layer used to
buffer. Maybe you haven't implemented that part yet? I set the result data
layer to also be Elementary School Districts, choose 1 mile and clicked in
Truro. I correctly get the neighboring districts selected but I also get
Truro. The task order says "If the “buffer result datalayer” is the same
datalayer as the “select datalayer”, drop the original selected feature
from the “select datalayer”. (An abutter’s list of parcels within a
distance from parcel A does not need to contain parcel A"
Original comment by Aleda.Fr...@state.ma.us
on 13 May 2013 at 6:28
It should actually read _original selected features_ plural in case I select
more than one...
Original comment by Aleda.Fr...@state.ma.us
on 13 May 2013 at 6:29
Right, not implemented yet. If you shoot me a joinme link, I'll watch you
reproduce your comment 7.
Original comment by cpl...@gmail.com
on 13 May 2013 at 6:32
Aleda, would you mind testing r467? And also include an out-of-scale layer
just to be safe since it should trip the same wire as the > 500 features.
Original comment by cpl...@gmail.com
on 13 May 2013 at 7:35
A small thing... when I click on the Buffer Identify tool it adds the 2 layers
(select data layer and buffer result data layer). This is great. However, if
I eventually delete either layer from my Active Data Layers in a session and I
click the Buffer Identify tool again it doesn't add them back.
Original comment by Aleda.Fr...@state.ma.us
on 13 May 2013 at 7:35
r467 seems to fix the issue of "zero features" after > 500 features attempt. I
also tried with an out-of-scale layer as the select data layer or an
out-of-scale layer a the buffer result data layer and those got the appropriate
error messages still as well.
Original comment by Aleda.Fr...@state.ma.us
on 13 May 2013 at 7:43
How would I make a more complicated filter for the select data layer? (or is
that not implemented yet?). Excluding Weston works fine.
toolSettings.identifyBuffer.selectDataLayerFilter = function(attrs) {
return attrs['DISTNAME'] != 'Weston';
};
But how could I exclude Weston and Wayland? I've tried various options with no
luck:
return attrs['DISTNAME'] != 'Weston' or 'Wayland';
return attrs['DISTNAME'] != 'Weston' || 'Wayland';
return attrs['DISTNAME'] != 'Weston';
return attrs['DISTNAME'] != 'Wayland';
Original comment by Aleda.Fr...@state.ma.us
on 13 May 2013 at 8:04
Tried
toolSettings.identifyBuffer.bufferResultDataLayerFilter = function(attrs) {
return attrs['TOWN'] != 'BEDFORD';
};
to filter school buildings result but it doesn't work yet, I'm probably getting
ahead...
Original comment by Aleda.Fr...@state.ma.us
on 13 May 2013 at 8:08
How to exclude Weston and Wayland?
return attrs['DISTNAME'] != 'Weston' && attrs['DISTNAME'] != 'Wayland';
Original comment by cpl...@gmail.com
on 13 May 2013 at 8:33
One quirk - after I use the Buffer Identify the regular draw a box identify
tries to buffer as well (the draw a polygon identify behaves like normal though
and so does the right-click simple identify).
For example.
Open http://maps.massgis.state.ma.us/map_ol_to5/oliver.php
Add a vector layer and do a regular box identify - it works fine.
Click the Buffer Identify tool and do a 1 mile buffer for example of schools by
district - works fine
Now go back to trying to use the regular box identify - it does step 1
(counting features OK) but then when you pick one of the vector layers (any one
I think) it does a buffer ...
Original comment by Aleda.Fr...@state.ma.us
on 13 May 2013 at 8:34
r468 for filtering out the original geom
Original comment by cpl...@gmail.com
on 13 May 2013 at 8:35
Yes! #18 works great
Original comment by Aleda.Fr...@state.ma.us
on 13 May 2013 at 8:35
#18 even mixing 2 attributes works
return attrs['DISTNAME'] != 'Weston' && attrs['ENDGRADE'] != '12';
Original comment by Aleda.Fr...@state.ma.us
on 13 May 2013 at 8:39
r469 to address 14
Original comment by cpl...@gmail.com
on 13 May 2013 at 8:43
#19 should also be fixed . . . twas a bug I introduced :(
Original comment by cpl...@gmail.com
on 13 May 2013 at 8:44
r468 works - filtering out the original geom (when select data layer and buffer
result data layer are the same)
Original comment by Aleda.Fr...@state.ma.us
on 13 May 2013 at 8:47
#14 fixed - 2 layers added whenever button is clicked if either is missing
Original comment by Aleda.Fr...@state.ma.us
on 13 May 2013 at 8:47
#19 seems fixed now (busted regular identify after buffer identify used)
Original comment by Aleda.Fr...@state.ma.us
on 13 May 2013 at 8:49
[deleted comment]
See comments for r470 for improvements. Especially the changes to
toolConfig_oliver.js.
Original comment by cpl...@gmail.com
on 14 May 2013 at 7:46
A save as Excel or CSV WFS request fails at the Gateway when it validates
against the XSD.
Here's what a normal request looks like in regular OLIVER to download 3 school
district features:
<wfs:GetFeature outputFormat="excel2007" xmlns:wfs="http://www.opengis.net/wfs"
service="WFS" version="1.1.0" xsi:schemaLocation="http://www.opengis.net/wfs
http://schemas.opengis.net/wfs/1.1.0/wfs.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<wfs:Query typeName="massgis:GISDATA.SCHOOLDISTELEM_POLY" srsName="EPSG:26986"
xmlns:massgis="http://massgis.state.ma.us/featuretype">
<ogc:Filter xmlns:ogc="http://www.opengis.net/ogc">
<ogc:FeatureId fid="GISDATA.SCHOOLDISTELEM_POLY.239"></ogc:FeatureId>
<ogc:FeatureId fid="GISDATA.SCHOOLDISTELEM_POLY.101"></ogc:FeatureId>
<ogc:FeatureId fid="GISDATA.SCHOOLDISTELEM_POLY.267"></ogc:FeatureId>
</ogc:Filter>
</wfs:Query>
</wfs:GetFeature>
Here's what the request looks like after the BufferIdentify:
<wfs:GetFeature outputFormat="excel2007" xmlns:wfs="http://www.opengis.net/wfs"
service="WFS" version="1.1.0" xsi:schemaLocation="http://www.opengis.net/wfs
http://schemas.opengis.net/wfs/1.1.0/wfs.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<wfs:Query typeName="massgis:GISDATA.SCHOOLDISTELEM_POLY" srsName="EPSG:26986"
xmlns:massgis="http://massgis.state.ma.us/featuretype">
<ogc:Filter xmlns:ogc="http://www.opengis.net/ogc">
<ogc:FeatureId></ogc:FeatureId>
</ogc:Filter>
</wfs:Query>
</wfs:GetFeature>
and I get this message from the Gateway:
<gis-service xmlns:date="http://exslt.org/dates-and-times"><error>***86235122
http://170.63.98.116:8083/geoserver/wfs: cvc-complex-type 4: required attribute
fid is missing in element {http://www.opengis.net/ogc}FeatureId of type
{http://www.opengis.net/ogc}FeatureIdType***</error></gis-service>
Original comment by Aleda.Fr...@state.ma.us
on 14 May 2013 at 8:39
I can see the effect changing quadrant segments has.
I can see the filter for buffer result datalayer working.
I can see the subset of fields for buffer result datalayer working.
I wonder if to fix #30 I need to add in another field? I tried adding in
"SHAPE" but that did not help.
Original comment by Aleda.Fr...@state.ma.us
on 14 May 2013 at 8:40
#30 was a bit hairy. Please see if r471 does the trick.
Original comment by cpl...@gmail.com
on 15 May 2013 at 12:39
Getting there! The download to .xls, .xlsx and .csv works now, but the
download should respect the same column/field subset that the identify table
does. In our real life example, Mr. Assessor needs to make a mailing list for
abutters of parcel X. He just wants the name and mailing address in his
spreadsheet of the parcels.
Original comment by Aleda.Fr...@state.ma.us
on 15 May 2013 at 1:29
Hmm. I'll poke around to see if GeoServer has an easy answer for this one. As
it is now, I simply pass along the WFS query and specify the output format.
If GeoServer doesn't have an easy answer, I don't see this listed in the spec,
and we might need to bubble it to its own issue.
<wfs:GetFeature outputFormat="excel2007" xmlns:wfs="http://www.opengis.net/wfs"
service="WFS" version="1.1.0" xsi:schemaLocation="http://www.opengis.net/wfs
http://schemas.opengis.net/wfs/1.1.0/wfs.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<wfs:Query typeName="massgis:GISDATA.SCHOOLDISTELEM_POLY" srsName="EPSG:900913"
xmlns:massgis="http://massgis.state.ma.us/featuretype">
<ogc:Filter xmlns:ogc="http://www.opengis.net/ogc">
<ogc:FeatureId fid="GISDATA.SCHOOLDISTELEM_POLY.263"></ogc:FeatureId>
<ogc:FeatureId fid="GISDATA.SCHOOLDISTELEM_POLY.224"></ogc:FeatureId>
<ogc:FeatureId fid="GISDATA.SCHOOLDISTELEM_POLY.256"></ogc:FeatureId>
<ogc:FeatureId fid="GISDATA.SCHOOLDISTELEM_POLY.271"></ogc:FeatureId>
<ogc:FeatureId fid="GISDATA.SCHOOLDISTELEM_POLY.109"></ogc:FeatureId>
<ogc:FeatureId fid="GISDATA.SCHOOLDISTELEM_POLY.266"></ogc:FeatureId>
<ogc:FeatureId fid="GISDATA.SCHOOLDISTELEM_POLY.33"></ogc:FeatureId>
<ogc:FeatureId fid="GISDATA.SCHOOLDISTELEM_POLY.107"></ogc:FeatureId>
<ogc:FeatureId fid="GISDATA.SCHOOLDISTELEM_POLY.253"></ogc:FeatureId>
<ogc:FeatureId fid="GISDATA.SCHOOLDISTELEM_POLY.40"></ogc:FeatureId>
</ogc:Filter>
</wfs:Query>
Original comment by cpl...@gmail.com
on 15 May 2013 at 1:38
When you make a WFS request you should be able to specify which fields you
want. We should be able to figure out the syntax. I need to use Firebug -
when you make the table you should also be able to only ask for the fields you
want - you're not getting everything and then throwing fields away are you?
Original comment by Aleda.Fr...@state.ma.us
on 15 May 2013 at 1:42
https://wiki.state.ma.us/confluence/display/massgis/GeoServer+-+WFS+-+Get+Subset
+of+Attribute+Values+for+a+Feature
Original comment by Aleda.Fr...@state.ma.us
on 15 May 2013 at 1:44
Yeah, you're getting too big a response, I'd modify the request to only ask for
the field subset. So turn this request which is used to create the table:
<wfs:GetFeature xmlns:wfs="http://www.opengis.net/wfs" service="WFS"
version="1.1.0" xsi:schemaLocation="http://www.opengis.net/wfs
http://schemas.opengis.net/wfs/1.1.0/wfs.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<wfs:Query typeName="massgis:GISDATA.SCHOOLDISTELEM_POLY" srsName="EPSG:900913">
<ogc:Filter xmlns:ogc="http://www.opengis.net/ogc">
<ogc:Intersects>
<ogc:PropertyName>SHAPE</ogc:PropertyName>
<gml:Polygon xmlns:gml="http://www.opengis.net/gml" srsName="EPSG:900913">
<gml:exterior>
<gml:LinearRing>
<gml:posList>-7823479.48688253 5113566.399044915 -7823488.303015438
5113398.17720784 -7823514.654822765 5113231.7984444145 -7823558.253588595
5113069.085635188 -7823618.621635728 5112911.821495747 -7823695.097559203
5112761.729044915 -7823786.843472803 5112620.452726991 -7823892.854189096
5112489.540394877 -7824011.968232492 5112370.426351481 -7824142.880564606
5112264.415635188 -7824284.15688253 5112172.6697215885 -7824434.249333362
5112096.193798113 -7824591.513472803 5112035.8257509805 -7824754.226282029
5111992.22698515 -7824920.605045455 5111965.875177823 -7825088.82688253
5111957.059044915 -7825257.048719605 5111965.875177823 -7825423.427483031
5111992.22698515 -7825586.140292257 5112035.8257509805 -7825743.404431698
5112096.193798113 -7825893.49688253 5112172.6697215885 -7826034.773200454
5112264.415635188 -7826165.685532568 5112370.426351481 -7826284.799575964
5112489.540394877 -7826390.810292257 5112620.452726991 -7826482.556205857
5112761.729044915 -7826559.032129332 5112911.821495747 -7826619.400176465
5113069.085635188 -7826662.998942295 5113231.7984444145 -7826689.350749622
5113398.17720784 -7826698.16688253 5113566.399044915 -7826689.350749622
5113734.6208819905 -7826662.998942295 5113900.999645416 -7826619.400176465
5114063.712454642 -7826559.032129332 5114220.976594083 -7826482.556205857
5114371.069044915 -7826390.810292257 5114512.345362839 -7826284.799575964
5114643.257694953 -7826165.685532568 5114762.371738349 -7826034.773200454
5114868.382454642 -7825893.49688253 5114960.128368242 -7825743.404431698
5115036.6042917175 -7825586.140292257 5115096.97233885 -7825423.427483031
5115140.57110468 -7825257.048719605 5115166.922912007 -7825088.82688253
5115175.739044915 -7824920.605045455 5115166.922912007 -7824754.226282029
5115140.57110468 -7824591.513472803 5115096.97233885 -7824434.249333362
5115036.6042917175 -7824284.15688253 5114960.128368242 -7824142.880564606
5114868.382454642 -7824011.968232492 5114762.371738349 -7823892.854189096
5114643.257694953 -7823786.843472803 5114512.345362839 -7823695.097559203
5114371.069044915 -7823618.621635728 5114220.976594083 -7823558.253588595
5114063.712454642 -7823514.654822765 5113900.999645416 -7823488.303015438
5113734.6208819905 -7823479.48688253 5113566.399044915</gml:posList>
</gml:LinearRing>
</gml:exterior>
</gml:Polygon>
</ogc:Intersects>
</ogc:Filter>
</wfs:Query>
</wfs:GetFeature>
into this:
<wfs:GetFeature xmlns:wfs="http://www.opengis.net/wfs" service="WFS"
version="1.1.0" xsi:schemaLocation="http://www.opengis.net/wfs
http://schemas.opengis.net/wfs/1.1.0/wfs.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<wfs:Query typeName="massgis:GISDATA.SCHOOLDISTELEM_POLY" srsName="EPSG:900913">
<ogc:PropertyName>DISTRICTID</ogc:PropertyName>
<ogc:PropertyName>DISTNAME</ogc:PropertyName>
<ogc:Filter xmlns:ogc="http://www.opengis.net/ogc">
<ogc:Intersects>
<ogc:PropertyName>SHAPE</ogc:PropertyName>
<gml:Polygon xmlns:gml="http://www.opengis.net/gml" srsName="EPSG:900913">
<gml:exterior>
<gml:LinearRing>
<gml:posList>-7823479.48688253 5113566.399044915 -7823488.303015438
5113398.17720784 -7823514.654822765 5113231.7984444145 -7823558.253588595
5113069.085635188 -7823618.621635728 5112911.821495747 -7823695.097559203
5112761.729044915 -7823786.843472803 5112620.452726991 -7823892.854189096
5112489.540394877 -7824011.968232492 5112370.426351481 -7824142.880564606
5112264.415635188 -7824284.15688253 5112172.6697215885 -7824434.249333362
5112096.193798113 -7824591.513472803 5112035.8257509805 -7824754.226282029
5111992.22698515 -7824920.605045455 5111965.875177823 -7825088.82688253
5111957.059044915 -7825257.048719605 5111965.875177823 -7825423.427483031
5111992.22698515 -7825586.140292257 5112035.8257509805 -7825743.404431698
5112096.193798113 -7825893.49688253 5112172.6697215885 -7826034.773200454
5112264.415635188 -7826165.685532568 5112370.426351481 -7826284.799575964
5112489.540394877 -7826390.810292257 5112620.452726991 -7826482.556205857
5112761.729044915 -7826559.032129332 5112911.821495747 -7826619.400176465
5113069.085635188 -7826662.998942295 5113231.7984444145 -7826689.350749622
5113398.17720784 -7826698.16688253 5113566.399044915 -7826689.350749622
5113734.6208819905 -7826662.998942295 5113900.999645416 -7826619.400176465
5114063.712454642 -7826559.032129332 5114220.976594083 -7826482.556205857
5114371.069044915 -7826390.810292257 5114512.345362839 -7826284.799575964
5114643.257694953 -7826165.685532568 5114762.371738349 -7826034.773200454
5114868.382454642 -7825893.49688253 5114960.128368242 -7825743.404431698
5115036.6042917175 -7825586.140292257 5115096.97233885 -7825423.427483031
5115140.57110468 -7825257.048719605 5115166.922912007 -7825088.82688253
5115175.739044915 -7824920.605045455 5115166.922912007 -7824754.226282029
5115140.57110468 -7824591.513472803 5115096.97233885 -7824434.249333362
5115036.6042917175 -7824284.15688253 5114960.128368242 -7824142.880564606
5114868.382454642 -7824011.968232492 5114762.371738349 -7823892.854189096
5114643.257694953 -7823786.843472803 5114512.345362839 -7823695.097559203
5114371.069044915 -7823618.621635728 5114220.976594083 -7823558.253588595
5114063.712454642 -7823514.654822765 5113900.999645416 -7823488.303015438
5113734.6208819905 -7823479.48688253 5113566.399044915</gml:posList>
</gml:LinearRing>
</gml:exterior>
</gml:Polygon>
</ogc:Intersects>
</ogc:Filter>
</wfs:Query>
</wfs:GetFeature>
Original comment by Aleda.Fr...@state.ma.us
on 15 May 2013 at 1:47
I'll see if I can apply the lines like
<ogc:PropertyName>NAME</ogc:PropertyName>
<ogc:PropertyName>ADDRESS</ogc:PropertyName>
to the export request.
I don't want to apply this anywhere else, though, since it could have some
tricky side effects.
Original comment by cpl...@gmail.com
on 15 May 2013 at 1:51
OK, at the extract would be good.
Not sure why at the identify would be problematic, wouldn't you just get back
fewer fields to put into the table?
Original comment by Aleda.Fr...@state.ma.us
on 15 May 2013 at 1:57
Please try r472. I don't think there is a way for the FID to not appear in the
result.
To answer comment 39, by applying the column filter on the interface level, I
get to stay away from GeoExt intricacies. Keeping hands-off of GeoExt is
generally a good idea.
Original comment by cpl...@gmail.com
on 15 May 2013 at 2:07
OK, that extract is good now. I don't think there's any way to avoid getting
FID in the response since we're filtering by it so they'll just have to ignore
it.
Original comment by Aleda.Fr...@state.ma.us
on 15 May 2013 at 2:13
For the identify to make the table, just be aware you're just going to be
getting a bigger response than you need to - The parcel layer has 45 attributes
but I'm only going to be needing 4 or 5. But maybe that's less of a negative
than GeoExt.
At this point I think I should finish mocking up my abutters list example
becket_abutters.php and show it to our assistant director Neil MacGaffey who
drafted most of the spec and make sure this is what he needs...
Original comment by Aleda.Fr...@state.ma.us
on 15 May 2013 at 2:20
For completeness I'm going through the case studies in Task Order 5 and now I'm
concerned about the buffer distance calculation. The attachment
buffer_distance_300_feet_grand_view_dr_deerfield_arcmap.png shows what a 300
foot buffer (from the outside of the lollipop street) looks like in ArcMap.
The attachment buffer_distance_300_feet_grand_view_dr_deerfield_oliver.png
shows OLIVER and it doesn't look the same, it looks smaller. Is OLIVER's
distance being calculated somehow from a center line in the polygon or
something? That would account for it.
You can play with it here... I click the BufferIdentify tool, choose 300 feets
then I select the snaky lollipop street shape.
http://maps.massgis.state.ma.us/map_ol_to5/oliver.php?lyrs=Detailed%20Features~B
asemaps_MassGISBasemapWithLabels2~|Parcels%20Level%203%20SDE~massgis:GISDATA.L3_
TAXPAR_POLY_ASSESS~GISDATA.L3_TAXPAR_POLY_ASSESS::Default&bbox=-72.6502470390636
8,42.5055244125167,-72.64158350394753,42.509451320555165&coordUnit=m&measureUnit
=ft&base=MassGIS_Basemap¢er=-8086906.2962353,5237304.4287918&zoom=18&opacity=1,
1&baseO=1&filt=undefined|undefined
Original comment by Aleda.Fr...@state.ma.us
on 15 May 2013 at 3:28
Attachments:
I'm having trouble NOT specifying a filter for the select data layer.
I tried commenting out or deleting these lines:
toolSettings.identifyBuffer.selectDataLayerFilter = function(attrs) {
return attrs['POLY_TYPE'] != 'ROW';
};
Only to get TypeError: toolSettings.identifyBuffer.selectDataLayerFilter is not
a function
tried commenting out the return line, but that didn't work either (I think it
drops everything).
How can I say for either select data layer or buffer result data layer that I
don't want to filter? Can I see return attrs ALL somehow?
Original comment by Aleda.Fr...@state.ma.us
on 15 May 2013 at 3:50
Try this:
toolSettings.identifyBuffer.selectDataLayerFilter = function(attrs) {
return true;
};
Original comment by cpl...@gmail.com
on 15 May 2013 at 3:57
#45 worked! Cases 1-3 in task order 5 are good except for the buffer distance
for poly...
Original comment by Aleda.Fr...@state.ma.us
on 15 May 2013 at 4:03
I was freaking out in response to comment 43. I thought the underlying JS lib
I was using for the buffer was croaking. It turns out it's a projection issue.
If you do the buffer in the custom basemap, it is exact. Let me see how to
fix it . . .
Original comment by cpl...@gmail.com
on 15 May 2013 at 4:11
Ah.. I should have thought of trying it there of course.
Original comment by Aleda.Fr...@state.ma.us
on 15 May 2013 at 4:12
Yes, in Custom projection the distance looks just the same as ArcMap.
Original comment by Aleda.Fr...@state.ma.us
on 15 May 2013 at 4:19
r473 please. It may not be 100% exact, but see if it is OK.
Original comment by cpl...@gmail.com
on 15 May 2013 at 5:10
Original issue reported on code.google.com by
Aleda.Fr...@state.ma.us
on 26 Dec 2012 at 9:06