def __init__(self, geometry): self.kernel = amanith.GKernel() self.geometry = geometry self.drawBoard = amanith.GOpenGLBoard(geometry[0], geometry[0] + geometry[2], geometry[1], geometry[1] + geometry[3]) self.drawBoard.SetShadersEnabled(Config.get("opengl", "svgshaders")) self.transform = SvgTransform() self.setGeometry(geometry) self.setProjection(geometry) # eat any possible OpenGL errors -- we can't handle them anyway try: glMatrixMode(GL_MODELVIEW) except: Log.warn("SVG renderer initialization failed; expect corrupted graphics. " + "To fix this, upgrade your OpenGL drivers and set your display " + "to 32 bit color precision.")
def parseKeys(self, stops): keys = [] for stop in self.stops: color, opacity, offset = None, None, None if "style" in stop: style = self.style().parseStyle(stop["style"]) if "stop-color" in style: color = self.style().parseColor(style["stop-color"]) if "stop-opacity" in style: opacity = float(style["stop-opacity"]) if "offset" in stop: offset = float(stop["offset"]) if offset is not None and (color is not None or opacity is not None): if opacity is None: opacity = 1.0 k = amanith.GKeyValue(offset, (color[0], color[1], color[2], opacity)) keys.append(k) return keys
def __init__(self, baseTransform = None): self._gmatrix = amanith.GMatrix33() self.reset() if baseTransform: self.matrix = baseTransform.matrix.copy()