Created
January 10, 2023 18:02
-
-
Save steveoh/32a7974412ed1579e7e47e0461b686e2 to your computer and use it in GitHub Desktop.
arcade expression to assign address systems
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var layerName = 'Address Systems'; | |
var set = FeatureSetByName($datastore, layerName); | |
function getAttributeFromLargestArea(feat, set, field) { | |
var items = intersects(set, feat); | |
var counts = count(items); | |
if (counts == 0) { | |
return { 'errorMessage': 'No intersection found' }; | |
} | |
if (counts == 1) { | |
var result = first(items); | |
return result[field]; | |
} | |
var largest = -1; | |
var result; | |
for (var item in items) { | |
var size = area(intersection(item, feat)); | |
if (size > largest) { | |
largest = size; | |
result = item[field]; | |
} | |
} | |
return result; | |
} | |
function getGrid(feat, set, field, offset) { | |
var offset = Offset(feat, offset) | |
return getAttributeFromLargestArea(offset, set, field); | |
} | |
var rightResult = getGrid($feature, set, 'GRID', 50); | |
var leftResult = getGrid($feature, set, 'GRID', -50); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment