Getting an 'Array indices must be positive integers or logical values' error
Ältere Kommentare anzeigen
In the given code, waypoints is a 3x3 matrix. The error comes in line 8.
persistent waypoints0 traj_time d0
if nargin > 2
d = waypoints(:,2:end) - waypoints(:,1:end-1);
d0 = 2 * sqrt(d(1,:).^2 + d(2,:).^2 + d(3,:).^2);
traj_time = [0, cumsum(d0)];
waypoints0 = waypoints;
else
if t >= traj_time(end)
t = traj_time(end);
end
t_index = find(traj_time > t,1) - 1;
if (t_index == 0)
t_index = 1;
end
if(t == 0)
desired_state.pos = waypoints0(:,1);
else
scale = (t-traj_time(t_index)) / d0(t_index);
index = [(t_index-1)*8+1:t_index*8];
end
end
4 Kommentare
KALYAN ACHARJYA
am 17 Sep. 2019
Bearbeitet: KALYAN ACHARJYA
am 17 Sep. 2019
Can you share the detail of other variables also, so that we can try on it?
Aquatris
am 17 Sep. 2019
Which line is line 8?
Guillaume
am 17 Sep. 2019
We really need the function line that this code goes into. The full text of the error message would be extremely useful as well. Also, tell us if it's when the persistent variables are initialised (i.e. nargin > 2) or when it's using them (nargin <= 2).
It's also not clear what the 3rd input would be. I can see just one input needed for initialisation (waypoints) and one input needed afterward (t).
Orpheus
am 17 Sep. 2019
Akzeptierte Antwort
Weitere Antworten (0)
Kategorien
Mehr zu Operators and Elementary Operations finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!