8

In QGIS 3.16.6 I need to create a polygon shapefile of ellipses from points. I am doing the following:

Processing Toolbox -> Vector Geometry -> Geometry by expression

  • Input layer - points_in.shp

  • Output geometry type - polygon

  • Geometry expression - make_ellipse(transform(make_point("Lon-DD","Lat-DD"), 'EPSG:4269', 'EPSG:26913'), 635, 190, 90)

  • Modified geometry - ellipses_out.shp

Where "Lon-DD" and"Lat-DD" are fields in the point shapefile, the input CRS is GDD NAD83, the output CRS NAD83/UTM Zone 13N meters, and the semi-major and semi-minor axis are 635 meters and 190 meters and the azimuth is 90 degrees.

The Geometry by expression tool runs without complaints but the output shapefile is empty.

What am I doing wrong and how do I fix this?

2
  • 1
    Did you check the attribute table of ellipses_out layer? Did you zoom to the layer? Does "Empty" mean that you don't see ellipses in the map or that the attribute table of "ellipses_out" is empty? Commented Apr 25, 2021 at 23:33
  • Zooming to the output layer is different than zooming to the input layer. The output layer is there, all 200 plus ellipses. So I know what the problem is now what is the solution? Again, transform('EPSG:4269', 'EPSG:26913') appears not to be working. Commented Apr 26, 2021 at 0:34

1 Answer 1

10

The problem is that you expect that make_ellipse returns an ellipse in EPSG:26913 coordinates. Yes, it returns EPSG:26913 coordinates (big numbers like 500000 which are projected coordinates), but QGIS considers those are in source layer's CRS, EPSG:4269 (lat, long). If you check the CRS of ellipses_out, you will see its CRS is EPSG:4269.

For a solution, use Processing toolbox > Vector general > Assign projection tool for output layer. Choose EPSG:26913 as new CRS.

enter image description here

1
  • Right. Thanks for identifying the problem, but what I asked was for a solution: "What am I doing wrong and how do I fix this?" Apparently transform('EPSG:4269', 'EPSG:26913') is not working. I assume that if I project the input points from GDD to UTM first, then this should work? Commented Apr 26, 2021 at 0:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.