Spreadsheet Workbench/zh-cn


available in version 0.15 电子表格工作台允许您创建和编辑电子表格、执行计算以及从模型中检索数据, 并将其数据导出到其他电子表格应用程序 (如 LibreOffice 或 Microsoft Excel)。


Spreadsheet screenshot.jpg


支持的功能

电子表格提供以下需要一或两个参数的函数: abs, acos, asin, atan, atan2, cos, cosh, exp, log, log10, mod, pow, sin, sinh, sqrt, tan, tanh

三角函数使用角度作为它的默认单位; 提供 rad 允许使用弧度。

在 FreeCAD available in version 0.16 中可用的额外函数: ceil, floor, trunc, 和 round

支持以下的集合函数:average, count, max, min, stddev, sum.

集合函数可以采用一个或多个参数, 用逗号或分号分隔。参数可能包括范围 (由冒号分隔的两个单元格), 例如 "=average(B1: B8)"

常数 "pi" 和 "e" 是预定义的。

条件语句的工作方式如下: "= 条件?真结果: 假结果 "

条件被定义为一个表达式, 计算结果为 0 (false) 或非零为 true。定义了以下比较运算符: ==,! =, >, <, >=, 和 <=。

The conditional statement has actually a bug regarding nested conditional statements. Only the true-result may have another conditional statement. Parentheses are removed after confirming the expression. Trying to put a nested conditional statement in the false-result results in wrong set parentheses with a different result after a saving and reopening of the document.

公式的写法如下: =A2+A3

注ː 单元格引用必须用大写字母书写。

对 CAD 数据的引用

可以在电子表格中使用结构中的数据。 下表显示了一些示例, 假设模型有一个名为 "立方体" 的功能 (请注意, 这是功能的内部名称, 而不是用户指定的标签):

CAD-Data 在电子表格中调用 结果
零件工作台立方体的参数长度 =Cube.Length 长度单位 mm
立方体的体积 =Cube.Shape.Volume 没有单位 mm³ 体积
立方体形状的类型 =Cube.Shape.ShapeType String: Solid
立方体的标签 =Cube.Label String: Cube
立方体质量中心的 x 坐标 =Cube.Shape.CenterOfMass.x 无单位 mm 的 x 坐标

单元格的属性

可以使用右键单击单元格来编辑电子表格单元格的属性。以下对话框弹出:

SpreadsheetCellPropDialog.png

它有几个选项卡。可以更改以下属性:


表达式在这里解释: Expressions

在表达式中的电子表格数据

在 FreeCAD 的其他部分使用电子表格数据需要一个完全定义的名称。因为有可能文档中有多个电子表格, 则需要电子表格名称以及单元格名称或别名。 以下图片显示了在零件设计工作台的表达式中使用从电子表格 "MySheet " 中的别名 "number"。 Expression usage1.png

键入 "M " 显示可用名称的列表。箭头按钮允许选择 "MySheet "。

Expression usage2.png

键入 "n" 现在显示 MySheet 中可用别名的列表, 以 "n" 开头。 可以使用向下箭头按钮选择 "number"。 一旦给定了具有可用内容的有效名称, 结果字段将显示计算出的长度。

Expression usage3.png

单位

电子表格使用单位。如果一个数字有一个单位, 这个单位将用于所有的计算。 两个单位 mm 的长度相乘将会赋一个以 mm² 为单位的值给区域。

您可以在对话框中将长度单位从 mm 切换到英寸, 然后在单元格上右键单击。 单元格现在将显示长度 (以英寸为单位)。用于计算的值不会更改。 当输入的显示单位更改时, 使用该值的公式的结果不会更改。结果仍按 mm 的长度计算。

单元格属性对话框不能在带单位的数字中更改一个没有单位的数字。 没有单位的数字可以放在一个单位字符串, 这也将显示, 但单元格仍然只包含一个数字没有单位。

有时是刻意, 以摆脱一个单位。这只能通过乘以1与一个倒数单位来完成。

导入与导出

可以将工作表导入并导出到 csv 格式, 这些形式也可以由大多数其他电子表格应用程序 (如 Microsoft Excel 或 LibreOffice 计算器) 读取和写入。将文件导入 FreeCAD 时, 分隔符 (用于分隔列的字符) 必须是 TAB 字符 (可以在从其他应用程序导出时设置)。

Excel 中的电子表格-格式 "xlsx " 可以导入到 FreeCAD 文档中。Excel 电子表格也可以通过 FreeCAD 打开。在这种情况下将创建一个带有电子表格的新文档。支持以下功能:

其他功能不会被导入到 FreeCAD 电子表格中。Excel 导入是 FreeCAD available in version 0.17

的功能。

当前限制

这是不可能提供一个几何的数据, 例如一个长度, 在电子表格和检索在同一个电子表格中生成形状的体积。这将创建一个循环引用。这是一个设计决定。但是, 可以使用两个不同的电子表格: 一个是几何图形的数据源, 另一个用于报告几何数据。

不可能选择和复制多个单元格。只有输入字段中的单元格内容才能被复制并粘贴到另一个单元格的输入字段中。

对于 FreeCAD 早期版本, 请参见 Spreadsheet legacy


Scripting Basics

import Spreadsheet
sheet = App.ActiveDocument.addObject("Spreadsheet::Sheet")
sheet.Label = "Dimensions" 


Online version: "http://www.freecadweb.org/wiki/index.php?title=Spreadsheet_Workbench/zh-cn&oldid=282351"

Navigation menu