Label | Explanation | Data Type |

Input Point Cloud
| The LAS dataset layer containing points classified as power lines. | LAS Dataset Layer |

Power Line Class Codes
| The class code values for the points representing the power lines. | Long |

Output 3D Lines
| The 3D lines modeling the power lines. | Feature Class |

Point Tolerance
(Optional) | The distance used to establish the points that belong to a given power line. The default is 80 centimeters. | Linear Unit |

Wire Separation Distance
(Optional) | The distance apart points must be to determine if they belong to different power lines. The default is 1 meter. | Linear Unit |

Maximum Wire Sampling Gap
(Optional) | The largest gap that can exist in a given span of a power line. The catenary curve being modeled from a set of power line points will be extended by this distance to find other points that fit the same power line. The default is 5 meters. | Linear Unit |

Output Line Tolerance
(Optional) | The distance that will be used to establish the accuracy of the output power line. A larger distance will result in the creation of less vertices per line, yielding a more coarse representation of the power line when compared with a smaller distance. The default is 1 centimeter. | Linear Unit |

Adjust for wind distortion
(Optional) | Specifies whether the output power lines will be adjusted for the influence of wind. When wind correction is applied, it can be used to either improve the fitting of wind modified points or model the resting state of the power lines when no wind is acting on them. The type of wind correction is specified using the Eliminate wind parameter. - Checked—The power lines will be adjusted for the influence of the wind. This is the default.
- Unchecked—An attempt will be made to fit the points without additional adjustments for the wind.
| Boolean |

Minimum Span for Wind Correction (Optional) | The shortest distance a power line span can be to apply wind correction when generating the output power line. The default is 60 meters. | Linear Unit |

Maximum Deviation Angle (Optional) | The maximum angle that the wind is expected to deviate a given power line. The default is 10 degrees. | Double |

End Point Search Radius
(Optional) | The distance that will be used to identify a common suspension point for power line segments connected to the same distribution pole or transmission tower. The default is 10 meters. | Linear Unit |

Minimum Wire Length
(Optional) | The shortest wire length that can be used to determine the presence of a common end point. The default is 5 meters. | Linear Unit |

Eliminate wind
(Optional) | Specifies how wind correction will be applied to the output power lines. Wind correction will only be applied for catenary curves that span a distance longer than the value specified in the Minimum Span for Wind Correction parameter. - Checked—The power lines will be adjusted to simulate the elimination of the impact of wind.
- Unchecked—The power lines will be adjusted to achieve a better fit for the impact of wind. This is the default.
| Boolean |

Minimum Power Line Length
(Optional) | The minimum 3D length of the output wires. Lines that have a length shorter than the value specified for this parameter will be omitted from the output. | Linear Unit |

## Summary

Extracts 3D line features modeling power lines from classified point cloud data.

## Illustration

## Usage

This tool models each segment of a power line between two suspension points as individual line features. Points that belong to the same span are fitted to a catenary curve to determine the resulting line. The input point cloud must have the points representing the power lines classified with a unique class code value that excludes points representing other objects. The best results will be obtained with power line points that are regularly sampled at a distance that is at least half the length of the distance that separates the nearest cables.

A span of bundled conductor cables, in which two or more conductor cables are affixed to each other, are best modeled as one line feature by specifying a point tolerance that approximates the radius of the bundled cables.

Wind correction can be applied to either simulate the power lines in a resting state when no wind is acting on them or create power lines that achieve a better fit for points modified by the wind. Eliminating the impact of wind can provide a better representation of the power lines for applications such as evaluating vegetation clearance. When an improved wind correction is performed, it will result in the power lines achieving a better fit to the source points. However, this fit will only adjust for power lines that are shifted in one direction, so power lines reflecting galloping vibrations may not achieve an optimal fit. Consider increasing the point tolerance if a desirable result is not produced for such power lines.

The output line features will contain the following attributes:

