Example #1
0
    def click_button_snapping(self, point, btn):  # @UnusedVariable

        if not self.layer_dimensions:
            return

        layer = self.layer_dimensions
        self.iface.setActiveLayer(layer)
        layer.startEditing()

        snapper = QgsMapCanvasSnapper(self.canvas)
        map_point = self.canvas.getCoordinateTransform().transform(point)
        x = map_point.x()
        y = map_point.y()
        event_point = QPoint(x, y)

        # Snapping
        (retval, result) = snapper.snapToBackgroundLayers(
            event_point)  # @UnusedVariable

        # That's the snapped point
        if result:
            # Check feature
            for snapped_point in result:
                if snapped_point.layer == self.layer_node:
                    feat_type = 'node'
                elif snapped_point.layer == self.layer_connec:
                    feat_type = 'connec'
                else:
                    continue

                # Get the point
                point = QgsPoint(snapped_point.snappedVertex)
                snapp_feature = next(
                    snapped_point.layer.getFeatures(
                        QgsFeatureRequest().setFilterFid(
                            snapped_point.snappedAtGeometry)))
                element_id = snapp_feature.attribute(feat_type + '_id')

                # Leave selection
                snapped_point.layer.select([snapped_point.snappedAtGeometry])

                # Get depth of the feature
                if self.project_type == 'ws':
                    fieldname = "depth"
                elif self.project_type == 'ud' and feat_type == 'node':
                    fieldname = "ymax"
                elif self.project_type == 'ud' and feat_type == 'connec':
                    fieldname = "connec_depth"

                sql = ("SELECT " + fieldname + ""
                       " FROM " + self.schema_name + "." + feat_type + ""
                       " WHERE " + feat_type + "_id = '" + element_id + "'")
                row = self.controller.get_row(sql)
                if not row:
                    return

                utils_giswater.setText(self.dialog, "depth", row[0])
                utils_giswater.setText(self.dialog, "feature_id", element_id)
                utils_giswater.setText(self.dialog, "feature_type",
                                       feat_type.upper())
Example #2
0
    def action_rotation(self):

        # Set map tool emit point and signals
        self.emit_point = QgsMapToolEmitPoint(self.canvas)
        self.canvas.setMapTool(self.emit_point)
        self.snapper = QgsMapCanvasSnapper(self.canvas)
        self.canvas.xyCoordinates.connect(self.action_rotation_mouse_move)
        self.emit_point.canvasClicked.connect(
            self.action_rotation_canvas_clicked)

        # Store user snapping configuration
        self.snapper_manager = SnappingConfigManager(self.iface)
        self.snapper_manager.store_snapping_options()

        # Clear snapping
        self.snapper_manager.clear_snapping()

        # Set snapping
        layer = self.controller.get_layer_by_tablename("v_edit_arc")
        self.snapper_manager.snap_to_layer(layer)
        layer = self.controller.get_layer_by_tablename("v_edit_connec")
        self.snapper_manager.snap_to_layer(layer)
        layer = self.controller.get_layer_by_tablename("v_edit_node")
        self.snapper_manager.snap_to_layer(layer)

        # Set marker
        color = QColor(255, 100, 255)
        self.vertex_marker = QgsVertexMarker(self.canvas)
        self.vertex_marker.setIconType(QgsVertexMarker.ICON_CROSS)
        self.vertex_marker.setColor(color)
        self.vertex_marker.setIconSize(15)
        self.vertex_marker.setPenWidth(3)
    def __init__(self, canvas, areaType):
        QgsMapTool.__init__(self, canvas)
        self.mCanvas = canvas
        self.areaType = areaType
        self.annotation = None
        self.rubberBand = QgsRubberBand(canvas, QGis.Point)
        self.rubberBand.setColor(Qt.red)
        self.rubberBand.setWidth(10)
        self.rubberBandClick = QgsRubberBand(canvas, QGis.Point)
        self.rubberBandClick.setColor(Qt.green)
        self.rubberBandClick.setWidth(3)
        self.obstaclesLayerList = QgisHelper.getSurfaceLayers(SurfaceTypes.Obstacles)
        self.demLayerList = QgisHelper.getSurfaceLayers(SurfaceTypes.DEM)

        self.mRubberBand = None
        self.mRubberBand0 = QgsRubberBand( self.mCanvas, QGis.Polygon )
        self.mCursor = Qt.ArrowCursor
        self.mFillColor = QColor( 254, 178, 76, 63 )
        self.mBorderColour = QColor( 254, 58, 29, 100 )
        self.mRubberBand0.setBorderColor( self.mBorderColour )
        self.polygonGeom = None
        self.drawFlag = False
        self.mSnapper = QgsMapCanvasSnapper(canvas)
        self.resultPolylineArea = PolylineArea()
