急盼高手救援,从文件中读取图元坐标信息时,时而正确,时而错误,请问各位大侠怎么解决。(100分)

  • 主题发起人 主题发起人 happydog
  • 开始时间 开始时间
H

happydog

Unregistered / Unconfirmed
GUEST, unregistred user!
我在绘制变压器图元时,采用计算坐标的方式,即利用一个外框矩形的坐标,计算在其内部绘制两个部分重叠的圆来实现。在文件中只保存了外框矩形的左上和右下坐标,保存代码如下:
PInteger(P)^:=StartPos.X;
Inc(PInteger(P));
PInteger(P)^:=StartPos.Y;
Inc(PInteger(P));
PInteger(P)^:=EndPos.X;
Inc(PInteger(P));
PInteger(P)^:=EndPos.Y;
Inc(PInteger(P));
读取代码如下:
StartPos.X:=PInteger(P)^;
Inc(PInteger(P));
StartPos.Y:=PInteger(P)^;
Inc(PInteger(P));
EndPos.X:=PInteger(P)^;
Inc(PInteger(P));
EndPos.Y:=PInteger(P)^;
Inc(PInteger(P));
可是不知道为什么读取图元时EndPos.Y的值时而正确,时而变的非常大,导致变压器图元无法绘制,请问各位大侠怎么解决啊?[:(][:(]
 
自己先顶一下
 
光看这个都是对的。
出错原因可能这些原因
1 保存的时候endpos.y就是错误的,没计算正确
2 读取的时候指针失败,导致寻址错误。

而且老兄用的数据结构不对,
建议用Tlist,不愿意的
话也可以自己定义一个指针记录传值
 
我确实是自己定义了一个指针P来记录传值;可以确定保存的时候没有错,因为也有读取正确,能够正常显示的情况;至于读取的时候指针失败怎么避免呢?怎么检查呢?在线等!
 
如果是指针失败的话,为什么读取完这个变压器元件的坐标后,后续其它元件的坐标又是正确的呢?
 
我给你发邮件解决吧,我以前遇到过这样的情况,我的邮箱jinanxiaojin@sina.com
 
接受答案了,谢谢!
 
后退
顶部