GLG工具包Visualization and HMI Toolkit更新至v3.6,支持Java Script

Visualization and HMI Toolkit的为开发高级图形的动态界面而设计的艺术化的框架:它不仅仅是简单的按键与菜单,它是全动态的能显示动态数据以及能反映用户互动的图片对象。它不仅仅是能制作“漂亮图片”绘制工具(它还具有很多其他功能),而是能使开发人员定义图片对象以及与程序中的对象互动的图形引擎。它的使用对象主要针对应用程序开发人员,能将乏味的低级别图片代码编译工作转化成高级的互动设计行为。

GLG工具包Visualization and HMI Toolkit更新至v3.6,点击下载>>>

支持Java Script:

对Java Script的增加的支持使得用户可以定义自定义函数,将多个输入值转换为驱动动画的输出值。通过可以添加到对象属性的新Java Script转换来使用Java Script。例如,一个新的“LED Value Display”部件可以通过使用Java Script转换来实现部件的逻辑。

转换的Java Script属性包含用于生成输出值的Java Script代码。转换的Arg List属性通过$ N符号提供脚本中使用的可变的参数,其中N是基于1的参数索引(即 $ 1是第一个参数)。参数可以是双(D)、字符串(S)或XYZ(G)类型。Java Script转换的输出值也可以是D、S或G类型,与其所附属性的类型相匹配。

例如,可以使用以下Java Script将D属性的值设置成以度为单位的第一个参数的sin函数:Math.sin ($ 1 / 180. * Math.PI)

下面的Java Script可用于根据第一个参数的值和由第二个、第三个参数定义的阈值来在“NORMAL” 和“ALARM”之间切换的文本字符串:$ 1 <$ 2 || $ 1> $ 3?“ALARM”:“NORMAL”

对于复杂的Java Script来说,可以通过Java Script文件提供Java Script函数和方法库。加载此文件时,可以在图形中使用该文件中定义的Java Script函数。

应用程序可以使用包含Java Script方法集合的全局Java脚本文件并在应用程序的图纸中使用。该文件将被预加载并用作Java Script库。Viewport的JavaScriptFile属性也可定义为该viewport预加载的Java Script文件。所有加载的Java脚本都是全局的,可以在应用程序的任何位置访问。从Java Script文件加载的函数将覆盖任何以前具有相同名称的Java Script函数。

GLGeditors和所有GLG API都支持Java Script:C / C ++、Java、C#和Windows上的ActiveX。C / C ++和ActiveX中的Java Script支持由Duktape JavaScript Engine提供,对于C#来说可以使用Jurassic JavaScript引擎(由Jurassic.dll提供)。在Java中可以使用Java的JavaScript引擎。

所有Java Scripts都在绘图设置时先行编译,以实现更快的运行。这些脚本也可以进行缓存。

GlgJavaScriptFile全局配置资源或GLG_JAVA_SCRIPT_FILE环境变量可用于指定全局Java Script文件。 对于GLG Builder和GLG HMI配置器,还可以通过-glg-java-script-file命令行选项或GLG配置文件中的GlgJavaScriptFile资源(即glg_config或glg_hmi_config)提供全局Java Script文件。

本文作者慧都Elyn,转载注明出处

转载于:https://my.oschina.net/u/3279502/blog/866378

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
GLG算法(Generalized Lagrangian Algorithm)是一种用于求解非线性约束最优化问题的优化算法。GLG算法基于广义拉格朗日乘数法,在求解过程中,将非线性约束问题转化为一系列无约束子问题,并通过对一系列子问题进行求解来逼近原问题的最优解。 在MATLAB中,可以使用优化工具箱中的fmincon函数来实现GLG算法。 首先,需要将原问题转化为MATLAB可接受的形式。假设有目标函数f(x)和一组约束条件g(x)<=0,h(x)=0。可以定义一个目标函数和非线性约束的嵌套函数,其中输入参数为x,输出为目标函数值和约束条件的值。例如: function [obj, con] = glg_problem(x) obj = f(x); con = [g(x); h(x)]; 接下来,可以调用fmincon函数来求解最优解。函数输入参数包括嵌套函数的句柄、初始点、线性约束、上下界等。例如: x0 = [1, 2, 3]; % 初始点 lb = [0, 0, 0]; % 上界 ub = [Inf, Inf, Inf]; % 下界 A = []; % 线性约束矩阵 b = []; % 线性约束向量 Aeq = []; % 线性等式约束矩阵 beq = []; % 线性等式约束向量 [x_opt, f_opt] = fmincon(@glg_problem, x0, A, b, Aeq, beq, lb, ub); 最后,可以通过输出结果x_opt和f_opt来得到最优解的数值和目标函数值。 总之,MATLAB提供了丰富的优化工具箱,可以方便地实现GLG算法来求解非线性约束最优化问题。通过定义目标函数和非线性约束的嵌套函数,并调用fmincon函数进行求解,可以得到问题的最优解和最优值。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值