⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 avw_view_test.html

📁 mri_toolbox是一个工具用来MRI. 来自于SourceForge, 我上传这个软件,希望能结识对医疗软件感兴趣的兄弟.
💻 HTML
📖 第 1 页 / 共 4 页
字号:
0076 movegui(GUI,<span class="string">'center'</span>);0077 0078 AVWVIEW.gui = GUI;0079 0080 0081 Font.FontName   = <span class="string">'Helvetica'</span>;0082 Font.FontUnits  = <span class="string">'Pixels'</span>;0083 Font.FontSize   = 12;0084 Font.FontWeight = <span class="string">'normal'</span>;0085 Font.FontAngle  = <span class="string">'normal'</span>;0086 0087 0088 shading flat0089 0090 0091 <span class="comment">% Determine image size and origin (center)</span>0092 0093 xdim = size(avw.img,1);0094 ydim = size(avw.img,2);0095 zdim = size(avw.img,3);0096 0097 SagSlice = 1;0098 CorSlice = 1;0099 AxiSlice = 1;0100 <span class="keyword">if</span> xdim &gt; 1, SagSlice = floor(xdim/2); <span class="keyword">end</span>0101 <span class="keyword">if</span> ydim &gt; 1, CorSlice = floor(ydim/2); <span class="keyword">end</span>0102 <span class="keyword">if</span> zdim &gt; 1, AxiSlice = floor(zdim/2); <span class="keyword">end</span>0103 0104 AVWVIEW.origin = [SagSlice,CorSlice,AxiSlice];             <span class="comment">% vol origin</span>0105 AVWVIEW.scale  = double(avw.hdr.dime.pixdim(2:4)) ./ 1000; <span class="comment">% vol scale in meters</span>0106 0107 0108 <span class="comment">% Initialise some window handles, useful if the input image is only 2D</span>0109 G.Ha = 0;0110 G.Hc = 0;0111 G.Hs = 0;0112 0113 <span class="comment">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span>0114 <span class="comment">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span>0115 0116 <span class="comment">% Axial Slice</span>0117 <span class="keyword">if</span> xdim &gt; 1 &amp; ydim &gt; 1,0118     0119     G.Aa = subplot(<span class="string">'position'</span>,[0.05 0.56 0.4 0.4]);0120     colormap(<span class="string">'gray'</span>);0121     0122     Saxial = squeeze(avw.img(:,:,AxiSlice));0123     G.Ha = imagesc([0,xdim],[0,ydim],Saxial');0124     set(gca,<span class="string">'YDir'</span>,<span class="string">'normal'</span>)0125     0126     axis square, daspect([1,1,1]);0127     xlabel(<span class="string">'(Left &lt;&lt;) X (&gt;&gt; Right)'</span>)0128     ylabel(<span class="string">'Y'</span>)0129     title(<span class="string">'Axial'</span>)0130     0131     <span class="comment">% This callback navigates with left click</span>0132     set(G.Ha,<span class="string">'ButtonDownFcn'</span>,<span class="keyword">...</span>0133         strcat(<span class="string">'AVWVIEW = get(gcbf,''Userdata''); '</span>,<span class="keyword">...</span>0134         <span class="string">'currentpoint = get(get(AVWVIEW.handles.Ha,''Parent''),''CurrentPoint''); '</span>,<span class="keyword">...</span>0135         <span class="string">'SagSlice = round(currentpoint(2,1)); '</span>,<span class="keyword">...</span>0136         <span class="string">'CorSlice = round(currentpoint(2,2)); '</span>,<span class="keyword">...</span>0137         <span class="string">'AxiSlice = round(str2num(get(AVWVIEW.handles.Taxi,''String''))); '</span>,<span class="keyword">...</span>0138         <span class="string">'imgvalue = double(AVWVIEW.avw.img(SagSlice,CorSlice,AxiSlice)); '</span>,<span class="keyword">...</span>0139         <span class="string">'set(AVWVIEW.handles.imval,''String'',sprintf(''%8.2f'',imgvalue));'</span>,<span class="keyword">...</span>0140         <span class="string">'set(AVWVIEW.gui,''UserData'',AVWVIEW);'</span>,<span class="keyword">...</span>0141         <span class="string">'if ishandle(AVWVIEW.handles.Hs) &amp; AVWVIEW.handles.Hs, '</span>,<span class="keyword">...</span>0142         <span class="string">'   Ssag = squeeze(AVWVIEW.avw.img(SagSlice,:,:));'</span>,<span class="keyword">...</span>0143         <span class="string">'   set(AVWVIEW.handles.Hs,''CData'',Ssag''); '</span>,<span class="keyword">...</span>0144         <span class="string">'   set(AVWVIEW.handles.Tsag,''String'',num2str(SagSlice));'</span>,<span class="keyword">...</span>0145         <span class="string">'   set(AVWVIEW.handles.Ssag,''Value'',SagSlice);'</span>,<span class="keyword">...</span>0146         <span class="string">'   clear Ssag; '</span>,<span class="keyword">...</span>0147         <span class="string">'   set(AVWVIEW.gui,''UserData'',AVWVIEW);'</span>,<span class="keyword">...</span>0148         <span class="string">'end; '</span>,<span class="keyword">...</span>0149         <span class="string">'if ishandle(AVWVIEW.handles.Hc) &amp; AVWVIEW.handles.Hc, '</span>,<span class="keyword">...</span>0150         <span class="string">'   Scor = squeeze(AVWVIEW.avw.img(:,CorSlice,:));'</span>,<span class="keyword">...</span>0151         <span class="string">'   set(AVWVIEW.handles.Hc,''CData'',Scor''); '</span>,<span class="keyword">...</span>0152         <span class="string">'   set(AVWVIEW.handles.Tcor,''String'',num2str(CorSlice));'</span>,<span class="keyword">...</span>0153         <span class="string">'   set(AVWVIEW.handles.Scor,''Value'',CorSlice);'</span>,<span class="keyword">...</span>0154         <span class="string">'   clear Scor; '</span>,<span class="keyword">...</span>0155         <span class="string">'   set(AVWVIEW.gui,''UserData'',AVWVIEW);'</span>,<span class="keyword">...</span>0156         <span class="string">'end; '</span>,<span class="keyword">...</span>0157         <span class="string">'clear currentpoint imgvalue AxiSlice CorSlice SagSlice AVWVIEW;'</span>));0158     0159     <span class="keyword">if</span> zdim &gt; 1,0160         slider_step(1) = 1/(zdim);0161         slider_step(2) = 1/(zdim);0162         G.Saxi = uicontrol(<span class="string">'Parent'</span>,GUI,<span class="string">'Style'</span>,<span class="string">'slider'</span>,<span class="string">'Units'</span>,<span class="string">'Normalized'</span>, Font, <span class="keyword">...</span>0163             <span class="string">'Position'</span>,[.45 .56 .03 .40], <span class="string">'HorizontalAlignment'</span>, <span class="string">'center'</span>,<span class="keyword">...</span>0164             <span class="string">'BusyAction'</span>,<span class="string">'queue'</span>,<span class="keyword">...</span>0165             <span class="string">'Min'</span>,1,<span class="string">'Max'</span>,zdim,<span class="string">'SliderStep'</span>,slider_step,<span class="string">'Value'</span>,AxiSlice,<span class="keyword">...</span>0166             <span class="string">'Callback'</span>,strcat(<span class="string">'AVWVIEW = get(gcbf,''Userdata''); '</span>,<span class="keyword">...</span>0167             <span class="string">'AxiSlice = round(get(AVWVIEW.handles.Saxi,''Value''));'</span>,<span class="keyword">...</span>0168             <span class="string">'set(AVWVIEW.handles.Saxi,''Value'',AxiSlice);'</span>,<span class="keyword">...</span>0169             <span class="string">'Saxi = squeeze(AVWVIEW.avw.img(:,:,AxiSlice));'</span>,<span class="keyword">...</span>0170             <span class="string">'set(AVWVIEW.handles.Ha,''CData'',Saxi''); '</span>,<span class="keyword">...</span>0171             <span class="string">'set(AVWVIEW.handles.Taxi,''String'',num2str(AxiSlice));'</span>,<span class="keyword">...</span>0172             <span class="string">'CorSlice = round(get(AVWVIEW.handles.Scor,''Value''));'</span>,<span class="keyword">...</span>0173             <span class="string">'SagSlice = round(get(AVWVIEW.handles.Ssag,''Value''));'</span>,<span class="keyword">...</span>0174             <span class="string">'imgvalue = double(AVWVIEW.avw.img(SagSlice,CorSlice,AxiSlice)); '</span>,<span class="keyword">...</span>0175             <span class="string">'set(AVWVIEW.handles.imval,''String'',sprintf(''%8.2f'',imgvalue));'</span>,<span class="keyword">...</span>0176             <span class="string">'set(AVWVIEW.gui,''UserData'',AVWVIEW);'</span>,<span class="keyword">...</span>0177             <span class="string">'clear imgvalue Saxi AxiSlice CorSlice SagSlice AVWVIEW;'</span>));0178     <span class="keyword">end</span>0179     G.Taxi = uicontrol(<span class="string">'Parent'</span>,GUI,<span class="string">'Style'</span>,<span class="string">'text'</span>,<span class="string">'Units'</span>,<span class="string">'Normalized'</span>, Font, <span class="keyword">...</span>0180         <span class="string">'Position'</span>,[.45 .51 .03 .05], <span class="string">'HorizontalAlignment'</span>, <span class="string">'center'</span>,<span class="keyword">...</span>0181         <span class="string">'BusyAction'</span>,<span class="string">'queue'</span>,<span class="keyword">...</span>0182         <span class="string">'String'</span>,num2str(AxiSlice));0183 <span class="keyword">end</span>0184 0185 <span class="comment">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span>0186 <span class="comment">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span>0187 0188 <span class="comment">% Coronal Slice</span>0189 <span class="keyword">if</span> xdim &gt; 1 &amp; zdim &gt; 1,0190     0191     subplot(<span class="string">'position'</span>,[0.55 0.56 0.4 0.4])0192     colormap(<span class="string">'gray'</span>);0193     0194     Scor = squeeze(avw.img(:,CorSlice,:));0195     G.Hc = imagesc([0,ydim],[0,zdim],Scor');0196     set(gca,<span class="string">'YDir'</span>,<span class="string">'normal'</span>)0197     0198     axis square, daspect([1,1,1]);0199     xlabel(<span class="string">'(Left &lt;&lt;) X (&gt;&gt; Right)'</span>)0200     ylabel(<span class="string">'Z'</span>)0201     title(<span class="string">'Coronal'</span>)0202     0203     <span class="comment">% This callback navigates with left click</span>0204     set(G.Hc,<span class="string">'ButtonDownFcn'</span>,<span class="keyword">...</span>0205         strcat(<span class="string">'AVWVIEW = get(gcbf,''Userdata''); '</span>,<span class="keyword">...</span>0206         <span class="string">'currentpoint = get(get(AVWVIEW.handles.Hc,''Parent''),''CurrentPoint''); '</span>,<span class="keyword">...</span>0207         <span class="string">'SagSlice = round(currentpoint(2,1)); '</span>,<span class="keyword">...</span>0208         <span class="string">'AxiSlice = round(currentpoint(2,2)); '</span>,<span class="keyword">...</span>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -