物件導向程式設計
|
在Applet繪製曲線圖 |
|
|
授課教師:陳慶瀚 WWW : http://www.miat.ee.isu.edu.tw E-mail : neotech@ms19.hinet.net |
|
A.1 一個繪製科學曲線的物件類別庫A.2 繪製曲線外框和座標軸
範例程式碼: import PlotApplet.*; import java.awt.*; import java.applet.Applet; public class PlotDemo1 extends PlotApplet { public void init () { super.newPlot(); super.init(); plot().setTitle("1-D時間序列曲線圖"); plot().setYRange(-4, 4); plot().setXRange(0, 100); plot().setXLabel("時間"); plot().setYLabel("函數值"); plot().addYTick("-PI", -Math.PI); plot().addYTick("-PI/2", -Math.PI/2); plot().addYTick("0", 0); plot().addYTick("PI/2", Math.PI/2); plot().addYTick("PI", Math.PI); } } A.3 加上曲線
範例程式碼 import PlotApplet.*; import java.awt.*; import java.applet.Applet; public class PlotDemo2 extends PlotApplet { public void init () { super.newPlot(); super.init(); plot().setTitle("1-D時間序列曲線圖"); plot().setYRange(-10, 10); plot().setXRange(0, 100); plot().setXLabel("時間"); plot().setYLabel("函數值"); plot().addYTick("-10", -10); plot().addYTick("-5", -5); plot().addYTick("0", 0); plot().addYTick("5", 5); plot().addYTick("10", 10); plot().addPoint(0, 0.0, 10 * Math.cos(0),false); for (int i = 1; i <= 100; i++) { plot().addPoint(0, (double)i, 10 * Math.cos(Math.PI * i/20),true); } } } A.4 繪製多重曲線
範例程式碼 import PlotApplet.*; import java.awt.*; import java.applet.Applet; public class PlotDemo3 extends PlotApplet { public void init () { super.newPlot(); super.init(); plot().setTitle("1-D曲線圖"); plot().setYRange(-4, 4); plot().setXRange(0, 100); plot().setXLabel("時間"); plot().setYLabel("函數值"); plot().addYTick("-PI", -Math.PI); plot().addYTick("-PI/2", -Math.PI/2); plot().addYTick("0", 0); plot().addYTick("PI/2", Math.PI/2); plot().addYTick("PI", Math.PI); boolean first = true; for (int i = 0; i <= 100; i++) { plot().addPoint(0, (double)i, 5 * Math.cos(Math.PI * i/20), !first); plot().addPoint(1, (double)i, 4.5 * Math.cos(Math.PI * i/25), !first); plot().addPoint(2, (double)i, 4 * Math.cos(Math.PI * i/30), !first); plot().addPoint(3, (double)i, 3.5* Math.cos(Math.PI * i/35), !first); first = false; } } }
| ||
物件導向程式設計 義守大學電機系 陳慶瀚 |