krpano threeJS插件

krpano ThreeJS Plugin threejs_krpanoplugin.jsVersion 1.22

  • 这是在 krpano 中使用 ThreeJS 3D 图形库的插件。
  • 使用该插件,可以将三维模型(glb、gltf、obj+mtl 文件)用作 krpano 热点。这些热点可以与 krpano 内容交互和交叉,并自动支持所有 krpano 热点控件和事件。
  • 此外,该插件还支持许多使用 3D 内容的辅助功能:
  • 该插件直接集成并嵌入了ThreeJS库及其部分附加模块。这种集成可大大加快加载速度,并提供更好的浏览器兼容性。
  • 除了插件提供的功能外,还可以通过 Javascript 直接访问 ThreeJS 库并执行自定义任务。
  • 为实现更多自定义功能,并帮助了解集成工作原理,该插件提供了开源版本。


文档主题:

(更多…)

plugin元素说明文档

<plugin>

更新 2025.2.7 krpano 1.22.3

 

关于 <plugin> 元素:

  •  <plugin> 元素和 <layer> 元素本质上是同一元素
  • 仅仅名字不同而已。
  • 任何时候都可以使用<layer>或<plugin> 或反向来处理相同的元素。在静态xml代码和动态Action或Javascript代码中,是相同的。
  • 术语 ‘plugin(插件)’ 来自krpano的老版本,其中的插件主要用于包含用于进一步交互的外部工具。
  • 如今,该元素提供了更多的布局功能,因此较新的术语“layer(图层)”更好地描述了它的行为、
  • 因此建议<plugin>仅在包含使用附加功能扩展的krpano插件(如SoundinterfaceWebVR插件)时使用,<layer>则使用在所有与布局相关的元素。
  • 以下是关于<plugin> 的特殊用法,该设置仅与xml解析有关:
    • 当加载一个 krpano Javascript Plugin 并在xml文件中定义api属性时,将立即创建具有该名称的全局 krpano 插件对象。
    • 插件的item元素将获得与 api属性中设置中相同的名称。
    • 这允许在 xml 解析期间使用短的 api 名称设置指向该插件的链接。
    • 例子 – 当插件定义如下:
      可以使用api名字链接插件:
      替代完整的插件名称:

languages元素说明文档

<languages>

更新 2025.2.7 krpano 1.22.3

 

languages 变量(元素)是预定义的,但默认情况下为空的 krpano 数组
它可以包任何自定义属性,该属性在 translate() 表达式用于查找当前语言中的单词。

使用例子:

翻译右键菜单中的全屏选项:
一个全屏按钮文本,该文本根据当前语言和当前全屏状态自动更改::

layer/hotspot元素说明文档(1.22)

<layer><hotspot>

更新 2025.2.7 krpano 1.22.3

<layer> 与<hotspot> 是krpano主要的界面交互元素:

  • layer元素基于 2D 屏幕空间,是可用于所有类型的布局元素。可包含图像,文本,按钮,视频,也可以为其他layer创建容器以及添加特殊元素,如嵌入iframe,html代码甚至其他krpano viewer。
  • hotspot元素与layer元素基本相同,但处于全景图/3D空间中。
  • hotspot元素还能绘制多边形或直线。
  • 这两种元素可通过父设置或定义更多layer子元素来组合、堆栈、继承。
  • 从技术上看,layer元素就是HTML元素,hotspot元素可以是HTML元素也可以由WebGL绘制,这取决于 renderer 设置和hotspot的类型(type),以及是否需要进行立体渲染(stereo-rendering )。

目录

(更多…)

if元素说明文档(1.22-1.21)

<if>

更新 2025.2.7 krpano 1.22.3
只有满足条件时,才分析 XML 的特定部分。
if 属性类似,但适用于多个 xml 元素。注意 – 这里有一个限制: <include> 元素始终会被加载/包含,即使条件可能不满足。这是因为include解析是实际xml解析之前的单独初始过程!
<if check=”条件”>
… 其他xml元素 …
</if>
属性名 类型 默认值
check String
用于检查的条件/表达式。
此处使用的变量必须是已定义的变量。

 

cssstyles元素说明文档(1.21)

<cssstyles>

更新 2025.2.7 krpano 1.22.3

直接在 xml 文件中定义任意CSS 样式。

等同于html 文件中包含.css文件或html文件<head>部中定义的<style>元素。

定义CSS样式/类,是为在具有cssclass设置的textfield或图层/容器中使用它们。

语法:

 

注意:

  • krpano不解析<cssstyles>元素内的内容,但因为需要在xml进行定义,所以xml语法规则以及若干xml实体自动解析过程仍然生效。
  • 为了避免任何的xml语法规则和xml实体解析,需将整个数据内容放在 <![CDATA[以及]]> 内。这样所有字符和xml标签都不会被解析。
  • 例子 – 使用 CDATA 避免xml解析:
<cssstyles><![CDATA[

]]></cssstyles>

krpano本地/离线使用

version 1.22

如今,很多浏览器对于在本地运行互动内容时会有诸多限制。“本地”意味着直接在浏览器中打开来自本地文件系统的html文件。在浏览器的地址栏中显示的是file:// 路径

在尝试运行一个本地html文件时,浏览器可能会限制脚本去访问其他本地文件,因为这个原因,动态加载xml、js或图片可能无法成功。

(更多…)

debug元素说明文档

<debug>

更新 2025.2.7 krpano 1.22.3

跟踪/输出xml解析过程中的信息。
注意 – 调错信息只有在debugmode设置启用时可显示!
<debug trace=”…” />
属性名 类型 默认值
trace String
任意数字、文本或表达式