cadence SPB17.4 S032 - allegro - 保存/载入光绘层定义
文章目录
- cadence SPB17.4 S032 - allegro - 保存/载入光绘层定义
- 概述
- 保存光绘层
- 在新板子中载入已经保存的相同类型老板子定义好的光绘层定义文件
- 碎碎念
- END
cadence SPB17.4 S032 - allegro - 保存/载入光绘层定义
概述
以前布线完成, 准备出板厂文件时, 总是要手工重新建立光绘层.
开始不觉得有啥不便, 现在板子画的多了, 再一遍一遍的重复工作, 真没意思, 主要是太折磨人.
突然发现allegro可以保存光绘层定义, 在新板子工程(.brd)中, 只需要载入这个定义文件, 光绘层就出来了, 这样省心很多.
光绘层的定义对于同样菲林叠层的板子是通用的(e.g. 2层板, 4层板, 6层板), 这样的话, 手头只要保存几个光绘层定义文件就够用来在相同菲林叠层类型的新板子工程中用了. 如果发现, 现有的光绘层定义文件不符合新板子的光绘层需求, 再手工定义/保存成一个新的光绘层定义文件给以后的新工程用, 这样工作量小很多.
保存光绘层
打开自己以前做好的板子工程(.brd)
执行光绘输出
选择所有已经定义好的光绘层
保存所有已经选中的所有光绘层定义为文件
保存后的光绘层定义文件名称为FILM_SETUP.txt, 改名为my_FILM_SETUP.txt 给新工程用.
看看他长啥样?
axlFilmCreate( "ASM_BTM" ?negative nil ?undefineLineWidth 10.00 ?sequence 2 ?rotation 0 ?xOffset 0.00 ?yOffset 0.00 ?shapeBoundingBox 100.00 ?mirrored t ?fullContact nil ?suppressUnconnectPads nil ?drawMissingPadApertures nil ?useApertureRotation nil ?suppressShapeFill nil ?vectorBasedPad t ?drawHolesOnly nil ?domains '(ipc2581 pdf artwork visibility ) ?ipc2581 '() ?layers '("REF DES/SILKSCREEN_BOTTOM" "PIN/BOTTOM" "PACKAGE GEOMETRY/SILKSCREEN_BOTTOM" "BOARD GEOMETRY/SILKSCREEN_BOTTOM" "BOARD GEOMETRY/DESIGN_OUTLINE" ))
axlFilmCreate( "ASM_TOP" ?negative nil ?undefineLineWidth 10.00 ?sequence 1 ?rotation 0 ?xOffset 0.00 ?yOffset 0.00 ?shapeBoundingBox 100.00 ?mirrored nil ?fullContact nil ?suppressUnconnectPads nil ?drawMissingPadApertures nil ?useApertureRotation nil ?suppressShapeFill nil ?vectorBasedPad t ?drawHolesOnly nil ?domains '(ipc2581 pdf artwork visibility ) ?ipc2581 '() ?layers '("REF DES/SILKSCREEN_TOP" "PIN/TOP" "PACKAGE GEOMETRY/SILKSCREEN_TOP" "BOARD GEOMETRY/SILKSCREEN_TOP" "BOARD GEOMETRY/DESIGN_OUTLINE" ))
axlFilmCreate( "NC" ?negative nil ?undefineLineWidth 10.00 ?sequence 4 ?rotation 0 ?xOffset 0.00 ?yOffset 0.00 ?shapeBoundingBox 100.00 ?mirrored nil ?fullContact nil ?suppressUnconnectPads nil ?drawMissingPadApertures nil ?useApertureRotation nil ?suppressShapeFill nil ?vectorBasedPad t ?drawHolesOnly nil ?domains '(ipc2581 pdf artwork visibility ) ?ipc2581 '() ?layers '("MANUFACTURING/NCLEGEND-1-2" "MANUFACTURING/NCDRILL_LEGEND" "MANUFACTURING/NCDRILL_FIGURE" "BOARD GEOMETRY/DESIGN_OUTLINE" ))
axlFilmCreate( "PS_BTM" ?negative nil ?undefineLineWidth 10.00 ?sequence 5 ?rotation 0 ?xOffset 0.00 ?yOffset 0.00 ?shapeBoundingBox 100.00 ?mirrored nil ?fullContact nil ?suppressUnconnectPads nil ?drawMissingPadApertures nil ?useApertureRotation nil ?suppressShapeFill nil ?vectorBasedPad t ?drawHolesOnly nil ?domains '(ipc2581 pdf artwork visibility ) ?ipc2581 '() ?layers '("PIN/PASTEMASK_BOTTOM" "PACKAGE GEOMETRY/PASTEMASK_BOTTOM" "BOARD GEOMETRY/DESIGN_OUTLINE" ))
axlFilmCreate( "PS_TOP" ?negative nil ?undefineLineWidth 10.00 ?sequence 6 ?rotation 0 ?xOffset 0.00 ?yOffset 0.00 ?shapeBoundingBox 100.00 ?mirrored nil ?fullContact nil ?suppressUnconnectPads nil ?drawMissingPadApertures nil ?useApertureRotation nil ?suppressShapeFill nil ?vectorBasedPad t ?drawHolesOnly nil ?domains '(ipc2581 pdf artwork visibility ) ?ipc2581 '() ?layers '("PIN/PASTEMASK_TOP" "PACKAGE GEOMETRY/PASTEMASK_TOP" "BOARD GEOMETRY/DESIGN_OUTLINE" ))
axlFilmCreate( "SD_BTM" ?negative nil ?undefineLineWidth 10.00 ?sequence 7 ?rotation 0 ?xOffset 0.00 ?yOffset 0.00 ?shapeBoundingBox 100.00 ?mirrored nil ?fullContact nil ?suppressUnconnectPads nil ?drawMissingPadApertures nil ?useApertureRotation nil ?suppressShapeFill nil ?vectorBasedPad t ?drawHolesOnly nil ?domains '(ipc2581 pdf artwork visibility ) ?ipc2581 '() ?layers '("VIA CLASS/SOLDERMASK_BOTTOM" "PIN/SOLDERMASK_BOTTOM" "PACKAGE GEOMETRY/SOLDERMASK_BOTTOM" "BOARD GEOMETRY/SOLDERMASK_BOTTOM" "BOARD GEOMETRY/DESIGN_OUTLINE" ))
axlFilmCreate( "SD_TOP" ?negative nil ?undefineLineWidth 10.00 ?sequence 8 ?rotation 0 ?xOffset 0.00 ?yOffset 0.00 ?shapeBoundingBox 100.00 ?mirrored nil ?fullContact nil ?suppressUnconnectPads nil ?drawMissingPadApertures nil ?useApertureRotation nil ?suppressShapeFill nil ?vectorBasedPad t ?drawHolesOnly nil ?domains '(ipc2581 pdf artwork visibility ) ?ipc2581 '() ?layers '("VIA CLASS/SOLDERMASK_TOP" "PIN/SOLDERMASK_TOP" "PACKAGE GEOMETRY/SOLDERMASK_TOP" "BOARD GEOMETRY/SOLDERMASK_TOP" "BOARD GEOMETRY/DESIGN_OUTLINE" ))
axlFilmCreate( "SK_BTM" ?negative nil ?undefineLineWidth 10.00 ?sequence 9 ?rotation 0 ?xOffset 0.00 ?yOffset 0.00 ?shapeBoundingBox 100.00 ?mirrored nil ?fullContact nil ?suppressUnconnectPads nil ?drawMissingPadApertures nil ?useApertureRotation nil ?suppressShapeFill nil ?vectorBasedPad t ?drawHolesOnly nil ?domains '(ipc2581 pdf artwork visibility ) ?ipc2581 '() ?layers '("REF DES/SILKSCREEN_BOTTOM" "PACKAGE GEOMETRY/SILKSCREEN_BOTTOM" "BOARD GEOMETRY/SILKSCREEN_BOTTOM" "BOARD GEOMETRY/DESIGN_OUTLINE" ))
axlFilmCreate( "SK_TOP" ?negative nil ?undefineLineWidth 10.00 ?sequence 10 ?rotation 0 ?xOffset 0.00 ?yOffset 0.00 ?shapeBoundingBox 100.00 ?mirrored nil ?fullContact nil ?suppressUnconnectPads nil ?drawMissingPadApertures nil ?useApertureRotation nil ?suppressShapeFill nil ?vectorBasedPad t ?drawHolesOnly nil ?domains '(ipc2581 pdf artwork visibility ) ?ipc2581 '() ?layers '("REF DES/SILKSCREEN_TOP" "PACKAGE GEOMETRY/SILKSCREEN_TOP" "BOARD GEOMETRY/SILKSCREEN_TOP" "BOARD GEOMETRY/DESIGN_OUTLINE" ))
axlFilmCreate( "BTM" ?negative nil ?undefineLineWidth 10.00 ?sequence 3 ?rotation 0 ?xOffset 0.00 ?yOffset 0.00 ?shapeBoundingBox 100.00 ?mirrored nil ?fullContact nil ?suppressUnconnectPads nil ?drawMissingPadApertures nil ?useApertureRotation nil ?suppressShapeFill nil ?vectorBasedPad t ?drawHolesOnly nil ?domains '(ipc2581 pdf artwork visibility ) ?ipc2581 '() ?layers '("VIA CLASS/BOTTOM" "PIN/BOTTOM" "ETCH/BOTTOM" "BOARD GEOMETRY/DESIGN_OUTLINE" ))
axlFilmCreate( "TOP" ?negative nil ?undefineLineWidth 10.00 ?sequence 11 ?rotation 0 ?xOffset 0.00 ?yOffset 0.00 ?shapeBoundingBox 100.00 ?mirrored nil ?fullContact nil ?suppressUnconnectPads nil ?drawMissingPadApertures nil ?useApertureRotation nil ?suppressShapeFill nil ?vectorBasedPad t ?drawHolesOnly nil ?domains '(ipc2581 pdf artwork visibility ) ?ipc2581 '() ?layers '("VIA CLASS/TOP" "PIN/TOP" "ETCH/TOP" "BOARD GEOMETRY/DESIGN_OUTLINE" ))
隐约能看出有以下元素:
- 光绘层的名称
- 光绘层是否要镜像
- 光绘层包含的实际板层(e.g. BOARD GEOMETRY/DESIGN_OUTLINE)
在新板子中载入已经保存的相同类型老板子定义好的光绘层定义文件
为了验证, 是否能正确载入已经保存好的光绘层定义文件后, 是否能将现有定义删除, 并载入文件中定义好的所有光绘层.
我手工将所有光绘层都删了, 并且建立了一个测试用的光绘层.
点击"替换", 载入光绘层定义文件.
从"替换"按钮返回后, 看到旧的层被删掉了, 原来板子定义光绘层都被载入了, cadence软件做的NB!
碎碎念
感觉以前的自己比现在的自己傻好多:P
当时咋就没想到有没有可以自动建立光绘层的方法呢. 这么NB的软件应该有类似的功能啊, 咋就想不到先找找呢?
END
相关文章:

cadence SPB17.4 S032 - allegro - 保存/载入光绘层定义
文章目录cadence SPB17.4 S032 - allegro - 保存/载入光绘层定义概述保存光绘层在新板子中载入已经保存的相同类型老板子定义好的光绘层定义文件碎碎念ENDcadence SPB17.4 S032 - allegro - 保存/载入光绘层定义 概述 以前布线完成, 准备出板厂文件时, 总是要手工重新建立光绘…...

微服务实战--高级篇:分布式缓存 Redis
分布式缓存 – 基于Redis集群解决单机Redis存在的问题 单机的Redis存在四大问题: 1.Redis持久化 Redis有两种持久化方案: RDB持久化AOF持久化 1.1.RDB持久化 RDB全称Redis Database Backup file(Redis数据备份文件)…...
【C语言】可变参数列表
本篇博客让我们来认识一下C语言学习过程中往往被忽略的可变参数列表 所谓可变参数,就是一个不限定参数数量的函数,我们可以往里面传入任意个数的参数,以达成某些目的。 关联:C11可变模板参数;本文首发于 慕雪的寒舍 …...

目标检测的旋框框文献学习
这是最近打算看完的文献,一天一篇 接下来将记录一下文献阅读笔记,避免过两天就忘了 RRPN 论文题目:Arbitrary-Oriented Scene Text Detection via Rotation Proposals 论文题目:通过旋转方案进行任意方向的场景文本检测&#x…...
Hive 在工作中的调优总结
总结了一下在以往工作中,对于Hive SQL调优的一些实际应用,是日常积累的一些优化技巧,如有出入,欢迎在评论区留言探讨~ EXPLAIN 查看执行计划 建表优化 分区 分区表基本操作,partitioned二级分区动态分区 分桶 分…...

每天一道大厂SQL题【Day09】充值日志SQL实战
每天一道大厂SQL题【Day09】充值日志SQL实战 大家好,我是Maynor。相信大家和我一样,都有一个大厂梦,作为一名资深大数据选手,深知SQL重要性,接下来我准备用100天时间,基于大数据岗面试中的经典SQL题&#…...

MATLAB 遗传算法
✅作者简介:人工智能专业本科在读,喜欢计算机与编程,写博客记录自己的学习历程。 🍎个人主页:小嗷犬的个人主页 🍊个人网站:小嗷犬的技术小站 🥭个人信条:为天地立心&…...
探讨 Java 中 valueOf 和 parseInt 的区别
前言 在编程中,遇到类型转换,好像会经常用到 parseInt 和 valueOf,当然这里只拿 Integer 类型进行陈述,其他类型也是雷同的; 想必有读者也跟我一样,经常交叉使用这两个方法,但却不知道这两者到…...

JSON学习笔记
♥课程链接:【狂神说Java】一小时掌握JSON_哔哩哔哩_bilibili配套的当然还要学习ajax不管是前端后端,感觉这部分内容是必须的,不然真的做项目的时候云里雾里。总体json的内容不多,具体就:1. 列表、对象等语法格式2. js…...

家政服务小程序实战教程07-轮播图组件
小程序中首页一般显示轮播图的功能,点击轮播图会跳转到具体的一篇文章或者是产品,本篇我们就介绍一下轮播图功能的开发 01 设计数据源 我们轮播图组件需要两个字段,一个是展示的图片,一个是跳转页面传入的参数。打开数据源&…...
MySQL之索引创建、删除、唯一索引、普通索引、及命名规则、注意事项
一、MySQL 索引 定义 索引是一个数据结构,用于加速数据库表中数据的查询。索引存储了一些数据表中的列值,以及这些列值在数据表中的位置,这样就可以通过索引来快速查找到数据表中的某一行数据。 MySQL 支持多种索引类型,包括普通…...

【C++设计模式】学习笔记(3):策略模式 Strategy
目录 简介动机(Motivation)模式定义结构(Structure)要点总结笔记结语简介 Hello! 非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出~ ଘ(੭ˊᵕˋ)੭ 昵称:海轰 标签:程序猿|C++选手|学生 简介:因C语言结识编程,随后转入计算机专业,获得过国家奖学金…...

Java——聊聊JUC中的ThreadLocal
文章目录: 1.什么是ThreadLocal? 1.1 api介绍 1.2 最简单的案例认识ThreadLocal 1.3 线程池结合ThreadLocal案例 2.Thread &ThreadLocal & ThreadLocalMap 3.ThreadLocal内存泄漏问题 3.1 四大引用之强引用 3.2 四大引用之软引用 3.3 四…...

软件工程(4)--螺旋模型
前言 这是基于我所学习的软件工程课程总结的第四篇文章。 在软件开发过程中必须及时识别和分析风险,并且采取适当措施以消除或减少风险的危害。构建原型是一种能使某些类型的风险降至最低的方法。为了降低交付给用户的产品不能满足用户需要的风险,一种行…...

图解LeetCode——剑指 Offer 50. 第一个只出现一次的字符
一、题目 在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。 s 只包含小写字母。 二、示例 2.1> 示例 1: 【输入】s "abaccdeff" 【输出】b 2.2> 示例 2: 【输入】s "" 【输出】 限制: 0 < s 的…...
《HTML 5与CSS 3核心技法》读书笔记
目录前言第1章 写在前面第2章 HTML 语法基础第3章 布局类元素 ,房子的楼板、柱子和大梁第4章 功能类元素,房子的门、窗、水管和电气第5章 CSS基础第6章 选择器,确定样式的作用范围选择器类型选择器的组合使用第7章 权重,样式发送冲…...

【沐风老师】3DMAX几何投影插件Geometry Projection使用详解
【几何投影插件】 描述 3DMAX几何投影插件Geometry Projection,将一个或多个对象或它的顶点选择沿全局或局部 x、y 或 z 轴投影到另一个对象上。 适用版本 3dMax2013或更高版本 安装设置 插件的安装非常简单,解压后把插件脚本 “geometry_projectio…...
面试问题整理
20200422面试题 1、有nginx为什么还要用gateway 2、factorybean和beanfactory有什么区别 https://www.cnblogs.com/leeego-123/p/12159574.html 2、aop原理 3、ioc原理 4、注解requestbody和responsebody区别。pathvireable和requestparam注解区别,feign客户端的注解…...
“区块链60人”2022赋能中国区块链创新人物名单公布
2022年11月5日,“2022第五届全国高校人工智能大数据区块链教育教学创新论坛”在京隆重召开。此次论坛公布了“区块链60人”2022赋能中国区块链创新人物评选活动获评名单。 本次评选活动通过媒体报道、第三方推荐、专家评选等环节,坚持“公开、公平、公正…...
day2324 数组
文章目录相关概念codeArrayTest08 数组拷贝相关概念 day23课堂笔记 1、数组 1.1、数组的优点和缺点,并且要理解为什么。 第一:空间存储上,内存地址是连续的。 第二:每个元素占用的空间大小相同。 第三:知道首元素的内…...
浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)
✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义(Task Definition&…...

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析
1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具,该工具基于TUN接口实现其功能,利用反向TCP/TLS连接建立一条隐蔽的通信信道,支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式,适应复杂网…...
day52 ResNet18 CBAM
在深度学习的旅程中,我们不断探索如何提升模型的性能。今天,我将分享我在 ResNet18 模型中插入 CBAM(Convolutional Block Attention Module)模块,并采用分阶段微调策略的实践过程。通过这个过程,我不仅提升…...

以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:
一、属性动画概述NETX 作用:实现组件通用属性的渐变过渡效果,提升用户体验。支持属性:width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项: 布局类属性(如宽高)变化时&#…...

(二)原型模式
原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...

如何将联系人从 iPhone 转移到 Android
从 iPhone 换到 Android 手机时,你可能需要保留重要的数据,例如通讯录。好在,将通讯录从 iPhone 转移到 Android 手机非常简单,你可以从本文中学习 6 种可靠的方法,确保随时保持连接,不错过任何信息。 第 1…...
3403. 从盒子中找出字典序最大的字符串 I
3403. 从盒子中找出字典序最大的字符串 I 题目链接:3403. 从盒子中找出字典序最大的字符串 I 代码如下: class Solution { public:string answerString(string word, int numFriends) {if (numFriends 1) {return word;}string res;for (int i 0;i &…...
全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比
目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec? IPsec VPN 5.1 IPsec传输模式(Transport Mode) 5.2 IPsec隧道模式(Tunne…...

【Oracle】分区表
个人主页:Guiat 归属专栏:Oracle 文章目录 1. 分区表基础概述1.1 分区表的概念与优势1.2 分区类型概览1.3 分区表的工作原理 2. 范围分区 (RANGE Partitioning)2.1 基础范围分区2.1.1 按日期范围分区2.1.2 按数值范围分区 2.2 间隔分区 (INTERVAL Partit…...

蓝桥杯3498 01串的熵
问题描述 对于一个长度为 23333333的 01 串, 如果其信息熵为 11625907.5798, 且 0 出现次数比 1 少, 那么这个 01 串中 0 出现了多少次? #include<iostream> #include<cmath> using namespace std;int n 23333333;int main() {//枚举 0 出现的次数//因…...