def __init__(self, layer, plot=None, visible=True, style='line',
pen=None, err_pen=None, mask_pen=None, color=(0, 0, 0)):
self._layer = layer
self.style = style
self._plot = plot
self.error = None
self.mask = None
self._plot_units = (self._layer.dispersion_unit,
self._layer.unit,
None)
self.line_width = 1
self.mode = None
self.checked = True
r, g, b = color
r, g, b = r * 255, g * 255, b * 255
rand_pen = pg.mkPen(QColor(r, g, b, 255), width=self.line_width)
_pen = pg.mkPen(pen, width=self.line_width) if pen is not None else rand_pen
_inactive_pen = pg.mkPen(QColor(_pen.color().red(),
_pen.color().green(),
_pen.color().blue(),
255))
_err_pen = err_pen if err_pen is not None else pg.mkPen(
color=(100, 100, 100, 50))
_mask_pen = mask_pen if mask_pen is not None else pg.mkPen(
color=(100, 100, 100, 50))
self._pen_stash = {'pen_on': pg.mkPen(_pen),
'pen_inactive': pg.mkPen(_inactive_pen),
'pen_off': pg.mkPen(None),
'error_pen_on': _err_pen,
'error_pen_off': pg.mkPen(None),
'mask_pen_on': _mask_pen,
'mask_pen_off': pg.mkPen(None)}
self.set_plot_visibility(True)
self.set_error_visibility(True)
self.set_mask_visibility(False)
if self._plot is not None:
self.change_units(self._layer.dispersion_unit,
self._layer.unit)
评论列表
文章目录