turf transform-rotate module

Usage no npm install needed!

<script type="module">
  import turfTransformRotate from 'https://cdn.skypack.dev/@turf/transform-rotate';




Rotates any geojson Feature or Geometry of a specified angle, around its centroid or a given pivot point; all rotations follow the right-hand rule: https://en.wikipedia.org/wiki/Right-hand_rule


  • geojson GeoJSON object to be rotated
  • angle number of rotation (along the vertical axis), from North in decimal degrees, negative clockwise
  • options Object Optional parameters (optional, default {})
    • options.pivot Coord point around which the rotation will be performed (optional, default 'centroid')
    • options.mutate boolean allows GeoJSON input to be mutated (significant performance increase if true) (optional, default false)


var poly = turf.polygon([[[0,29],[3.5,29],[2.5,32],[0,29]]]);
var options = {pivot: [0, 25]};
var rotatedPoly = turf.transformRotate(poly, 10, options);

var addToMap = [poly, rotatedPoly];
rotatedPoly.properties = {stroke: '#F00', 'stroke-width': 4};

Returns GeoJSON the rotated GeoJSON feature

This module is part of the Turfjs project, an open source module collection dedicated to geographic algorithms. It is maintained in the Turfjs/turf repository, where you can create PRs and issues.


Install this module individually:

$ npm install @turf/transform-rotate

Or install the Turf module that includes it as a function:

$ npm install @turf/turf