惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
Visual Studio Blog
Engineering at Meta
Engineering at Meta
月光博客
月光博客
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
T
Tailwind CSS Blog
博客园 - Franky
The GitHub Blog
The GitHub Blog
大猫的无限游戏
大猫的无限游戏
The Cloudflare Blog
B
Blog RSS Feed
云风的 BLOG
云风的 BLOG
小众软件
小众软件
罗磊的独立博客
Microsoft Azure Blog
Microsoft Azure Blog
I
InfoQ
美团技术团队
H
Hackread – Cybersecurity News, Data Breaches, AI and More
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
V2EX
C
Check Point Blog
WordPress大学
WordPress大学
博客园 - 【当耐特】
博客园 - 司徒正美
D
Docker

人人都是产品经理

为什么你的产品找不到差异化?90%的失败都卡在第一步上(下) – 人人都是产品经理, 3年从30万到1300万用户、获2200万美元融资,这个AI教育产品用“抽卡”破解了获客难题 – 人人都是产品经理, 园区招商系统怎么做才能真正帮到去化?我加了这一个功能,推广链接转发400次阅读过万 – 人人都是产品经理, AI大事件:OpenAI发完网络安全模型又搞药物研发,小鹏汽车要抓”DeepSeek时刻” – 人人都是产品经理, 电商不是卖货,是一场更残酷的产品经理实战 – 人人都是产品经理, 没想到,活动营销又回来了! – 人人都是产品经理, 为何All-in海外KOC:一场关于AI时代窗口期的豪赌 – 人人都是产品经理, 重新理解企业的内部协作 – 人人都是产品经理, 苹果的 AI 战略到底是什么? – 人人都是产品经理, 医疗智能体·第2讲——合规护城河:等保、PIPL与HIPAA的架构实战 – 人人都是产品经理, 向量知识库五步法:从“答非所问”到“精准回复” – 人人都是产品经理, 鸿蒙PC三方库构建总指挥HPKBUILD(sha)库为例 – 人人都是产品经理, 何时该用LLM?AI产品经理的LLM设计指南 – 人人都是产品经理, 医疗信息领域的需求方、决策方、准入方以及关注点(二) – 人人都是产品经理, 即梦涨价:一场被误读的「傲慢」 – 人人都是产品经理, 面试AI PM必答题:Hermes和OpenClaw的区别,如何讲清楚业务价值 – 人人都是产品经理, AI的下一张船票:世界模型——AI产品经理必须理解的技术拐点 – 人人都是产品经理, 小红书做GEO,怎么让AI信你?记住这 3 个重要信息 – 人人都是产品经理, 5 家印度 AI 初创公司,看看印度 AI 再做什么 – 人人都是产品经理, AI项目跨团队协作:产品技术业务如何不打架 – 人人都是产品经理, Agentic Workflow(智能体工作流):让AI从”答案生成器”变成”数字员工” – 人人都是产品经理, lycium_plusplus 项目全景解读:OpenHarmony 三方库构建的“大管家” – 人人都是产品经理, 从爆单救火到前置履约:两套预采策略,把生鲜大促履约效率拉满 – 人人都是产品经理, 什么时候该补货?我用一轮数据做了一个决定 – 人人都是产品经理, 从“机械兜底”到“动态分流”:AI客服重复进线治理的4大底层逻辑 – 人人都是产品经理, 抖音拼效率,红书拼洞察 – 人人都是产品经理, 全民狂欢与退潮——为什么龙虾这波热潮冷却得如此之快? – 人人都是产品经理, Stripe押注!MPP重塑全球支付 – 人人都是产品经理, 小红书GEO:AI引用你的内容,不是因为你对,而是因为你看起来可信 – 人人都是产品经理, 前百度副总裁押注办公Agent,日韩付费爆发,Manus迎来强劲对手 – 人人都是产品经理,
工业软件的产品设计——从选择功能谈起
石寒 · 2023-07-05 · via 人人都是产品经理

本篇文章将从选择功能看工业软件设计的不同设计思路,帮助读者了解3D设计和2D设计的异同,能给产品设计的伙伴们提供一些思路,希望能对你有所帮助。

工业软件的功能十分庞杂繁复,且与业务强关联,如果针对某一个产品做大而全的分析,容易陷入广而不深、泛泛而谈的境地。

因此,笔者选择将所有工业软件中都具备的一个基础功能——选择功能,作为切入点,对一些常见的工业软件进行对比,看看CAD/CAE/CAM等CAX软件分支的设计思路有何不同,3D设计和2D设计的异同有哪些,不同厂家的产品设计又有哪些差异。

