I'm trying to select roads from one line layer, where 1/3 of their miles are within another polygon layer.

I can't figure out the logic necessary, such as Select * from route_data Where (1/3 of their length?) are within Population_blocks layer.

1 Answer 1


I would create a long field to store the Object ID of each line and a double field to store the original length of each line, then run the Intersect tool to divide the line by the polygons wit the output to a file geodatabase feature class of polylines. Then select the lines with line lengths >= original length / 3 and perform a relate back to the original line feature class on the field holding the original Object ID.

  • If we can't assume lines cross into/out of the polygon more than twice, I suppose we'd need to summarize on original ObjectID ... or does intersect create multi-part polyline features? Aug 3, 2016 at 23:06
  • 1
    It creates multi-part polylines for each polygon intersected. So you do not need to summarize on the ObjectID after using the Intersect tool. If you actually wanted each portion of the line that crossed the polygon to be a separate line feature you would have to use the Multipart to Singlepart tool after using Intersect to get that result. Aug 4, 2016 at 0:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.