How to check a function input to be ptcloud object?

1 次查看(过去 30 天)
Hello,
I want to right some functions, which will have the matlab ptCloud objects as inputs. I want to validate the inputs at the beginn of the function, I know I can use inputParser to do that, but it looks like it doesn't like the object as an input at all.

采纳的回答

Titus Edelhofer
Titus Edelhofer 2019-6-4
Hi Philipp,
probably you are looking for the function "isa":
function myfun(x)
if ~isa(x, 'ptCloud')
error('Input argument x must be ptCloud object')
end
Titus
  1 个评论
Philipp Schnabel
Philipp Schnabel 2019-6-4
Thank you Titus,
it did help really, now I have one more question, how can i check that the PointCloud Object is not empty? Can I access the data inside and check it in the InputParser? My code example does look like this:
function [tform, cov, error, time] = test(move,fix,iter,varargin)
inp = inputParser;
inp.addRequired('move', @(x) isa(x, 'pointCloud'));
inp.addRequired('fix', @(x) isa(x, 'pointCloud'));
inp.addOptional('iter', 10, @(x)x > 0 && x < 10^5);
inp.parse(move,fix,iter,varargin{:});
tform = affine3d();
cov = zeros(6);
error = 0;
time = 0;

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Argument Definitions 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by