什么是 Onshape?
什么是 Onshape?
Onshape 不是什么
我们先来看看Onshape没有做什么。当然可以在云中的服务器上运行传统的桌面 CAD 系统或与它非常相似的系统,将用户输入转发到服务器,并通过“屏幕抓取”将图形发送到客户端。那可以工作。但结果只会是一个旧的 CAD 系统,只是速度较慢。
所以这不是我们所做的。我们从头开始以不同的方式编写 Onshape,以提供传统 CAD 系统无法实现的功能,充分利用云,并充分利用服务器和客户端机器。
什么是 Onshape
传统的基于文件的 CAD 系统是一个单一的应用程序,在一台机器上运行,同时受到其功能的限制,并且没有充分利用它们。另一方面,Onshape 就像任何其他大型现代云应用程序一样——服务器和服务的集合。它们可以在针对其目的优化的机器上运行;并且可以优化实例数量,使它们始终处于忙碌状态,但不会过载,从而有效利用资源。
一些处理事情(例如用户身份验证和授权,以及查找和列出文档)的服务器处理大量请求,但它们自己并没有做很多“实际工作”。他们将复杂的请求转发到其他服务器。其他人知道文档“内部”的内容,并将建模会话保留在内存中,从而导致使用文档建模的长期会话。
其他人,公认的缺乏想象力的“几何服务器”,做所有的数学计算——这些都是针对计算能力进行优化的。这些服务器用于从特征列表和 FeatureScript 重建几何、求解装配体中的实例位置以及计算图形细分。他们利用了古老的几何建模内核 Parasolid 和约束求解器 D-Cubed——两者都经过多年在许多 CAD 系统中使用的良好测试——我们从 Siemens PLM 那里获得了许可。
客户端和图形
我们的客户端,包括浏览器 javascript 客户端和移动应用程序,都不是特别瘦,但它们本身也不是完整的 CAD 系统。它们使用我们自己的有线协议,使用普通的 HTTPS/ReST 调用和 websocket 连接与服务器进行通信。
客户端不会收到预渲染的图像(如在屏幕抓取场景中),也不会收到具有精确几何形状的整个 CAD 模型。相反,它的图形都是三角形的形式,用 WebGL(在浏览器中)或 OpenGL(在移动应用程序中)呈现。我们没有使用第三方场景图形库之一,而是使用我们自己的自定义渲染器,具有我们自己的自定义功能,以及显示大型模型所需的速度。
你总是最新的
升级到基于文件的 CAD 系统的新版本是一个长期存在的问题:所有用户都必须安装一个复杂的新软件,不能保证旧部件会继续工作(实际上,您通常可以确定某些东西会休息)。使用 Onshape,没有用户更新之类的东西。我们一直在发布新软件,除了新功能出现之外,您甚至可能不会注意到。
无需安装任何新东西(除非您使用我们的移动应用程序,您可以像更新任何移动应用程序一样对其进行更新),因为一开始就无需安装任何东西。而且我们所有用户的数据都存储在我们的服务器上这一事实意味着我们可以提前检查大量文档中的错误(无需自己查看它们!),而不是让您在为时已晚后找到它们。
数据和数据管理
正如我们可以编写一个传统的基于文件的 CAD 系统并在云中运行它一样,我们也可以在传统桌面系统上对我们的数据管理进行建模,就像桌面系统一样读取和写入文件。在某些方面,这本身就是对旧桌面系统的改进——生活在云中,这些文件可以在任何地方使用,而不仅仅是在一张桌子上的一台机器上。但它肯定不会充分利用云和现代技术的力量。
Onshape 不是将其数据存储在磁盘或PDM 系统库中的文件中,而是存储在数据库中。它不需要每次打开或保存文档时都读取和写入文档中的所有数据——我们根本没有明确的“保存”操作。相反,每次更改都记录为增量。当用户工作时,我们总是按照他们的方式编写他们所做的一切,只记录更改,而不是整个文件。我们不会删除或覆盖旧数据,只是添加新数据。除了确保你永远不会失去工作当您断电时,这是我们独特的数据管理能力的基础。我们在最基本的数据格式中内置了 PDM 的基础知识——每一次更改都会被记录下来,并且可以轻松恢复。“保存”版本是微不足道的:我们只是在适当的历史点添加一个标签。
还有更多:我们存储的增量适用于文档的任何状态。这就是我们无缝协作的原因,也是我们能够合并更改集的原因。Onshape 只是一个接一个地应用。结果可能不是您想要的部分——两个用户总是可以做出不一致的更改——但它总是有意义的。无需从 Vault 中检出文件并将其锁定(尽管您可以随时限制写入访问权限,如果您愿意),因为与任何其他 CAD 系统不同,Onshape 可以协调多个用户的工作。
Onshape 不是什么
我们先来看看Onshape没有做什么。当然可以在云中的服务器上运行传统的桌面 CAD 系统或与它非常相似的系统,将用户输入转发到服务器,并通过“屏幕抓取”将图形发送到客户端。那可以工作。但结果只会是一个旧的 CAD 系统,只是速度较慢。
所以这不是我们所做的。我们从头开始以不同的方式编写 Onshape,以提供传统 CAD 系统无法实现的功能,充分利用云,并充分利用服务器和客户端机器。
什么是 Onshape
传统的基于文件的 CAD 系统是一个单一的应用程序,在一台机器上运行,同时受到其功能的限制,并且没有充分利用它们。另一方面,Onshape 就像任何其他大型现代云应用程序一样——服务器和服务的集合。它们可以在针对其目的优化的机器上运行;并且可以优化实例数量,使它们始终处于忙碌状态,但不会过载,从而有效利用资源。
一些处理事情(例如用户身份验证和授权,以及查找和列出文档)的服务器处理大量请求,但它们自己并没有做很多“实际工作”。他们将复杂的请求转发到其他服务器。其他人知道文档“内部”的内容,并将建模会话保留在内存中,从而导致使用文档建模的长期会话。
其他人,公认的缺乏想象力的“几何服务器”,做所有的数学计算——这些都是针对计算能力进行优化的。这些服务器用于从特征列表和 FeatureScript 重建几何、求解装配体中的实例位置以及计算图形细分。他们利用了古老的几何建模内核 Parasolid 和约束求解器 D-Cubed——两者都经过多年在许多 CAD 系统中使用的良好测试——我们从 Siemens PLM 那里获得了许可。
客户端和图形
我们的客户端,包括浏览器 javascript 客户端和移动应用程序,都不是特别瘦,但它们本身也不是完整的 CAD 系统。它们使用我们自己的有线协议,使用普通的 HTTPS/ReST 调用和 websocket 连接与服务器进行通信。
客户端不会收到预渲染的图像(如在屏幕抓取场景中),也不会收到具有精确几何形状的整个 CAD 模型。相反,它的图形都是三角形的形式,用 WebGL(在浏览器中)或 OpenGL(在移动应用程序中)呈现。我们没有使用第三方场景图形库之一,而是使用我们自己的自定义渲染器,具有我们自己的自定义功能,以及显示大型模型所需的速度。
你总是最新的
升级到基于文件的 CAD 系统的新版本是一个长期存在的问题:所有用户都必须安装一个复杂的新软件,不能保证旧部件会继续工作(实际上,您通常可以确定某些东西会休息)。使用 Onshape,没有用户更新之类的东西。我们一直在发布新软件,除了新功能出现之外,您甚至可能不会注意到。
无需安装任何新东西(除非您使用我们的移动应用程序,您可以像更新任何移动应用程序一样对其进行更新),因为一开始就无需安装任何东西。而且我们所有用户的数据都存储在我们的服务器上这一事实意味着我们可以提前检查大量文档中的错误(无需自己查看它们!),而不是让您在为时已晚后找到它们。
数据和数据管理
正如我们可以编写一个传统的基于文件的 CAD 系统并在云中运行它一样,我们也可以在传统桌面系统上对我们的数据管理进行建模,就像桌面系统一样读取和写入文件。在某些方面,这本身就是对旧桌面系统的改进——生活在云中,这些文件可以在任何地方使用,而不仅仅是在一张桌子上的一台机器上。但它肯定不会充分利用云和现代技术的力量。
Onshape 不是将其数据存储在磁盘或PDM 系统库中的文件中,而是存储在数据库中。它不需要每次打开或保存文档时都读取和写入文档中的所有数据——我们根本没有明确的“保存”操作。相反,每次更改都记录为增量。当用户工作时,我们总是按照他们的方式编写他们所做的一切,只记录更改,而不是整个文件。我们不会删除或覆盖旧数据,只是添加新数据。除了确保你永远不会失去工作当您断电时,这是我们独特的数据管理能力的基础。我们在最基本的数据格式中内置了 PDM 的基础知识——每一次更改都会被记录下来,并且可以轻松恢复。“保存”版本是微不足道的:我们只是在适当的历史点添加一个标签。
还有更多:我们存储的增量适用于文档的任何状态。这就是我们无缝协作的原因,也是我们能够合并更改集的原因。Onshape 只是一个接一个地应用。结果可能不是您想要的部分——两个用户总是可以做出不一致的更改——但它总是有意义的。无需从 Vault 中检出文件并将其锁定(尽管您可以随时限制写入访问权限,如果您愿意),因为与任何其他 CAD 系统不同,Onshape 可以协调多个用户的工作。