|
请各位帮帮忙,感觉这个转换很有难度,自己一时半会找不到思路。
有一个文件A,内容如下:
LVS PROPERTY MAP MN W WL LAYOUT
String : ak47 Justification
Rectangle - live : 52 Type : 1 BBOX : (287490,454860) (287630,455000)
LVS PROPERTY MAP MN W WL LAYOUT
String : ak48 Justification
Rectangle - live : 52 Type : 1 BBOX : (287590,454960) (287730,455012)
.....
LVS PROPERTY MAP MN W WL LAYOUT
String : ak100 Justification
Rectangle - live : 52 Type : 1 BBOX : (387590,554960) (387730,555012)
现要转化成新文件B,转换规则是:A文件中3行为一组,后面都是重复的,要把A中String行后面的ak*那一项写到B中的x1,
B中的y1=(A2-A1)/(B2-B1),其中A2A1B2B1对应Rectangle那行的坐标,另外,如果(A2-A1)/(B2-B1)>100,
则把相应的x,y附加到新的up组中,否则附加到top组中,如此重复,B文件都是转换后新生成的,原来没有,请问怎么实现啊?
B文件内容如下:
version = 1
(start
(top
(name = x1
offset = y1
)
(name = x2
offset = y2
)
....
)
(up
(name = x3
offset = y3
)
(name = x4
offset = y4
)
....
) |
|