├── A_Star3D └── AStar.m ├── RRT ├── 1.bmp ├── 2.bmp ├── 3.bmp ├── 4.bmp ├── 5.bmp ├── RRT.m ├── checkPath.m ├── distanceCost.m ├── feasiblePoint.m ├── map1.bmp ├── map2.bmp ├── map3.bmp ├── map4.bmp ├── map5.bmp ├── rrt.asv └── rrt.m ├── RRT3D ├── checkPath3.m ├── distanceCost3.m ├── feasiblePoint3.m └── rrt3d.m ├── RRT_Star3D ├── checkPath3.m ├── distanceCost3.m ├── feasiblePoint3.m ├── rrtExtend3.m └── rrtstar3.m ├── alg ├── A_Star3D │ └── AStar.m ├── RRT │ ├── 1.bmp │ ├── 10.bmp │ ├── 2.bmp │ ├── 3.bmp │ ├── 4.bmp │ ├── 5.bmp │ ├── checkPath.m │ ├── distanceCost.m │ ├── feasiblePoint.m │ └── rrt.m ├── RRT3D │ ├── checkPath3.m │ ├── distanceCost3.m │ ├── feasiblePoint3.m │ ├── feasiblePoint3H.m │ └── rrt3d.m ├── RRT_Star3D │ ├── AllCost3.m │ ├── ChooseBestParent3.m │ ├── GetList3.m │ ├── NearestVertices3.m │ ├── RewireVertices3.m │ ├── checkPath3.m │ ├── distanceCost3.m │ ├── feasiblePoint3.m │ └── rrt_star3d.m ├── RRT_star │ ├── 1.bmp │ ├── 10.bmp │ ├── 2.bmp │ ├── 3.bmp │ ├── 4.bmp │ ├── 5.bmp │ ├── AllCost.m │ ├── ChooseBestParent.m │ ├── GetList.m │ ├── NearestVertices.m │ ├── RewireVertices.m │ ├── checkPath.m │ ├── distanceCost.m │ ├── feasiblePoint.m │ ├── printfRRT.m │ └── rrt_star.m ├── bi_RRT │ ├── 1.bmp │ ├── 1.jpg │ ├── 1.png │ ├── 10.bmp │ ├── 11.jpg │ ├── 2.bmp │ ├── 3.bmp │ ├── 4.bmp │ ├── 5.bmp │ ├── 6.bmp │ ├── 6.png │ ├── bidRRT.m │ ├── checkPath.m │ ├── distanceCost.m │ ├── feasiblePoint.m │ └── rrtExtend.m └── bi_RRT3D │ ├── checkPath3.m │ ├── distanceCost3.m │ ├── feasiblePoint3.m │ ├── feasiblePoint3H.m │ ├── rrtExtend3.m │ └── rrtstar3.m └── bidrectionRRT ├── 1.bmp ├── 1.png ├── 2.bmp ├── 3.bmp ├── 4.bmp ├── 5.bmp ├── 6.bmp ├── 6.png ├── bidRRT.asv ├── bidRRT.m ├── checkPath.m ├── distanceCost.m ├── feasiblePoint.m ├── map1.bmp ├── map2.bmp ├── map3.bmp ├── map4.bmp ├── map5.bmp └── rrtExtend.m /A_Star3D/AStar.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/A_Star3D/AStar.m -------------------------------------------------------------------------------- /RRT/1.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/RRT/1.bmp -------------------------------------------------------------------------------- /RRT/2.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/RRT/2.bmp -------------------------------------------------------------------------------- /RRT/3.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/RRT/3.bmp -------------------------------------------------------------------------------- /RRT/4.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/RRT/4.bmp -------------------------------------------------------------------------------- /RRT/5.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/RRT/5.bmp -------------------------------------------------------------------------------- /RRT/RRT.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/RRT/RRT.m -------------------------------------------------------------------------------- /RRT/checkPath.m: -------------------------------------------------------------------------------- 1 | function feasible=checkPath(n,newPos,map) 2 | feasible=true; 3 | dir=atan2(newPos(1)-n(1),newPos(2)-n(2)); 4 | for r=0:0.5:sqrt(sum((n-newPos).^2)) 5 | posCheck=n+r.*[sin(dir) cos(dir)]; 6 | if ~(feasiblePoint(ceil(posCheck),map) && feasiblePoint(floor(posCheck),map) && ... 7 | feasiblePoint([ceil(posCheck(1)) floor(posCheck(2))],map) && feasiblePoint([floor(posCheck(1)) ceil(posCheck(2))],map)) 8 | feasible=false;break; 9 | end 10 | if ~feasiblePoint(newPos,map), feasible=false; end 11 | end -------------------------------------------------------------------------------- /RRT/distanceCost.m: -------------------------------------------------------------------------------- 1 | %% distanceCost.m 2 | function h=distanceCost(a,b) 3 | h = sqrt(sum((a-b).^2, 2)); 4 | 5 | 6 | -------------------------------------------------------------------------------- /RRT/feasiblePoint.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/RRT/feasiblePoint.m -------------------------------------------------------------------------------- /RRT/map1.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/RRT/map1.bmp -------------------------------------------------------------------------------- /RRT/map2.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/RRT/map2.bmp -------------------------------------------------------------------------------- /RRT/map3.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/RRT/map3.bmp -------------------------------------------------------------------------------- /RRT/map4.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/RRT/map4.bmp -------------------------------------------------------------------------------- /RRT/map5.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/RRT/map5.bmp -------------------------------------------------------------------------------- /RRT/rrt.asv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/RRT/rrt.asv -------------------------------------------------------------------------------- /RRT/rrt.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/RRT/rrt.m -------------------------------------------------------------------------------- /RRT3D/checkPath3.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/RRT3D/checkPath3.m -------------------------------------------------------------------------------- /RRT3D/distanceCost3.m: -------------------------------------------------------------------------------- 1 | function h=distanceCost3(a,b) %% distanceCost.m 2 | h = sqrt(sum((a-b).^2, 2)); 3 | end 4 | -------------------------------------------------------------------------------- /RRT3D/feasiblePoint3.m: -------------------------------------------------------------------------------- 1 | %% feasiblePoint3.m 2 | function feasible=feasiblePoint3(point,circleCenter,r) 3 | feasible=true; 4 | for row = 1:length(circleCenter(:,1)) 5 | if sqrt(sum((circleCenter(row,:)-point).^2)) <= r(row) 6 | feasible = false;break; 7 | end 8 | end 9 | end 10 | -------------------------------------------------------------------------------- /RRT3D/rrt3d.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/RRT3D/rrt3d.m -------------------------------------------------------------------------------- /RRT_Star3D/checkPath3.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/RRT_Star3D/checkPath3.m -------------------------------------------------------------------------------- /RRT_Star3D/distanceCost3.m: -------------------------------------------------------------------------------- 1 | function h=distanceCost3(a,b) %% distanceCost.m 2 | h = sqrt(sum((a-b).^2, 2)); 3 | end 4 | -------------------------------------------------------------------------------- /RRT_Star3D/feasiblePoint3.m: -------------------------------------------------------------------------------- 1 | %% feasiblePoint3.m 2 | function feasible=feasiblePoint3(point,circleCenter,r) 3 | feasible=true; 4 | for row = 1:length(circleCenter(:,1)) 5 | if sqrt(sum((circleCenter(row,:)-point).^2)) <= r(row) 6 | feasible = false;break; 7 | end 8 | end 9 | end 10 | -------------------------------------------------------------------------------- /RRT_Star3D/rrtExtend3.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/RRT_Star3D/rrtExtend3.m -------------------------------------------------------------------------------- /RRT_Star3D/rrtstar3.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/RRT_Star3D/rrtstar3.m -------------------------------------------------------------------------------- /alg/A_Star3D/AStar.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/A_Star3D/AStar.m -------------------------------------------------------------------------------- /alg/RRT/1.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/RRT/1.bmp -------------------------------------------------------------------------------- /alg/RRT/10.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/RRT/10.bmp -------------------------------------------------------------------------------- /alg/RRT/2.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/RRT/2.bmp -------------------------------------------------------------------------------- /alg/RRT/3.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/RRT/3.bmp -------------------------------------------------------------------------------- /alg/RRT/4.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/RRT/4.bmp -------------------------------------------------------------------------------- /alg/RRT/5.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/RRT/5.bmp -------------------------------------------------------------------------------- /alg/RRT/checkPath.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/RRT/checkPath.m -------------------------------------------------------------------------------- /alg/RRT/distanceCost.m: -------------------------------------------------------------------------------- 1 | %% distanceCost.m 2 | function h=distanceCost(a,b) 3 | 4 | 5 | 6 | h = sqrt((a(:,1)-b(:,1)).^2 + (a(:,2)-b(:,2)).^2 ); -------------------------------------------------------------------------------- /alg/RRT/feasiblePoint.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/RRT/feasiblePoint.m -------------------------------------------------------------------------------- /alg/RRT/rrt.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/RRT/rrt.m -------------------------------------------------------------------------------- /alg/RRT3D/checkPath3.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/RRT3D/checkPath3.m -------------------------------------------------------------------------------- /alg/RRT3D/distanceCost3.m: -------------------------------------------------------------------------------- 1 | function h=distanceCost3(a,b) %% distanceCost.m 2 | h = sqrt(sum((a-b).^2, 2)); 3 | end 4 | -------------------------------------------------------------------------------- /alg/RRT3D/feasiblePoint3.m: -------------------------------------------------------------------------------- 1 | %% feasiblePoint3.m 2 | function feasible=feasiblePoint3(point,circleCenter,r) 3 | feasible=true; 4 | for row = 1:length(circleCenter(:,1)) 5 | if sqrt(sum((circleCenter(row,:)-point).^2)) <= r(row) 6 | feasible = false;break; 7 | end 8 | end 9 | end 10 | -------------------------------------------------------------------------------- /alg/RRT3D/feasiblePoint3H.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/RRT3D/feasiblePoint3H.m -------------------------------------------------------------------------------- /alg/RRT3D/rrt3d.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/RRT3D/rrt3d.m -------------------------------------------------------------------------------- /alg/RRT_Star3D/AllCost3.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/RRT_Star3D/AllCost3.m -------------------------------------------------------------------------------- /alg/RRT_Star3D/ChooseBestParent3.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/RRT_Star3D/ChooseBestParent3.m -------------------------------------------------------------------------------- /alg/RRT_Star3D/GetList3.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/RRT_Star3D/GetList3.m -------------------------------------------------------------------------------- /alg/RRT_Star3D/NearestVertices3.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/RRT_Star3D/NearestVertices3.m -------------------------------------------------------------------------------- /alg/RRT_Star3D/RewireVertices3.m: -------------------------------------------------------------------------------- 1 | function RRTree_new=RewireVertices3(x_min,x_new,Ls,RRTree,circleCenter,r) 2 | [~,~,n]=size(Ls); 3 | for i=1:n 4 | x_near=Ls{1,1,i}; 5 | dis=AllCost3(RRTree,x_min); 6 | if dis+distanceCost3(x_min(1:3),x_new)+distanceCost3(x_new,x_near(1:3))=1 && point(1)<=size(map,1) && point(2)>=1 && point(2)<=size(map,2) && map(point(1),point(2))==1) 4 | feasible=false; 5 | end -------------------------------------------------------------------------------- /alg/bi_RRT/rrtExtend.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/bi_RRT/rrtExtend.m -------------------------------------------------------------------------------- /alg/bi_RRT3D/checkPath3.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/bi_RRT3D/checkPath3.m -------------------------------------------------------------------------------- /alg/bi_RRT3D/distanceCost3.m: -------------------------------------------------------------------------------- 1 | function h=distanceCost3(a,b) %% distanceCost.m 2 | h = sqrt(sum((a-b).^2, 2)); 3 | end 4 | -------------------------------------------------------------------------------- /alg/bi_RRT3D/feasiblePoint3.m: -------------------------------------------------------------------------------- 1 | %% feasiblePoint3.m 2 | function feasible=feasiblePoint3(point,circleCenter,r) 3 | feasible=true; 4 | for row = 1:length(circleCenter(:,1)) 5 | if sqrt(sum((circleCenter(row,:)-point).^2)) <= r(row) 6 | feasible = false;break; 7 | end 8 | end 9 | end 10 | -------------------------------------------------------------------------------- /alg/bi_RRT3D/feasiblePoint3H.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/bi_RRT3D/feasiblePoint3H.m -------------------------------------------------------------------------------- /alg/bi_RRT3D/rrtExtend3.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/bi_RRT3D/rrtExtend3.m -------------------------------------------------------------------------------- /alg/bi_RRT3D/rrtstar3.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/alg/bi_RRT3D/rrtstar3.m -------------------------------------------------------------------------------- /bidrectionRRT/1.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/bidrectionRRT/1.bmp -------------------------------------------------------------------------------- /bidrectionRRT/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/bidrectionRRT/1.png -------------------------------------------------------------------------------- /bidrectionRRT/2.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/bidrectionRRT/2.bmp -------------------------------------------------------------------------------- /bidrectionRRT/3.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/bidrectionRRT/3.bmp -------------------------------------------------------------------------------- /bidrectionRRT/4.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/bidrectionRRT/4.bmp -------------------------------------------------------------------------------- /bidrectionRRT/5.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/bidrectionRRT/5.bmp -------------------------------------------------------------------------------- /bidrectionRRT/6.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/bidrectionRRT/6.bmp -------------------------------------------------------------------------------- /bidrectionRRT/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/bidrectionRRT/6.png -------------------------------------------------------------------------------- /bidrectionRRT/bidRRT.asv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/bidrectionRRT/bidRRT.asv -------------------------------------------------------------------------------- /bidrectionRRT/bidRRT.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/bidrectionRRT/bidRRT.m -------------------------------------------------------------------------------- /bidrectionRRT/checkPath.m: -------------------------------------------------------------------------------- 1 | function feasible=checkPath(n,newPos,map) 2 | feasible=true; 3 | dir=atan2(newPos(1)-n(1),newPos(2)-n(2)); 4 | for r=0:0.5:sqrt(sum((n-newPos).^2)) 5 | posCheck=n+r.*[sin(dir) cos(dir)]; 6 | if ~(feasiblePoint(ceil(posCheck),map) && feasiblePoint(floor(posCheck),map) && ... 7 | feasiblePoint([ceil(posCheck(1)) floor(posCheck(2))],map) && feasiblePoint([floor(posCheck(1)) ceil(posCheck(2))],map)) 8 | feasible=false;break; 9 | end 10 | if ~feasiblePoint(newPos,map), feasible=false; end 11 | end -------------------------------------------------------------------------------- /bidrectionRRT/distanceCost.m: -------------------------------------------------------------------------------- 1 | function h=distanceCost(a,b) 2 | h = sqrt((a(:,1)-b(:,1)).^2 + (a(:,2)-b(:,2)).^2 ); -------------------------------------------------------------------------------- /bidrectionRRT/feasiblePoint.m: -------------------------------------------------------------------------------- 1 | function feasible=feasiblePoint(point,map) 2 | feasible=true; 3 | if ~(point(1)>=1 && point(1)<=size(map,1) && point(2)>=1 && point(2)<=size(map,2) && map(point(1),point(2))==1) 4 | feasible=false; 5 | end -------------------------------------------------------------------------------- /bidrectionRRT/map1.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/bidrectionRRT/map1.bmp -------------------------------------------------------------------------------- /bidrectionRRT/map2.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/bidrectionRRT/map2.bmp -------------------------------------------------------------------------------- /bidrectionRRT/map3.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/bidrectionRRT/map3.bmp -------------------------------------------------------------------------------- /bidrectionRRT/map4.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/bidrectionRRT/map4.bmp -------------------------------------------------------------------------------- /bidrectionRRT/map5.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/bidrectionRRT/map5.bmp -------------------------------------------------------------------------------- /bidrectionRRT/rrtExtend.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RShawshank/Manipulator-obstacle-avoidance-algorithm-/0bb3464215334fb5d55676dc3aa2939040cc1f51/bidrectionRRT/rrtExtend.m --------------------------------------------------------------------------------