I was wondering how the XY tolerance / resolution is used in the Utility Network. To test this, I first loaded the feature classes from an asset package as simple feature classes into an enterprise geodatabase. Here, I didn't got any load errors like self-intersecting points nor duplicated vertices.
In my second test, I deployed the asset package. The Territory feature class has a resolution of 0,0001meter & tolerance of 0,001meter (like my initial feature classes). After enabling network topology, I see a lot of self-intersecting & duplicated vertices errors.
If I zoom into the errors, I see the distance between 2 vertices for error line is >2mm, which I believe is not withing the XY tolerance. So, why do I get all these errors?
is there another way to define the XY tolerance / resolution in the utility network?
* Test 1 = copy the feature classes from my asset package to an enterprise geodatabase as simple point/line/polygon feature classes -> no errors here
* Test 2 = deploy the asset package -> many duplicated vertices & self-intersecting errors
* resolution in the file geodatabase (asset package) is 0,0001 & tolerance is 0,001
* I executed the check geometry on the file geodatabase before loading data, but no errors came up
When you are copying the simple features into EGDB, are you using a feature dataset? If there aren't errors in the asset package then I would expect the same simple features in EGDB to also not be in error.
For test 2, how are you creating the UN -- are you using Stage Utility Network (in the asset package tools) or Create Utility Network (the core geoprocessing tool)?
Can you share the asset package? You can email firstname.lastname@example.org
Did you get a resolution to your XY tolerance / resolution questions? I am working on a UN project where new data is coming from another Vendor's system (probably a different coordinate system as well) and they need to know how far apart assets (or vertices) need to be placed so as not to get load errors or even points rejected as they no longer have distinct X,Y,Z values.
2 coordinates (X,Y) are considered coincident if the distance between both are less then 2*square root(2)*tolerance.
For save we use 3 times the tolerance.
So, if the tolerance is 0,001 m, then we make sure distance between 2 coordinates is >= 3mm.
this is applicable for 2 consecutively vertices in a line features, and also for connectivity between 2 features.
In my tests, for Z coordinates it must just differ, no matter how much.
Hope this helps,
Thanks for this. I just ran into the same issue where I had topology errors between features that I thought were disconnected because they were farther than the XY Tolerance. Turns out they were 2.78X the XY tolerance which is within the 2.82 distance you mentioned. Where did you get the 2*Sqrt(2) info? Did ESRI tell you this or is it documented somewhere?
I doubt changing tolerance is the right approach. It'll likely render new issues - e.g., performance.
And what would be the 'correct' tolerance.
Much better would be having Esri delivering a script parsing data to be loaded and removing irrelevant vertices; that is an arbitrary of two too closely placed vertices, of course not removing end-vertices as this may impair connectivity.