#         self.constructionLayer = constructionLayer
        self.menuString = ""
        self.isPrimaryPolylineStarted = False
        self.primaryPolyline = PolylineArea()
    def __init__(self, iface, controller):
        """ Class constructor """

        self.iface = iface
        self.canvas = self.iface.mapCanvas()
        self.controller = controller
        # Call superclass constructor and set current action
        QgsMapTool.__init__(self, self.canvas)

        self.dragging = False

        # Vertex marker
        color = QColor(255, 100, 255)
        self.vertex_marker = QgsVertexMarker(self.canvas)
        self.vertex_marker.setIconType(QgsVertexMarker.ICON_CIRCLE)
        self.vertex_marker.setColor(color)
        self.vertex_marker.setIconSize(15)
        self.vertex_marker.setPenWidth(3)

        # Rubber band
        self.rubber_band = QgsRubberBand(self.canvas, QGis.Line)
        self.rubber_band.setColor(color)
        self.rubber_band.setWidth(1)

        # Select rectangle
        self.select_rect = QRect()

        # TODO: Parametrize
        self.connec_group = ["Wjoin", "Tap", "Fountain", "Greentap"]
        #self.snapperManager = SnappingConfigManager(self.iface)
        self.snapper = QgsMapCanvasSnapper(self.canvas)
Example #5
0
    def init_config_form(self):
        ''' Custom form initial configuration '''

        # Set snapping
        self.canvas = self.iface.mapCanvas()
        self.emit_point = QgsMapToolEmitPoint(self.canvas)
        self.canvas.setMapTool(self.emit_point)
        self.snapper = QgsMapCanvasSnapper(self.canvas)

        # Vertex marker
        self.vertex_marker = QgsVertexMarker(self.canvas)
        self.vertex_marker.setColor(QColor(255, 0, 255))
        self.vertex_marker.setIconSize(11)
        self.vertex_marker.setIconType(
            QgsVertexMarker.ICON_CROSS)  # or ICON_CROSS, ICON_X, ICON_BOX
        self.vertex_marker.setPenWidth(3)

        btn_orientation = self.dialog.findChild(QPushButton, "btn_orientation")
        btn_orientation.clicked.connect(self.orientation)
        self.set_icon(btn_orientation, "133")
        btn_snapping = self.dialog.findChild(QPushButton, "btn_snapping")
        btn_snapping.clicked.connect(self.snapping)
        self.set_icon(btn_snapping, "129")

        # Set layers dimensions, node and connec
        self.layer_dimensions = self.controller.get_layer_by_tablename(
            "v_edit_dimensions")
        self.layer_node = self.controller.get_layer_by_tablename("v_edit_node")
        self.layer_connec = self.controller.get_layer_by_tablename(
            "v_edit_connec")

        self.create_map_tips()
Example #6
0
    def __init__(self, iface, controller, group):
        """ Class constructor """

        self.group_layers = group
        self.iface = iface
        self.canvas = self.iface.mapCanvas()
        # Call superclass constructor and set current action
        QgsMapTool.__init__(self, self.canvas)

        self.controller = controller
        self.rubber_band = QgsRubberBand(self.canvas, QGis.Polygon)
        mFillColor = QColor(254, 178, 76, 63)
        self.rubber_band.setColor(mFillColor)
        self.rubber_band.setWidth(1)
        self.reset()
        self.snapper = QgsMapCanvasSnapper(self.canvas)
        self.selected_features = []

        # Vertex marker
        self.vertex_marker = QgsVertexMarker(self.canvas)
        self.vertex_marker.setColor(QColor(255, 0, 255))
        self.vertex_marker.setIconSize(11)
        self.vertex_marker.setIconType(
            QgsVertexMarker.ICON_CROSS)  # or ICON_CROSS, ICON_X, ICON_BOX
        self.vertex_marker.setPenWidth(3)
Example #7
0
    def __init__(self,
                 iface,
                 controller,
                 layers,
                 mincut=None,
                 parent_manage=None,
                 table_object=None):
        """ Class constructor """

        self.layers = layers
        self.iface = iface
        self.canvas = self.iface.mapCanvas()
        self.mincut = mincut
        self.parent_manage = parent_manage
        self.table_object = table_object

        # Call superclass constructor and set current action
        QgsMapTool.__init__(self, self.canvas)

        self.controller = controller
        self.rubber_band = QgsRubberBand(self.canvas, QGis.Polygon)
        self.rubber_band.setColor(QColor(255, 100, 255))
        self.rubber_band.setFillColor(QColor(254, 178, 76, 63))
        self.rubber_band.setWidth(1)
        self.reset()
        self.snapper = QgsMapCanvasSnapper(self.canvas)
        self.selected_features = []
Example #8
0
    def __init__(self, iface, settings, action, index_action):
        """ Class constructor """

        self.iface = iface
        self.canvas = self.iface.mapCanvas()
        self.settings = settings
        self.show_help = bool(int(self.settings.value('status/show_help', 1)))
        self.index_action = index_action
        self.layer_arc = None
        self.layer_connec = None
        self.layer_node = None

        self.layer_arc_man = None
        self.layer_connec_man = None
        self.layer_node_man = None
        self.layer_gully_man = None

        self.schema_name = None
        self.controller = None
        self.dao = None

        # Call superclass constructor and set current action
        QgsMapTool.__init__(self, self.canvas)
        self.setAction(action)

        # Snapper
        self.snapper_manager = SnappingConfigManager(self.iface)
        self.snapper = QgsMapCanvasSnapper(self.canvas)

        # Change map tool cursor
        self.cursor = QCursor()
        self.cursor.setShape(Qt.CrossCursor)

        # Get default cursor
        self.std_cursor = self.parent().cursor()

        # Set default vertex marker
        color = QColor(255, 100, 255)
        self.vertex_marker = QgsVertexMarker(self.canvas)
        self.vertex_marker.setIconType(QgsVertexMarker.ICON_CIRCLE)
        self.vertex_marker.setColor(color)
        self.vertex_marker.setIconSize(15)
        self.vertex_marker.setPenWidth(3)

        # Set default rubber band
        color_selection = QColor(254, 178, 76, 63)
        self.rubber_band = QgsRubberBand(self.canvas, QGis.Polygon)
        self.rubber_band.setColor(color)
        self.rubber_band.setFillColor(color_selection)
        self.rubber_band.setWidth(1)
        self.reset()

        self.force_active_layer = True

        # Set default encoding
        reload(sys)
        sys.setdefaultencoding('utf-8')  #@UndefinedVariable
Example #9
0
 def __init__(self, canvas, distance):
     self.mCanvas = canvas
     QgsMapTool.__init__(self, canvas)
     self.mCursor = Qt.ArrowCursor
     self.mRubberBand = None
     self.mDragging = False
     self.mSelectRect = QRect()
     self.rubberBandLine = None
     self.distance = distance
     self.mSnapper = QgsMapCanvasSnapper(canvas)
Example #10
0
    def __init__(self, iface):
        self.iface = iface
        self.canvas = self.iface.mapCanvas()
        QgsMapTool.__init__(self, self.canvas)

        # Snapper object that reads the settings from project and applies to the map canvas
        self._snapper = QgsMapCanvasSnapper(self.canvas)

        # Dialog for setting textual attributes of the spatial unit being digitized.
        self._editorWidget = None

        # Initial context menu state of the map canvas
        self._mpCanvasContentMenuPolicy = self.canvas.contextMenuPolicy()
 def __init__(self, canvas, disType = DistanceUnits.M):
     '''
     Constructor
     '''
     self.canvas = canvas
     QgsMapTool.__init__(self, self.canvas)
     self.mSnapper = QgsMapCanvasSnapper(self.canvas)
     self.rubberBand = QgsRubberBand(self.canvas,QGis.Line)
     self.rubberBand.setColor(Qt.red)
     self.rubberBand.setWidth(1)
     self.rubberBandPt = QgsRubberBand(canvas, QGis.Point)
     self.rubberBandPt.setColor(Qt.red)
     self.rubberBandPt.setWidth(10)
     self.type = disType
     self.reset()
 def __init__(self, canvas, areaType):
     self.mCanvas = canvas
     self.areaType = areaType
     QgsMapTool.__init__(self, canvas)
     self.mCursor = Qt.ArrowCursor
     self.mRubberBand = None
     self.mDragging = False
     self.mSelectRect = QRect()
     self.mRubberBandResult = None
     self.mSnapper = QgsMapCanvasSnapper(canvas)
     self.lineCount = 0
     self.resultGeomList = []
     self.geomList = []
     self.area = None
     self.isFinished = False
