2014-01-06 139 views
-3

我在Eclipse中使用SWT繪製了座標軸(x和y)圖,現在我想繪製一個 f(x)= a1 * sin(n1 * x) 和f(x )= a2 * cos(n2 * x)函數。我應該如何開始?我需要說我在數學方面很弱;)繪製正弦/餘弦圖

另一件事 - 圖形不能由點組成,它必須是線條。

馬丁

做到這一點
+0

我編輯了我的答案來處理這個事實,即您需要使用線條而不是點,這個想法非常相似。 – Drifter64

回答

1

一種方法是使用一個循環和增量X.

INT Y = 0; (int x = -10; x < 10; x + = 0.01) y = Math.sin(x); //畫一個點這個x,y對這裏 }

你將要考慮什麼X啓動和停止,這取決於它是什麼,你想顯示。另外,x + = 0.01可能需要調整得更小。如果你的圖表存在空白,那就意味着x值看起來像一條平滑的線條,有點太遠了。

編輯:如果您需要使用線條製作圖形,則該過程不會有很大不同。有兩點你將使用不同的X值。例如以第一個點「A」爲X = 0開始,第二個點「B」爲X = 0.01。在這些之間畫一條線。現在,將「A」設置爲「B」具有的值(x = 0.01),並將「B」點更新爲x = 0.02的點。現在在這些新點之間劃一條線並繼續前進。再次,你將不得不調整這些點之間的差異數量,以使其儘可能平滑。考慮點之間的較小差異也需要更多的計算時間。

+0

通常情況下,除非有明確的嘗試解決問題,否則不會提供家務解答。它被稱爲「off topic」 – FeliceM

+2

OP可能會或可能不會將其用於作業目的。我並沒有給出完整的代碼,而僅僅是解釋處理這種情況的方法,這就是要求的。 O.P.仍然需要了解爲什麼這種方法能夠工作並能夠實施。 – Drifter64

+0

@FeliceM那你爲什麼不投票結束這個問題呢? – Baz