xiaxiang 发表于 2011-3-28 14:29:50

电气控制原理图线号编排问题

如题,一直在思考这个问题,无解。想提取图块属性,再对图纸中的文字对象进行自动编号处理。现在已做好图块属性,但不知如何按照标记和值提取内容比对,也不知文字排序的方法。
线号的排序规则为“A+B+C",其中A为位置代码(2位),B为页码代码(2位),C为线号代码(2位),一共6位,详见以下编程说明,并附有样图。
样图为单文件单图,也请考虑单文件多图(多个图块)的可能。
先看图块属性的情况,一共三个属性,如图:

属性的位置和线号的位置在样图中

具体要求如下:
一.提供的样板图有一个带属性的图块KD,包含一个矩形A4图框和三个属性文字,标记分别为:POSITION,NUM,PAGE.
二.程序步骤:
   1.先选择(ENTSEL)图块KD;
   2.判断标记为POSITION的属性的值,若为P,则将00赋予变量A;若为S,则取出标记为NUM的属性的值,然后将值赋予变量A;变量A为2位数字,表示位置,最大值99;
   3.取出标记为PAGE的属性的值,若为“2”则转换为“02”,若为“11”则不变;即将1位的页码转换为2位;再将2位页码值赋予变量B;变量B为2位数字,表示页码,最大值99;
   4.取出矩形A4图框的包含范围,在此范围中寻找所有的6位文字,格式举例为“XXXXXX”,加入选择集;
   5.将选择集中的6位文字按照如下格式处理:“A+B+C"(位置+页码+线号);
   6.C的含义为线号,为2位数字;
   7.按照先左右后上下的方式对所有的6位文字顺序编号,6位文字的坐标位置的容差可在程序中设定;C表示线号,最大值99;
   8.处理完毕。
若以上思路可行,请提供程序关键步骤,直接贴出代码更欢迎。
若不行,可提出新的思路。
在下诚恳求教。

dcl1214 发表于 2012-2-21 23:25:22

你这个问题我已经解决了
页: [1]
查看完整版本: 电气控制原理图线号编排问题