Example #13
0
    def __init__(self, iface):
        ''' Class constructor '''

        self.iface = iface
        self.canvas = self.iface.mapCanvas()
        self.layer_arc = None
        self.layer_connec = None
        self.layer_node = None
        self.previous_snapping = None
        self.controller = None

        # Snapper
        self.snapper = QgsMapCanvasSnapper(self.canvas)
        proj = QgsProject.instance()
        proj.writeEntry('Digitizing', 'SnappingMode', 'advanced')
    def activate_snapping_node2(self):

        # Create the appropriate map tool and connect the gotPoint() signal.
        self.emit_point = QgsMapToolEmitPoint(self.canvas)
        self.canvas.setMapTool(self.emit_point)
        self.snapper = QgsMapCanvasSnapper(self.canvas)

        # Get layer 'v_edit_node'
        layer = self.controller.get_layer_by_tablename("v_edit_node",
                                                       log_info=True)
        if layer:
            self.layer_valve_analytics = layer
            self.canvas.connect(self.canvas,
                                SIGNAL("xyCoordinates(const QgsPoint&)"),
                                self.mouse_move)
            self.emit_point.canvasClicked.connect(self.snapping_node2)
    def __init__(self, canvas, txtXCoord, txtYCoord, annotation=None):
        self.canvas = canvas
        self.txtXCoord = txtXCoord
        self.txtYCoord = txtYCoord
        QgsMapToolEmitPoint.__init__(self, self.canvas)
        self.annotation = annotation
        self.mSnapper = QgsMapCanvasSnapper(canvas)
        self.rubberBand = QgsRubberBand(canvas, QGis.Point)
        self.rubberBand.setColor(Qt.red)
        self.rubberBand.setWidth(10)
        self.rubberBandClick = QgsRubberBand(canvas, QGis.Point)
        self.rubberBandClick.setColor(Qt.green)
        self.rubberBandClick.setWidth(3)
        #         lblDoc = QTextDocument(label)
        #         self.annotation.setDocument(lblDoc)
        #         self.annotation.setFrameBackgroundColor(QColor(0,0,0,0))
        #         self.annotation.setFrameSize( QSizeF( 30, 20 ) )

        self.reset()
Example #16
0
    def activate_snapping(self, emit_point):
        # Set circle vertex marker
        color = QColor(255, 100, 255)
        self.vertex_marker = QgsVertexMarker(self.canvas)
        self.vertex_marker.setIconType(QgsVertexMarker.ICON_CIRCLE)
        self.vertex_marker.setColor(color)
        self.vertex_marker.setIconSize(15)
        self.vertex_marker.setPenWidth(3)

        self.node1 = None
        self.node2 = None
        self.canvas.setMapTool(emit_point)
        self.snapper = QgsMapCanvasSnapper(self.canvas)
        self.layer_node = self.controller.get_layer_by_tablename("v_edit_node")
        self.iface.setActiveLayer(self.layer_node)
        self.canvas.connect(self.canvas,
                            SIGNAL("xyCoordinates(const QgsPoint&)"),
                            self.mouse_move)
        emit_point.canvasClicked.connect(partial(self.snapping_node))
    def __init__(self, canvas, txtBearing, txtBearingGeodetic=None):
        self.canvas = canvas
        self.txtBearing = txtBearing
        self.txtBearingGeodetic = txtBearingGeodetic
        QgsMapTool.__init__(self, self.canvas)
        self.rubberBand = QgsRubberBand(self.canvas, QGis.Line)
        self.rubberBand.setColor(Qt.red)
        self.rubberBand.setWidth(1)
        self.mSnapper = QgsMapCanvasSnapper(canvas)
        self.M_PI = 3.14159265358979323846
        self.rubberBandPt = QgsRubberBand(canvas, QGis.Point)
        self.rubberBandPt.setColor(Qt.red)
        self.rubberBandPt.setWidth(10)
        self.reset()
        parent = self.parent()
        self.startPoint = None
        self.endPoint = None

        pass
