I have access to ArcInfo (ArcGIS 10.1). The dark polygons are settlements. The green polygon is derived from a suitability analysis. The surrounding white area is restricted. I want to find a point that will serve as a bus stop that has the shortest possible distance between the 2 settlements but it must fall within the green area. The initial idea was to convert the settlements to raster, raster to point (to mimic density), merge points and mean center. In this case we are not taking into account the green area, so there is a great possibility that the mean center will fall inside the bigger settlement. However I want it to be specifically inside the green polygon. Do you have any ideas?
the shortest possible distance between two areas is somehow undetermined. I guess that you mean something near the middle of your two settlements so that one does not have more to walk than the other. Here are a few things that you could do :
1) a)get the centroid of your polygons (feature to point)
b) create a line based on those centroid (XY to line)
c) intersect this line with your green area
get the center of the line (feature vertices to point (with mid) option
a) intersect your settlement with your green area
b) create a convex hull for the two lines (minimm bounding geometry)
c) get the centroid of the resulting polygon
3) (for me this is the best solution, but longer)
a) convert the vertices of your settlements to points
b) create Thiessen polygons
c) spatial join your Thiessen polygons with the settlements
d) dissolve the Thiessen polygons based on the attribute of the settlement
e) intersect the dissolved polygons with your green area (with output type = line)
f) convert the vertices of resulting line to points (all)
g) spatial join the points to the input polygons
h) select the point with the smallest distance
Assuming that you have converted the green polygon to a raster and then to points, the more complex question is how to determine which point is closest to both polygons. You need to minimize both the distance to each polygons, and difference in distances.
- Run Generate Near Table twice, each time using the points as Input Feature: once the north settlement as the Near Features, once with the south settlement.
- Join the two resulting tables, using
IN_FIDas the common field.
- In a new field (e.g.
DistDiff), use Field Calculator to subtract the two
Points with very small
DistDiff are approximately equidistant to the two settlements, and finding the smallest original
NEAR_DIST can find the closest point.