目录
最后更新|2007-7-17
1、 简介
VGS是国内第一个完全自主知识产权的网络三维互动软件技术,属国家发明专利。网络三维互动技术是下一代互联网展示技术的核心,是目前互联网技术的换代与升级。WebMax的成功研发不仅实现了在互联网上以三维立体互动的方式发布和实时高速浏览功能,而且对用户终端电脑的硬件配置没有任何特殊要求。本函数教程完全免费!登记注册用户将第一时间得到最新函数的更新邮件!
2、API说明
2.1三维API函数... 8
AddFlashCtrl(flashName, FlashFile, alignMode, Left, Top, width, height, Loop) 8
DeleteFlashCtrl( flashName ) 8
SetFlashRect (flashName, alignMode, left, top, width, height) 9
SetFlashCtrlVisibility(flashName, status) 9
SetFlashPlayStatus(flashName, status) 10
2.11系统回调及相关函数... 11
PreloadN3DFile(strN3DFileName, N3DName) 11
GotoN3D( N3DName) 11
LoadN3DFile(strN3DFileName, N3DName) 11
EnableMouseDownCallback() 11
DisableMouseDownCallback() 12
EnableMouseUpCallback() 12
DisableMouseUpCallback() 12
EnableMouseDBClickCallback() 12
DisableMouseDBClickCallback() 13
EnableMouseMoveCallback() 13
DisableMouseMoveCallback() 13
2.12场景函数... 14
SetRenderStatus(status) 14
ShowDefaultLogo(status) 14
ResetScene() 14
SetMouseMoveEventTimer(timeStep) 14
2.13 控制相关函数... 15
SetCollisionDistance(distance) 15
SetServer(strServer) 15
SetControlStatus(status) 15
SetEditCtrl_RosAxis(rosHint) 15
SetEditCtrl_DollySpeed(dollySpeed) 16
SetEditCtrl_DollyDistance(nearDis, farDis) 16
SetEditCtrl_AutoParam(PitchSpeedValue,RoundSpeedValue, RollSpeedValue) 16
SetEditCtrl_AutoPitchRoundRoll(status) 16
SetEditCtrl_ManualParam(PitchSpeed, RoundSpeed) 17
SetFBL(fblValue) 17
SetWalkCtrl_ManualParam(moveSpeed, moveAcc, rotateSpeed, rotateAcc, height) 17
SetLensFlareVisibility(status) 17
SetModelKfrPlayStatus(modelName, bKfrPlay) 18
SetAllModelKfrPlayStatus(bKfrPlay) 18
SetModelKfrRepeatCnt(modelName, kfrRepeatCnt) 18
SetAllModelKfrRepeatCnt(kfrRepeatCnt) 18
PlayModelKfr(modelName, startFrame, endFrame, repeatCnt) 19
SetButtonVisibility(btnName, visible) 19
SetAntiAliasLevel(level) 19
SetNavigaterVisibility(navName, visible) 19
AddNavigaterPointer(navigaterName,navPointerName,navPointerType, camOrModelName,navPointerOriImage, navPointerAlphaImage, width, height) 19
SetNavigaterPointerVisibility(navigaterName, navPointerName, status) 20
DeleteNavigaterPointer(navigaterName, navPointerName) 20
SetNavigaterPointerObject(navName, navPointerName, objType, objName) 20
PlayKeyFrame() 20
PauseKeyFrame() 21
StopKeyFrame() 21
SetKeyFrameRepeatCount(repeatCnt) 21
GotoFrame(frame) 21
SetKeyFramePlaySpeed(fps) 21
SetPlayerCanMove(status) 21
SetPlayerCanRos(status) 21
SetPlayerCanZoom(status) 21
SetPlayerCanLift(status) 21
PlayerGoForward() 21
PlayerGoBackward() 21
PlayerGoLeftward() 22
PlayerGoRightward() 22
PlayerStop() 22
PlayerTurnLeft() 22
PlayerTurnRight() 22
PlayerTurnUp() 22
PlayerTurnDown() 22
PlayerGoUp() 22
PlayerGoDown() 22
PlayerZoomIn() 22
PlayerZoomOut() 22
2.14 相机相关函数... 23
MoveCamera(cameraName, x, y, z, stepCnt, coordEnum) 23
MoveCurrentCamera(x, y, z, stepCnt, coordEnum) 23
SetCurrentCameraByName(camName) 23
SetCameraClip(cameraName, nearClip, farClip) 23
SetCurrentCameraClip(nearClip, farClip) 24
DollyCurrentCamera(value, stepCnt) 24
DollyCamera(cameraName, value, stepCnt) 24
MoveCurrentCameraTo(from_x, from_y, from_z, at_x, at_y, at_z, frameCnt, accType) 24
MoveCurrentCameraFromTo(x, y, z) 25
MoveCurrentCameraAtTo(x, y, z) 25
MoveCurrentCameraFrom(x, y, z) 25
MoveCurrentCameraAt(x, y, z) 25
SetCurrentCameraByIndex(camIndex) 25
RotateCurrentCamera(x, y, z, stepCnt, coordEnum) 25
RotateCamera(cameraName, x, y, z, stepCnt, coordEnum) 26
FocusCurrentCameraTo(model1Name, model2Name, x, y, z, distance, stepCnt) 26
SetPlayerZoomSpeed(speed) 27
SetCameraFrom(cameraName, x, y, z) 27
SetCameraAt(cameraName, x, y, z) 27
SetCameraFov(cameraName, fov) 27
SetCurrentCameraFov(fov) 27
CreateCamera(name, fromX, fromY, fromZ, atX, atY, atZ, fov, nearClip, farClip) 28
PauseCameraKfr(camName) 28
ResumeCameraKfr(cameraName) 28
PlayCameraKfr(camName, repeatCnt) 29
SetCurrentCameraFrom(x, y, z) 29
SetCurrentCameraAt(x, y, z) 29
StopCameraKfr(camName) 29
SetCanNavigateByPointer(navName, status) 29
2.15 模型相关函数... 31
SetModelVisibility(modelName, visible) 31
SetDynamicUV(modelName, u, v, speed) 31
SetModelClickable(modelName, clickable) 31
SetModelOpacity(modelName, opacity) 31
HideAllModels() 31
ShowAllModels() 31
TranslateModel(modelName, x, y, z, coord) 32
MoveModel(modelName, x, y, z, coordEnum) 32
MoveModelTo(modelName, x, y, z, frameCnt, accType) 32
RestoreModelOpacity(modelName) 32
RestoreAllModelsOpacity() 33
SetModelColor(modelName, red, green, blue, alpha) 33
SetModelFBLStatus(modelName, status) 33
RestoreModelColor(modelName) 33
RestoreAllModelsColor() 33
SetZOneModel(BSTR modelName, BOOL status) 33
DeleteModel(modelName) 34
CreateModelGroup(modelGroupName) 34
DeleteModelGroup(name) 34
DeleteModelGroupByIndex(index) 34
DeleteAllModelGroup() 34
AddModelToModelGroup(modelGroupName, modelName) 34
DeleteModelFromModelGroup(modelGroupName, modelName) 35
ClearModelGroup(modelGroupName) 35
SetModelEventonMouseMove(status) 35
SetModelMouseHint(modelName, bFlag) 35
SetModelMouseColor(modelName, mouseOver_Red,mouseOver_Green,mouseOver_Blue, mouseOver_Alpha,mouseClick_Red,mouseClick_Green, mouseClick_Blue,mouseClick_Alpha) 35
SetModelMouseHintType(modelName, type) 36
SetModelPosition(modelName, x, y, z) 36
SetModelRotation(modelName, x, y, z) 37
2.16材质相关函数... 38
SetModelMtrl(modelName, mtrlName) 38
SetMtrlOpacity(mtrlName, opacity) 38
SetModelMouseMtrl(modelName, mouseOverMtrl, mouseDownMtrl) 38
SetBumpWaterMtrl(mtrlName, bumpWaterName) 38
RestoreModelMtrl(modelName) 39
RestoreAllModelsMtrl() 39
CreateMtrl(mtrlName, red, green, blue, alpha, selfIllu) 39
SetMtrlColor(mtrlName, red, green, blue, alpha) 39
DeleteMtrl(mtrlName) 39
SetMtrlIllumination(mtrlName, illumination) 40
SetAlphaTestStatus(mtrlName, status) 40
SetMtrlCubeMap(mtrlName, cubeMapName, power) 40
SetMovieMtrl(mtrlName, movieTexName) 40
SetSpecularMapMtrl(mtrlName, specularMapName) 40
SetMtrlSpecularCubeMap(mtrlName, specularCubeMapName) 41
DeleteAllModel() 41
2.17灯光相关函数... 42
SetLightColor(lightName, red, green, blue) 42
SetLightPower(lightName, power) 42
SetLightAmbient(lightName, red, green, blue) 42
SetLightPosition(lightName, x, y, z) 42
SetLightRange(lightName, range) 43
SetLightAttenuation(lightName, attenuation0, attenuation1, attenuation2) 43
SetLightStatus(lightName, status) 43
SetLightKfrPlayStatus(lightName, bFlag) 43
SetAllLightKfrPlayStatus(bFlag) 44
SetLightKfrRepeatCnt(lightName, repeatCnt) 44
SetAllLightKfrRepeatCnt(repeatCnt) 44
2.18三维特效函数... 45
CreateBumpWater(bumpWaterName, width, height, xSize, ySize) 45
SetBumpWaterSpeed(waterName, speed) 45
SetBumpWaterRadius(waterName, radius) 45
SetSkyBoxModel(modelName, status) 45
CreateFSMotionBlur(blurCount) 46
CreateFSGlow(glowLevel) 46
SetFSMotionBlurPower(value) 46
SetFSGlowPower (glowPower) 46
StartFSGlow() 46
EndFSGlow() 46
StartFSMotionBlur() 46
StopFSMotionBlur() 46
SetCameraKFRFSMotionBlur(cameraName, startFrame, endFrame, power, status) 47
SetCameraKfrCallBackFunc(cameraName, frameIndex, funcName) 47
CreateLensFlare(x, y, z, coverFlag) 47
CreateFog(fogMode, red, green, blue, density, start, end) 47
SetFogColor(red, blue, green) 48
SetFogMode(mode) 48
SetFogDensity(density) 48
SetFogField(start, end) 48
SetFogRenderStatus(status) 49
SetFilter(overlayName, status, opacity) 49
CreateStaticCubeMap(name, frontImage, backImage, leftImage, rightImage, topImage, bottomImage, size) 49
CreateMovieTexture(texName, moviePath, movieType, withAudio, mtrlName) 49
CreateBackdropFromImage(backdropName,oriImageName,alphaImageName, alignMode, left, top, width, height) 50
CreateSpecularMap(name, imageName, width, height, mipLevel) 51
DeleteMovieTexture(mtrlName, movieTexName) 51
CreateSectionMap(sectionMapName, width, height, sliceModelName, leftTopX, leftTopY, leftTopZ, rightTopX, rightTopY, rightTopZ, leftBottomX, leftBottomY, leftBottomZ, rightBottomX, rightBottomY, rightBottomZ, imageName) 51
ExecuteSlice(sectionMapName) 52
DeleteAudioByName(BSTR name) 52
DeleteAudioByIndex(INT index) 52
DeleteAllAudio() 53
SetAudioFile(BSTR audioName, BSTR audioFile) 53
SetAudioRepeatCount(BSTR audioName, INT repeatCnt) 53
PlayAudio(BSTR audioName) 53
PauseAudio(BSTR audioName) 53
StopAudio(BSTR audioName) 53
RewindAudio(BSTR audioName) 54
2.2界面API函数... 55
2.21 Overlay(前景图)相关函数... 55
CreateOverlayFromImage(overlayName,oriImageName,alphaImageName, alignMode, left, top, width, height) 55
DeleteOverlay(overlayName) 55
SetOverlayOpacity(overlayName, opacity) 55
SetOverlayWidth(overlayName, width) 55,
SetOverlayHeight(overlayName, heig, , ht) 56
SetOverlayAlignMode(overlayName, alignMode) 56
SetOverlayRect(overlayName, left, top, width, height) 56
MoveOverlay(overlayNam, , , e, x, y) 57
SetOverlayVisibility(overlayName, visible) 57
SetOverlayFullScreen(overlayName, xFull, yFull) 57
PushOverlayFront(overlayName) 57
PushOverlayBack(overlayName) 57
2.22背景图相关函数... 59
SetBackgroundColor(red, green, blue) 59
2.23 按钮相关函数... 60
CreateButtonFromImage(btnName, mouseUpImage, mouseUpImage_alpha, 60
mouseOverImage,mouseOverImage_alpha, mouseDownImage,mouseDownImage_alpha, alignMode,x,y,width,height, callBackFunc) 60
DeleteButton(btnName) 60
SetButtonActive(name, bActive) 60
VGS II ActiveX插件
JavaScript编程接口说明
1、 简介
本文档面向使用VGS II ActiveX插件制作动态三维虚拟网页的程序开发者,简要介绍了VGS II ActiveX插件的JavaScript编程接口。
2、 API说明
* 所有在3DSMax中制作的模型名称、材质名称、贴图名、相机名称、灯光名称等,在Javascript中必须全部用大写字母。
目录
2.1三维API函数
AddFlashCtrl(flashName, FlashFile, alignMode, Left, Top, width, height, Loop)
加载Flash控件,显示Flash文件,但并不播放。
参数:
Ø flashName Flash文件的别名,用于索引该Flash文件。
Ø sFlashFile Flash文件路径与文件名称。
Ø alignMode Flash显示矩形区域的对齐方式基准位置。
² 0 绝对坐标
² 1 左对齐
² 2 右对齐
² 3 底部对齐
² 4 顶部对齐
² 5 对齐至左上角
² 6 顶部居中对齐
² 7 对齐至右上角
² 8 对齐至左下角
² 9 底部居中对齐
² 10 对齐至右下角
² 11 居中对齐
Ø Left Flash显示矩形区域左边的坐标值。
Ø Top Flash显示矩形区域顶边的坐标值。
Ø width Flash显示矩形区域右边的坐标值。
Ø height Flash显示矩形区域底部的坐标值。
Ø Loop Flash文件是否循环播放
例:
// 加载自定义的Flash文件作为logo
VGS2.AddFlashCtrl(”LOGO”, ”load.swf”, 11, 0, 0, 400, 400, 1);
删除场景中的Flash控件。
参数:
Ø flashName Flash文件的别名,用于索引该Flash文件。
例:
//删除自定义的Flash文件
VGS2.DeleteFlashCtrl("LOGO");
SetFlashRect (flashName, alignMode, left, top, width, height)
设置Flash的Rect。
参数:
Ø flashName Flash文件的别名,用于索引该Flash文件。
Ø alignMode Flash显示矩形区域的对齐方式基准位置。
² 0 绝对坐标
² 1 左对齐
² 2 右对齐
² 3 底部对齐
² 4 顶部对齐
² 5 对齐至左上角
² 6 顶部居中对齐
² 7 对齐至右上角
² 8 对齐至左下角
² 9 底部居中对齐
² 10 对齐至右下角
² 11 &, nbsp; 居中对齐
Ø Left Flash显示矩形区域左边的坐标值。
Ø Top Flash显示矩形区域顶边的坐标值。
Ø width Flash显示矩形区域右边的坐标值。
Ø height Flash显示矩形区域底部的坐标值。
例:
//设置Flash的窗体
VGS2.SetFlashRect(”LOGO”, 11, 0, 0, 400, 400);
设置Flash是否可见。
参数:
Ø flashName Flash文件的别名,用于索引该Flash文件。
Ø status 是否可见。true为可见,false位隐藏。
例:
//设置Flash可见。
VGAS2.SetFlashCtrlVisibility("LOGO", true);
设置Flash播放状态。
参数:
Ø flashName Flash文件的别名,用于索引该Flash文件。
Ø status 播放状态。
² 0 暂停播放
² 1 从暂停点开始播放
² 2 停止并跳转到第一帧
例:
//设置Flash暂停播放
VGS2.SetFlashPlayStatus("LOGO", 0);
SetFlashCurrentFrame(flashName, frameIndex)
跳转Flash到指定的帧。
参数:
Ø flashName Flash对象名称。
Ø frameIndex 帧编号。
例:
VGS2.SetFlashCurrentFrame(”FLASH01”, 10);
2.11系统回调及相关函数
把网络上指定的N3D文件先下载到内存,但加载到场景。这样可以在播放上一个场景时在后台下载其他场景。
参数:
Ø strN3DFileName 网络上的N3D文件名称。
Ø N3DName N3D文件的代名词。
例:
//下载下一个N3D文件
VGS2.PreloadN3Dfile("Xiaonei.N3D", "Xiaonei");
跳到后台正在加载或者已经加载的N3D场景。加载新的场景之前会释放当前场景的内存。
参数:
Ø N3DName N3D文件的代名词。
例:
//跳到下一个场景
VGS2.GotoN3D("Xiaonei");
LoadN3D文件到场景。
参数:
Ø strN3DFileName 网络上的N3D文件名称。
Ø N3DName N3D文件的代名词。
例:
//加载N3D文件
VGS2.LoadN3DFile("XIZUN.N3D", "XIZUN");
启用鼠标左键按下事件回调函数。默认为禁用。
对应的回调函数签名为:
function VGSMouseDown(LocH, LocV, type, modelUnderLoc);
例:
VGS2.EnableMouseDownCallback();
禁用鼠标左键按下事件回调函数。默认为禁用。
对应的回调函数签名为:
function VGSMouseDown(LocH, LocV, type, modelUnderLoc);
例:
VGS2.DisableMouseDownCallback();
启用鼠标左键抬起事件回调函数。默认为启用。
对应的回调函数签名为:
function VGSMouseUp(LocH, LocV, type, modelUnderLoc);
例:
VGS2.EnableMouseUpCallback();
禁用鼠标左键抬起事件回调函数。默认为启用。
对应的回调函数签名为:
function VGSMouseUp(LocH, LocV, type, modelUnderLoc);
例:
VGS2.DisableMouseUpCallback();
启用鼠标双击事件回调函数。默认为禁用。
对应的回调函数签名为:
function VGSMouseDBClick(LocH, LocV, type, modelUnderLoc);
例:
VGS2.EnableMouseDBClickCallback();
禁用鼠标双击事件回调函数。默认为禁用。
对应的回调函数签名为:
function VGSMouseDBClick(LocH, LocV, type, modelUnderLoc);
例:
VGS2.DisableMouseDBClickCallback();
启用鼠标移动事件回调函数。默认为禁用。
对应的回调函数签名为:
function VGSMouseMove(LocH, LocV, type, modelUnderLoc);
例:
VGS2.EnableMouseMoveCallback();
禁用鼠标移动事件回调函数。默认为禁用。
对应的回调函数签名为:
function VGSMouseMove(LocH, LocV, type, modelUnderLoc);
例:
VGS2.DisableMouseMoveCallback();