文章编号:1009—4318 (2000) 03—0035—03
查找和解算尺寸链的一种算法
Ξ王克武
(连云港职业技术学院 ,江苏・连云港 222006)
摘要 :根据线性尺寸链的组成特点 ,提出了一种通过建立邻接矩阵和关联矩阵快速查找和 解算尺寸链的方法 。
关键词 :尺寸链 ;邻接矩阵 ;关联矩阵
中图分类号 : TH123 文献标识码 :A
在机械制造行业的产品设计 、工艺规程 设计以及技术测量等工作中 ,都会遇到尺寸 链的分析与计算问题 。本文提出了一种通过 建立邻接矩阵和关联矩阵快速查找和解算尺 尺寸链的方法 。
1 尺寸链的数学描述
用图论的方法描述尺寸链 ,采用这样的 方法 ,即将规定尺寸的端面作为节点 ,两端面 间的尺寸作为边 ,尺寸值作为边的权 。下面 以图 1 零件为例 ,详细介绍尺寸链图的建立 方法 。
图 1 零件设计尺寸 Fig. 1 Size of part
对图 1 零件 ,将端面从左至右顺序编号
为 1 、2 、3 ……7 ,此零件的设计尺寸可构成图 2 所示的无向图 ,其顶点数等于零件上规定 尺寸的端面数 ,每一条边代表两顶点所代表 的端面间的设计尺寸 ,每条边上的权代表两 端面间的设计尺寸的值 。由图的性质可知 , 任两个端面的距离总可以由该图唯一地确 定 。
图 2 设计尺寸图 Fig. 2 Grap h of dimension 由零件设计的性质 ,可得该无向图的两 个性质 :
性质 1 由设计尺寸构成的图必无环路 。 性质 2 任两顶点在此图上的通路必定存 在并且唯一 。
显然这两个性质可作为求解尺寸链的依 第 13 卷 第 3 期
2000 年 9 月 连云港职业技术学院学报
Journal of Lianyungang Technical College Vol. 13 No . 3 Sep . 2000
Ξ 收稿日期 :2000 - 04 - 18
据 ,也可作为线性设计尺寸多余或缺少的判 据 。
2 邻接矩阵 、关联矩阵的建立
为了便于后续查找计算 ,对零件设计尺 寸所构成的图 ,采用数组来存储顶点和边的 信息 。对图 2 零件设计尺寸所形成的图共有 1 至 7 个顶点 ,采用 7 ×7 维数组即可满足要 求 ,如下所示 :
W =
0 10 15 0 0 0 72
- 10 0 0 0 0 0 0
- 15 0 0 0 0 0 0
0 0 0 0 0 0 23
0 0 0 0 0 10 0
0 0 0 0 - 10 0 10
- 72 0 0 - 23 0 - 10 0 注 :为便于后续计算 令 W (J , I) =2W( I ,J)
为寻求设计尺寸间的联系,定义邻接矩 阵为:有 n个顶点的图G = ( V , VR ) 有 n 阶对称矩阵 A :
A [ i , j ] = 1 若( Vi, Vj)或( Vj, Vi) ∈VR 0 反之
根据零件设计尺寸图及邻接矩阵的定 义 ,可建立图 2 的邻接矩阵为 :
A =
0 1 1 0 0 0 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 1 1 0 0 1 0 1 0
借助于该邻接矩阵很容易判定两个顶点 之间是否有边相连 ,并求得各个顶点的度 。 顶点 Vi 的度是邻接矩阵中第 i 行 ( 或第 i 列) 的元素之和 : TD ( V i) = 6n
i = 1A[ i , j ]。对图
1 的零件来说各顶点的度分别为 :
TD (1) = 3 , TD (2) = 1 , TD (3) = 1 , TD (4) = 1 , TD (5) = 1 , TD (6) = 2 , TD (7) = 3
根据端面数和最大度可建立一个关联矩
阵 B [ n , TDmax] ,定义 :
B [ i , j ]= J 若 A[ I ,J ] ≠0 0 若 A [ I , J ]= 0,
即扫描邻接矩阵 ,凡元素为 1 的列 ,记下其列 号 ,并填入关联矩阵中 。关联矩阵中包含了 与某端面有已知尺寸联系的端面号信息 。图 1 零件的关联矩阵为 :
B=
2 3 7 1 0 0 1 0 0 7 0 0 6 0 0 5 7 0 1 4 6 3 尺寸链的查找和计算
查找尺寸链的问题 ,实际上是查找图中 两顶点间的通路 。有了关联矩阵 ,我们可以 采用探索法来查找 ,为了避免探索产生死路 , 因此对每搜索过的顶点设立标志 ,使得它在 搜索过程中只被遍历一次 。
尺寸链查找完成以后 ,应计算封闭环的 尺寸 。封闭环的尺寸与尺寸链中增环和减环 有关 ,因而正确判断每个组成环的增减性是 计算封闭环的关键所在 。由尺寸链的性质可 知 ,尺寸链是一个封闭的环状 ,如算例中 (3 , 4) 间的通路可构成如图 3 所示的环状 。
图 3 尺寸链环 Fig. 3 Ring of dimension
已知封闭环两端面间存在一个已定的秩 序关系 (通常为由小到大) ,所以判断组成环 的增减性可根据组成环两端面间的秩序关系 6 ・
・ 连云港职业技术学院学报 2000 年 9 月3
是否与封闭环相同作为判断依据 :秩序相同 的端面尺寸为增环 ,相反则为减环 。即 :
W[ 3 ,4 ] = W[ 3 ,1 ] + W[ 1 ,7 ] + W[ 7 , 4 ]
= ( - 15) + 72 + ( - 23) = 34 完成尺寸链的查找和计算的框图如图 4 所 示 ,其算法如下 :
1) 初始化标志矩阵 T [ i ]= 0 ,端面号矩 阵 S [ i ]= 0 ;
2) 输入待求尺寸的端面号 x , y ; 3) 置标志 T [ x ]= 1 ,J = 1 , K = 0 ; 4) 扫描关联矩阵 B [ x , J ] :
Ⅰ) 如果 B [ x , J ]= Y ,转 (5) ;
Ⅱ) 如果 T [ B ( x , J ) ]= 0 ,令 x = B [ x , J ] , T [ x ]= 1, K= K+ 1, S [ K ]= x ,转(4) ;
Ⅲ) 如果 T [ B ( x , J ) ]≠0,令 J = J + 1 ,x
= B [ x ,J ] ,转 (4) 。
5)顺序取出 S [ K ]中的元素,作为尺寸
链组成环的端面号,计算封闭环尺寸 W [ X , Y ] :
W [ X , Y ] = W [ x , y ]+ W [ S ( K) , S ( K+ 1) ]
图 4 流程图
Fig. 4 F1ow diagram of p rogram
4 结论
本文提出基于图的数据结构 ,建立邻接 矩阵和关联矩阵查找和解算尺寸链的算法 , 可以方便地用于解算设计尺寸链和装配尺寸 链中 ,也可作为 CAPP 系统中工序尺寸计算 的子程序使用 。
参考文献 :
[ 1 ] 郑相周1 基于树形结构的尺寸链快速 查找方法[J ]1 机械 ,1991 ,(4) .
[ 2 ] 严蔚敏 , 吴 伟民 1 数据结构 [ M ] 1 北 京 :清华大学出版社 ,19881
作者简介:王克武(1963—) ,男,连云港职业技术学 院机电系讲师,主要从事机械加工及微机应用等方 面的研究 。
责任编校 :尹小舟 7 ・
・3 第 13 卷 第 3 期 王克武 :查找和解算尺寸链的一种算法