Skip to content

Instantly share code, notes, and snippets.

View NathanW2's full-sized avatar

Nathan Woodrow NathanW2

View GitHub Profile
symbol = QgsMarkerSymbolV2.createSimple({"name":"arrow"})
layer = qgis.utils.iface.activeLayer()
layer.rendererV2().setSymbol(symbol)
class Control(object):
def __init__(self, name="Control"):
self.name = name
self.value = None
def bindCheckBox(value, *args):
control.value = value
def unbindCheckBox(*args):
return control.value
def bindQTextEdit(self, value):
self.setText(value)
def unbindQTextEdit(self, **kwargs):
return self.toPlainText()
if __name__ == "__main__":
from PyQt4.QtGui import *
app = QApplication([])
QTextEdit.bind = bindQTextEdit
@NathanW2
NathanW2 / gist:3963006
Created October 27, 2012 04:58
Binding v2
from PyQt4.QtGui import *
def bindQComboBox(control, value):
control.addItems(value)
control.setCurrentIndex(1)
def unbindQComboBox(control):
return control.currentText()
def bindQTextEdit(control, value):
@NathanW2
NathanW2 / gist:3979754
Created October 30, 2012 11:42
QgsExpressionFunction
class MyFunctionClass(QgsExpressionFunction):
name = "AddSomeStuff"
args = 3
group = "Math"
def __init__(self):
super(MyFunction, QgsExpressionFunction).__init__(self, name, args, group)
def func(values, feature, parent):
# blah blah blah
class QgsExpressionFunction(object):
def __init__(self):
pass
def func(values, feature, parent):
pass
def qgsfunction(args, group):
def wrapper(func):
from qgis.core import QgsExpression
class QgsExpressionFunction(QgsExpression.FunctionDef):
def __init__(self, name, args, group):
QgsExpression.FunctionDef.__init__(self, name, args, group)
def func(self, values, feature, parent):
pass
def qgsfunction(args, group):
from qgis.core import QgsExpression
class QgsExpressionFunction(QgsExpression.FunctionDef):
def __init__(self, name, args, group):
QgsExpression.FunctionDef.__init__(self, name, args, group)
def func(self, values, feature, parent):
pass
def qgsfunction(args, group, **kwargs):
@qgsfunction(0, "Python")
def vertices(values, feature, parent):
vertices = 0
geom = feature.geometry()
if geom is None: return 0
if geom.type() == QGis.Polygon:
vertices = 0
if geom.isMultipart():
polygons = geom.asMultiPolygon()
else:
from qgis.core import *
from qgis.gui import *
from PyQt4.QtCore import *
from PyQt4.QtGui import QApplication
from PyQt4.QtXml import *
import sys
import xml.etree.ElementTree as ET
app = QApplication(sys.argv)