曾经用node.js测试写Genesis脚本失败了,这次借助开发PCB规则引擎的机会(基于JS V8引擎与.net深度交互性), 验证一下Javascript是否可用于写Genesis脚本.

一.测试Javascript更改单位

var unit = gen.COM('get_units');
console.log('更改前单位:' +unit);
if (unit == 'mm')
{gen.COM('units,type=inch');
}
else
{gen.COM('units,type=mm');
}
unit = gen.COM('get_units');
console.log('更改后单位:' +unit);

二.测试Javascript 增加PAD

orignP = new Object();
orignP.x = 0;
orignP.y = 0;
gen.COM('add_pad,attributes=no,x='+ orignP.x +',y='+ orignP.y +',symbol=r2018');MoveP = new Object();
for (var i=1;i<= 12;i++)
{MoveP.x = orignP.x + 5 * Math.cos(i * 30 * Math.PI / 180);MoveP.y = orignP.y + 5 * Math.sin(i * 30 * Math.PI / 180);gen.COM('add_pad,attributes=no,x='+ MoveP.x +',y='+ MoveP.y +',symbol=r2018');console.alert('第'+ i +'孔坐标: X ' +  Math.round(MoveP.x,3)  + ': Y ' +  Math.round(MoveP.y))
}

三.测试Javascript 执行COM指令效率

var date1 =new Date();
var StartTime =date1.getSeconds() * 1000 + date1.getMilliseconds();
orignP = new Object();
orignP.x = 0;
orignP.y = 0;
gen.COM('add_pad,attributes=no,x='+ orignP.x +',y='+ orignP.y +',symbol=r2018');
MoveP = new Object();
for (var j=1;j<= 100;j++)
{for (var i=1;i<= 12;i++){MoveP.x = orignP.x + 5 * Math.cos(i * 30 * Math.PI / 180);MoveP.y = orignP.y + 5 * Math.sin(i * 30 * Math.PI / 180);gen.COM('add_pad,attributes=no,x='+ MoveP.x +',y='+ MoveP.y +',symbol=r2018');}
}
var date2=new Date();
var EndTime =date2.getSeconds() * 1000 + date2.getMilliseconds();
var CountTime = EndTime - StartTime;
console.alert('总耗时:' + CountTime);

显示层,加120个PAD耗时1.8秒

影藏层,加1200个PAD耗时3.9秒

转载于:https://www.cnblogs.com/pcbren/p/9819806.html

PCB Genesis脚本 C#调用Javascript相关推荐

  1. java写genesis脚本,PCB Genesis脚本 C#调用Python

    在PCB行业,Genesis的二次开发的编程脚本越来越丰富了啊,从一开始进入眼界的Genesis脚本语言是很少的,CSH,PERL, 再后来慢慢发展,VB,易语言,VB.NET,C#,Java,TCL ...

  2. 在Watir中调用JavaScript脚本

    如何在Watir中调用JavaScript脚本?下面的脚本实现了此功能,主要原理是通过IE访问Document,再访问parentWindow,最终还是由IE在执行JavaScript脚本: requ ...

  3. 从父页面在iframe中调用JavaScript代码

    基本上,我将iframe嵌入到页面中,并且iframe具有一些我需要从父页面调用的JavaScript例程. 现在相反非常简单,因为您只需要调用parent.functionName() ,但是不幸的 ...

  4. python操作js中的输入_Python调用JavaScript代码的方法

    准备阶段: 以一段简单的JS脚本为例,将代码写入到文件中,其中,定义了一个方法,计算两个数的和. //norm.js //计算两个数的和 function add(num1, num2) { retu ...

  5. 一步一步学Silverlight 2系列(21):如何在Silverlight中调用JavaScript

    概述 Silverlight 2 Beta 1版本发布了,无论从Runtime还是Tools都给我们带来了很多的惊喜,如支持框架语言Visual Basic, Visual C#, IronRuby, ...

  6. MSScriptControl详解(可实现在C#等语言中调用JAVASCRIPT代码)

    ScriptControl接口 属性名称 类型 备注 AllowUI BOOL 检测是否允许运行用户的接口元素.如果为False,则诸如消息框之类的界面元素不可见. CodeObject Object ...

  7. 脚本语言语言脚本语言:Shell , JavaScript、VBScript、Perl、PHP、Python、Ruby、Lua

    今天一直在研究脚本语言语言之类的问题,上午正好有机会和大家共享一下. 脚本语言:Shell , JavaScript.VBScript.Perl.PHP.Python.Ruby.Lua 工作控制语言和 ...

  8. 【Java脚本引擎】脚本引擎执行JavaScript代码

    应用场景 公司有30员工,每个人工资计算方式不同.现在需要计算工资. 传统的方法:一个接口,30个实现类. 使用脚本引擎:编写一个xml文件,每人一个计算公式,使用的时候可以把公式加载到程序中,启动时 ...

  9. js方式调用php_javascript调用PHP和PHP调用javascript的方法

    javascript调用PHP和PHP调用javascript的方法 发布时间:2020-06-22 17:03:14 来源:亿速云 阅读:262 作者:Leah 这篇文章将为大家详细讲解有关java ...

最新文章

  1. python使用textwrap包在已经生成的长字符串中嵌入回车符实战
  2. hibernate入门知识-01
  3. vooc是什么快充协议_5G时代除了网速,快充同样重要!
  4. MySQL数据类型和Java数据类型对应关系表
  5. GitHub 撤销 commit
  6. 20171129-构建之法:现代软件工程-阅读笔记
  7. CRC32/CRC16算法C#中的实现
  8. 智能建筑--常见协议
  9. Android自定义权限
  10. 4.1 手工编写第一个性能测试脚本
  11. DX11编程(一):DX和Effect的基本配置和属性表配置
  12. 计算机pe启动蓝屏怎么办,进pe蓝屏解决方法
  13. Arduino字符串操作函数
  14. 《我奋斗了18年才和你坐在一起喝咖啡》,而我奋斗了18年,不是为了和你一起喝咖啡(转载)...
  15. 湖南师范大学2018年大学生程序设计竞赛新生赛 F 小名的回答
  16. 为什么正定矩阵等于转置_关于正定矩阵的一些新结果
  17. Kafka 集群扩容、分区重新分配、SparkStreaming自适应上游kafka topic partition数目变化
  18. 无线蓝牙耳机手机端app开发_不输AirPods,只花百元就能买到的超级耳机,值了!...
  19. linux消息通信无法接收,求助!Linux基于UDP通信失败,server接收不到消息???...
  20. php商城手机端省市显示,jQuery仿手机京东商城收货地址城市选择

热门文章

  1. Sonar6.0应用之四:与Jenkins集成分析(Scanner+Maven)
  2. Android Studio 2.2:新布局、Firebase、OpenJDK以及Java 8
  3. Android的HTTP方式网络通信---HttpURLConnection
  4. 分数加减法 http://acm.nyist.net/JudgeOnline/problem.php?pid=111
  5. 如何应对内网安全的那些新挑战——威胁不断,防御不止
  6. 高度不定垂直居中_你真的能写好CSS垂直水平居中吗?
  7. python下俄罗斯方块的游戏设计_[源码和文档分享]基于Python的PyGame的俄罗斯方块游戏设计与实现...
  8. alidata mysql 卸载_mysql相关(一)、基本知识
  9. 网上购物软件的测试计划,网上购物平台购物测试计划书
  10. 2021辽宁高考成绩查询公布,2021辽宁高考成绩什么时候出