Undo "import"

17 views (last 30 days)
metty
metty on 2 Jul 2019
Edited: Joe V on 25 May 2022
There I use
import ETS3.*
Later when i try:
simplify(something,'steps',10)
There is an errormessage:
Error using RTBPose/simplify Too many input arguments.
So i guess the import-command is somehow overloading the simpify-command. Can I undo the import, command?
Something like:
clear ETS3.* %this does not help

Answers (2)

Kaustav Bhattacharya
Kaustav Bhattacharya on 2 Jul 2019
For the sake of solving you can write a function with a different name with same parameters and inside that function, call the simplify function and return the result.
  1 Comment
metty
metty on 3 Jul 2019
I tried:
function outputArg1 = mysimplify(input,steps)
outputArg1 = simplify(input,'steps',steps);
end
then in the main code:
mysimplify(something,10);
But I got still the same error-message.

Sign in to comment.


Joe V
Joe V on 25 May 2022
Edited: Joe V on 25 May 2022
You probably want this:
clear import
That will clear all imports (not just 'ETS3.*').
If you only want to clear the import of 'ETS3.*' and keep other imports, you'll have to do something clever, maybe like this:
I = setdiff(import, 'ETS3.*');
clear import;
cellfun(@import, I);
In case that code is hard to follow, here is a slightly longer, clearer version that does the same thing:
I = import;
clear import;
I = setdiff(I, 'ETS3.*'); % remove 'ETS3.*' from I
for i = 1:numel(I)
import(I{i});
end
(If this seems awkward, and you need to do this a lot, consider submitting a bug report/feature request to MathWorks Support.)
One other note: This only works from the command prompt. Within a function, you can't use clear import. But the imports are removed at the end of the function.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!