2

I have multiple storm track data with unique storm track IDs in point data format; Below is example of one track data (all has common storm ID). I am looking to extract the landfall point i.e. came in contact with land first time (denoted as A in attached picture) and just before point (denoted as B in Attached Picture) using QGIS.

enter image description here

Edit1 : if you can see i followed the same and not getting anything over track data.. point2 layer is my track points

PolyGeo
  • 65,136
  • 29
  • 109
  • 338
Raj
  • 103
  • 7
  • Welcome to GIS SE. As a new user, please take the [Tour]. Questions here are not only supposed to describe the task, but also what effort you have made toward making progress on that task, and what problem you have encountered. – Vince Jun 20 '21 at 22:38

1 Answers1

2

You can use Menu Processing / Toolbox / Points to Path and set the unique storm trek Id as Path group expression and another value (unique value per point that defines the order of the points, like $id) for Order expression. You than get a line connecting your points (the sotrm's track).

You can now find the point where this line (storm track) crosses the coastline using Geometry generator or geomatry by expression (see here how to do that) with this expression (change coast with the name of the layer containinig the coastline). Be sure to have QGIS 3.16 or later for the overlay_crosses function:

intersection( array_first ( overlay_crosses( 'coast', $geometry)), $geometry)

If you don't have a coastline as line-layer, but a polygon of the land, than use the following expression - as you can see, there are two differences: polygon as the name of the polygon layer (adapt this to the name of your land-polygon layer) and boundary($geometry) to get the boundary of the polygon (the coastline):

intersection( array_first ( overlay_crosses( 'polygon', boundary($geometry))),  $geometry)

Screenshot 1, using the first version (coast as line-layer): coastline (black line), storm trek (red points), red line connecting the points, create by Points to path and the point where these lines cross the coasline (blue squares), created here with geometry generator: enter image description here

Screenshot 2, using the second version (land-polygon): enter image description here

Babel
  • 71,072
  • 14
  • 78
  • 208
  • Hi Babel Really thanks for your suggestion but said solution is not working on my case possible due to two reasons 1: I have other layer is in polygon ( like you have coast layer in line format) 2: I am doing something wrong. But as per your suggestion i have tried both option query was executed but no output coming over layer ( like blue one in your case) – Raj Jun 21 '21 at 08:15
  • @Raj : updated my answer accordingly – Babel Jun 21 '21 at 08:31
  • Thanks but still the issue is same.. I am not getting anything over layer anyhow.. I have added the screenshot for better understanding of issue. Is there any issue with defining expression. – Raj Jun 21 '21 at 10:04
  • What QGIS version do you use? overlay_crosses works for version 3.16 and later. – Babel Jun 21 '21 at 11:55
  • @ Babel : Thanks for your suggestion. I did with some method for a now. Thanks – Raj Jun 22 '21 at 10:22