Example #18
0
    def __init__(self, canvas, dataBaseProcedureData0, point3d0,
                 procEntityListType0):
        self.canvas = canvas
        QgsMapToolEmitPoint.__init__(self, self.canvas)
        self.mSnapper = QgsMapCanvasSnapper(canvas)
        self.rubberBand = QgsRubberBand(canvas, QGis.Point)
        self.rubberBand.setColor(Qt.red)
        self.rubberBand.setWidth(10)
        self.rubberBandClick = QgsRubberBand(canvas, QGis.Point)
        self.rubberBandClick.setColor(Qt.green)
        self.rubberBandClick.setWidth(3)
        self.obstaclesLayerList = QgisHelper.getSurfaceLayers(
            SurfaceTypes.Obstacles)
        self.demLayerList = QgisHelper.getSurfaceLayers(SurfaceTypes.DEM)
        self.reset()

        self.dataBaseProcedureData_0 = dataBaseProcedureData0
        self.point3d_0 = point3d0
        self.procEntityListType_0 = procEntityListType0
    def __init__(self, canvas, annotation=None):
        self.canvas = canvas
        #         self.tableView = tableView
        #         self.standardItemModel = standardItemModel
        #         self.txtXCoord = txtXCoord
        #         self.txtYCoord = txtYCoord
        QgsMapToolEmitPoint.__init__(self, self.canvas)
        self.annotation = annotation
        self.mSnapper = QgsMapCanvasSnapper(canvas)
        self.rubberBand = QgsRubberBand(canvas, QGis.Point)
        self.rubberBand.setColor(Qt.red)
        self.rubberBand.setWidth(10)
        self.rubberBandClick = QgsRubberBand(canvas, QGis.Point)
        self.rubberBandClick.setColor(Qt.green)
        self.rubberBandClick.setWidth(3)
        self.obstaclesLayerList = QgisHelper.getSurfaceLayers(
            SurfaceTypes.Obstacles)
        self.demLayerList = QgisHelper.getSurfaceLayers(SurfaceTypes.DEM)
        #         lblDoc = QTextDocument(label)
        #         self.annotation.setDocument(lblDoc)
        #         self.annotation.setFrameBackgroundColor(QColor(0,0,0,0))
        #         self.annotation.setFrameSize( QSizeF( 30, 20 ) )

        self.reset()
Example #20
0
    def add_point(self):
        """ Create the appropriate map tool and connect to the corresponding signal """
        active_layer = self.iface.activeLayer()
        if active_layer is None:
            active_layer = self.controller.get_layer_by_tablename('version')
            self.iface.setActiveLayer(active_layer)

        # Vertex marker
        self.vertex_marker = QgsVertexMarker(self.canvas)
        self.vertex_marker.setColor(QColor(255, 100, 255))
        self.vertex_marker.setIconSize(15)
        self.vertex_marker.setIconType(QgsVertexMarker.ICON_CROSS)
        self.vertex_marker.setPenWidth(3)

        # Snapper
        self.snapper = QgsMapCanvasSnapper(self.canvas)

        self.emit_point = QgsMapToolEmitPoint(self.canvas)
        self.previous_map_tool = self.canvas.mapTool()
        self.canvas.setMapTool(self.emit_point)
        #self.canvas.connect(self.canvas, SIGNAL("xyCoordinates(const QgsPoint&)"), self.mouse_move)
        self.canvas.xyCoordinates.connect(self.mouse_move)
        self.xyCoordinates_conected = True
        self.emit_point.canvasClicked.connect(partial(self.get_xy))
Example #21
0
    def click_button_snapping(self, point, btn):  #@UnusedVariable

        # Disconnect mouse movement
        self.vertex_marker.hide()
        self.canvas.disconnect(self.canvas,
                               SIGNAL("xyCoordinates(const QgsPoint&)"),
                               self.mouse_move)

        if not self.layer_dimensions:
            return

        layer = self.layer_dimensions
        self.iface.setActiveLayer(layer)
        layer.startEditing()

        # TODO:
        node_group = [
            "Junction", "Valve", "Reduction", "Tank", "Meter", "Manhole",
            "Source", "Hydrant", "Wtp", "Netsamplepoint", "Netelement",
            "Flexunion", "Expantank", "Netwjoin", "Register", "Pump",
            "Waterwell", "Filter"
        ]

        snapper = QgsMapCanvasSnapper(self.canvas)
        map_point = self.canvas.getCoordinateTransform().transform(point)
        x = map_point.x()
        y = map_point.y()
        event_point = QPoint(x, y)

        # Snapping
        (retval, result) = snapper.snapToBackgroundLayers(
            event_point)  # @UnusedVariable

        # That's the snapped point
        if result <> []:

            # Check feature
            for snap_point in result:

                element_type = snap_point.layer.name()
                if element_type in node_group:
                    feat_type = 'node'
                else:
                    continue

                # Get the point
                point = QgsPoint(snap_point.snappedVertex)
                snapp_feature = next(
                    snap_point.layer.getFeatures(
                        QgsFeatureRequest().setFilterFid(
                            snap_point.snappedAtGeometry)))
                element_id = snapp_feature.attribute(feat_type + '_id')

                # Leave selection
                snap_point.layer.select([snap_point.snappedAtGeometry])

                # Get depth of the feature
                if self.project_type == 'ws':
                    fieldname = "depth"
                elif self.project_type == 'ud' and feat_type == 'node':
                    fieldname = "ymax"
                elif self.project_type == 'ud' and feat_type == 'connec':
                    fieldname = "connec_depth"

                sql = "SELECT " + fieldname
                sql += " FROM " + self.schema_name + "." + feat_type
                sql += " WHERE " + feat_type + "_id = '" + element_id + "'"
                row = self.controller.get_row(sql)
                if not row:
                    return

                utils_giswater.setText("depth", row[0])
                utils_giswater.setText("feature_id", element_id)
                utils_giswater.setText("feature_type", element_type)
