📄 imshow.cpp
字号:
//
// if (strcmp(borderPref, 'tight') & singleImage)
//
{
mwArray a_ = strcmp(mwVv(borderPref, "borderPref"), _mxarray71_);
if (tobool(a_) && tobool(a_ & mwVv(singleImage, "singleImage"))) {
//
// % Have the image fill the figure.
// set(axHandle, 'Units', 'normalized', 'Position', [0 0 1 1]);
//
ans.EqAns(
Nset(
0,
mwVarargin(
mwVv(axHandle, "axHandle"),
_mxarray61_,
_mxarray63_,
_mxarray65_,
_mxarray67_)));
//
//
// % The next line is so that a subsequent plot(1:10) goes back
// % to the default axes position instead of taking up the
// % entire figure.
// set(figHandle, 'NextPlot', 'replacechildren');
//
ans.EqAns(
Nset(
0,
mwVarargin(
mwVv(figHandle, "figHandle"), _mxarray3_, _mxarray69_)));
} else {
}
//
// end
//
}
//
//
// if (callTruesize)
//
if (tobool(mwVv(callTruesize, "callTruesize"))) {
//
// truesize(figHandle);
//
truesize(mwVarargin(mwVv(figHandle, "figHandle")));
//
// end
//
}
//
//
// if (~isempty(filename) & isempty(get(get(axHandle,'Title'),'String')))
//
{
mwArray a_ = ~ isempty(mwVv(filename, "filename"));
if (tobool(a_)
&& tobool(
a_
& isempty(
Nget(
1,
mwVarargin(
Nget(
1,
mwVarargin(
mwVv(axHandle, "axHandle"), _mxarray41_)),
_mxarray73_))))) {
//
// set(get(axHandle, 'Title'), 'String', filename, ...
//
ans.EqAns(
Nset(
0,
mwVarargin(
Nget(1, mwVarargin(mwVv(axHandle, "axHandle"), _mxarray41_)),
_mxarray73_,
mwVv(filename, "filename"),
_mxarray75_,
_mxarray77_,
_mxarray9_,
_mxarray43_)));
} else {
}
//
// 'Interpreter', 'none', ...
// 'Visible', 'on');
// end
//
}
//
//
// if (nargout > 0)
//
if (nargout_ > 0) {
//
// % Only return handle if caller requested it.
// h = hh;
//
h = mwVv(hh, "hh");
//
// end
//
}
//
//
// if (newFigure)
//
if (tobool(mwVv(newFigure, "newFigure"))) {
//
// set(figHandle, 'Visible', 'on');
//
ans.EqAns(
Nset(
0,
mwVarargin(mwVv(figHandle, "figHandle"), _mxarray9_, _mxarray43_)));
//
// end
//
}
mwValidateOutput(h, 1, nargout_, "h", "imshow");
return h;
//
//
//
// %----------------------------------------------------------------------
// % Subfunction ParseInputs
// %----------------------------------------------------------------------
//
//
}
//
// The function "Mimshow_ParseInputs" is the implementation version of the
// "imshow/ParseInputs" M-function from file
// "e:\matlab6.5\toolbox\images\images\imshow.m" (lines 191-511). It contains
// the actual compiled code for that M-function. It is a static function and
// must only be called from one of the interface functions, appearing below.
//
//
// function [cdata, cdatamapping, clim, map, xdata, ...
//
static mwArray Mimshow_ParseInputs(mwArray * cdatamapping,
mwArray * clim,
mwArray * map,
mwArray * xdata,
mwArray * ydata,
mwArray * filename,
mwArray * truesizeStr,
int nargout_,
mwArray varargin) {
mwLocalFunctionTable save_local_function_table_
= &_local_function_table_imshow;
int nargin_ = nargin(-1, mwVarargin(varargin));
mwArray cdata = mwArray::UNDEFINED;
mwArray ans = mwArray::UNDEFINED;
mwArray idx = mwArray::UNDEFINED;
mwArray strs = mwArray::UNDEFINED;
mwArray str = mwArray::UNDEFINED;
mwArray defGrayMapLength = mwArray::UNDEFINED;
//
// ydata, filename, truesizeStr] = ParseInputs(varargin);
//
// filename = '';
//
*filename = _mxarray79_;
//
// truesizeStr = '';
//
*truesizeStr = _mxarray79_;
//
//
// if (get(0,'ScreenDepth') > 16)
//
if (mclGtBool(Nget(1, mwVarargin(_mxarray0_, _mxarray80_)), _mxarray82_)) {
//
// defGrayMapLength = 256;
//
defGrayMapLength = _mxarray83_;
//
// else
//
} else {
//
// defGrayMapLength = 64;
//
defGrayMapLength = _mxarray84_;
//
// end
//
}
//
//
// % If nargin > 1, see if there's a trailing string argument.
// if ((nargin > 1) & (ischar(varargin{end})))
//
{
mwArray a_ = nargin_ > 1;
if (tobool(a_)
&& tobool(
a_
& feval(
mwValueVarargout(),
mlxIschar,
mwVarargin(
mwVa(varargin, "varargin").cell(
end(
mwVa(varargin, "varargin"),
_mxarray7_,
_mxarray7_)))))) {
//
// str = varargin{end};
//
str
= mwVa(varargin, "varargin").cell(
end(mwVa(varargin, "varargin"), _mxarray7_, _mxarray7_));
//
// varargin(end) = []; % remove string from input arg list
//
varargin(end(mwVa(varargin, "varargin"), _mxarray7_, _mxarray7_))
= mwEmptySqBracket();
//
// strs = {'truesize', 'notruesize'};
//
strs = _mxarray85_;
//
// idx = strmatch(str, strs);
//
idx = strmatch(mwVv(str, "str"), mwVv(strs, "strs"));
//
// if (isempty(idx))
//
if (tobool(isempty(mwVv(idx, "idx")))) {
//
// error(sprintf('Unknown option string "%s"', str));
//
error(
mwVarargin(
sprintf(_mxarray89_, mwVarargin(mwVv(str, "str")))));
//
// elseif (length(idx) > 1)
//
} else if (mclLengthInt(mwVv(idx, "idx")) > 1) {
//
// error(sprintf('Ambiguous option string "%s"', str));
//
error(
mwVarargin(
sprintf(_mxarray91_, mwVarargin(mwVv(str, "str")))));
//
// else
//
} else {
//
// truesizeStr = strs{idx};
//
*truesizeStr = mwVv(strs, "strs").cell(mwVv(idx, "idx"));
//
// end
//
}
} else {
}
//
// end
//
}
//
//
// switch length(varargin)
//
{
mwArray v_ = mclLengthInt(mwVa(varargin, "varargin"));
if (switchcompare(v_, _mxarray0_)) {
//
// case 0
// error('Not enough input arguments. See HELP IMSHOW');
//
error(mwVarargin(_mxarray93_));
//
//
// case 1
//
} else if (switchcompare(v_, _mxarray7_)) {
//
// % IMSHOW(I)
// % IMSHOW(RGB)
// % IMSHOW(FILENAME)
//
// if (isstr(varargin{1}))
//
if (tobool(
feval(
mwValueVarargout(),
mlxIsstr,
mwVarargin(mwVa(varargin, "varargin").cell(_mxarray7_))))) {
//
// % IMSHOW(FILENAME)
// filename = varargin{1};
//
*filename = mwVa(varargin, "varargin").cell(_mxarray7_);
//
// [cdata,map] = imread(filename);
//
cdata
= Nimread(
2, map, NULL, mwVarargin(mwVv(*filename, "filename")));
//
// xdata = (1:size(cdata,2));
//
*xdata
= colon(
_mxarray7_,
size(
mwValueVarargout(), mwVv(cdata, "cdata"), _mxarray8_));
//
// ydata = (1:size(cdata,1));
//
*ydata
= colon(
_mxarray7_,
size(
mwValueVarargout(), mwVv(cdata, "cdata"), _mxarray7_));
//
// if (isempty(map))
//
if (tobool(isempty(mwVv(*map, "map")))) {
//
// if (ndims(cdata) == 3) % RGB
//
if (mclEqBool(ndims(mwVv(cdata, "cdata")), _mxarray95_)) {
//
// map = [];
//
*map = _mxarray96_;
//
// else % intensity
//
} else {
//
// map = gray(defGrayMapLength);
//
*map = gray(mwVv(defGrayMapLength, "defGrayMapLength"));
//
// end
//
}
//
// cdatamapping = 'scaled';
//
*cdatamapping = _mxarray97_;
//
// if (isa(cdata, 'double'))
//
if (tobool(isa(mwVv(cdata, "cdata"), _mxarray99_))) {
//
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -