ODB++资料解析

news2024/9/20 14:31:10

ODB++文件是由VALOR提出的一种ASCII码,双向传输文件。奥宝公司和康代公司的设备都是用的ODB++格式进行PCB的生产和检测。

对ODB++文件进行解析把数据栅格化很重要,查了网上找不到一个成熟能用的ODB++文件解析代码。自己上手写了一个。

当前解析一些载板,软硬结合板都没有问题。

 

 

 

代码思路:

 

 Commom下只有两个文件,主要存放一些常用的算法,一些常量定义,一些枚举类型

Job目录下存放跟ODB++资料紧密相关的类

 

这部分内容需要了解ODB++资料才能理解。

实际上就是ODB+文件是一个JOB类,包含有step等等信息,一般整个板就是一个panel,panel是由set组合成的,set又是有一个pcs组合来的,pcs就是对应我们的PCB单板了。 

odbGeometry 存放ODB++的图元,主要用到的pad(焊盘)segment(线)surface (铜皮)arc(弧线)

和其他的一些辅助类,所有图元类继承自图元基类odbBase.

就这几个解析我手上几个G的ODB资料都没问题。

 需要解析奥宝康代等扫描机,曝光机资料的可私信我。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/888609.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SNMP简单介绍

SNMP SNMP是广泛应用于TCP/IP网络的网络管理标准协议,该协议能够支持网络管理系统,用以监测连接到网络上的设备是否有任何引起管理上关注的情况。SNMP采用轮询机制,提供最基本的功能集,适合小型、快速、低价格的环境使用&#xf…

灵异事件!程序里发现了新Bug但是它正常运行啦!

人生处处有Bug,有些令人困惑,有些令人崩溃,而有些则会让你觉得发现了一件奇奇怪怪的事情。今天,我就来分享一个我在程序中发现的令人惊奇的Bug。 这个Bug出现在我负责维护的一个大型软件系统中。这个系统是用来管理一个电商平台的…

VS2022如何显示Class View窗口

点击菜单栏的“视图”选项 > “类视图”,即可打开Class View。

Stable Diffusion核心算法DDPM解析

DDPM:Denoising Diffusion Probabilistic Model,去噪扩散概率模型 本文参考:一个视频看懂扩散模型DDPM原理推导|AI绘画底层模型_哔哩哔哩_bilibili 1、大概原理 从右往左为正向加噪过程,从左往右为逆向降噪过程。 在正向过程中不…

安装软件包

安装软件包 创建一个名为 /home/curtis/ansible/packages.yml 的 playbook : 将 php 和 mariadb 软件包安装到 dev、test 和 prod 主机组中的主机上 将 RPM Development Tools 软件包组安装到 dev 主机组中的主机上 将 dev 主机组中主机上的所有软件包更新为最新版本 vim packa…

低代码实操演示 | 如何快速构建企微、钉钉、飞书消息推送服务

8月15日,万应低代码培训总监胡杰为大家带来了一场低代码实操直播,这场直播同时在抖音和微信视频号两个平台进行,吸引了众多关注者的参与。 为了更好地帮助大家快速上手,我们将直播的主题内容做了文字梳理,感兴趣的小伙…

【git clone error:no matching key exchange method found】

拉起项目代码报错 git clone ssh://uidxxxgerrit-xxxxxxxx Cloning into ‘xxxxx’… Unable to negotiate with xxx.xx.xxx.ip port xxxxx: no matching key exchange method found. Their offer: diffie-hellman-group14-sha1,diffie-hellman-group1-sha1 fatal: Could not …

经过几天的乱搞,已经搞出来第一次stm32点灯程序

看吧那个灯泡已经亮了 stm32跟51不同的地方是这里引脚一组16个,如PA0,PA1,PA2,,,,,,PA15 51一组8个 例如P00,P01,P02,,,,P07

c语言——拷贝数组

这段代码是一个简单的数组拷贝示例。它的功能是将一个原始数组 original 的内容拷贝到另一个数组 copied 中,并输出两个数组的元素。 代码执行过程如下: 首先,在 main() 函数中定义了一个整型数组 original,并初始化了它的元素。…

自动编码器:揭开数据压缩和重建的奥秘

一、介绍 你有没有想过数据是如何压缩、传输和重建的?自动编码器是人工智能世界中一个引人入胜的概念,它正是实现这一目标的。想象一下,一个神奇的盒子,它接受复杂的信息,压缩成简化的形式,然后把它恢复到原…

企业数据防泄密解决方案!

PC访问地址: 首页 数据防泄密解决方案有: 透明加密文件:计算机中常用文档类型可以加密,打开加密文档类型下的文件后,文件将自动变为加密状态。 文件操作审计和自动备份:在电脑中打开文件可以进行自动审计…

【加强管理】《别输在不懂管理上》学习记录,黄金41条

成功有时是很难效法的,但失败是可以避免的,从失败中吸取经验和教训才是管理者的必修课。释义: 图形含义🌲一级重要🍀二级重要🌿三级主要🍁存在问题🌼解决办法 1 不能从头管到脚 不…

Go自写NIPS—网络威胁防御系统

目录 0x00 摘要0x01 示例柱状图3d视图报警列表控制查询功能封堵IP实例 0x02 结语 0x00 摘要 紧接着上文,我开发了IDS的雏形,但是因为界面太丑,还频繁出现bug,并且也没有封禁等功能(还需要去防火墙自己封禁&#xff09…

【轻量级神经网络】MobileNet网络详解

文章目录 1、深度卷积(Depthwise convolution)2、逐点卷积(Pointwise Convolution)3、深度可分离卷积(Depthwise Separable Convolution)4、Xception与MobileNet深度可分离卷积的区别 深度学习领域内努力促使神经网络向小型化发展。在保证模型准确率的同时体积更小,…

opencv进阶07-支持向量机cv2.ml.SVM_create()简介及示例

支持向量机(Support Vector Machine,SVM)是一种二分类模型,目标是寻找一个标准(称为超平面)对样本数据进行分割,分割的原则是确保分类最优化(类别之间的间隔最大)。当数据…

你信吗,40%的受访者表示ChatGPT会做出比自己更好的投资决策

注意:本信息仅供参考,发布该内容旨在传递更多信息的目的,并不意味着赞同其观点或证实其说法。 调查显示,很大一部分受访者认为人工智能可以比他们更好地选择股票。 对于许多人来说,人工智能仍处于相对初始阶段&#x…

Python程序设计——元组、集合和字典

可以使用元组存储一个固定的元素列表,使用集合存储和快速访问不重复的元素、使用字典存储键值对并使用这些关键字来快速访问元素。 一、元组 元组跟列表类似,但是元组中的元素是固定的;也就是说,一旦一个元组被创建,就无法对元组中的元素进行…

部署mysql到win10电脑上

中间出现了很多问题, 记录一下 我这边是去官网下载的 ,链接:https://dev.mysql.com/downloads/mysql/ 我这边选了不是最新版本的MySQL,因为第一次安装8.1.0版本的,死活运行不起来,直接卸载安重装了&#x…

Python web实战之Django的国际化和本地化详解

关键词:Django、Python、Web开发、国际化(i18n)、本地化(l10n) 今天我要和大家分享一下 Python Web 开发中的一个重要话题——Django 的国际化和本地化。 1. 国际化和本地化 你有没有想过如何让你的网站在全球范围内…