Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
Multi-agent interaction planning
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Larkin Heintzman
Multi-agent interaction planning
Commits
6de25905
Commit
6de25905
authored
Dec 10, 2019
by
Larkin Heintzman
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Upload New File
parent
282a6440
Pipeline
#28
canceled with stages
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
33 additions
and
0 deletions
+33
-0
getNewConfig.m
Matlab Code/getNewConfig.m
+33
-0
No files found.
Matlab Code/getNewConfig.m
0 → 100644
View file @
6de25905
function
q_new
=
getNewConfig
(
q_near
,
q_rand
,
dist_inc
,
obs_points
,
dx
)
% get unit vec
vec
=
(
q_rand
-
q_near
)
.
/
norm
(
q_rand
-
q_near
);
total_len
=
norm
(
q_rand
-
q_near
);
% scale unit vec
vec
=
dx
.*
vec
;
% check for collisions
step_num
=
ceil
(
min
(
dist_inc
,
total_len
)/
dx
);
% number of steps of dx to get to the distance increment
test_pt
=
q_near
;
% starting position for collision detection
for
i
=
1
:
step_num
test_pt
=
test_pt
+
vec
;
% take a step
% look for collisions (there is a faster way to do this, i am sure)
dists
=
sqrt
((
test_pt
(
1
)
-
obs_points
(:,
1
))
.^
2
+
(
test_pt
(
2
)
-
obs_points
(:,
2
))
.^
2
);
if
any
(
dists
<=
dx
)
% collision!
if
i
==
1
q_new
=
[];
% if its on the first iteration, no new config
return
;
end
q_new
=
test_pt
-
vec
;
return
;
end
end
% we made it!
q_new
=
test_pt
;
end
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment