威望0
积分7946
贡献0
在线时间763 小时
UID1
注册时间2021-4-14
最后登录2024-11-21
管理员
- UID
- 1
- 威望
- 0
- 积分
- 7946
- 贡献
- 0
- 注册时间
- 2021-4-14
- 最后登录
- 2024-11-21
- 在线时间
- 763 小时
|
[mw_shl_code=applescript,true]
function [] = FadeInLogoImg( LogoImgFileName )
% *** 函数功能 ***
% 本函数采用 '渐现' 方法显示一幅闪现图像, 主要用于软件启动显示 'Logo' 图像.
%
% *** 输入参数 ***
% 'LogoImgFileName' - 闪现图像文件名
%
% *** 输出参数 ***
% 无
% 判断闪现图像数据文件是否存在 ...
if ~exist( LogoImgFileName, 'file' )
return;
end;
% 读取闪现图像数据文件 ...
LogoImg = imread( LogoImgFileName );
ImgHeight = size( LogoImg, 1 );
ImgWidth = size( LogoImg, 2 );
% 创建一幅黑色的背景图像 ...
BackImg = uint8( zeros( ImgHeight, ImgWidth, 3 ) );
% 显示 Matlab 窗体 ...
figure;
% 设置窗体属性 ...
set( gcf, 'Menubar', 'none' );
set( gcf, 'Toolbar', 'none' );
set( gcf, 'NumberTitle', 'off' );
set( gcf, 'Resize', 'off' );
set( gcf, 'Name', ' Welcome to Spatio-Temporal Feature Analysis Laboratory !' ); % 窗体标题 ...
% 设置为模式窗体( 即置顶 ), 这是非常必要的 ...
set( gcf, 'WindowStyle', 'Modal' );
% 计算窗体显示位置( 屏幕中央 )和大小( 和闪现图像大小一样 ) ...
% 得到以 '像素' 为单位的屏幕大小 ...
% ( 返回的 'R' 表示整个屏幕的 '[left, bottom, width, height]' )
% R = get( 0, 'ScreenSize' );
% fx = floor( ( R( 3 ) - ImgWidth ) / 2 );
% fy = floor( ( R( 4 ) - ImgHeight ) / 2 );
% set( gcf, 'Position', [ fx fy ImgWidth ImgHeight ] );
% set( gcf, 'OuterPosition', [ fx fy ImgWidth ImgHeight ] );
% 实现闪现图像的 '渐现' 显示( 效果非常好 ) ...
t = 0.00;
while ( t <= 1.00 )
% 显示经过 'Alpha 混合' 后的图像( 即实现 '渐现' 效果 ) ...
VisImg = imlincomb( 1 - t, BackImg, t, LogoImg );
% 下面的方式可以让图像充满窗体区域显示, 比较美观 ...
imshow( VisImg, 'Border', 'tight' );
% 延时 '0.03' 秒 ...
pause( 0.03 );
% 处理下一帧 ...
t = t + 0.03;
end;
% 延时 '1' 秒 ...
pause( 1 );
% 关闭当前闪现图像显示窗体 ...
close( gcf );
[/mw_shl_code] |
|