[AutoVue开发手册]第一篇——自定义Applet脚本

什么是 Applet?

Applet是采用Java编程语言编写的小应用程序,该程序可以包含在 HTML页中,与在页中包含图像的方式大致相同。

含有Applet的网页的HTML文件代码中部带有 <applet> </applet> 这样一对标记,当支持Java的网络浏览器遇到这对标记时,就将下载相应的小应用程序代码并在本地计算机上执行该Applet。

引入 AutoVue Web Version

AutoVue Web Version (详情)在页面的引用也是通过 <applet></applet> 标签来完成,具体代码如下(AutoVue的安装和服务器搭建过程省略):

<!--AutoVue引入开始-->
<Applet
  <!--NAME不是必须的,但是最好给上-->
  NAME="JVue"
  <!--后台JAVA代码中,Applet类名,不需要更改-->
  CODE="com.cimmetry.jvue.JVue"
  <!--这个属性定义了服务器中jvue.jar、jlogl.jar以及gluegen-rt.jar文件的位置,浏览器将会在这个位置下载这些文件。一般服务器搭建好了之后,这个属性会自动生成,不需要我们手动更改-->
  CODEBASE="http://www.webserver.com/jVue"
  <!--需要的jar包的名称,不需要更改-->
  ARCHIVE="jvue.jar,jogl.jar,gluegen-rt.jar"
  <!--可选的定义大小的参数-->
  HSPACE="0" VSPACE="0"  
  WIDTH="100%" HEIGHT="100%"
  <!--MAYSCRIPT参数是必须的,它允许Applet对浏览器的session进行读写-->
  MAYSCRIPT>

  <!--EMBEDDED参数,设置是否将Applet嵌入到网页中,true代表嵌入,false代表不嵌入,将会在独立的窗口中显示-->
  <PARAM NAME="EMBEDDED" VALUE="false">

  <!--VERBOSE参数是可选的,当设为true的时候,Applet的运行时诊断结果将会输出在浏览器的Java控制台中-->
  <PARAM NAME="EMBEDDED" VALUE="false">

   <!--FILENAME参数,设置Applet打开的时候默认打开的文件,如果为空,则不打开任何文件-->
  <PARAM NAME="EMBEDDED" VALUE="http://www.webserver.com/jVue/samples/acad12.dwg">

  <!--JVUESERVER参数,AutoVue服务器地址列表,用分号分隔-->
  <PARAM NAME="JVUESERVER" VALUE="socket://www.jvuesever.com:5099;http://www.webserver.com/
servlet/VueServlet">

  <!--浏览器不支持Java时的报错信息-->
  <p><b>Requires a browser that supports Java.</b></p>
  <PARAM NAME="COLLABORATION" VALUE="INIT:CSI_ClbSessionID=987654321;CSI_ClbDMS=dmsIndex;CSI_ClbSessionData=123456789;CSI_ClbSessionSubject=Subject;CSI_ClbSessionType=public|private;CSI_ClbUsers=user1,user2,...">
</Applet>
<!--AutoVue引入结束-->

基于AutoVue编写JS脚本

当我们将AutoVue插件集成在网页中的时候,我们可以通过JavaScript来访问JVue类中的所有公共API。


常用的函数方法

方法注释
createMobilePack (MobilrPackOptions opts)根据特定的参数,生成移动包
setFile (String url)设置将要在AutoVue中浏览的文件
setCompareFile (String url)切换到对比模式,并且将当前文件和指定文件进行对比
setDMSArg (String name,String value)对DMSARGS列表中的参数进行增删改操作
addOverlay (String url)将指定的文件添加为当前文件的覆盖层
printFile (PrintProperties pProps)用指定的options来打印当前文件
printFile (PrintProperties pProps, boolean UseDefaultPrinter)用指定的options来打印当前文件,根据UseDefaultPrinter参数来决定是否提示选择打印机
setMarkupMode (boolean enterMarkupMode)进入或者退出Markup模式
openMarkup (String markupID)打开指定的Markup,如果markupID==”*”,那么所有与当前文档相关的Markup都会被加载。如果打开本地的Markup,将markupID设为”CSI_DocName=markupName“。如果要打开与DMAPI集成的Markup,将markupID设为”CSI_DocID=markupID“.
collaborationInit (String sessionProperties)初始化协作模式的session。sessionProperties-描述协作模式session的字符串,格式同上面的COLLABORATION参数.
collaborationJoin (String sessionProperties)在中途加入协作session。sessionProperties-描述协作模式session的字符串,格式同上面的COLLABORATION参数.
collaborationEnd (String sessionProperties)结束当前的协作session。
corssProbe (String fileName)将指定文件加入到cross-probed文件列表中
closeDocument ()关闭当前文件
import3DFile (String fileName, HMatrix transform)根据指定的文件名和transformation引入3D文件
setGUI (String guiFile)根据指定的GUI文件名,设置GUI.
setPage (int page)根据指定的GUI文件名,设置GUI.
waitForlastMethod ()暂停当前线程,知道最后调用的函数执行完毕
syncMobilePack (MobilePackOptions opts)同步Mobile包

访AutoVue"JavaDocs"


JS脚本Demo

Demo1

利用ONINIT参数,来自动加载文件,同时加载所有相关的Markups,然后打印结果。

<!--这是自定义的JavaScript函数,用来调用AutoVue的API的-->
<script>
<!--Hide script from old browsers
    function myFunction(){
    //Applet对象
    var myApp=window.document.applets["JVue"];
    //打开指定的文件
    myApp.setFile('http://www.machine.com/jVue/sample/acad12.dwg');
    //加载所有Markups
    myApp.openMarkup('*');
    //创建一个PrintProperties类
    var pPropsClass=myApp.getClass("com.cimmerty.common.PrintProperties");
    //实例化PrintProperties类
    var pProps=pPropsClass.newInstance();
    //为用户加载个人设置
    pProps.setProfile(myApp.getActiveVueBean().getProfile());
    //设置Header文本
    pProps.getHeaders().setTopCenterText("My Header");
    //设置 适应页面 参数(PrintOptions.SCALING_FIT==0)
    pProps.getOptions().setScaling(0);
    //打印文本周边区域
    pProps.getOptions().setArea(0);
    //用默认打印机打印文档
    myApp.printFile(pProps,true);
    //更多...
    }
-->
</script>

<!--这是Html部分-->
<!--引入AutoVue开始-->
<APPLET
    NAME="JVue"
    CODE="com.cimmetry.jvue.JVue.class"
    CODEBASE="http://www.webserver.com/JVue.class"
    ARCHIVE="jvue.jar;jogl.jar;gluegen-rt.jar"
    HSPACE="0" VSPACE="0" WIDTH="100%" HEIGHT="100%"
    MYSCRIPT>
    <PARAM NAME="EMBEDDED" VALUE="true">
    <PARAM NAME="VERBOSE"  VALUE="false">
    <PARAM NAME="ONINT"  VALUE="myFunction();">
    <PARAM NAME="JVUESERVER"   VALUE="__SERVLETHOST__">
    <p><b>Requires a browser that supports Java.</b></p>
</APPLET>
<!--引入AutoVue结束-->

Demo2
还没做好

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值