資源簡介
應用人工勢場法,進行二維路徑規劃。上傳的是整個解決方案,用vs2010可以直接打開,簡單好用

代碼片段和文件信息
#include?
#include?
#include
float?k?=?1;
float?m?=?15;
float?w?=?1;
float?step?=?(float)1;
int?iter?=?2000;
float?n?=?8;
float?r[8]?=?{751086455};
float?Po[8];
float?a?=?2;
float?Goal[2000][2]={0};
float?Theta[9];
float?Fat[2];
float?Fatx;
float?Faty;
float?Freall[4];
float?Frexsum;
float?Freysum;
float?Freaxsum;
float?Freaysum;
float?Fsumxj;
float?Fsumyj;
float?Theta_Fsum[1500];
float?pi?=?(float)3.1415927;
float?Xsum[9][2]?=?{{(float)100(float)100}{(float)25(float)30}{(float)48(float)22}{(float)50(float)29}{(float)45(float)52}{(float)57(float)53}
{(float)80(float)65}{(float)70(float)70}{(float)93(float)97}};//終止點和障礙
float?Xj[2]?=?{00};//起點
float?ZH_angel(float?A_xfloat?A_yfloat?B_xfloat?B_y);//計算角度
float?ZH_Fat(float?A_xfloat?A_yfloat?B_xfloat?B_yfloat?k);//計算引力
int?main?()//主函數
{
float?Xsum_x1;
float?Xsum_y1;
float?Xj_x1;
float?Xj_y1;
float?Xsum_x11;
float?Xsum_y11;
float?Po_i1;
float?Theta_i1;
float?Fre;
float?Frea;
float?Frex;
float?Frey;
float?Freax;
float?Freay;
float?rre;
float?rat;
int?j;
float?Xnext;
float?Ynext;
int?K;
int?Ki;
Po[0]?=?(r[0])*(float)(5);//障礙影響區域
Po[1]?=?(r[1])*(float)(5);
Po[2]?=?(r[2])*(float)(5);
Po[3]?=?(r[3])*(float)(5);
Po[4]?=?(r[4])*(float)(5);
Po[5]?=?(r[5])*(float)(5);
Po[6]?=?(r[6])*(float)(5);
Po[7]?=?(r[7])*(float)(5);
for?(j=0;j {
float?Xsum_x;
float?Xsum_y;
float?Xj_x;
float?Xj_y;
float?Theta_i;
int?n?=?8;
int?i;
float?Fat_i;
float?Fat[2]?=?{00};
Goal[j][0]?=?Xj[0];
Goal[j][1]?=?Xj[1];
for?(i=0;i<9;i++)//計算角度
{
????Xsum_x?=?Xsum[i][0];
????Xsum_y?=?Xsum[i][1];
????Xj_x?=?Xj[0];
????Xj_y?=?Xj[1];
????Theta_i?=?ZH_angel(Xsum_xXsum_yXj_xXj_y);
????Theta[i]?=?Theta_i;
????}
for?(i=0;i<1;i++)//計算引力
{
Xsum_x?=?Xsum[i][0];
Xsum_y?=?Xsum[i][1];
Xj_x?=?Xj[0];
Xj_y?=?Xj[1];
Theta_i?=?Theta[i];
Fat_i?=?ZH_Fat(Xsum_xXsum_yXj_xXj_yk);
Fatx?=?Fat_i?*?cos(Theta_i);
????????Faty?=?Fat_i?*?sin(Theta_i);
Fat[0]?=?Fatx;
Fat[1]?=?Faty;
}
Frexsum?=?0;//對合力進行初始化
Freysum?=?0;
Freaxsum?=?0;
Freaysum?=?0;
for?(i=0;i<8;i++)//計算斥力
{
Xsum_x1?=?Xsum[i+1][0];//障礙中心點
Xsum_y1?=?Xsum[i+1][1];
Xj_x1?=?Xj[0];//飛行器當前位置
Xj_y1?=?Xj[1];
Xsum_x11?=?Xsum[0][0];//終止點
Xsum_y11?=?Xsum[0][1];
Po_i1?=?Po[i];//斥力影響范圍
????Theta_i1?=?Theta[i+1];//起始點與障礙點之間的角度
rat?=?sqrt((((float)Xsum_x11-(float)Xj_x1)*((float)Xsum_x11-(float)Xj_x1))+((float)Xsum_y11-(float)Xj_y1)*((float)Xsum_y11-(float)Xj_y1));
rre?=?sqrt(((float)Xsum_x1-(float)Xj_x1)*((float)Xsum_x1-(float)Xj_x1)+((float)Xsum_y1-(float)Xj_y1)*((float)Xsum_y1-(float)Xj_y1));
if(rre?<=?Po_i1)//在斥力影響范圍內
{
Fre?=?m?*((float)(1/rre)-(float)(1/Po_i1))*(float)((1/(rre*rre)))?*?(float)pow((float)rat(float)a);
????????????Frea?=?(float)(a/2)?*?m?*(((float)(1/rre)-(float)(1/Po
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-12-26?10:44??APF_test\
?????目錄???????????0??2018-12-26?10:44??APF_test\APFtest4.0\
?????文件?????1921024??2018-12-26?10:44??APF_test\APFtest4.0.sdf
?????文件?????????897??2018-08-20?20:05??APF_test\APFtest4.0.sln
?????文件???????11776??2018-12-26?10:44??APF_test\APFtest4.0.suo
?????文件????????4877??2018-08-20?19:58??APF_test\APFtest4.0\APFtest4.0.cpp
?????文件????????2148??2018-08-17?10:25??APF_test\APFtest4.0\APFtest4.0.vcxproj
?????文件?????????948??2018-08-17?10:25??APF_test\APFtest4.0\APFtest4.0.vcxproj.filters
?????文件?????????143??2018-08-13?16:07??APF_test\APFtest4.0\APFtest4.0.vcxproj.user
?????目錄???????????0??2018-12-26?10:44??APF_test\APFtest4.0\Debug\
?????文件????????1363??2018-08-20?19:15??APF_test\APFtest4.0\Debug\APFtest4.0.Build.CppClean.log
?????文件?????????381??2018-08-20?19:58??APF_test\APFtest4.0\Debug\APFtest4.0.exe.intermediate.manifest
?????文件??????????90??2018-08-20?19:58??APF_test\APFtest4.0\Debug\APFtest4.0.lastbuildstate
?????文件????????2134??2018-08-20?19:58??APF_test\APFtest4.0\Debug\APFtest4.0.log
?????文件???????22133??2018-08-20?19:58??APF_test\APFtest4.0\Debug\APFtest4.0.obj
?????文件?????????698??2018-08-20?19:58??APF_test\APFtest4.0\Debug\cl.command.1.tlog
?????文件????????1320??2018-08-20?19:58??APF_test\APFtest4.0\Debug\CL.read.1.tlog
?????文件?????????558??2018-08-20?19:58??APF_test\APFtest4.0\Debug\CL.write.1.tlog
?????文件????????1458??2018-08-20?19:58??APF_test\APFtest4.0\Debug\li
?????文件????????2368??2018-08-20?19:58??APF_test\APFtest4.0\Debug\li
?????文件?????????602??2018-08-20?19:58??APF_test\APFtest4.0\Debug\li
?????文件?????????592??2018-08-20?19:58??APF_test\APFtest4.0\Debug\mt.command.1.tlog
?????文件?????????874??2018-08-20?19:58??APF_test\APFtest4.0\Debug\mt.read.1.tlog
?????文件?????????410??2018-08-20?19:58??APF_test\APFtest4.0\Debug\mt.write.1.tlog
?????文件???????44032??2018-08-20?19:58??APF_test\APFtest4.0\Debug\vc100.idb
?????文件???????69632??2018-08-20?19:58??APF_test\APFtest4.0\Debug\vc100.pdb
?????目錄???????????0??2018-12-26?10:44??APF_test\Debug\
?????文件???????17408??2018-08-20?19:58??APF_test\Debug\APFtest4.0.exe
?????目錄???????????0??2018-12-26?10:44??APF_test\ipch\
?????目錄???????????0??2018-12-26?10:44??APF_test\ipch\apftest4.0-a129446d\
?????文件?????2162688??2018-12-26?10:44??APF_test\ipch\apftest4.0-a129446d\apftest4.ipch
............此處省略0個文件信息
評論
共有 條評論