2011-06-05 22 views
2

我這就需要爲特定值與Axis X,Y類似 - 需要檢查多個值,如何操作?

進行檢查很多表

我將需要輸入特定的數字,然後我需要一個函數來檢查,如果方塊在特定區域中,如果是這樣,什麼數地區得到了(70或75)。

值爲:

0.00 -12.00爲止(左垂直梅特) 0.00至4.00(上部水平梅特)

號75或70只是數字WICH是針對整個塊設置。

每個藍色方塊在兩個metters都是0.25。

例如,如果我輸入-11.00和+2.00平方數找到數字70,另一個例子,當我把-5.00和2.25平方數發現與75,當輸入-11.00和+1.00沒有去。

任何人都知道如何做到這一點?

table http://img709.imageshack.us/img709/9449/imag0965.jpg

我開始寫功能,但我最終到一個地步,我只是不知道如何做到這一點。

+0

不,不,圖表是在我的cataloque,我會採取單一圖形,並寫入到數據庫的值。我仍然需要知道如何使功能,bcoz我不知道該圖需要採取什麼樣的價值觀。 – Cameleon 2011-06-05 17:39:27

回答

1

你有正確的想法。從圖中可以看出,函數在你指定的區域內是線性的,所以你可以使用y = mx + b來得到每一行的方程(我看到至少有4個)。本頁面http://www.purplemath.com/modules/slopgrph.htm解釋瞭如何計算所需的直線方程。

一旦你有線的公式,給定一個點(X,Y),你可以使用你的點的X值來計算你的每一行的Y值,然後比較你的點Y和每一個你Ÿ的依次是:

if (Point_Y < y_first){ 
    // in region 1 
} else if(Point_Y >= y_first && Point_Y < y_second){ 
    // region 2 
} else if(Point_Y >= y_second && Point_Y < y_third){ 
    // in region 3 
} .... etc 

你或許應該還檢查點是由你,你不知道某些圖形的樣子超出範圍的做圖給出的範圍。這是更容易做到的:

if(Point_Y <= y_max && Point_Y >= y_min 
    && Point_X <= x_max && Point_X >= x_min){ 
    // in range 
} 
+0

您還必須適當地舍入直線和點值以適合網格點。 – Adam 2011-06-05 18:05:19

+0

沒錯。如果區域必須完全匹配網格,則必須將「單位」設置爲圖片中給出單位的長度和每個單元。 – Colin 2011-06-05 18:11:05

+0

Thx傢伙,我將不得不現在想:) – Cameleon 2011-06-05 18:13:07

相關問題