code: def test_skew(self):
      ls = load_wkt("LINESTRING(240 400 10, 240 300 30, 300 300 20)")
      # test default shear angles of 0.0
      sls = affinity.skew(ls)
      assert sls.equals(ls)
      # different shearing in x- and y-directions
      sls = affinity.skew(ls, 15, -30)
      els = load_wkt(
          "LINESTRING (253.39745962155615 417.3205080756888, "
          "226.60254037844385 317.3205080756888, "
          "286.60254037844385 282.67949192431126)"
      )
      assert sls.equals_exact(els, 1e-6)
      # retest with radians for the same result
      sls = affinity.skew(ls, pi / 12, -pi / 6, use_radians=True)
      assert sls.equals_exact(els, 1e-6)
      # retest with named parameters for the same result
      sls = affinity.skew(
          geom=ls, xs=15, ys=-30, origin="center", use_radians=False
      )
      assert sls.equals_exact(els, 1e-6)
      ## other `origin` parameters
      # around the centroid
      sls = affinity.skew(ls, 15, -30, origin="centroid")
      els = load_wkt(
          "LINESTRING(258.42150697963973 406.49519052838332, "
          "231.6265877365273980 306.4951905283833185, "
          "291.6265877365274264 271.8541743770057337)"
      )
      assert sls.equals_exact(els, 1e-6)
      # around the second coordinate tuple
      sls = affinity.skew(ls, 15, -30, origin=ls.coords[1])
      els = load_wkt(
          "LINESTRING(266.7949192431123038 400, 240 300, "
          "300 265.3589838486224153)"
      )
      assert sls.equals_exact(els, 1e-6)
      # around the absolute Point of origin
      sls = affinity.skew(ls, 15, -30, origin=Point(0, 0))
      els = load_wkt(
          "LINESTRING(347.179676972449101 261.435935394489832, "
          "320.3847577293367976 161.4359353944898317, "
          "380.3847577293367976 126.7949192431122754)"
      )
      assert sls.equals_exact(els, 1e-6)
  
imports: import unittest
  from math import pi
  import numpy
  import pytest
  from shapely import affinity
  from shapely.geometry import Point
  from shapely.wkt import loads
label_desc: Use image node_id 6 for calling the TransformOpsTestCase obj's underlying member method code with example usage: obj.test_skew() without return types