IDEA
|
This functionality has been sought at Inverted Polygon in ArcGIS Pro - Geographic Information Systems Stack Exchange too.
... View more
07-24-2023
04:55 PM
|
0
|
0
|
1365
|
POST
|
As I start to move towards testing the Location Referencing tab of the Ribbon in ArcGIS Pro 3.0.0, I'm noticing that if I mouse-over a button and Press F1 for more help, the page it goes to is often/invariably from ArcGIS Pipeline Referencing instead of from ArcGIS Roads and Highways and I am using the latter. Sometimes I switch a page like Extend a route—ArcGIS Pro | Documentation (which has a Pipeline Referencing URL) for one like Extend a route—ArcGIS Pro | Documentation (which has a Roads and Highways URL) by replacing "location-referencing-pipelines" in the URL with "roads-highways". Do I need to always go to the trouble of doing that or are all such pairs of pages identical?
... View more
07-04-2022
10:54 PM
|
0
|
7
|
837
|
POST
|
At 160319: Error stopping an edit session with save edits—ArcGIS Pro | Documentation help is requested from anyone encountering that error. While investigating LRS Line Networks I have stumbled across a procedure that leads to that error every time it is run a second time within an ArcGIS Pro 3.0.0 session. The code is as below and the way I am running it is as a Python Script tool with no parameters. If the tool is run once it works. If it is then run again it gives: arcgisscripting.ExecuteError: ERROR 160319: Error stopping an edit session with save edits Error stopping an edit session with save edits [TestLRSNetwork] Failed to execute (AppendRoutes). # This script is intended to create an empty LRS dataset and load
# the geometries of a test polyline feature class with route IDs (TEXT),
# Route Names (TEXT) and from/to measures (DOUBLE) into it so that an
# LRS Line Network with those routes can be created
import arcpy,uuid
def print_message(msg):
print(msg)
arcpy.AddMessage(msg)
arcpy.env.overwriteOutput = True
# Establish coordinate system and geodatabase to be used
srWGS84 = arcpy.SpatialReference("GCS_WGS_1984")
workingFolder = r"C:\temp"
gdbName = "test"
gdb = r"{0}\{1}.gdb".format(workingFolder,gdbName)
lrsName = "TestLRS"
lrsFD = r"{0}\{1}".format(gdb,lrsName)
testFCName = "testFC"
testFC = r"{0}\{1}".format(lrsFD,testFCName)
testStatsTableName = "testStats"
testStatsTable = r"{0}\{1}".format(gdb,testStatsTableName)
testDissolvedFC = r"{0}{1}".format(testFC,"_Dissolve")
calibrationFC = r"{0}\{1}".format(lrsFD,"Calibration_Point")
centerlineFC = r"{0}\{1}".format(lrsFD,"Centerline")
lrsNetworkName = "testLRSNetwork"
lrsNetworkFC = r"{0}\{1}".format(lrsFD,lrsNetworkName)
redlineFC = r"{0}\{1}".format(lrsFD,"Redline")
centerlineSequenceTable = r"{0}\{1}".format(gdb,"Centerline_Sequence")
newCalibrationPointsFCName = "NewCalibrationPoints"
newCalibrationPointsFC = r"{0}\{1}".format(lrsFD,newCalibrationPointsFCName)
newCalibrationPointsFCTempName = newCalibrationPointsFCName+"Temp"
newCalibrationPointsFCtemp = r"{0}\{1}".format(lrsFD,newCalibrationPointsFCTempName)
uniqueCalibrationPointsFCName = "UniqueCalibrationPoints"
uniqueCalibrationPointsFC = r"{0}\{1}".format(lrsFD,uniqueCalibrationPointsFCName)
# Create empty geodatabase for testing
arcpy.management.CreateFileGDB(workingFolder,gdbName)
# Create empty TestLRS dataset with default names for three feature classes
# (Calibration_Point,Centerline,Redline) and an LRS Hierarchy (TestLRS)
# within it, and three tables (Centerline_Sequence, Lrs_Edit_Log,Lrs_Locks)
print_message("Creating LRS dataset named {0} in {1}".format(lrsName,gdb))
arcpy.locref.CreateLRS(gdb,lrsName,"Centerline","Calibration_Point",
"Redline","Centerline_Sequence",srWGS84)
# Prepare feature class from which routes will be appended into the LRS Network later
# Create empty feature class and its schema
print_message('Creating "route-ready" polyline feature class ({0}) in LRS dataset ({1})'.format(testFC,lrsFD))
arcpy.management.CreateFeatureclass(lrsFD,"testFC","POLYLINE")
arcpy.management.AddField(testFC,"RouteID","TEXT", None, None, 10)
arcpy.management.AddField(testFC,"RouteName","TEXT", None, None, 10)
arcpy.management.AddField(testFC,"FromMeasure","DOUBLE")
arcpy.management.AddField(testFC,"ToMeasure","DOUBLE")
arcpy.management.AddField(testFC,"FromDate","DATE")
arcpy.management.AddField(testFC,"ToDate","DATE")
# Write three polylines and their route attributes to the feature class
cursor = arcpy.da.InsertCursor(testFC,["SHAPE@","RouteID","RouteName","FromMeasure","ToMeasure"])
array = arcpy.Array([arcpy.Point(0.0,0.0),
arcpy.Point(0.0,1.0)])
polyline = arcpy.Polyline(array,srWGS84)
cursor.insertRow([polyline,"Route1","Route 1",0.0,750.0])
array = arcpy.Array([arcpy.Point(0.0,1.0),
arcpy.Point(1.0,1.0)])
polyline = arcpy.Polyline(array,srWGS84)
cursor.insertRow([polyline,"Route1","Route 1",750.0,2000.0])
array = arcpy.Array([arcpy.Point(1.0,1.0),
arcpy.Point(1.0,0.0)])
polyline = arcpy.Polyline(array,srWGS84)
cursor.insertRow([polyline,"Route2","Route 2",0.0,999.0])
del cursor
arcpy.management.CalculateField(testFC, "FromDate", "datetime.datetime.now()", "PYTHON3", '', "TEXT", "NO_ENFORCE_DOMAINS")
print_message('Writing statistics from polyline feature class ({0}) into table ({1})'.format(testFC,testStatsTable))
arcpy.analysis.Statistics(testFC,testStatsTable,"FromMeasure MIN;ToMeasure MAX","RouteID")
# Dissolve testFC so that there's only one polyline per route
print_message("Dissolving {0} primarily on RouteID to create {1}".format(testFC,testDissolvedFC))
arcpy.management.Dissolve(testFC,testDissolvedFC,
"RouteID;RouteName;FromDate;ToDate",
None, "SINGLE_PART", "UNSPLIT_LINES")
# Add and populate fields to support Lines in LRS Network
print_message("Adding and populating fields to support Lines on 'route-ready' polylines in {1}".format(testFC,testDissolvedFC))
arcpy.management.AddField(testDissolvedFC,"Line_GUID","Text",None,None,255)
arcpy.management.AddField(testDissolvedFC,"LineName","Text",None,None,10)
arcpy.management.AddField(testDissolvedFC,"LineOrder","LONG")
# Only one Line in this test
lineGUID = "{0}".format('{'+str(uuid.uuid4())+'}')
lineOrder = 100
with arcpy.da.UpdateCursor(testDissolvedFC,["Line_GUID","LineName","LineOrder"]) as cursor:
for row in cursor:
cursor.updateRow([lineGUID,"Line 1",lineOrder])
lineOrder+=100
arcpy.management.JoinField(testDissolvedFC,"RouteID",testStatsTable,"RouteID","MIN_FromMeasure;MAX_ToMeasure")
# Create empty TestLRSNetwork in TestLRS dataset
print_message("Creating LRS Network ({0}) in LRS dataset ({1})".format("TestLRSNetwork","TestLRS"))
arcpy.locref.CreateLRSNetwork(gdb, "TestLRS", "TestLRSNetwork",
"RouteID", "RouteName", "FromDate", "ToDate", "DO_NOT_DERIVE", '',
"INCLUDE", "LineId", "LineName", "LineOrder", "METERS")
# "DO_NOT_INCLUDE", "LineId", "LineName", "LineOrder", "METERS")
lrsNetworkFC = r"{0}\{1}".format(lrsFD,"TestLRSNetwork")
# Append routes from testFC into TestLRSNetwork which should append them into Centerline feature class at the same time
print_message("Appending Routes from {1} into LRS Network ({1}) in LRS dataset ({2})".format(testFC,"TestLRSNetwork","TestLRS"))
arcpy.locref.AppendRoutes(testDissolvedFC,lrsNetworkFC, "RouteID", "RouteName", "FromDate", "ToDate",
"Line_GUID","LineName","LineOrder", None, "ADD")
# Generating calibration points and calibrating routes using them
arcpy.locref.GenerateCalibrationPoints(testDissolvedFC,"RouteID","FromDate","ToDate",calibrationFC,
lrsNetworkName, "DIGITIZED_DIRECTION","ATTRIBUTE_FIELDS","MIN_FromMeasure","MAX_ToMeasure")
# lrsNetworkName, "MEASURE_DIRECTION", "GEOMETRY_LENGTH")
arcpy.locref.GenerateRoutes(lrsNetworkFC, "NO_RECORD_CALIBRATION_CHANGES") If I close ArcGIS Pro and run the tool again, it will work, but if I try to run it a second time then it gives the error again.
... View more
07-03-2022
09:27 PM
|
0
|
2
|
412
|
POST
|
I'm starting to have success creating and loading an LRS dataset and network into a file geodatabase using ArcGIS Pro 3.0.0, and I have included fields in my LRS Network to support Lines, thus making it into an LRS Line Network. Does the LRS Line Network unlock any particular functionality beyond that available for an LRS Network? I've reviewed Lines—ArcGIS Pro | Documentation and have come away with the impression that the advantage of including Line fields is that the Location Referencing tools (editing and geoprocessing) will keep them in sync with the Centerlines and routes in the LRS Network that are built upon them but that just happens in the background. I'm assuming that to display them I just treat them as a normal polyline field and use line symbology based on that. I haven't looked at equations and stationing yet and gather that until I start to use events with my LRS Network they will have no role to play.
... View more
06-30-2022
11:17 PM
|
1
|
2
|
621
|
POST
|
Thanks Ryan I found a less obvious place that the absence of support for curves is documented for ArcGIS Pro at 130115: Number of route representations that had curves and were ignored: <value>—ArcGIS Pro | Documentation where it says: Examine the log returned with the execution of the tool to determine the polylines that caused the problem. The Densify tool can be used to remove curves from those polylines. Before seeing that or your welcome message I had implemented the ArcPy code below to detect and convert the curves into vertices by using the hasCurves property and densify method of the Polyline class. # Check for and convert any curves
# Without this step this error is seen:
# "Source data has curves. A list of offending OIDs is available below."
print("Checking for curves which are not supported in LRS datasets")
with arcpy.da.UpdateCursor(testFC,["OBJECTID","SHAPE@"]) as cursor:
for row in cursor:
if row[1].hasCurves == True:
print("Converting curve(s) in OBJECTID {0} to vertices 10cm apart".format(row[0]))
feature = row[1].densify("GEODESIC",0.1)
cursor.updateRow([row[0],feature])
... View more
06-28-2022
03:37 PM
|
2
|
0
|
714
|
POST
|
When running Append Routes the Validation of route attributes failed and in the log that was written I found this message which was followed by a list of seven OIDs. "Source data has curves. A list of offending OIDs is available below" If curves are not supported in an LRS dataset is that documented somewhere? Assuming that they are not supported is the best way to turn them into vertexed curves to copy their geometries out to and back from shapefile format?
... View more
06-27-2022
07:37 PM
|
1
|
2
|
766
|
POST
|
Hi Nathan I've managed to avoid the XY tolerance/resolution issue by rearranging my test code into something much simpler that I've placed at Appending Routes from Polyline Feature Class into LRS Network says duplicate route IDs with overlapping time representation found in source data - GIS Stack Exchange It's now a much simpler set of steps: 1. Create LRS 2. Create "route-ready" polyline feature class in the LRS dataset 3. Create LRS Network 4. Append Routes Unfortunately, I'm getting an error on that last step. Is this something that you may be able to help with? "The following duplicate route IDs with an overlapping time representation were found in the source data. A route ID must only have one representation at a given point in time."
... View more
06-25-2022
02:15 AM
|
0
|
0
|
1671
|
POST
|
I am still stuck on this and my testing has moved onto the code and error messages seen at Ensuring that polyline feature class and LRS Network have same XY Resolution using ArcPy, ArcGIS Pro and Location Referencing - Geographic Information Systems Stack Exchange I am hoping that the Roads and Highways documentation can be improved to provide a recipe for converting a polyline feature class with fields for route identifiers, from measures and to measures into routes in an LRS Network . My attempt at that, which is represented by the code at the link above, includes these steps: Prepare the polyline feature class with fields for route identifiers, from measures and to measures Create an empty LRS dataset Create an empty LRS Network in the LRS dataset Append Routes from the polyline feature class into the LRS Network which should create polylines in the Centerline feature class at the same time. That seems straightforward enough in theory but I have not been able to succeed in doing it using either the GUI or ArcPy code yet.
... View more
06-23-2022
06:34 PM
|
0
|
0
|
1702
|
POST
|
What's new in ArcGIS Pro 3.0—ArcGIS Pro | Documentation describes some nice new features under the heading of Roads and Highways but makes no mention of whether upgrading ArcGIS Pro from 2.9.3 to 3.0.0 is expected to introduce any higher System Requirements on other components of that Production extension. I need to be mindful of my ArcGIS Pro and ArcPy work staying in sync with an SQL Server Enterprise Geodatabase and Portal for ArcGIS maps and applications. I'm hoping the Roads and Highways Team can provide assurances or warn of anything I need to be wary of before upgrading ArcGIS Pro to 3.0.0.
... View more
06-23-2022
05:44 PM
|
0
|
0
|
724
|
POST
|
When I started ArcGIS Pro 2.9.3 this morning I was offered an upgrade to ArcGIS Pro 3.0.0. I have not performed that upgrade but, if I had, would all parts of ArcGIS Roads and Highways (including Location Refencing) be certified to work with it? - Graeme
... View more
06-23-2022
04:44 PM
|
0
|
3
|
751
|
POST
|
Thanks for getting back to me Nathan I've been poring over that documentation between tests over the last week and had settled on an implementation strategy of: Load the existing "route-ready" line feature class which has route IDs and from/to measure fields into an LRS dataset in a file geodatabase. I'm currently working through trying to achieve that and am wondering whether an LRS dataset/network directly reads those from/to measure fields or whether I need to transfer them to a calibration_points feature class for that. <= I've just asked this elsewhere as Can routes be defined in LRS dataset without using calibration points? - GIS Stack Exchange Test basic route editing (not including event editing) from the Location Referencing toolbar while still using the LRS dataset in a file geodatabase. Once satisfied that the route-editing was meeting all measure preserving requirements (my client's highest priority) move the LRS dataset to an Enterprise Geodatabase. Publish web services from the Enterprise Geodatabase and configure web map layers to display route hatches and labels from the LRS dataset (my client's second highest priority) Configure the Roadways Reporter against the web services. I think this will mean doubling back to configure event tables and more services to support that but my client wants me to backburner using event tables, at least for now. Using the Roadways Reporter functionality is my client's third highest priority. Configuring the Event Editor seems to be out of scope for my project, and my current (far from complete) understanding is that this is not a pre-requisite for Roadways Reporter. Are you thinking that my strategy needs to be overhauled? - Graeme
... View more
06-20-2022
04:04 PM
|
0
|
0
|
1744
|
POST
|
I'm new to Roads & Highways but have used ArcInfo Workstation Dynamic Segmentation and ArcMap Linear Referencing for intermittent intensive periods, often separated by years, over many years. This week I've been using ArcGIS Pro 2.9.3 to successfully create a route feature class in a file geodatabase from a line feature class with a Route_ID, From_meas and To_meas fields, and then to display hatches and labels along the routes at various intervals. I was then given access to a Location Referencing license and expected to start editing my routes using tools on the Location Referencing tab of the ribbon. It was then that I came to realize that Location Referencing is much more than a new name for Linear Referencing (and Dynamic Segmentation), and that I would need to create an LRS dataset before I could even see the Location Referencing tab of the ribbon. I used the Create LRS geoprocessing tool from the Location Referencing Toolbox to create an empty LRS dataset, and can now see the Location Referencing tab of the ribbon. However, I've not been able to use that to even digitize a simple test route so I'm turning my attention to whether I can use either a route feature class in a file geodatabase created from a line feature class with a Route_ID, From_meas and To_meas fields, or the line feature class itself to create an LRS dataset. Is there any documentation or help available here that could guide me through the steps to do that? I think these bits of information about my situation may be relevant: data is in a file geodatabase no need for events along the routes at this stage line feature class is in a geographic coordinate system and the from and to measures are in meters - to create a route feature class I projected them to a projected coordinate system, created the routes and then projected back. no calibration points are available no redline feature class is needed at this stage I have no prior experience of Roads & Highways in ArcMap and my data does not come from that - it is simply a line feature class with fields suitable for building routes In an attempt to work my way through where I'm stuck I developed some ArcPy code to illustrate it and posted that as Creating LRS dataset from line feature class with route IDs, from and to measures using ArcGIS Pro - Geographic Information Systems Stack Exchange. However, that effort has so far been unsuccessful. - Graeme
... View more
06-15-2022
10:23 PM
|
1
|
6
|
1803
|
POST
|
Is it possible to configure an experience using Experience Builder that enables its users to be able to turn off the basemap (not just switch to another basemap)? I was hoping to find an option to do this on the Layers and/or Basemap widgets but I cannot find one. The reason I was looking for this is to try and increase performance when panning the map in an experience.
... View more
05-09-2022
05:55 PM
|
0
|
1
|
547
|
IDEA
|
The Map widget of Experience Builder currently seems to lack functionality to turn on a dynamic graticule (lat/long) and/or measured grid (easting/northing). The Functionality Matrix for Web AppBuilder and Experi... - Esri Community mentions in Functionality Matrix for ExB and WAB _March 2022.docx that the addition of "Grid Overlay" functionality has a status of TBD. I am assuming that this is the Graticule and Measured Grid functionality that I am looking for. It also mentions that "Gridded Reference Graphic" functionality is Planned with No timeline (as yet). I am assuming that this is Reference Grid functionality, which is related to but not the Graticule and Measured Grid functionality that is the subject of this Idea.
... View more
05-03-2022
07:03 PM
|
4
|
0
|
492
|
POST
|
I didn't need to go to the trouble of finding the path to a *.prj. On the tool properties I entered "GDA 1994 MGA Zone 55" (without the double quotes) in as the Default which replaced it with the very long text equivalent. Then when I opened the tool the spatial reference showed up as GDA_1994_MGA_Zone_55.
... View more
04-18-2022
10:22 PM
|
0
|
0
|
1196
|
Title | Kudos | Posted |
---|---|---|
4 | 05-03-2022 07:03 PM | |
1 | 06-30-2022 11:17 PM | |
2 | 06-28-2022 03:37 PM | |
1 | 06-27-2022 07:37 PM | |
1 | 06-15-2022 10:23 PM |
Online Status |
Offline
|
Date Last Visited |
02-04-2024
07:00 PM
|