operations
geometry.operations
Geometry operations module.
Classes:
-
CoordinateSystemOptions–Enum of the coordinate system options.
geometry.operations.CoordinateSystemOptions
Bases: Enum
Enum of the coordinate system options.
geometry.operations.calculate_rotation_angle
calculate_rotation_angle(
start_point: Point,
end_point: Point,
coordinate_system: CoordinateSystemOptions = XY,
) -> RAD
Calculates rotation of an end point in relation to the start point in a given plane/coordinate system [rad].
- Start point lies in the origin center of the quadrant.
- The rotation is calculated in the given plane in relation to the start point.
- The rotation is calculated in the range [0, 2*pi].
- The rotation is calculated in the counter-clockwise direction.
Parameters:
-
start_point(Point) –Starting point that will be used as reference.
-
end_point(Point) –End point
-
coordinate_system(CoordinateSystemOptions, default:XY) –Desired plane that will be used as reference to calculate the rotation. Standard is XY-plane.
Returns:
-
RAD–rotation of end point relative to the start point in radians in the given plane [rad].
Raises:
-
ValueError–If start_point and end_point are the same. If start_point or end_point do not have z value when rotation angle in XZ or YZ plane is requested.
Source code in blueprints/geometry/operations.py
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 | |
geometry.operations.rotate_linearring
rotate_linearring(linearring: LinearRing, angle_degrees: float) -> LinearRing
Rotate a Shapely LinearRing around its centroid by a specified angle.
Parameters:
-
linearring(LinearRing) –The Shapely LinearRing to be rotated
-
angle_degrees(float) –The rotation angle in degrees (positive for counterclockwise)
Returns:
-
LinearRing–A new LinearRing that has been rotated
Examples:
>>> from shapely.geometry import LinearRing
>>> square = LinearRing([(0, 0), (1, 0), (1, 1), (0, 1)])
>>> rotated = rotate_linearring(square, 45)
Source code in blueprints/geometry/operations.py
87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 | |