C1.12.2Snap oscillation in dense targets设计研究

密集目标区的吸附会造成来回跳动

别名: 吸附跳动 · snap oscillation · dense targets

概念解释

在密集目标区,吸附跳动(snap oscillation)发生在相邻候选的吸附范围重叠或边界接近时:光标或对象因微小输入变化在多个目标之间来回切换。原本用于帮助停准的吸附反而遮蔽真实输入,令用户难以抵达意图位置。

机制

每个候选都试图在其吸附半径内改写输入位置。候选间距离小于两个作用区之和时,当前吸附会把输出推近另一个候选;下一次输入又触发反向切换。若缺少进入与退出的滞后(hysteresis)、优先级或锁定规则,噪声、低速移动和传感器抖动都会放大振荡。

往下一层看,振荡的几何本质是指针轨迹反复穿越两个候选各自吸附区的等距边界(近似于以候选为中心的 Voronoi 边界)。只要判定规则是"距离更近者获胜"这一单一阈值,边界两侧的输出就会不连续地翻转,而手部输入天然带有几毫米级的高频抖动,抖动幅度只要盖过边界到候选中心的差值,就必然产生振荡——这不是实现缺陷,是"最近者获胜"规则本身在边界附近的数学性质。滞后锁定之所以能解决它,是因为它把单一阈值拆成两个:进入某候选需要跨过较严的阈值,退出则需要跨过更松的阈值,两条线之间形成一个不响应的缓冲带,把边界处原本连续可翻转的判定变成需要明确移动意图才能触发的离散事件。

怎么研究

操控候选间距、半径、移动速度、锁定阈值和目标数量,测量候选切换次数、到达时间、反向修正、失败率与主观可控性。测试应包括用户故意经过多个目标和试图停在中间位置两类任务。要单独验证滞后锁定的效果,应对比"无滞后"和"不同缓冲带宽度"条件下振荡次数的变化曲线,缓冲带过宽会牺牲响应速度,过窄则起不到抑制作用,这条权衡曲线本身就是需要实测而非假设的。

边界

稀疏目标或明确网格交点很少出现振荡;此时较大吸附半径可能确实有益。密集文本、节点图和表格却常有多个同等候选,不能沿用稀疏画布的参数。视觉高亮也只能揭示跳动,不能消除几何冲突——高亮只是让用户看见振荡发生了,无法阻止判定规则本身在边界处反复翻转。

怎么落地

  • 在密集区域缩小半径、建立候选优先级,或在首次吸附后使用滞后锁定,让进入与退出使用不同阈值。
  • 显示当前候选并允许轻易脱离,避免用户不知为何位置跳变。
  • 验证办法:记录每次操作中的候选切换次数,画出切换次数随候选间距变化的曲线;频繁切换的区域应调整布局、吸附规则或缓冲带宽度,而不是简单关闭吸附了事。

延伸

  • 同组C1.12.1 吸附通过缩短有效距离降低指点难度 · C1.12.3 吸附强度需可调或可临时抑制
  • 相邻C1.13 面积光标与气泡光标 · C1.14 指点辅助的副作用
  • 站内检索snap oscillation · hysteresis · Voronoi boundary

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/C1.12.2