ifcopenshell.api.alignment.create_by_pi_method

Module Contents

ifcopenshell.api.alignment.create_by_pi_method.create_by_pi_method(file: ifcopenshell.file, name: str, hpoints: collections.abc.Sequence[collections.abc.Sequence[float]], radii: collections.abc.Sequence[float], vpoints: collections.abc.Sequence[collections.abc.Sequence[float]] = None, lengths: collections.abc.Sequence[float] = None, start_station: float = 0.0) ifcopenshell.entity_instance

Create an alignment using the PI layout method for both horizontal and vertical alignments. If vpoints and lengths are omitted, only a horizontal alignment is created.

Parameters:
  • name – value for Name attribute

  • points – (X,Y) pairs denoting the location of the horizontal PIs, including start and end

  • radii – radii values to use for transition

  • vpoints – (distance_along, Z_height) pairs denoting the location of the vertical PIs, including start and end.

  • lengths – parabolic vertical curve horizontal length values to use for transition

Returns:

Returns an IfcAlignment