漏洞 ID 编号 |
BUG-000175117 |
已提交 | March 18, 2025 |
上次修改时间 | June 22, 2025 |
适用范围 | ArcGIS Pro |
找到的版本 | 3.4.2 |
操作系统 | Windows OS |
操作系统版本 | 10.0 64 Bit |
状态 | As Designed
经开发团队审核,已确定此行为符合设计。 有关详细信息,请参阅“其他信息”部分。
|
附加信息
Create routes geoprocessing tool uses a parameter called coordinate priority. Coordinate priority determines which vertex to use to accumulate measures based on a bounding box for each feature which may be different from the first vertex of the feature.
Export the vertices to points using the geoprocessing tool to get the start and end point for each route and use this to calibrate the route in the case of varying digitized directions when creating a route based on a specific vertex starting point.
解决办法
- Run the Linear Directional Mean tool.
- Input Lines: DedhamSewerGravityMains
- Case Field: Facility Identifier
- Add one text field to the output feature class.
- Original Direction (text field).
- Run Calculate Field on this new field and use the following:
- Expression Box: direction(!CompassA!)
- Code Block:
def direction(var):
if var < 22.5:
return "North"
if var >= 22.5 and var < 67.5:
return "Northeast"
if var >= 67.5 and var < 112.5:
return "East"
if var >= 112.5 and var < 157.5:
return "Southeast"
if var >= 157.5 and var < 202.5:
return "South"
if var >= 202.5 and var < 247.5:
return "Southwest"
if var >= 247.5 and var < 292.5:
return "West"
if var >= 292.5 and var < 337.5:
return "Northwest"
if var >= 337.5:
return "North"
- Run the Create Routes tool.
- Run Linear Directional Mean on the new routes feature class.
- Add a new Text field and call it RouteDirection.
- Calculate Field using the same expression and code block as mentioned earlier.
- Add two joins to the routes feature class (the output feature classes from the Linear Directional Mean tool, joining on Facility ID).
- Add a new text field and call it Differing Direction.
- Run Calculate Field on this field with the following parameters:
- Language: Python
- Expression: check(!yourfield1!, !yourfield2!) #Replace these with your field names for direction we made earlier
- Code Block:
def check(field1, field2):
if field1==field2:
return 0
else:
return 1
- Run select by Attributes and select all lines in the Differing Direction field where it equals 1 (different directions).
- Remove All Joins.
- Run the Flip Lines tool on the selection.
重现步骤