📄 fs_read_wfile.m
字号:
function [w,v] = fs_read_wfile(fname)
% FS_READ_WFILE - FREESURFER I/O function to read an overlay (*.w) file
%
% [w,vert] = fs_read_wfile(fname)
%
% reads a vector from a binary 'w' file
% fname - name of file to read from
% w - vector of values
% vert - vertex indices
%
% After reading an associated surface, with fs_read_surf, try:
% patch('vertices',vert,'faces',face,...
% 'facecolor','interp','edgecolor','none',...
% 'FaceVertexCData',w); light
%
% See also FS_WRITE_WFILE, FS_READ_SURF, FS_READ_CURV
if (nargin ~= 1),
msg = sprintf('USAGE: [w,v] = fs_read_wfile(fname)\n');
error(msg);
end
% open it as a big-endian file
fid = fopen(fname, 'rb', 'b') ;
if (fid < 0),
str = sprintf('could not open w file %s.', fname) ;
error(str) ;
end
fread(fid, 1, 'int16'); % Skip latency int
vnum = fs_fread3(fid) ; % Number of non-zero values
v = zeros(vnum,1) ;
w = zeros(vnum,1) ;
for i=1:vnum,
v(i) = fs_fread3(fid) ;
w(i) = fread(fid, 1, 'float') ;
end
fclose(fid) ;
if nargout > 1,
fprintf('...adding 1 to vertex indices for matlab compatibility.\n');
v = v + 1;
end
% w = zeros(max(v),1);
% w(v+1) = w0;
return
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -