我是 Knowledge Fusion 的新手,我正在尝试创建一个 .dfa 脚本,它将从表面或实体中添加一些值到表达式中,这样我就可以导出到 excel。
这是我到目前为止所拥有的:
DefClass: centers (%nx_application %ui_comp);
(Boolean) %on_solid?: false;
(String Parameter) %ask_name: "Centers";
(string) %icon_name: "section_inertia";
(Integer) %edit_dialog: ug_invokeClassDialog(self:);
(List Uncached) %onObjectHighlight: centers:;
(Boolean) %atTimeStamp?: false;
(child) UI_Select: {
class, %ui_comp_selection;
Many, False;
Label, "Select surface or solid to analyse";
Tooltip, "Select the Surface or Solid to analyse";
FilterTriple, {{ 70, 0, 35 },{ 70, 0, 36 }};
};
(Instance) objet: ug_adoptObject(nth(1,UI_Select:SelectedObjects:));
这部分找到中心并将其添加到表达式中:
(child uncached) x: {
Class, ug_expression;
Name, "x";
Value, localX(objet:centroid:);
};
(child uncached) y: {
Class, ug_expression;
Name, "y";
Value, localY(objet:centroid:);
};
(child uncached) z: {
Class, ug_expression;
Name, "z";
Value, localZ(objet:centroid:);
};
现在,如果所选对象是表面,或者体积是实体,我正在尝试添加表面积。
这是我尝试过的:
(child uncached) area: {
Class, ug_expression;
Name, "area";
Value, area(objet:surface_area:);
};
这不起作用,应用程序崩溃,说没有类surface_area。
我也不知道如何用这种语言做一个 if 语句。
创建它非常困难,几乎没有在线信息,我找不到有关功能等的文档,到目前为止,一切都是反复试验。
非常感谢一些帮助和指导非常感谢