泛 容

Intergraph SmartReview ZVF文件解析 *.ZVF File Parsing

简介

ZVF文件是Intergraph SmartReview生成的项目文件,提供一个完整的3D模型。经过解析zvf文件的数据结构和算法,使得第三方开发人员可以创建自定义应用程序,读取和转换zvf格式文件

数据结构解析

### 一、文件头解析
/**************************一些约定 ********************************
文件开始位置:start = 0;
文件结束位置:end = 文件大小;
分析步长:byte,按字节进分析;
计数进制:十进制,如:129 就是十进制的 129;
数据长度:[start , 63],表示为区间 “ 0 byte~ 63 byte ” 的数据,总共 64B;
*******************************************************************/
#### 1. [start , 63 ]:用途信息 (sUtility)- 用来查看的 - SmartPlant Review
#### 2. [64  , 127 ]:产品信息 (cProduct)- 用什么产生的文件 - SmartPlant 3D
#### 3. [128 , 191]  : 版本信息 (vVersion)

算法解析

#### 2.2 ZVF CZvfHeaderBlock 解析算法
/**********************	解析头部数据开始位置以及大小 ***************
1. 每一块的起始位置 : 32 B 
2. 每一块的结束位置 : 32 B 
3. 每一块的数据大小 :  起始 - 结束
4. 下一块的起始 = 上一块的结束
6. 循环读取14个字节数据
/**********************	根据头部解析的位置以及大小,解析数据	********
this.HeaderBlocks = new ZvfHeaderBlock[29];
			for (int j = 0; j < 29; j++)
			{
				int num = j;
				if (num != 8){
this.HeaderBlocks[j] = new ListBlock(array[j], this.encoding_0);}