python.workflows.gmpLineMerge Namespace Reference

Merges multiple structure line data sets into a single line network. More...

Classes

class  AnalyseDistance
 callback object for collecting distance information More...
 
class  gmpLineMerge
 
class  LineMerger
 

Functions

def shp_to_work_odm (shp, workODM_dir)
 
def generateUniqueID ()
 
def find_lines_at_ends (line, polylineIndex, nrLines=1, maxDist=0.5)
 Function that looks for corresponding at the respective ends of a line within the polylineIndex structure. More...
 
def exportODM (odmPath)
 
def createLinestring (dm_Linestring)
 
def getLength (dm_Linestring)
 
def vector_difference (vec1, vec2)
 

Variables

int uniqueID = 0
 
 lf = pyDM.AddInfoLayoutFactory()
 
 layout = lf.getLayout()
 
 script
 

Detailed Description

Merges multiple structure line data sets into a single line network.

The script accepts multiple line datasets derived with opalsGeomorph or gmpLineModeler, respectively, and merges all overlapping lines in to a single comprehensive 3D line network. First the overlap areas are identified and then corresponding lines in the overlapping areas are detected. Matching lines are merged by providing a smooth transition between the lines. The output is a single shape file containing the merged line network. Each line contains attributes indicating the quality of the line merging.

author: fhacksto (01-06/23)

See also
Script documentation

Function Documentation

◆ find_lines_at_ends()

def python.workflows.gmpLineMerge.find_lines_at_ends (   line,
  polylineIndex,
  nrLines = 1,
  maxDist = 0.5 
)

Function that looks for corresponding at the respective ends of a line within the polylineIndex structure.

Args: line: pyDM.Polyline, the line for which corresponding lines are looked for. polylineIndex: pyDM.PolylineIndex, the index structure in which the lines are queried. nrLines: int, the number of lines that are desired to be found (closer lines are given preference to) maxDist: float, the maximum distance allowed (i.e. search radius around queried points)

Returns: tuple containting the lines at the end and start of the line, respectively.

Referenced by gmpLineMerge.merging().