Shear.from_angle_direction_plane

classmethod Shear.from_angle_direction_plane(angle, direction, plane)[source]

Construct a shear transformation from an angle, direction and plane.

Parameters:
anglefloat

The angle in radians.

direction[float, float, float] | compas.geometry.Vector

The direction vector as list of 3 numbers. It must be orthogonal to the normal vector (i.e. it must lie in the shear plane).

plane[point, vector] | compas.geometry.Plane

The shear plane defined by a point and normal.

Returns:
compas.geometry.Shear

The shear transformation object.

Raises:
ValueError

If the shear direction does not lie in the shear plane.

Examples

>>> from compas.geometry import cross_vectors
>>> angle = 0.1
>>> direction = [0.1, 0.2, 0.3]
>>> point = [4, 3, 1]
>>> normal = cross_vectors(direction, [1, 0.3, -0.1])
>>> S = Shear.from_angle_direction_plane(angle, direction, (point, normal))