本篇笔者基于交互设计圣经《About Face:交互设计精髓》中对选择功能的描述对选择功能进行简要分析,后续会针对不同的软件做实际调查分析。

一、谈谈选择功能

3D场景里的选择(拾取)操作,是CAX软件里上层应用的一个基本交互功能,是其他功能施加的起点。

首先,先看看《About Face:交互设计精髓》中是如何描述选择功能的:

“选取某个对象或控件的操作,被称为选择(selection)。它是个简单的习惯用法,鼠标点指再单击该对象就完成了该操作(当然,也可以通过其他方式来完成,例如键盘或其他按钮等)。选择是其他复杂交互动作的基础。用户选取了某个对象后便可以对该对象进行操作。这一系列动作发生的序列可简称为对象-动词次序(object verb ordering)。”

About Face中的描述并无特指2D还是3D,因此在大多数情况下,无论是word中的文本对象、PS中的图形对象,还是CAX软件中的3D对象,其选择功能的设计思路都是类似的,只是在由维度不同引起的特殊情况下会有针对性的功能设计。

二、命令次序与选择:动词-对象 or 对象-动词

通常我们描述一个动作或命令,例如“吃饭”、“设置模型颜色”、“旋转这个门把手”时,会包括一个描述动作的动词,以及一个被执行动作的对象。

在我们平时说话时,通常是先说动词再说对象,偶尔也会先说对象再说动词,例如“那个球,扔给我!”

在设计软件界面的交互动作时,也基于这两种思路来表达命令:

  • 可以先指定动词,然后对象。
  • 或者相反次序,先指定对象,然后动作。

通常分别称之为“动词-对象次序”和“对象-动词次序”。

熟悉命令行系统的读者会知道,命令行的操作,通常按照“动词-对象”次序执行命令,这符合语言逻辑。

而在图形界面中,动词-对象次序的逻辑就会暴露出来一些问题。

例如,我们想在文件夹中删除几个文件,如果是动词-对象次序,那么用户需要先选择删除功能,系统进入了删除状态,用户再选择想要要删除的文件。但是一定要提前想好要删除的文件是哪些,不然如果有漏网之鱼,一会还要再进入删除状态来一次同样的操作,这非常不自然并且需要用户提前思考。

这就像一个想把在客厅看电视的孩子们叫到卧室睡觉的母亲,如果是“动词-对象”次序,相当于这个母亲自己先进入卧室,把孩子们一个一个叫进来。

如果孩子很多,这位母亲以为自己已经把孩子们都叫进来了,然后走出房间才发现还有孩子在客厅,然后要再次走进房间叫他们进屋睡觉;或者被叫进来的某个孩子要去上厕所,那这个母亲需要等他上完厕所再叫他回来。

而如果是“对象-动词”次序,则是这位母亲身处客厅,把客厅的孩子们一个个撵回卧室里,可以如果有要上厕所的,那就等他上完出来再叫他回卧室,这位母亲就不用自己反复的进出卧室了。

回到删除文件的例子,如果换成对象-动词次序呢?

那就是我们平时经常用的操作了,按住Ctrl+单击选中多个文件,然后删除,删完发现还有没删除的。那好,再按住ctrl单击删除一次,不用提前考虑,大大减少了用户的认知负担。

三、离散选择和连续选择

在《About Face:交互设计精髓》中,作者提出了离散选择和连续选择的概念。

离散和连续,就是看对象数据间是否有关联关系。

对象间可以独立的被选择,被称为离散数据,针对他们的选择称为离散选择。例如桌面上的图标、PPT里不同的形状。

对于由成百上千个相似的小对象组成的连贯整体,这种称为连续数据,对其执行的选择常以连续分组的方式进行选择,称为连续选择。例如Word中的文本、Excel中的单元格。

连续选择和离散选择都支持单选和框选,但二者仍存在差异。

例如word中,文本都有自然次序,如果把字的顺序打乱就破坏了文章含义。因此在word中选择文本时,通常不会随机零散的选择,尽管理论上也可以进行离散的选择,比如选择几个不连续的段落,但是这类选择为用户带来的麻烦,超过了任务本身的价值。

另一方面,离散数据没有内在次序,比如文件夹中零散的文件。当然,用户有时也会按照一定原则来进行连续选择,比如按时间顺序排列文件,选择那些较为久远的文件。