- CLASS_CODE—The class code value associated with the power line.
- CURVE_LEN—The length of the catenary curve being modeled by the line. This value will differ from the 3D length of the line feature based on the value of the Output Line Tolerance parameter in which a smaller value will result in a more accurate depiction of the catenary curve than a larger value.
- SAG_DIST_0—The horizontal distance from the first vertex of the line to the position of maximal sag.
- SAG_DIST_1—The horizontal distance from the last vertex of the line to the position of maximal sag.
- SAG—The maximum vertical drop of the power line from the straight three-dimensional line connecting its end points.
- WIND_ANGLE—The maximum angle of deviation caused by the wind from the resting state of the power line. A value of -1 is returned if no wind correction was attempted due to the distance specified in the Minimum Span for Wind Correction parameter.

## Parameters

arcpy.ddd.ExtractPowerLinesFromPointCloud(in_point_cloud, class_codes, out_3d_lines, {point_tolerance}, {separation_distance}, {max_sampling_gap}, {line_tolerance}, {wind_correction}, {min_wind_span}, {max_wind_deviation}, {end_point_search_radius}, {min_length}, {eliminate_wind}, {min_line_length})

Name | Explanation | Data Type |

in_point_cloud | The LAS dataset layer containing points classified as power lines. | LAS Dataset Layer |

class_codes [class_codes,...] | The class code values for the points representing the power lines. | Long |

out_3d_lines | The 3D lines modeling the power lines. | Feature Class |

point_tolerance (Optional) | The distance used to establish the points that belong to a given power line. The default is 80 centimeters. | Linear Unit |

separation_distance (Optional) | The distance apart points must be to determine if they belong to different power lines. The default is 1 meter. | Linear Unit |

max_sampling_gap (Optional) | The largest gap that can exist in a given span of a power line. The catenary curve being modeled from a set of power line points will be extended by this distance to find other points that fit the same power line. The default is 5 meters. | Linear Unit |

line_tolerance (Optional) | The distance that will be used to establish the accuracy of the output power line. A larger distance will result in the creation of less vertices per line, yielding a more coarse representation of the power line when compared with a smaller distance. The default is 1 centimeter. | Linear Unit |

wind_correction (Optional) | Specifies whether the output power lines will be adjusted for the influence of wind. When wind correction is applied, it can be used to either improve the fitting of wind modified points or model the resting state of the power lines when no wind is acting on them. The type of wind correction is specified using the eliminate_wind parameter. - WIND—The power lines will be adjusted for the influence of the wind. This is the default.
- NO_WIND—An attempt will be made to fit the points without additional adjustments for the wind.
| Boolean |

min_wind_span (Optional) | The shortest distance a power line span can be to apply wind correction when generating the output power line. The default is 60 meters. | Linear Unit |

max_wind_deviation (Optional) | The maximum angle that the wind is expected to deviate a given power line. The default is 10 degrees. | Double |

end_point_search_radius (Optional) | The distance that will be used to identify a common suspension point for power line segments connected to the same distribution pole or transmission tower. The default is 10 meters. | Linear Unit |

min_length (Optional) | The shortest wire length that can be used to determine the presence of a common end point. The default is 5 meters. | Linear Unit |

eliminate_wind (Optional) | Specifies how wind correction will be applied to the output power lines. Wind correction will only be applied for catenary curves that span a distance longer than the value specified in the min_wind_span parameter. - ELIMINATE_WIND—The power lines will be adjusted to simulate the elimination of the impact of wind.
- KEEP_WIND—The power lines will be adjusted to achieve a better fit for the impact of wind. This is the default.
| Boolean |

min_line_length (Optional) | The minimum 3D length of the output wires. Lines that have a length shorter than the value specified for this parameter will be omitted from the output. | Linear Unit |

### Code sample

The following sample demonstrates the use of this tool in the Python window:

```
arcpy.env.workspace = "c:/data"
arcpy.ddd.ExtractPowerLinesFromPointCloud("Electrical_Assets.lasd", 14,
"Power_Lines.shp", "80 Centimeters")
```

## Environments

## Licensing information

- Basic: Requires 3D Analyst
- Standard: Requires 3D Analyst
- Advanced: Requires 3D Analyst