DWG
文章平均质量分 82
jiangyb999
这个作者很懒,什么都没留下…
展开
-
浅说 INSERT/块参照/BlockReference
浅浅的议论一下动态块的存储原创 2023-01-18 17:18:35 · 2004 阅读 · 0 评论 -
DWG 2004 格式解析系列(八) DataSection(3) AcDb:AcDbObjects
AcDb:AcDbObject section存储着整个dwg文件中的所有对象,包括object和entity。通常,这个section一般会由多个page组成。通过(二)中的方法可以容易地得到section data,并且藉由Object map根据object的handle定位到编码的数据,最后,根据object的类型解码得到具体的object。在我们得到的data中,前4个字节(CA 0D 00 00)含义未明。00000000 CA 0D 00 00 17 00 8D 01 0C 00原创 2022-05-15 19:15:47 · 1207 阅读 · 2 评论 -
DWG 2004 格式解析系列(七) DataSection(2) AcDb:Handles
简单说,AcDb:Handles section描述的是对象句柄与其存储位置的对应关系,称为ObjectMap,其结构简单易于理解。其中的存储位置,指的是该对象在AcDb:Objects section在解码解压后的数据中的绝对地址。首先要明确的是,其数据是分页存储的。每页以一个BigEndian short值表示页尺寸(page data + crc的尺寸),当页尺寸值为2(即只包含一个CRC)时,则结束。贴代码比文字描述要轻松,其实也没什么需要再描述的了。void CObjectMap::dec原创 2022-05-07 14:23:12 · 563 阅读 · 0 评论 -
DWG 2004 格式解析系列(六) DataSection (1) AcDb:Preview
我们知道,DWG的存储逻辑上是按照SECTION分组的,而且我们已经能够从DWG的数据流中解析出各种SECTION。这里的SECTION与DXF中SECTION是对应的,DXF实质上就是DWG的文本表述。自然而然,我们下一步就是解析各种SECTION。涉及的DATA SECTION为:/// \enum Section type of R2004+typedef enum _tagDwg2004SectionType{ SECTION_UNKNOWN = 0, /原创 2022-05-06 19:54:53 · 611 阅读 · 0 评论 -
DWG 2004格式解析系列(五) 位流解码基础
介绍了位流解码以及字符串流的计算原创 2022-05-04 20:18:43 · 1254 阅读 · 1 评论 -
DWG 2004格式解析系列(四) BITCODE
在学习了如何解析DWG的结构后,接下来就是解读各SECTION的内容。不过,在这之前仍然有一件事是必需要了解的,那就是DWG中的数据流的编码格式。Autodesk大概是为了减小保存文件的尺寸,将数据流按位进行了编码(个别section仍然是以字节为单位编码,如Preview),所以,本节只讲位码的编排格式。0,我总是打头阵编码名称含义B1位BB2位3B1-3位BSBit ShortBLBit LongBLLBit Long LongBD原创 2022-05-03 15:31:08 · 1594 阅读 · 0 评论 -
DWG 2004 解析系列(三)文件结构之2007
前文讲述了2004的文件结构,在引言中层提及2004后的dwg文件结构,除了2007外,基本相同,本文就详细讲述一下2007的文件结构。其实,从2000版后,除了文件结构的不同外(可分为2000,2004,2007三种不同结构),从文件中解析出某个SECTION的数据后,其内部编码都是相同的(即位码,计划后面再详述)。0 总体结构 总体结构依然是文件头+数据页的组织形式,主要差别在于2007的文件头的不同。对文件头的解码过程如下图: 首先从dwg文...原创 2022-05-02 12:50:00 · 1833 阅读 · 1 评论 -
DWG 2004 格式解析系列(二)文件结构
从整体上看,一个dwg文件可分为2部分:文件头和数据,数据部分是在物理上是分页(page)存储的,在逻辑上一个或多个页组成一个段(section)......原创 2022-04-29 21:12:18 · 6850 阅读 · 24 评论 -
DWG 2004 格式解析系列(一)引言
终于下定决心,把我对dwg格式的理解整理成文字。 对dwg格式的认识,可以追溯到200x年开发一款图形编辑软件的时候。除了软件本身提供的编辑功能外,也需要从外部引入矢量图形。大家都知道Autocad在国内的普及程度,因此读入dwg中的图形就是首要的需求。也许有人会说dxf不是很方便吗,干嘛非要从不公开格式的dwg中引入呢?的确,dxf是公开的格式,稍有编程能力的人都能自己解析,但是,你要使用者每次都从dwg转换到dxf,也是一件烦人的事。如果能直接读入dwg,岂不是更方便。...原创 2022-04-28 22:24:50 · 3433 阅读 · 7 评论