pvfactors.geometry.pvrow.PVRow

class pvfactors.geometry.pvrow.PVRow(front_side=<pvfactors.geometry.pvrow.PVRowSide object>, back_side=<pvfactors.geometry.pvrow.PVRowSide object>, index=None, original_linestring=None)[source]

A PV row is made of two PV row sides, a front and a back one.

__init__(front_side=<pvfactors.geometry.pvrow.PVRowSide object>, back_side=<pvfactors.geometry.pvrow.PVRowSide object>, index=None, original_linestring=None)[source]

Initialize PV row.

Parameters
  • front_side (PVRowSide, optional) – Front side of the PV Row (Default = Empty PVRowSide)

  • back_side (PVRowSide, optional) – Back side of the PV Row (Default = Empty PVRowSide)

  • index (int, optional) – Index of PV row (Default = None)

  • original_linestring (shapely.geometry.LineString, optional) – Full continuous linestring that the PV row will be made of (Default = None)

Methods

__init__([front_side, back_side, index, ...])

Initialize PV row.

from_center_tilt_width(xy_center, tilt, ...)

Create a PV row using mainly the coordinates of the line center, a tilt angle, and its length.

from_linestring_coords(coords[, shaded, ...])

Create a PV row with a single PV surface and using linestring coordinates.

plot(ax[, color_shaded, color_illum, with_index])

Plot the surfaces of the PV Row.

update_params(new_dict)

Update surface parameters for both front and back sides.

Attributes

all_surfaces

List of all the surfaces in the PV row.

boundary

Boundaries of the PV Row's orginal linestring.

highest_point

Highest point of the PV Row.

lowest_point

Lowest point of the PV Row.

surface_indices

List of all surface indices in the PV Row.