替换展厅海报
对展厅场景的海报进行编辑替换,编辑模式下进行编辑,运行模式下进行替换
参数
new MMSDT.popReplace(popPosters, status)
popPosters: 海报信息json
var popPosters = [
{
image_bg_height:512, //海报高度
image_bg_url: "textures/pop1.jpg", //海报地址
image_bg_width:512, //海报宽度
image_content: "", //内容描述
image_id: 22, //数据库内部id
image_info_height:512, //详细信息图高度
image_info_href:"http://www.mms3d.cn", //详细信息超链接
image_info_url: "textures/pop1.jpg", //详细信息图地址
image_info_width:512, //详细信息图宽度
image_type:"img", //信息类型
web3d_pt:"deng749_002", //三维场景中海报的id
}
]
status:布尔值,是否即可替换,true初始化时就替换海报,false暂不替换,仅加入缓存,以后再替换
属性
.change()
按popPosters中的信息替换海报
.reset()
海报恢复默认
代码示例
//从后台数据库中读取海报信息,进行替换
var popPosters = [
{
image_bg_height:512, //海报高度
image_bg_url: "textures/pop1.jpg", //海报地址(3D使用)
image_bg_width:512, //海报宽度
image_content: "", //内容描述
image_id: 22, //数据库内部id
image_info_height:512, //详细信息图高度
image_info_href:"http://www.mms3d.cn", //详细信息超链接
image_info_url: "textures/pop1.jpg", //详细信息图地址
image_info_width:512, //详细信息图宽度
image_type:"img", //信息类型
web3d_pt:"deng749_002", //三维场景中海报的id(3D使用)
},
{
image_bg_height:512,
image_bg_url: "textures/pop1.jpg",
image_bg_width:512,
image_content: "",
image_id: 22,
image_info_height:512,
image_info_href:"http://www.mms3d.cn",
image_info_url: "textures/pop1.jpg",
image_info_width:512,
image_type:"img",
web3d_pt:"xcvxcv",
}
]
//替换某一张海报
var onePOP = {
image_bg_height:512,
image_bg_url: "textures/pop2.jpg",
image_bg_width:512,
image_content: "",
image_id: 22,
image_info_height:512,
image_info_href:"http://www.mms3d.cn",
image_info_url: "textures/pop2.jpg",
image_info_width:512,
image_type:"img",
web3d_pt:"deng749_002",
}
//读取热点的json配置文件
MMSDT.getJson( dirUrl+"models/exhibition/hotspot2.json", callbackEquip);
function callbackEquip( dateJson ){
var parameter = {
picUrl: dirUrl+"textures/joystick.png", //中心点图片
flashUrl: dirUrl+"textures/light.png", //闪烁图片
scale: 0.7, //缩放比例
color: 0xfff21e, //默认颜色
distance: 700, //热点与实时相机的有效距离,超过该距离隐藏,防止误点远处的热点
}
MMSDT.hotspot( dateJson, parameter );
}
var eventMouse = [];
var onMove = [];
var outMove = function(){}
var onDown = [];
var onDouble = [];
var moveColor = [0xff0000,0xfff21e,false,false];
//鼠标点击热点(获取该对应海报的id、长、宽后,调用相应窗口编辑)
function goBack( dateJson, dblClick ){
alert( "该海报的ID号:"+ dateJson.id + "\r该图片的宽度:" + dateJson.parameter[0] + "\r该图片的高度:" + dateJson.parameter[1]);
}
//鼠标移入移出热点
function goBack2( dateJson ){
if( dateJson == "none"){
document.body.title = "";
}else{
document.body.title = "点击热点编辑海报";
}
}
//构建函数监听鼠标事件
MMSDT.mouseEvent( eventMouse, onMove, outMove, onDown, onDouble, moveColor, false, false, goBack, goBack2 );
//使用MMAPI类,自定义外部函数接口
//初始化海报(json数据, 是否当即替换)
var pop = new MMSDT.popReplace(popPosters, false);
//替换海报
MMAPI.readPOP = function(){
pop.change();
}
//恢复原海报
MMAPI.resetPOP = function(){
pop.reset();
}
//替换指定海报
MMAPI.changePOP = function(jsonData){
MMSDT.popRefresh(jsonData);
}
在线演示