我们的程序可是涉密的哦!呵呵。不过可以给你提供一点大致思路。
我是自己建立的一套图形库,采用了Composite模式,每个图形元素比如点、直线、弧等都有相关的参数,其中缩放、偏移、选取等等都是利用图形学里的公式计算的,绘图是通过重载基类定义的这么一个接口: virtual void draw(QPainter &)来实现的。QPainter里面有好多绘制图元的函数,很方便,可以直接拿来用。
至于你说的自动变换标尺,就应该是使用图形库的一种类,它负责计算当前缩放的比例系数和偏移量,然后使用图形库的对象,比如直线或者折线,把你的坐标轴画出来。做图形处理的都会碰到坐标系变换问题,如果你以前做过相关工作你应该不会陌生吧。