Example #22
0
    def click_button_add(self, layer_view, tablename, table_view, elem_type, point, button):
        """
        :param layer_view: it is the view we are using
        :param tablename:  Is the name of the table that we will use to make the SELECT and INSERT
        :param table_view: it's QTableView we are using, need ir for upgrade his own view
        :param elem_type: Used to buy the object that we "click" with the type of object we want to add or delete
        :param point: param inherited from signal canvasClicked
        :param button: param inherited from signal canvasClicked
        """

        if button == Qt.LeftButton:

            node_group = ["Junction", "Valve", "Reduction", "Tank", "Meter", "Manhole", "Source", "Hydrant"]
            arc_group = ["Pipe"]
            canvas = self.iface.mapCanvas()
            snapper = QgsMapCanvasSnapper(canvas)
            map_point = canvas.getCoordinateTransform().transform(point)
            x = map_point.x()
            y = map_point.y()
            event_point = QPoint(x, y)

            # Snapping
            (retval, result) = snapper.snapToBackgroundLayers(event_point)  # @UnusedVariable

            # That's the snapped point
            if result:
                # Check feature
                for snapped_feat in result:
                    element_type = snapped_feat.layer.name()
                    feat_type = None
                    if element_type in node_group:
                        feat_type = 'node'
                    elif element_type in arc_group:
                        feat_type = 'arc'

                    if feat_type is not None:
                        # Get the point
                        feature = next(snapped_feat.layer.getFeatures(QgsFeatureRequest().setFilterFid(snapped_feat.snappedAtGeometry)))
                        element_id = feature.attribute(feat_type + '_id')

                        # LEAVE SELECTION
                        snapped_feat.layer.select([snapped_feat.snappedAtGeometry])
                        # Get depth of feature
                        if feat_type == elem_type:
                            sql = "SELECT * FROM " + self.schema_name + "." + tablename
                            sql += " WHERE " + feat_type+"_id = '" + element_id+"' AND psector_id = '" + self.psector_id.text() + "'"
                            row = self.dao.get_row(sql)
                            if not row:
                                self.list_elemets[element_id] = feat_type
                            else:
                                message = "This id already exists"
                                self.controller.show_info(message)
                        else:
                            message = self.tr("You are trying to introduce")+" "+feat_type+" "+self.tr("in a")+" "+elem_type
                            self.controller.show_info(message)

        elif button == Qt.RightButton:
            for element_id, feat_type in self.list_elemets.items():
                sql = "INSERT INTO " + self.schema_name + "." + tablename + "(" + feat_type + "_id, psector_id)"
                sql += "VALUES (" + element_id + ", " + self.psector_id.text() + ")"
                self.controller.execute_sql(sql)
            table_view.model().select()
            self.emit_point.canvasClicked.disconnect()
            self.list_elemets.clear()
            self.dlg.btn_add_arc_plan.setText('Add')
            self.dlg.btn_add_node_plan.setText('Add')
Example #23
0
 def _startSnapping(self):
     self._snapper = QgsMapCanvasSnapper()
     self._snapper.setMapCanvas(self.canvas())
     if self._showSnappableVertices:
         self._startSnappableVertices()
    def set_snapping(self):

        self.emit_point = QgsMapToolEmitPoint(self.canvas)
        self.canvas.setMapTool(self.emit_point)
        self.snapper = QgsMapCanvasSnapper(self.canvas)
Example #25
0
 def _startSnapping(self):
     self._snapper = QgsMapCanvasSnapper()
     self._snapper.setMapCanvas(self.canvas())