mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-09-20 06:58:56 +00:00
Change snap axis to 15 angles increments.
This commit is contained in:
committed by
Bruno Perdigão
parent
e48050af4b
commit
ce8e104b0b
@@ -236,8 +236,8 @@ class Snap(bonsai.core.tool.Snap):
|
|||||||
translated_intersection = intersection - last_point
|
translated_intersection = intersection - last_point
|
||||||
snap_axis = []
|
snap_axis = []
|
||||||
if not lock_axis:
|
if not lock_axis:
|
||||||
for i in range(1, 13):
|
for i in range(1, 25):
|
||||||
angle = 30 * i
|
angle = 15 * i
|
||||||
snap_axis.append(angle)
|
snap_axis.append(angle)
|
||||||
else:
|
else:
|
||||||
snap_axis = [lock_axis]
|
snap_axis = [lock_axis]
|
||||||
@@ -426,6 +426,7 @@ class Snap(bonsai.core.tool.Snap):
|
|||||||
if cls.snap_axis_method == "Z":
|
if cls.snap_axis_method == "Z":
|
||||||
cls.snap_angle = 90
|
cls.snap_angle = 90
|
||||||
if cls.snap_axis_method:
|
if cls.snap_axis_method:
|
||||||
|
# Doesn't update snap_angle so that it keeps in the same axis
|
||||||
rot_intersection, _, axis_start, axis_end = cls.snap_on_axis(intersection, cls.snap_angle)
|
rot_intersection, _, axis_start, axis_end = cls.snap_on_axis(intersection, cls.snap_angle)
|
||||||
|
|
||||||
if cls.snap_plane_method:
|
if cls.snap_plane_method:
|
||||||
@@ -482,9 +483,6 @@ class Snap(bonsai.core.tool.Snap):
|
|||||||
snapping_points.append(op)
|
snapping_points.append(op)
|
||||||
break
|
break
|
||||||
|
|
||||||
if "Plane" in list(origin.keys()):
|
|
||||||
intersection = origin["Plane"]
|
|
||||||
snapping_points.append((intersection, "Plane"))
|
|
||||||
|
|
||||||
for origin in detected_snaps:
|
for origin in detected_snaps:
|
||||||
if "Axis" in list(origin.keys()):
|
if "Axis" in list(origin.keys()):
|
||||||
@@ -493,6 +491,10 @@ class Snap(bonsai.core.tool.Snap):
|
|||||||
axis_end = intersection[2]
|
axis_end = intersection[2]
|
||||||
snapping_points.append((intersection[0], "Axis"))
|
snapping_points.append((intersection[0], "Axis"))
|
||||||
|
|
||||||
|
if "Plane" in list(origin.keys()):
|
||||||
|
intersection = origin["Plane"]
|
||||||
|
snapping_points.append((intersection, "Plane"))
|
||||||
|
|
||||||
# Make Axis first priority
|
# Make Axis first priority
|
||||||
if event.shift or cls.snap_axis_method in {"X", "Y", "Z"}:
|
if event.shift or cls.snap_axis_method in {"X", "Y", "Z"}:
|
||||||
cls.update_snapping_ref(snapping_points[0][0], snapping_points[0][1])
|
cls.update_snapping_ref(snapping_points[0][0], snapping_points[0][1])
|
||||||
|
|||||||
Reference in New Issue
Block a user