91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 14KB
    文件類型: .cpp
    金幣: 1
    下載: 0 次
    發布日期: 2021-05-09
  • 語言: C/C++
  • 標簽: AGV??C++??

資源簡介

用C++實現的關于AGV路徑規劃的程序,在VC6.0中可以運行,需要自己下載graphics.h提供畫圖支持

資源截圖

代碼片段和文件信息

#include
#include
#include
#include
#include
#include
#include

using?namespace?std;

#define??MAX??100
#define??maxD?99999

class?CFixedMap
{
public:
????struct??Coordinate
????{
????????int?x;
????????int?y;
????????int?num;
????};//記錄點的結構體
????struct?combp
????{
????????int?x1y1;
????????int?x2y2;
????};//連通點坐標


????struct?Combname
????{
????????int?num1;
????????int?num2;
????};//連通點名

????public:

????????int?mVexNum;???????????????????//?頂點數
????????int?mEdgNum;???????????????????//?邊數
????????double?mMatrix[MAX][MAX];?????????//?鄰接矩陣
????????Combname?comb[MAX];????????????//連通點名
????????combp?cp[MAX];?????????????????//連通點坐標
????????Coordinate?mVexs[MAX];?????????//?頂點集合
????????int?getx(int?n1);
????????int?gety(int?n2);
????????void?Input();//以文件方式輸入地圖信息
????????void?ShowMap();//easyx顯示地圖
};

int?CFixedMap::getx(int?n1)
{
????int?x=0;
????for(int?i=0;i????????if(n1==mVexs[i].num)
????????????x=mVexs[i].x;
????????return?x;
}

int?CFixedMap::gety(int?n2)
{
????int?y=0;
????for(int?i=0;i????????if(n2==mVexs[i].num)
????????????y=mVexs[i].y;
????????return?y;
}

void?CFixedMap::Input()
{
????int?panju;
????char?fname[10]={“map2.txt“};
????cout<<“是否載入默認地圖?(1:是,2:否)“;
????cin>>panju;
????if(panju==2)
????{
????????cout<<“請輸入地圖信息文件名:“;
????????cin>>fname;
????}
????ifstream?file(fname);
????char?use1[100];
????char?use2[100];
????char?use3[100];
????char?use4[100];??????????//use數組用來儲存提示信息。
????file>>use1;
????file>>mVexNum;?????????//端點個數
????file>>use2;
????file>>mEdgNum;?????????//邊數
????file>>use3;
????for(int?i=0;i????{
????????file>>mVexs[i].num>>mVexs[i].x>>mVexs[i].y;
????}
????file>>use4;
????for(int?i=0;i????{
????????file>>comb[i].num1>>comb[i].num2;
????}
????file.close();
}


//easyx顯示地圖
void?CFixedMap::ShowMap()
{
????initgraph(800600SHOWCONSOLE|?NOCLOSE);?????//初始化繪圖環境
????setbkcolor(WHITE);??????//設置背景色
????cleardevice();??????????//用背景色清空屏幕
????setfillcolor(BLACK);??????//設置填充色
????//畫頂點
????for(int?i=0;i????{
????????fillcircle(mVexs[i].xmVexs[i].y5);
????????settextcolor(BLACK);
????????char?s[MAX];
????????sprintf(s?“%d“?i+1);
????????outtextxy(mVexs[i].x-10mVexs[i].y-20s);
????}
????//給實際連通的頂點連線
????setlinecolor(RGB(000));
????setlinestyle(PS_SOLID6NULL0);
????for(int?i=0;i????{
????????cp[i].x1=getx(comb[i].num1);
????????cp[i].y1=gety(comb[i].num1);
????????cp[i].x2=getx(comb[i].num2);
????????cp[i].y2=gety(comb[i].num2);
????????line(cp[i].x1cp[i].y1cp[i].x2cp[i].y2);
????}
}

class?CPathPlan:public?CFixedMap
{
public:
????int?path[MAX];???????//存放最后一個點
????double?dist[MAX];?????????//存放路徑距離
????int?v0;????????????????//起始點
????int?route[40];????????//路徑
????int?rnum;??????????????//路徑頂點數
????Coo

評論

共有 條評論