Workbench利用Python驱动DM执行Js进行建模
Workbench的工作平台下可以利用Python进行一些操作,包括添加system和component等等。DM可以通过执行Jscript脚本进行自动建模,因此,结合这两块的内容,可以利用Python驱动DM执行Js脚本进行自动化建模。
首先创建好Jscript脚本文件,文件代码如下所示,代码创建了一个简单的模型,详细意义此处不解释。
- var ps1 = new Object();
- ps1.Plane = agb.GetActivePlane();
- ps1.Origin = ps1.Plane.GetOrigin();
- ps1.XAxis = ps1.Plane.GetXAxis();
- ps1.YAxis = ps1.Plane.GetYAxis();
- ps1.Sk1 = ps1.Plane.NewSketch();
- ps1.Sk1.Name = "Sketch1";
- with (ps1.Sk1) { ps1.El7 = Ellipse( 8.0, 10.0, 9.0, 6.0, 5.0, 12.0); }
- agb.Regen();
然后需要写Python代码,用于在Workbench下面添加一个几何组件,并自动打开。
利用Python向DM传递代码需要用到SendCommand函数,具体应用如下所示:
- # encoding: utf-8
- # Release 16.0
- SetScriptVersion(Version="16.0.361")
- template1 = GetTemplate(TemplateName="Geometry")
- system1 = template1.CreateSystem()
- system1 = GetSystem(Name="Geom")
- geometry1 = system1.GetContainer(ComponentName="Geometry")
- geometry1.Edit()
- geometry1.SendCommand( Command = """var ps1 = new Object();
- ps1.Plane = agb.GetActivePlane();
- ps1.Origin = ps1.Plane.GetOrigin();
- ps1.XAxis = ps1.Plane.GetXAxis();
- ps1.YAxis = ps1.Plane.GetYAxis();
- ps1.Sk1 = ps1.Plane.NewSketch();
- ps1.Sk1.Name = "Sketch1";
- with (ps1.Sk1) { ps1.El7 = Ellipse( 8.0, 10.0, 9.0, 6.0, 5.0, 12.0); }
- agb.Regen();""")
执行后即可在Workbench中显示如下所示:
图1
注意:上段python代码中有一条geometry1.Edit(),该函数是打开DM,若没有该行,那么执行该段代码时不会打开DM,而是相当于批处理的形式进行运行。
生成的简单模型如下所示:
Workbench利用Python驱动DM执行Js进行建模的更多相关文章
- java利用JDK调用并执行js源码
前言: 不同开发语言之间具有通用性,更具有协作调用的可能.有时候对于一些场景会有调用js的需求,因此下面展示了一个java利用自身JDK调用js函数的demo,供感兴趣的朋友参考. js函数文件 ex ...
- Python利用PyExecJS库执行JS函数
在Web渗透流程的暴力登录场景和爬虫抓取场景中,经常会遇到一些登录表单用DES之类的加密方式来加密参数,也就是说,你不搞定这些前端加密,你的编写的脚本是不可能Login成功的.针对这个问题,现在有 ...
- python selenium-webdriver 执行js (八)
使用python selenium 做自动化测试的时候其实我基本没有使用过执行js,只是在后来使用selenium来爬虫的时候使用到了,所以我在这里也就拿出来简单的介绍一下如何执行js. execut ...
- Python 执行js的2种解决方案-乾颐堂
第1种方案 SpiderMonkey是Mozilla项目的一部分,是一个用C语言实现的JavaScript脚本引擎, 该引擎分析.编译和执行脚本,根据JS数据类型和对象的需要进行内存分配及释放操作:利 ...
- Python执行js之PyexecJs
利用Python执行js 爬虫中会经常碰到JS加密,当我们找到他加密的JS代码之后我们需要获取它的返回值,python虽然可以模仿js写一个python版本的加密,但是这样有点费时间,也有点费头发~ ...
- Python脚本控制的WebDriver 常用操作 <二十一> 执行JS
测试用例场景 如果你熟悉js的话,那么使用webdriver执行js就是一件很高效的事情了.在webdriver脚本中直接执行js的好处很多,这里就不一一枚举了. webdriver提供了execut ...
- python利用unittest进行测试用例执行的几种方式
利用python进行测试时,测试用例的加载方式有2种: 一种是通过unittest.main()来启动所需测试的测试模块: 一种是添加到testsuite集合中再加载所有的被测试对象,而tes ...
- python基础===利用unittest进行测试用例执行的几种方式
利用python进行测试时,测试用例的加载方式有2种: 一种是通过unittest.main()来启动所需测试的测试模块: 一种是添加到testsuite集合中再加载所有的被测试对象,而tests ...
- 爬虫必备:Python 执行 JS 代码 —— PyExecJS、PyV8、Js2Py
在使用爬虫中,经常会遇到网页请求数据是经过 JS 处理的,特别是模拟登录时可能有加密请求.而目前绝大部分前端 JS 代码都是经过混淆的,可读性极低,想理解代码逻辑需要花费大量时间.这时不要着急使用 S ...
随机推荐
- iframe高度宽度自适应
iframe { width: 100%; height: 100%; border: none; position: inherit; } 网上全是js方法,而且略显臃肿,故找到了一个css方法,宽 ...
- Https证书配置
本文介绍配置免费证书的方法 具体步骤: 一.获取免费CA证书 步骤1到腾讯云找到: 二.申请完成 后域名验证指引 申请域名型证书,可以通过以下方式验证域名的所有权: 1. 手动 DNS 验证 通过解析 ...
- mybatis学习 -每天一记(驼峰命名匹配)
在mybatis 中,数据库表有一个与之对应的实体类.类属性的命名是驼峰命名的,所以在mybatis中要开启驼峰匹配, 在spring boot 的项目中,至需要在yml文件中配置 即可. 当然也有其 ...
- python-给微信好友自动发送天气预报和每日一句
周末在宿舍学习python,女朋友那突然下了倾盆大雨,在图书馆门口跟我抱怨好久.最近又在学习python,就想给女朋友写个小程序,每天早上将每天的天气预报通过微信发个她. 在本程序中,用到了几个重要的 ...
- Unresolved externa Round
[ilink32 Error] Error: Unresolved external '__stdcall Round(const double, int)' referenced from e:\工 ...
- react组建生命周期
实例化 首次实例化 getDefaultProps //创建默认 props getInitialState //创建 默认的State componentWillMount //在装 ...
- 【读书笔记】Segment Routing基础
- white-space:pre-wrap和word-break:break-all;
最近碰到了两个css属性,在此记录一下: 1.white-space :nomal规定文本中的文字空格和换行的情况 normal:默认.空白会被浏览器忽略. pre:空白会被浏览器保留.其行为方式类似 ...
- 消息中间件 rabbitMQ
参考内容:https://www.cnblogs.com/dwlsxj/p/RabbitMQ.html 一.什么是RabbitMQ RabbitMQ是一个由erlang 开发的AMQP(Advance ...
- python+selenium页面自动化 元素定位实际遇到的各种问题(持续更新)
1.class属性有空格 (已验证) 当classname 中存在空格的时候,直接使用find_element_by_class_name时,会显示定位失败,此时,需要将classname中的空格替 ...