2

I try to draw sectors with 60...90 degrees azimuths by Shapetool (see picture 1). Every sector seems to get a bit different from each other. I guess this has something to do that sectors get distorted further away from central meridian of my projected coordinate system (RT90 in Sweden).

In second picture each sector should be from 60...90 azimuth so that southernmost side of sector should be horizontal. But clearly that is not the case. Sectors to the right have southernmost side pointing upwards while sectors to the left have them pointing downwards.

Is there a way to get "undistorted" sectors and be shown somehow in my projected coordinate system (RT90)?

shapetool sectors

5 sectors, each should be 60...90 degrees

1 Answer 1

1

If your CRS is EPSG:3022 "RT90 0 gon" (if not, please clarify the EPSG code), lines with a 90 degree azimuth should look like this:

EPSG3022

Effectively, the plugin uses the geodesic azimuth to calculate the start and end points of the circular sector.
What you can do is calculate in a field of the attribute table, the azimuth that corresponds to each point with respect to which you need it to be covered by the circular sector, and then indicate to the plugin to read from that attribute the necessary azimuth:

CreateShape_3022

For example, to calculate the azimuth to a point whose coordinate x is increased by 50000 meters:

degrees(azimuth((transform($geometry,'EPSG:3022','EPSG:3395')),(transform((make_point(($x+50000),$y)),'EPSG:3022','EPSG:3395'))))  

Note that I am converting the coordinates to the EPSG: 3395 (World Mercator), when in fact the correct thing would be to calculate the geodesic azimuth between both points.
I would think it is necessary to write python code for that, or to generate a user-defined coordinate system of equidistant azimuthal projection centered at each point.

However, it is a simple way to obtain acceptable results:

Shapes_3022

Your Answer

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

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