resqpy.olio.simple_lines.drape_lines

resqpy.olio.simple_lines.drape_lines(line_list, pillar_list_list, grid, ref_k=0, ref_kp=0, offset=-1.0, snap=False)[source]

Roughly drapes lines over grid horizon; draped lines are suitable for 3D visualisation.

Parameters:
  • line_list (list of numpy arrays of floats) – the undraped poly-lines

  • pillar_list_list – (list of lists of pairs of integers): as returned by nearest_pillars()

  • grid – (grid.Grid object): the grid to which the poly-lines are to be draped

  • ref_k (integer, default 0) – the reference layer in the grid to which the lines will be draped; zero based

  • ref_kp (integer, default 0) – 0 to indicate the top corners of the reference layer, 1 for the base

  • offset (float, default -1.0) – the vertical offset to add to the z value of pillar points; positive drapes lines deeper, negative shallower (assumes grid’s crs has z increasing downwards)

  • snap (boolean, default False) – if True, the x & y values of each vertex in the lines are moved to match the pillar point; if False, only the z values are adjusted

Returns:

list of numpy arrays of floats, being the draped equivalents of the line_list

Notes

the units of the line list must implicitly be those of the crs for the grid; for grids with split coordinate lines (faults), only the primary pillars are currently used; the results of this function are intended for 3D visualisation of an indicative nature; resulting draped lines may penetrate the grid layer faces depending on the 3D geometry and the spacing of the vertices compared to cell sizes