New answers tagged

0

I am assuming that you are using the ArcMap application of the ArcGIS Desktop product. You have tagged the latter, but then you have supplied a link to ArcGIS Online within your question body. To so this I think you should test the Extend Line tool which: extends line segments to the first intersecting feature within a specified distance. If no ...


1

A possible solution is using the Field Calculator to create a label that show the sum of the selected lines. In the lines layer create a label using the expression array_sum(aggregate( layer:= 'line', aggregate:='array_agg', expression:=$length, filter:=is_selected())) NB: To use array_sum in the oldest QGIS versions you need to install the plugin ...


2

Assuming you will start loading the data as csv, so that you have a line number (line_no) field to identify each line and a field (id or any of x or y) which is in order. On 2D map, you can shift the y coordinate of points by the measured value. In QGIS, use Translate tool (Processing Toolbox > Vector geometry) and set the Offset distance (y-values). If ...


0

Select line that you want to flip. Use field calculator -> go to last position -> reverse($geometry)


1

If I were you, I would say that your easiest and best bet is creating a new data column that attributes year (for the lines) and administrative units (for your polygons) and merge all layers that have the same geo type (lines all clump together and polys all clump together). Once this is done, you can easily extract your outputs layers and drop the busy work....


0

Stuck with the same problem. In the past used v.net.connect, which worked nicely. In new QGIS vnet.connectivity it does not seem to work. Gives odd error message. Calculating distances and relationships between point land line vector layers using QGIS?


3

As BERA said, dissolve is the tool. The trick is in create a field with values equals for each contiguous feature to dissolve. So, I digitizing, approximately, your shapefile and it looks as follows: If I want to dissolve all features, I have to create a field (e.g. common) with the same values in each record. Following image presents result of Dissolve (...


0

If someone is interested - a very dynamic solution can be found here: drawing wavy wiggly lines in qgis


3

In QGIS 3.10 it's possible to dynamically create zig-zag lines and wavelines with the help of the indispensable "geometry generator" and a custom Python expression function. from qgis.core import qgsfunction,QgsExpressionContextUtils,QgsExpression,QgsProject,QgsPoint,QgsGeometry @qgsfunction(args='auto', group='Custom', usesGeometry=False, referencedColumns=...


0

A more refined and faster procedure, which does not have a problem with zero or negative is as follows: Make sure the raster has values that can be divided into classes as integers, so multiply by 10, 100 or whatever gives you large numbers. These can be real numbers, not necessarily integers; in the next step they will be rounded. Use GRASS r.reclass, and ...


1

The Join multiple lines plugin seems to do this: After selecting multiple features of a line layer, this plugin can merge them into one feature with a continuous line. The plugin will automatically put the selected lines in a geographically logical order and direction. If the end points of two lines do not match exactly, a line segment between ...


1

You can use a QGIS Virtual Layer to both get an attribute table with id of the geometries covering each other and maps showing where the cover is. You can make a new Virtual Layer from the Data Source Manager. Use this SQL code: select m1.fid id1, m2.fid id2, st_length(m1.geometry) length1, st_length(m2.geometry) length2, m1.geometry from mylines m1 inner ...


1

If you want to test the overlap on the same layer, you can use SQL to find which parts of the lines do overlap. Open Databasemanager and go to Virtual Layers. Open an SQL-window and paste following code: select st_intersection(l1.geometry, l2.geometry) as geometry, l1.fid as l1_id, l2.fid as l2_id from line_layer as l1, line_layer as l2 where l1.fid &...


3

(update) For finding overlap (and not report lines that cross or touch) within a layer, it is good advise to use the QGIS DB Manager and SQL. For instance: select l1.id as id1, l2.id as id2, st_intersection(l1.geometry, l2.geometry) as geometry from lines l1, lines l2 where (st_overlaps(l1.geometry, l2.geometry) or st_contains(l1.geometry, ...


3

'< 10 km2 Fluss' Is what is stored in Anita's attribute table. It is a string field describing the flow rate of the river. If your width field is not a string, rather a number, then you need to use numbers instead of strings. Try: CASE WHEN "width" > 499 THEN 2.0 ELSE 1.0 END * ( 1- ( @geometry_part_num / @geometry_part_count ))


2

You can set the opacity at a layer level. So it will be applied to the layer as a whole.


0

One solution would be to union and merge touching lines in a self join SQL, then run a multipart to singlepart geometry with the QGIS geometry tools. Make a virtual layer - where mylines is your layername - like select st_linemerge(st_union(m1.geometry)) as geometry from mylines m1 inner join mylines m2 on st_touches(m1.geometry, m2.geometry) Then on the ...


Top 50 recent answers are included