用C#写脚本做UI界面基本上都是用WinForm界面,如果想制作很漂亮动态的界面用WPF界面挺不错的选择, 这里介绍如何使用控制台程序调用WPF窗口 一.方法一 在控制台程序中,通过Main方法启动WPF窗口 App app = new App(); app.Run(new MainWindow()); 二.方法二 通过Form窗口启动另外一个WPF窗口 private void Form1_Load(object sender, EventArgs e) { this.Hide(); this…
曾经用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,t…
在PCB行业,Genesis的二次开发的编程脚本越来越丰富了啊,从一开始进入眼界的Genesis脚本语言是很少的,CSH,PERL, 再后来慢慢发展,VB,易语言,VB.NET,C#,Java,TCL,PYTHON,C++,语言真的是五花八门啊,各种各样编程语言与Genesis为伍, 2004年PCB前辈写的Genesis Python接口,真的好久远了,想想当时的我还没入PCB这行了;呵呵 有需要的可以在此基础上面改进哦.学习借鉴一下人家的封装接口思路. http://pcbren.cn/Sh…
一.先看genesis原有Font字体 在PCB工程CAM加孔点字体要求时,通常我们直接用Geneis软件给我们提供了2种孔点字体canned_57与canned_67,但此字体可能不能满足各个工厂个性化需求,比如:孔密度,孔间距,孔形状分布,如果有一些个性化需求时必须得自己可以编辑孔点字体才可以满足要求,可以奥宝没有提供这样的工具给我们,在这里就介绍用genesis自制Font字体实现方法 二.Font字体坐标文件制作说明 Font字符坐标文件放在genesis安装目录:C:\genesis\…
一.何为短槽 短槽通常定义:槽长小于2倍槽宽      如:槽长1.8mm,槽宽1.0mm 二.为什么要加短槽加引孔呢 短槽孔在钻孔时孔易偏斜导致槽长偏短, 当槽长宽比越小,则受力越不均匀,在钻第2个孔时,钻头两边受力不均匀再加上是顺时针旋转,会导至第2个孔往逆时针方向偏转且变短(如下图) 短槽偏位问题如何解决呢,在我们PCB行业最佳作法是在钻槽孔之前,先在槽孔两端2个小孔(如下图). PCB行业已有很多短槽加工方法了 具体方法请链接:PCB钻孔--超短坑槽的加工方法 机械钻孔中的短槽孔加工技术…
使用Genesis导入TGZ方式很多 的,比如有:写个脚本框选TGZ的的方式实现TGZ导入,将TGZ拖入脚本界面实现TGZ导入, 给Engineering Toolkit窗口句柄注册拖拽事件实现TGZ导入, 右键实现TGZ导入等,本篇介绍最后一种右键导入TGZ的方法.   一.实现效果图 1.tgz文件右键导入 2.tgz文件夹右键导入   二.借助Gateway实现InputTGZ脚本----C#实现代码 1.C#实现代码部份 using System; using System.Collec…
在PCB行业中,客户提供的PCB尺寸较小,为方便PCB加工,并生产提高生产效率,通常小于80X80mm需拼板处理的, 拼板要求可能来自按户指定拼板,也有可能是由工厂自行拼板,但对于CAM来说就需将PCS拼成SET了,这里就给CAM带来不小工作量了, 这里讲解工厂自行拼板,如何实现自动拼板与画工艺边 的实现方法. 一.实现方式 1.获取单只外形坐标数据 2.遍历坐标数据,获取最左侧,最下侧,最右侧,最上侧 线段装入4个集合中 3.将4个集合中重复线段,细小间距,线段偏差进行过滤与校正处理 4.接着…
越来发现Genesis采用Surface多边形数据结构的重要性了,当撑握了多边形缩放,交集, 差集,并集等算法, 想实现PCB拼板简直轻而易举了;当然借助多边形算法可以开发出更多的PCB实用的工具出来,下面将圆形板拼板实现效果展示一下. 关于圆形拼板的可参考下面另外3篇 拼板,加邮票孔,圆板切边方法 PCB Genesis拼SET画工艺边 实现方法(一) PCB Genesis加邮票孔(弧与弧)实现算法 PCB 圆形板切边算法 实现  拼圆板实现效果 1.邮票连接位参数设置 2.圆形拼板参数设置…
从事PCB工程行业的都知道,启动Genesis需2个exe程序(Xmanager.exe与get.exe)需一起启动才可以打开我们熟悉的软件, 而Xmanager是图形窗口是给用户UI交互使用的,如果仅仅是后台跑脚本是否不用启动Xmanager, 因为图形界面对于Genesis脚本是多余的,那么是否可以只启动get.exe在后台运行脚本呢. 答案是:当然是可以的啦,实现起来非常简单 ,下面这里介绍实现方法. 一.C#代码实现 1.C:\genesis\e97\get\get.exe       …
先放置一个容器控件,并设计 好WinForm(或WPF)窗口 winform 调用 wpf ElementHost el = new ElementHost(); el.Dock = DockStyle.Fill; this.panelStation.Controls.Add(el); ucStationMess_WPF stat = new ucStationMess_WPF(); el.Child = stat; 其中,panelStation 为winform 的窗口控件 ucStatio…