Differences

This shows you the differences between two versions of the page.

Link to this comparison view

find_elevation_graph_paths [2026/08/17 19:55] (current)
hermann created
Line 1: Line 1:
 +====== Find Elevation Graph Paths ======
  
 +===== Description =====
 +
 +This functor retrieves the ids of the elevation patches along the paths between specified pseudo-tops and their respective bases.
 +
 +===== Inputs =====
 +
 +^ Name  ^ Type  ^ Description ​ ^
 +| Elevation Graph | [[Elevation Graph Type]] ​ | Elevation patch graph created from neighborhood relationships and their properties. ​ |
 +| Pseudo Tops | [[Base Table Type]] ​ | Table or lookup table listing the top elevation patches for which the path patches down to the bases will be retrieved. These can be any patches in the elevation patch tree, not necessarily top-level top patches. The table keys represent the elevation patch ids of the tops. The values associated with each key are ignored. ​ |
 +
 +===== Optional Inputs =====
 +
 +^ Name  ^ Type  ^ Description ​ ^
 +| Search For All Bases | [[Boolean Value Type]] ​ | If true, the elevation patches of the paths to all reachable bases from each specified top will be retrieved. Otherwise, only the elevation patches of the path to the lowest-elevation base will be retrieved. The default value is false. ​ |
 +| Pseudo Bases | [[Base Table Type]] ​ | Table whose keys correspond to the ids of elevation patches that can be treated as bases of the graph. For each top specified in "​Pseudo Tops", if the table is not provided or the respective id is not present in it, the search uses the regular criterion to determine if a node is a base. If the id is present, it is accepted as a base if reached during the search for the corresponding top, and none of that node's child nodes will be analyzed. The default value is null.  |
 +| Minimum Elevations | [[Lookup Table Type]] ​ | Lookup table listing elevation patches and the respective minimum elevations of those that can be retrieved as part of the paths between that patch and its respective bases. For each patch specified in "​Pseudo Tops", if the table is not provided or the respective id is not present in it, the search assumes that any elevation is valid when searching for the base. If the id is present, the value associated with it will be used as the minimum elevation and patches with values lower than that will be ignored. Patches are also considered bases of the elevation graph if all their children are ignored. The default value is null.  |
 +| Also Search Parents | [[Boolean Value Type]] ​ | If true, the search will also include the parent elevation patches of the current patches. In practice, this means that for each patch being analyzed, the paths will be expanded toward both its child patches and its parent patches. This flag is only meaningful when "​Search For All Bases" is true. The default value is false. ​ |
 +| Maximum Nodes | [[Non Negative Integer Value Type]] ​ | Maximum number of nodes that can be visited between the top elevation patch and the corresponding base. If this quantity is exceeded, the top will be ignored. If 0, the maximum number of visited nodes is unlimited. The default value is 0.  |
 +
 +===== Output =====
 +
 +^ Name  ^ Type  ^ Description ​ ^
 +| Path Relations | [[Table Type]] ​ | Table containing the elevation patches representing the path between each top and its corresponding base. The table has the format "​Top_Id*:​real,​ Path_Id*:​real,​ Index:​real"​. If "​Search For All Bases" is true, "​Path_Id"​ corresponds to the elevation patches of the paths without any specific ordering. Otherwise, "​Path_Id"​ will be ordered from the patch corresponding to the top down to the corresponding found base.  |
 +| All Path Patches | [[Table Type]] ​ | Table containing the list of elevation patches representing those that are part of the path between each top and base. The table has the format "​Row_Index*:​real,​ Top_Id:​real,​ Path_Id:​real,​ Path_Index:​real"​. If "​Search For All Bases" is true, "​Path_Id"​ corresponds to the elevation patches of the paths without any specific ordering. Otherwise, "​Path_Id"​ will be ordered from the patch corresponding to the top down to the corresponding found base.  |
 +
 +===== Group =====
 +
 +[[Functor List#​Elevation Graph | Elevation Graph]]
 +
 +===== Notes =====
 +
 +Retrieves the ids of the elevation patches along the paths between the specified pseudo-tops and their respective bases in the elevation graph, considering either all reachable bases or only the lowest-elevation one, depending on "​Search For All Bases"​.
 +
 +===== Internal Name =====
 +
 +FindElevationGraphPaths