在某些情况下,用户会对挨在一起的对象执行连续选择,也可能希望选择单个对象。

因此两种选择并非完全孤立的,通常是你中有我我中有你,但是会根据对象的不同有所侧重。

四、互斥

通常,当做出一个选择后,以前任何选择都作废了,这种行为称为互斥。也就是一个选择排斥另一个选择。

比如,PPT中用户单击一个方块,方块被选中,但是当用户点击另一个圆形对象时,方块的选中状态就取消了。

互斥对离散选择和连续选择都适用。

某些离散系统还允许第二次单击所选对象来取消选择。这可能导致一种奇怪的情况:根本没有选中,并且没有插入点。

产品经理需要判断这种情况对产品是否合适。

五、添加选择

如果在离散选择时关闭互斥,用户可以连续单击对象来选择多个独立对象,称之为添加选择(additive selection)。

例如,列表框可以允许用户随心所欲地做出多项选择,并在第二次单击时取消选择。

多数离散选择系统默认情况下采用互斥机制,只有使用元键时才允许添加选择,Shift 最常用,Ctrl 其次。

例如在画图程序中,单击选择一个图形对象后,你可以用 Shift 元键加单击,在你的选择中增加其他对象。

连续选择系统通常不允许添加选择(至少缺乏总体视图来对添加选择进行管理),但连续选择界面可以对选择方式加以扩展,这里元键再一次发挥作用。

在 Word 软件中,先选择第一个对象后,对第二个对象按住 Sifit 键进行单击,可以选择第一个对象和第二个对象之间的所有内容。

某些列表框以及 Windows 的文件视图(两者都是离散数据的例子)中的添加选择则有点奇怪。它们用 Ctrl 键实现“正常”的离散添加选择,但又用 Shift键来“扩展”选择,仿佛它们是连续的数据,而不是离散的。

六、成组选择

单击和拖动(click-and-drag)操作,也是成组选择的基础。对于连续数据,它意味着从鼠标按下到鼠标释放都属于“扩展选择”。

这也可通过元键调整,例如在 Word 中 Ctrl+单击选择一个完整的句子,那么Ctrl+拖动就可以逐句选择。独占式应用程序应该使用这些合适的变体来丰富它们的交互。

只要这些变体的操作简单,经验丰富的用户最终会记住和使用它们。

在离散对象的集合中,单击并拖动的操作通常会触发一个拖放移动(drag-and-drop-move)动作。如果鼠标按键是在两个对象之间单击,而不是在任何一个特定对象上,就有一种特殊的含义。

七、选择的视觉提示

必须清晰、醒目地向用户指出选中的对象。选中状态在拥挤的屏幕上必须容易辨认、清晰,并且不能使对象通常可见的细节变得模糊。

通常在3D软件中被选中对象都会高亮显示,2D软件如PS、PPT等会给被选中的图形加边框突出显示。

八、3D对象的选取问题

3D对象的选择操作绝大多数与2D类似,都包括单选、框选等操作,但是由于多了一个维度,3D对象之间会有遮挡关系。

如果某个零部件处于大装配体的内部,无论如何旋转用户在外部都是看不到的时候,用户该如何选中它?

选中无法看到的内部零件有两种路径,一种是不在3D场景中选择,而是通过其他已知信息来检索和选择,另一种是在3D场景中将内部零件暴露出来,从而进行选择。

先看第一种,不在3D场景中选择的方法:

在模型树中根据名称找到该物体的节点,选中。通过检索ID或者其他属性来选中该对象。

另一种,在3D场景中选择的方法:

  • 通过剖切功能暴露选择物体。
  • 改变外部模型透明度,显示内部零件
  • 隐藏外部零部件,暴露内部。
  • 通过爆炸图暴露内部零件。
  • 通过鼠标点击位置触发关联菜单,提供可以选择对象列表。
  • Creo中的做法,右键单击物体,每单击一次选择下一个对象。

九、直接操作与间接操作

  • 间接操作:有的软件将选择/拖动/移动等功能置于不同的模态,在工具栏中有相应的按钮,点击后才可以进行对应操作。
  • 直接操作:当然绝大多数CAX软件,直接依靠鼠标左键右键滚轮分配不同的功能。例如,左键是选择,滚轮是缩放和平移视角,右键是旋转视角或者弹出右键菜单,打开界面直接就可以操作。

本文由 @石寒 原创发布于人人都是产品经理,未经许可,禁止转载。

题图来自 Unsplash,基于CC0协议。

该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务。