POST
|
Hi all, We have our geodatabase in Oracle that also other software needs to access. We would like to add foreign key constraints to our database to prevent orphan rows and make maintenance easier. Is there something that prevents us to add foreign key constraints directly to the database? Has anybody tried this before? Thanks, -Lauri
... View more
05-03-2016
01:00 AM
|
0
|
0
|
1609
|
POST
|
Hi all, I'm looking for a geoprocessing tool to convert line layer to polygons. My line layer is a result of a Polygon To Lines tool so it has attributes LEFT_FID and RIGHT_FID. So I want to generate those lines back to polygons with those FIDs. Actually I'm simplifying the polygon boundaries before converting those back to polygons. The reason why I'm doing this is I need to simplify my polygons as lines together with other line layer to keep lines and polygons topologically connected. This is also the reason why Feature To Polygons wont work with labels coming from polygon centroid points since after simplifying those centroids might not to be inside simplified polygon boundaries anymore. Is there any ready made tools to create polygons based on LEFT_FID and RIGHT_FID fields? I have also tought to solve this with arcpy. arcpy.AddIndex_management(inputLines, left_fid, 'LEFT_FID_IDX')
arcpy.AddIndex_management(inputLines, right_fid, 'RIGHT_FID_IDX')
fids = set()
with SearchCursor(inputLines, [left_fid, right_fid]) as cursor:
for i, row in enumerate(cursor, 0):
if row[0] and row[0] != -1:
fids.add(row[0])
if row[1] and row[1] != -1:
fids.add(row[1])
fl = arcpy.MakeFeatureLayer_management(inputLines, 'fl')
with InsertCursor(outputfc, ['ORIG_FID', 'SHAPE@']) as ic:
for i, fid in enumerate(fids):
arcpy.SelectLayerByAttribute_management(fl, '', '"{0}" = {fid} or "{1}" = {fid}'.format(left_fid, right_fid, fid=fid))
geom = arcpy.FeatureToPolygon_management(fl, arcpy.Geometry())
for g in geom:
ic.insertRow((fid, g)) My script first reads all FIDs from line layer. Then iterates all FIDs and then selects all lines containing current FID. Feature To Polygon is then used to create polygons from selected lines. This seems to be really slow. Is there someway to improve the performance of my script? And this creates polygons also from holes of the original polygons. Thank you for your help. -Lauri
... View more
01-15-2015
12:27 AM
|
0
|
1
|
4593
|
Online Status |
Offline
|
Date Last Visited |
11-11-2020
02:24 AM
|