Great, thank you so much! It works great:
function link_cameras_axis3(f; step = .01)
axes = filter(x -> x isa Axis3, f.content)
for i ∈ eachindex(axes)
lift(axes[i].azimuth, axes[i].elevation, axes[i].aspect,
axes[i].finallimits) do az, el, as, lm
for j ∈ eachindex(axes)
i == j && continue
if abs(az - axes[j].azimuth[]) > step
axes[j].azimuth = az
end
if abs(el - axes[j].elevation[]) > step
axes[j].elevation = el
end
if norm(lm.origin - axes[j].finallimits[].origin) > step ||
norm(lm.widths - axes[j].finallimits[].widths) > step
axes[j].finallimits = lm
end
end
end
end
f
end