我需要繪製給定起點和終點的多項式。我已經着眼於使用疼痛組件來做這件事,但我感到困惑,因爲起點位於左上角,我需要我的網格線是動態的。使用java GUI繪製函數
我該如何做到這一點,我可以創建一個動態的規模和最適合繪製函數的java類是什麼?
例如,如果用戶輸入-2 2 x^2,則繪圖儀需要創建一個從-2開始的網格,在x座標中,中間爲0,右側爲2。然而,如果用戶輸入x^3,我們在y平面中具有負座標,並且需要將包含x座標的行滑動到合適的位置。
謝謝!
我需要繪製給定起點和終點的多項式。我已經着眼於使用疼痛組件來做這件事,但我感到困惑,因爲起點位於左上角,我需要我的網格線是動態的。使用java GUI繪製函數
我該如何做到這一點,我可以創建一個動態的規模和最適合繪製函數的java類是什麼?
例如,如果用戶輸入-2 2 x^2,則繪圖儀需要創建一個從-2開始的網格,在x座標中,中間爲0,右側爲2。然而,如果用戶輸入x^3,我們在y平面中具有負座標,並且需要將包含x座標的行滑動到合適的位置。
謝謝!
我認爲你可以做到這一點(我可能錯了)的方式是繪製圖的y線和x線,並在正確的位置使用drawString標記x和y的值。 爲了說明這一點,我做了這個例子給你:
public void paintComponent(Graphics g)
{
Graphics2D g2 = (Graphics2D) g;
Point2D.Double from = new Point2D.Double(300, 100);
Point2D.Double to = new Point2D.Double(300, 300);
Line2D.Double line = new Line2D.Double(from, to);
g2.draw(line);
Point2D.Double from2 = new Point2D.Double(150, 200);
Point2D.Double to2 = new Point2D.Double(450, 200);
Line2D.Double line2 = new Line2D.Double(from2, to2);
g2.draw(line2);
g2.drawString("-1", 290, 215);
}
拉繩方法將借鑑「-1」的0。所以你可以使用同樣的事情畫-2低於-1等
我知道這聽起來效率低下,但這是我能想到的唯一方法。
希望別人能爲你提供更好的解決方案。
如果知道要繪製的區域的大小,轉換y座標應該不會太困難。但說實話,你爲什麼不使用像JFreeChart這樣的繪圖庫?......?