Select to view content in your preferred language

Issue with calibration points addition - non-monotonic route for the pointed route Id

458
3
Jump to solution
11-20-2024 12:30 AM
Sergio
by
Emerging Contributor

Hi all,

I get the following message when trying to apply a set of calibration points on newly created routes:

Provided measure 355.462000 will result in a non monotonic route for routeId {RouteNo1}

Here is the dataset I'm trying to apply:

fromDatemeasurerouteId
1170374400134.075{RouteNo1}
1170374400155.857{RouteNo1}
1170374400355.462{RouteNo1}
1170374400370.061{RouteNo1}
1170374400602.918{RouteNo1}
1170374400626.097{RouteNo1}
11703744001089.544{RouteNo1}
11703744001100.629{RouteNo1}
11703744001540.883{RouteNo1}
11703744001576.177{RouteNo1}
11703744002022.328{RouteNo1}
11703744002032.482{RouteNo1}
11703744002466.008{RouteNo1}
11703744002505.28{RouteNo1}
11703744002636.849{RouteNo1}

 

In my understanding there should be no issues with this dataset as measures are going consequently along the stream. On lines points are going along the stream as well (in terms of geometry).

I'm trying to upload this data via LRS API applyEdits query with following JSON (I'm showing only three records for shortness):

[
    {
        "id": 1,
        "addCalibrationPoints": [
            {
                "networkLayerId": 33,
                "routeId": "{RouteNo1}",
                "geometry": {
                    "x": 7933929.4377417713,
                    "y": 7793317.261703142,
                    "z": -24,
                    "spatialReference": {
                        "latestWkid": 3857,
                        "wkid": 102100
                    }
                },
                "fromDate": 1170374400,
                "toDate": 1170460800,
                "measure": 155.857,
                "recalibrateRouteDownstream": 1,
                "retire": 0
            },
            {
                "networkLayerId": 33,
                "routeId": "{RouteNo1}",
                "geometry": {
                    "x": 7934213.5078702234,
                    "y": 7793274.3926343555,
                    "z": -25,
                    "spatialReference": {
                        "latestWkid": 3857,
                        "wkid": 102100
                    }
                },
                "fromDate": 1170374400,
                "toDate": 1170460800,
                "measure": 355.46199999999999,
                "recalibrateRouteDownstream": 1,
                "retire": 0
            },
            {
                "networkLayerId": 33,
                "routeId": "{B1D5D7F4-E0D5-42CD-82E2-E59BEAD96030}",
                "geometry": {
                    "x": 7934228.7617257638,
                    "y": 7793259.8969999291,
                    "z": -25,
                    "spatialReference": {
                        "latestWkid": 3857,
                        "wkid": 102100
                    }
                },
                "fromDate": 1170374400,
                "toDate": 1170460800,
                "measure": 370.06099999999998,
                "recalibrateRouteDownstream": 1,
                "retire": 0
            }
        ]
    }
]
 
What may be an issue and what should I check to detect and eliminate this issue with future data processing?
 
Thank you in advance!

 

Tags (1)
0 Kudos
1 Solution

Accepted Solutions
AyanPalit
Esri Regular Contributor

@Sergio The sequence of measures, dates and Route look correct from the table posted. However, you will have to validate the location of the points (X,Y) along the route. There are various tools in ArcGIS Pro to validate and align the point data before adding them as calibration points. 

In my experience, the APR tools expect the data to be pre-processed ahead of any bulk load operation through REST or other means. I typically will QC the data in ArcGIS Pro, make corrections as needed and simply load through Pro, while I am there. It is not efficient to go back and forth between Pro and REST if the data is not perfectly aligned with LRS requirements.    

Ayan Palit | Principal Consultant Esri

View solution in original post

3 Replies
AyanPalit
Esri Regular Contributor

@Sergio The sequence of measures, dates and Route look correct from the table posted. However, you will have to validate the location of the points (X,Y) along the route. There are various tools in ArcGIS Pro to validate and align the point data before adding them as calibration points. 

In my experience, the APR tools expect the data to be pre-processed ahead of any bulk load operation through REST or other means. I typically will QC the data in ArcGIS Pro, make corrections as needed and simply load through Pro, while I am there. It is not efficient to go back and forth between Pro and REST if the data is not perfectly aligned with LRS requirements.    

Ayan Palit | Principal Consultant Esri
Sergio
by
Emerging Contributor

Hi @AyanPalit , Thank you for your help and input. You are right - in my case it was related to geometry of the points - it was duplicates in terms of coordinates. Getting rid of such duplicates solved the issue. And you are absolutely right saying that bulk load through API expects pre-processed and carefully checked datasets - one mistake and all transaction will be rolled back with error.

0 Kudos
AyanPalit
Esri Regular Contributor

Glad you were able to isolate the culprit points!

Ayan Palit | Principal Consultant Esri
0 Kudos