Advertisement
Guest User

Untitled

a guest
Nov 26th, 2014
143
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.52 KB | None | 0 0
  1. CREATE OR REPLACE FUNCTION azymut3(pkt1 geometry, pkt2 geometry) RETURNS FLOAT LANGUAGE plpgsql AS $$
  2. DECLARE
  3.  
  4. azym FLOAT;
  5. pkt1x FLOAT;
  6. pkt2x FLOAT;
  7. pkt1y FLOAT;
  8. pkt2y FLOAT;
  9. BEGIN
  10.  
  11. pkt1x :=ST_X(pkt1);
  12. pkt2x :=ST_X(pkt2);
  13. pkt1y :=ST_Y(pkt1);
  14. pkt2y :=ST_Y(pkt2);
  15. azym := ATN2(COS(pkt1x) * SIN(pkt2x) - SIN(pkt1x) * COS(pkt2x)* COS(pkt2y - pkt1y), SIN(pkt2y - pkt1y) * COS(pkt2x));
  16.  
  17. RETURN @azym ;
  18. END
  19. $$ ;
  20. SELECT azymut3(ST_GeomFromEWKT('POINT(1 2)'), ST_GeomFromEWKT('POINT(3 4)'));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement