公司要做一个电力系统监测项目,需要在某条线路图上的某个电力开关的位置实时监测,显示电流、电压等参数,
而且最麻烦的是以后这个线路图上要让客户手工增加电力开关或者更改现有电力开关的位置,而参数的显示位置也必须跟着改动。
另外这些改动还必须和数据库关联起来,比如说我先在数据库中增加一个开关,然后作图时新增的开关必须和它关联。这样如果使用bmp图片的话,我觉得非常麻烦,而且客户也不容易操作。
我考虑是不是需要自己定义图片文件格式呢,在这个格式里包含开关的名称,开关的位置等。但这样一来如何显示这个文件呢?因此想请教各位有相关开发经验的朋友介绍一下思路!
如果那位朋友做过这样的项目,麻烦留下qq或者email,具体请教一下(可以付报酬的)。

解决方案 »

  1.   

    这个软件没有做过,不过第一份工作是电力集团一个子公司,倒是在总集团看人用过。可以讨论一下。这个肯定不能是图片。数据库是你来定义格式?还是已经由客户定义好了?线路图是已有的图片?还是一些节点位置信息?一般就是你在一个View中按照一定的(x,y),以N个点组成N条折线,连接成一整个线路图,设置为“电力开关”的点,必须以特殊的图形显示,比如加粗加大的一个红点,当鼠标点到这个点时,就显示相应的参数。当选择“新加开关”功能时,就由客户在View中点击他希望增加开关的一个点,获取该点鼠标位置(x,y),将该点以特殊图形显示,并可增加相应参数。数据库操作就是普通的用法,应该没有特殊的需求。
      

  2.   

    多谢shuiyan的回答,
    数据库我是自己定义的,线路图是已经有的图片,当然,不行的话我可以可以重新画(必须和原线路图一直)。而且线路经常会变。
    我理解你的意思,你就是把线路信息(坐标,名称等)保存下来,然后让vc根据这些信息重新绘图,修改的时候也是把这些信息重新保存。
    那就有两个问题:
    1.如果一条线路的信息很多(有很多开关或者别的东西),我如何保存,是不是一个线段或者一个开关存成一条记录呢?
    2.VC重绘的时候,如果信息很多的话,速度来得及吗?(因为要求是实时监控)。我觉得这样的处理会很麻烦的。
      

  3.   

    多谢xlzxlich,看来速度应该不是问题了。因为我要求不到10帧/秒的速度,只要1-2秒钟刷新一次就够了!那再请教一个问题,图的各种信息(包括开关、线路等的信息)是保存在数据库的专门一个表里面还是保存在这个图对应的文件中呢?
      

  4.   

    to Show_Mike:
    我也考虑过基于数据库的动态图,但是这样数据库维护起来太麻烦。to jason_wentzel:
    组态软件是不错,但我现在其他部分已经完成了,只差这个部分了,想自己做。综合看了看大家的回答以及我查看的相关之类:我觉得把信息做到保存文件里面是一种简单可行的方法,文件里面包含数据库中开关的信息(ID等),然后把这个文件存入数据库中,程序每次启动从数据库下载文件到本地。多谢各位,结贴!
    看来以后要学习组态软件了!