别墅3D展示(WEB)
# FastWeb之别墅3D展示
# 1. 说明
js-cloudimage-360view是一个简单且互动性强的库,可用于虚拟展示产品的相关功能。其原理是通过图片序列的排序,在界面中以幻灯片的方式展示,点击不同的视角呈现不同的图片页面。关于此范例使用的jQueryFrame示例的制作过程请参考360度浏览-自由视角-室内全景与360度浏览-自由视角-室外全景。
通过本范例学习,可以掌握在示例中引入3D展示的相关功能。
# 2. 设计明细
开启FastWeb设计器,分别加入下插图之控件。或者点击左上角的[导入]
选择模板文件来打开对应模板。

TUgImage组件,控件名称为UgImage01
。
TUgContainerPanel组件,控件名称为UgContainerPanel01
,此控件为全局布局的容器控件。
TUgContainerPanel组件,控件名称为UgContainerPanel02
,此控件为上半部分的布局容器控件。
TUgContainerPanel组件,控件名称为UgContainerPanel04
,此控件为左上部分显示的布局容器控件。
1:TUgjQueryFrame组件,控件名称为UgjQueryFrame01
。
TUgContainerPanel组件,控件名称为UgContainerPanel05
,此控件为右上部分显示的布局容器控件。
2:TUgLabel组件,控件名称为UgLabel01
。
3:TUgLabel组件,控件名称为UgLabel02
。
4:TUgLabel组件,控件名称为UgLabel05
。
TUgContainerPanel组件,控件名称为UgContainerPanel03
,此控件为下半部分的布局容器控件。
TUgContainerPanel组件,控件名称为UgContainerPanel06
,此控件为左下半部分的布局容器控件。
5:TUgLabel组件,控件名称为UgLabel03
。
6:TUgLabel组件,控件名称为UgLabel04
。
7:TUgLabel组件,控件名称为UgLabel06
。
TUgContainerPanel组件,控件名称为UgContainerPanel07
,此控件为右下半部分的布局容器控件。
8:TUgjQueryFrame组件,控件名称为UgjQueryFrame02
。
9:TUgTimer组件,控件名称为UgTimer01
。
UgWebRunFrame属性设置
Align
:设置对齐的模式,设置为uniAlignmentClient
。Height
:设置页面高度=571
。Width
:设置页面宽度=1200
。
UgImage01属性设置
Align
:设置对齐的方式,设置为alClient
。Stretch
:设置是否拉伸图片显示,设置为True
。Picture
:设置图片显示,点击[√]
打开图片显示的对话框,选择图片上传。
UgContainerPanel01属性设置
Align
:设置对齐方式,设置为alClient
。Layout
:设置布局的模式,设置为vbox
。
UgContainerPanel02属性设置
Layout
:设置布局模式,设置为hbox
。LayoutConfig
:设置布局选项参数,Flex
设置为1
,Width
设置为100%
。
UgContainerPanel04属性设置
Layout
:设置布局模式,设置为fit
。LayoutConfig
:设置布局选项参数,Flex
设置为1
,Height
设置为100%
。
1:UgjQueryFrame01属性设置
双击打开管理器,在其中选择
360度浏览-自由视角-室外全景
。UgContainerPanel05属性设置
Layout
:设置布局模式,设置为hbox
。LayoutConfig
:设置布局选项参数,Flex
设置为1
,Width
设置为100%
。
2:UgLabel01属性设置
Caption
:设置显示的字幕内容,设置为秀外
。Font
:设置显示的字体,点击[√]
,打开字体设置界面。按照图示进行设置。
3:UgLabel02属性设置
AutoSize
:设置是否自动根据文字内容缩放宽度,设置为False
。Caption
:设置显示的字幕内容,设置为不追求独特风格 — 而着眼于恒久的美,采用现代简约的设计语言,宽大的落地窗户搭配素色外墙,让建筑历久弥新。
。Font
:设置显示的字体,点击[√]
,打开字体设置界面。按照图示进行设置。
Width
:设置显示的宽度,设置为372
。
4:UgLabel05属性设置
Caption
:设置显示的字幕内容,设置为了解更多...
。Font
:设置显示的字体,点击[√]
,打开字体设置界面。按照图示进行设置。
UgContainerPanel03属性设置
Layout
:设置布局模式,设置为hbox
。LayoutConfig
:设置布局选项参数,Flex
设置为1
,Width
设置为100%
。
UgContainerPanel04属性设置
LayoutConfig
:设置布局选项参数,Flex
设置为1
,Height
设置为100%
。
5:UgLabel03属性设置
Caption
:设置显示的字幕内容,设置为慧中
。Font
:设置显示的字体,点击[√]
,打开字体设置界面。按照图示进行设置。
6:UgLabel04属性设置
AutoSize
:设置是否自动根据文字内容缩放宽度,设置为False
。Caption
:设置显示的字幕内容,设置为全屋搭配智慧控制系统,预设多种居家场景,在不同的场景下呈现不同的环境效果,舒适感大幅提升。
。Font
:设置显示的字体,点击[√]
,打开字体设置界面。按照图示进行设置。
Width
:设置显示的宽度,设置为372
。
7:UgLabel06属性设置
Caption
:设置显示的字幕内容,设置为了解更多...
。Font
:设置显示的字体,点击[√]
,打开字体设置界面。按照图示进行设置。
UgContainerPanel07属性设置
Layout
:设置布局模式,设置为fit
。LayoutConfig
:设置布局选项参数,Flex
设置为1
,Height
设置为100%
。
8:UgjQueryFrame02属性设置
双击打开管理器,在其中选择
360度浏览-自由视角-室内全景
。9:UgTimer01属性设置
Interval
:设置时间间隔,设置为100
。
# 3. 程序设计
点击程序设计界面右下角的按钮,切换至单元选择界面,勾选需要使用的单元。该程式的程序无需引用单元。
# 3.1. 程序初始设置
初始化jQueryFrame程序。
//JScript
function UgWebRunFrameOnAfterRunScript(sender)
{
UGMM.LC(Self);
}
{
UgJQueryFrame02.Init("64F17C00-C4E1-4B98-9522-E7B3C23EE899");
UgJQueryFrame01.Init("3F8A74D3-4367-43CC-B065-99D85DB539AE");
Self.OnAfterRunScript = &UgWebRunFrameOnAfterRunScript;
}
2
3
4
5
6
7
8
9
10
11
//PasScript
procedure UgWebRunFrameOnAfterRunScript(const sender: tobject);
begin
UGMM.LC(Self);
end;
Begin
UgJQueryFrame02.Init('64F17C00-C4E1-4B98-9522-E7B3C23EE899');
UgJQueryFrame01.Init('3F8A74D3-4367-43CC-B065-99D85DB539AE');
End.
2
3
4
5
6
7
8
9
10
11
// Make sure to add code blocks to your code group
# 3.2. 事件设置
- 9:UgTimer01-OnTimer事件
初始化事件,显示室内与室外的场景。
//JScript
function UgTimer01OnTimer(sender)
{
UgJQueryFrame02.JSONTOData("{\"param_folder\":\"library/js/js-cloudimage-360-view/demo/outdoor/\"," +
"\"param_filename\": \"00_Haus_000{index}.jpg\"}");
UgJQueryFrame01.JSONTOData("{\"param_folder\":\"library/js/js-cloudimage-360-view/demo/indoor/\"," +
"\"param_filename\": \"{index}.jpeg\"}");
UgTimer01.Enabled = False;
}
2
3
4
5
6
7
8
9
10
//PasScript
procedure UgTimer01OnTimer(sender: tobject);
begin
UgJQueryFrame02.JSONTOData('{"param_folder":"library/js/js-cloudimage-360-view/demo/outdoor/",' +
'"param_filename": "00_Haus_000{index}.jpg"}');
UgJQueryFrame01.JSONTOData('{"param_folder":"library/js/js-cloudimage-360-view/demo/indoor/",' +
'"param_filename": "{index}.jpeg"}');
UgTimer01.Enabled := False;
end;
2
3
4
5
6
7
8
9
// Make sure to add code blocks to your code group
# 4. 运行结果
使用鼠标在FastWeb菜单,点击[保存至数据库]
按钮,将其保存至数据库,点击[调试运行]
确认能够正常打开。

左上角与右下角的场景可通过鼠标点击来实现全景切换的功能。