Select Overlapping lines

343
4
04-01-2022 10:52 AM
chadhickman
Occasional Contributor II

Is there a readily available method to select overlapping parcel lines? For example, I need to select ownership lines that overlap other ownership lines.

Thanks

0 Kudos
4 Replies
JasonBessert
New Contributor III

Have you tried select by location, and put ownership lines in BOTH the "input" and "selecting features" parameters boxes of the dialog, with the relationship set to "share a line segment with"?

 

Also, if you're applying this selection to try to extinguish the stacks of lines in the fabric, the best practice is to apply the "Delete Identical" geoprocessing tool, inputting Ownership Lines and selecting "SHAPE" as the field.

chadhickman
Occasional Contributor II

I have tried this but I have a large amount of lines and it take awhile for the selection to process. Is there a similar approach I could utilize by extent?

Many of the overlapping lines are different lengths, if I used the 'Delete Identical' GP tool how would I  know/verify if the proper line(s) are being deleted?

Thanks

0 Kudos
JasonBessert
New Contributor III

You raise a good question, and I've wondered about this myself, because it appears the Delete Identical tool, having very few parameters, seems to use randomness in deciding which line gets favored over the other, unfortunately.  Perhaps there is a way the automation of the tool can be made smarter to program criteria into the tool, such as discarding lines that are less desired in a stack (lines with COGO values versus NULL values) or using any attribute schema field with a value and favoring a feature with a specified value.

 

Being only a contributor, I would defer to ESRI as to how the DI tool works in deciding what features to keep and which to discard in a stack.

Kindly,

AmirBar-Maor
Esri Regular Contributor

@chadhickman 

You can use an Arcade Attribute Rule to calculate a field that would indicate how many other lines a line overlaps.

Add a field (long) and add a calculation Attribute Rule that you can run as a batch job.

It could look similar to this (Disclaimer: I have not debugged it / tested it):

 

//count number of overlapping non historic lines. -1 is an error
var parcelLines = FeatureSetByName($datastore, "My_Parcel_Lines_Table_Name",['RetiredByRecord'], true); //Set you parcel line table to the full geodatbase qualified name 
var sql = "RetiredByRecord IS NULL";
var currentParcelLines = Filter(parcelLines, sql);
if (IsEmpty($feature.RetiredByRecord)){
    return Count(Overlaps(currentParcels, $feature)); 
}
return -1;

 

 

0 Kudos