横坐标标注实现有bug

Coordinator
Mar 30, 2012 at 8:52 AM

有bug,就是横坐标显示的是以0为起始的。
实际上是应该以ChromePairdata.AllWindowMax.start为起点ChromePairdata.AllWindowMax.End为终点

不过这是小问题,功能做的挺好了。

Coordinator
Mar 30, 2012 at 11:56 AM

横坐标范围我是跟蒋文江要的,他说用currentWindow[0]就行,现在改过来了

Coordinator
Mar 30, 2012 at 12:38 PM

有个疑问,横坐标范围不应该是CurrentWindow.Start到currentWindow.End吗?为什么是ChromePairdata.AllWindowMax.start为起点ChromePairdata.AllWindowMax.End为终点呢?

Coordinator
Mar 30, 2012 at 1:15 PM

ValueRange GetWindow(int zoomRatio,Point3D focus)怎么写?应该再加个currentWindow参数吧,要不怎么确定observingWindow?

Coordinator
Mar 30, 2012 at 2:00 PM
hanbingjie wrote:

有个疑问,横坐标范围不应该是CurrentWindow.Start到currentWindow.End吗?为什么是ChromePairdata.AllWindowMax.start为起点ChromePairdata.AllWindowMax.End为终点呢?

对了,的确是你说的那样。我说的只是在观察值域全局范围的情况。

 

我忘记了放大之后的事情了。所以你说的是正确的。

但是我不清楚currentwindow【0】为什么会得出错误的结果。

应该是ChromePairData.currentWindow为范围。

否则就是有问题,因为currentWindow的含义就是当前观察窗口。

Coordinator
Mar 30, 2012 at 3:18 PM
hanbingjie wrote:

ValueRange GetWindow(int zoomRatio,Point3D focus)怎么写?应该再加个currentWindow参数吧,要不怎么确定observingWindow?

有一定道理。

但是我当时设想是,当前观察窗口可以从chromepairData。currentWindow直接得到。所以不用传入。

但是你说的这样可以更好的解耦。

 

另外,也可以不从currentwindow来做。传入的zoomratio如果是相对于全局范围的放大缩小比例就可以了。这样对chromepairdata。allwindowmax来算就行。

 

Coordinator
Mar 31, 2012 at 1:20 AM

zoomratio目前就是相对于全局范围的放大缩小比例吧,这样也不能由chromepairdata.allwindowmax和当前鼠标位置得到观察窗口,因为如果不用当前窗口得不到全局的位置。

我对很多类还不太熟悉,如果当前观察窗口可以直接得到那就不用加参数了,你说的解耦我还不太理解

Coordinator
Mar 31, 2012 at 3:01 AM
hanbingjie wrote:

zoomratio目前就是相对于全局范围的放大缩小比例吧,这样也不能由chromepairdata.allwindowmax和当前鼠标位置得到观察窗口,因为如果不用当前窗口得不到全局的位置。

我对很多类还不太熟悉,如果当前观察窗口可以直接得到那就不用加参数了,你说的解耦我还不太理解

我叙述的的确不对。应该这样ValueRange GetWindow(int zoomRatio,uint x)这个x是鼠标点击点所对应的值域点。

因为蒋文江做了这项工作了,的确需要currentwindow查,不过调用他提供的方法可以得到这个值,然后传进去就不需要currentwindow了。

 

至于解耦。我的 意思是说,如果传入一个窗口,则getwindow函数不需要知道chromepairdata这个类,哪怕以后其定义改了也无所谓,它只认传入的参数。

这样耦合度降低了。但是代价就是多了一点代码。

其实解耦往往要付出一点代价,就看值不值了。完全不存在耦合度的代码是不存在的,因为 要解决的问题本身就有耦合性。