欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java和matlab畫多邊形閉合折線圖示例講解

 更新時間:2014年02月27日 14:45:18   作者:  
由于要將“哈密頓回路問題(TSP)”的求解中間結(jié)果表示出來,查了一下使用程序畫多邊形圖形?,F(xiàn)在在總結(jié)一下,這個圖是“由給定節(jié)點首尾相連的”閉合多邊形



1.使用matlab作閉合多邊形圖

沒有找到直接畫多邊形的函數(shù),只能是將各個點的坐標(biāo)保存在數(shù)組中,將一個點與其相鄰的點相連,并將最后一個點與第一個點連接。下面是一個示例的.m文件:

復(fù)制代碼 代碼如下:

clear;
clc;
a=[0 2 4 6 8 10 12 14;0 2 1 4 6 6 5 7];  %要連接的點坐標(biāo) x;y
[n,m]=size(a);
for i=1:m-1;
    line([a(1,i),a(1,i+1)],[a(2,i),a(2,i+1)]);  %連接節(jié)點line([x1,x2],[y1,y2])
    hold on
end
hold on
line([a(1,1),a(1,m)],[a(2,1),a(2,m)]);  %首尾節(jié)點相連

 2.使用Java作閉合多邊形圖

Java中的Graphics類drawPolygon函數(shù)提供了直接的多邊形作圖。

函數(shù)原型:public abstract void drawPolygon(int[] xPoints, int[] yPoints,int nPoints)

說明

(1)繪制一個由 x 和 y 坐標(biāo)數(shù)組定義的閉合多邊形。每對 (x, y) 坐標(biāo)定義了一個點。nPoints表示線段的個數(shù)。

(2)前面的 nPoint - 1 個線段是當(dāng) 1 ≤ i ≤ nPoints 時,從 (xPoints[i-1], yPoints[i-1]) 到 (xPoints[i], yPoints[i]) 的線段。如果最后一個點和第一個點不同,則圖形會通過在這兩點間繪制一條線段來自動閉合。

代碼示例如下:

復(fù)制代碼 代碼如下:

import java.applet.*;
import java.awt.*;
public class DrawPicture extends Applet
{   public void paint(Graphics g)
    {
      int px[]={20,70,130,240};
      int py[]={20,150,100,130};
      g.drawPolygon(px,py,4);
    }     
}

3.說明

是否能構(gòu)成多邊形,凸多邊形,還是凹多邊形,這些與給定的點的順序有關(guān)。

程序只是負責(zé)將相鄰的節(jié)點連接, 以及首尾連接。

相關(guān)文章

最新評論