Skip to content

Commit 923ddfc

Browse files
committed
added angle_vectors_projected
1 parent 075361e commit 923ddfc

File tree

5 files changed

+17
-3
lines changed

5 files changed

+17
-3
lines changed

src/compas/geometry/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@
9999
angle_points_xy,
100100
angle_vectors,
101101
angle_vectors_signed,
102+
angle_vectors_projected,
102103
angle_vectors_xy,
103104
angles_points,
104105
angles_points_xy,
@@ -488,6 +489,7 @@
488489
"angle_points_xy",
489490
"angle_vectors",
490491
"angle_vectors_signed",
492+
"angle_vectors_projected",
491493
"angle_vectors_xy",
492494
"angles_points",
493495
"angles_points_xy",

src/compas/geometry/_core/angles.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ def angle_vectors_projected(u, v, normal, deg=False, tol=None):
147147
Examples
148148
--------
149149
>>> normal = [0.0, 0.0, 1.0]
150-
>>> angle_vectors_signed([0.0, 1.0, 0.0], [1.0, 0.0, 0.0], normal)
150+
>>> angle_vectors_projected([0.0, 1.0, -1.0], [1.0, 0.0, 1.0], normal)
151151
-1.57079
152152
153153
"""

tests/compas/compas_api.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -263,6 +263,7 @@
263263
"angle_points_xy",
264264
"angle_vectors",
265265
"angle_vectors_signed",
266+
"angle_vectors_projected",
266267
"angle_vectors_xy",
267268
"angles_points",
268269
"angles_points_xy",
@@ -648,4 +649,4 @@
648649
"yellow"
649650
]
650651
}
651-
}
652+
}

tests/compas/compas_api_ipy.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,7 @@
241241
"angle_points_xy",
242242
"angle_vectors",
243243
"angle_vectors_signed",
244+
"angle_vectors_projected",
244245
"angle_vectors_xy",
245246
"angles_points",
246247
"angles_points_xy",
@@ -578,4 +579,4 @@
578579
"yellow"
579580
]
580581
}
581-
}
582+
}

tests/compas/geometry/test_core.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
from compas.geometry import angle_planes
1111
from compas.geometry import angles_vectors
1212
from compas.geometry import angle_vectors_signed
13+
from compas.geometry import angle_vectors_projected
1314
from compas.geometry import centroid_points
1415
from compas.geometry import centroid_polyhedron
1516
from compas.geometry import length_vector
@@ -137,6 +138,15 @@ def test_angle_vectors_signed(u, v, normal, result):
137138
assert TOL.is_close(angle_vectors_signed(u, v, normal), result)
138139

139140

141+
@pytest.mark.parametrize(
142+
"u,v,normal,result",
143+
[
144+
([1, 0, 1], [0, 1, -1], [0, 0, 1], +pi / 2),
145+
([1, 0, 1], [0, 1, -1], [0, 0, -1], -pi / 2),
146+
],
147+
)
148+
def test_angle_vectors_projected(u, v, normal, result):
149+
assert TOL.is_close(angle_vectors_projected(u, v, normal), result)
140150
# ==============================================================================
141151
# average
142152
# ==============================================================================

0 commit comments

Comments
 (0)