krpano学习笔记,端口修改,krpano二次开发文档,krpano三维div信息展示,krpano热点显示文字
一、修改krpano端口
.\tour_testingserver -port=8085 ,修改端口,指定启动时的端口


二、给krpano添加div展示信息
和场景一起转动,不是layer,layer是固定的,没啥用。

主要是onloaded=里面的1个方法。
<action name="add_all_the_time_tooltip_info">txtadd(tooltipname, 'tooltip_', get(name));addplugin(get(tooltipname));txtadd(plugin[get(tooltipname)].parent, 'hotspot[', get(name), ']');set(plugin[get(tooltipname)].url,'%SWFPATH%/plugins/textfield.swf');set(plugin[get(tooltipname)].align,top);set(plugin[get(tooltipname)].edge,bottom);set(plugin[get(tooltipname)].x,0);set(plugin[get(tooltipname)].y,0);set(plugin[get(tooltipname)].autowidth,true);set(plugin[get(tooltipname)].autoheight,true);set(plugin[get(tooltipname)].vcenter,true);set(plugin[get(tooltipname)].background,true);set(plugin[get(tooltipname)].backgroundcolor,0x000000);set(plugin[get(tooltipname)].roundedge,5);set(plugin[get(tooltipname)].backgroundalpha,0.65);set(plugin[get(tooltipname)].padding,5);set(plugin[get(tooltipname)].border,false);set(plugin[get(tooltipname)].glow,0);set(plugin[get(tooltipname)].glowcolor,0xFFFFFF);set(plugin[get(tooltipname)].css,'text-align:center; color:#FFFFFF; font-family:MicrosoftYahei; font-size:30px;');if(device.mobile,set(plugin[get(tooltipname)].css,'text-align:center; color:#FFFFFF; font-family:MicrosoftYahei; font-weight:bold; font-size:30px;'););set(plugin[get(tooltipname)].textshadow,0);set(plugin[get(tooltipname)].textshadowrange,6.0);set(plugin[get(tooltipname)].textshadowangle,90);if(text == '' OR text === null,copy(plugin[get(tooltipname)].html,scene[get(linkedscene)].title),copy(plugin[get(tooltipname)].html,text));set(plugin[get(tooltipname)].enabled,false);set(plugin[get(tooltipname)].html,'<div class="divt"><table><tr><div class='titlediv'>1</div></tr><tr><td>1:</td> <td>1</td> </tr><tr><td>1:</td> <td>1</td> </tr><tr><td>1:</td> <td>1</td> </tr><tr><td>1:</td> <td>1</td> </tr></table></div>');set(plugin[get(tooltipname)].vlookat,45></action>
三、krpano热点文字显示

add_all_the_time_tooltip_info 代码在上一节点。
<scene name="scene_2lowsecrit" title="" onstart="" thumburl="panos/s/thumb.jpg" lat="" lng="" alt="" heading="">....<hotspot name="spot1619696682" style="skin_hotspotstyle_div" ath="3.18" atv="20.579" depth="1300.0" hlookat="110"linkedscene="scene_2lowsecrit" linkedscene_hoffset="0.0" use3dtransition="true"onloaded="add_all_the_time_tooltip_info();do_crop_animation_div(64,64, 60); "/></scene>
四、其它常用操作
1.增加热点的目的只是想画一个箭头切换一下场景,打开"krpano Tools.exe",打开软件主界面,点击左上方按钮“load xml”,载入vtour文件夹中的tour.xml文件就可以在软件中看到刚刚制作的场景了。

2.可以通过代码写入热点
<hotspot name="mytext1"type="text"zoom="true"ath="4.642" atv="24.049" edge="center"distorted="true"renderer="webgl"html="[span]DMI[/span]"css="font-family:Arial; font-size:14px; color:#fff;"vcenter="false"padding="5"wordwrap="true"bg="true"bgcolor="0x000000"bgalpha="0.6"bgborder="0"bgroundedge="0"bgshadow=""txtshadow=""mergedalpha="true"oversampling="1.0"mipmapping="false"onautosized=""onover="tween(alpha,1);tween(scale,0.9);"onout="tween(alpha,1);tween(scale,1);"onclick="action(open,container1);"/>
3.layer属性详解
<layer name="..." 定义引入的元素名称type="image" 引入元素的类型,可以为image、container、text(textfield),container为容器,可在容器内继续引入多个媒体元素url="..." 引入元素的路径(支持格式:SWF, JPG, PNG, GIF.)html="" 显示文字时的内容keep="false" 是否在跳入新场景时仍然保留显示该元素parent="" 设置父容器名称,可以直接是 plugin的name,也可以是全称:parent="layer[name]"或parent="hotspot[name]"alturl="" #引入元素的路径(支持格式:SWF, JPG, PNG, GIF.),只在html5浏览器使用devices="all" 设置显示的设备类型(详见设备列表)visible="true" 设置插入元素是否可见enabled="true" 设置插入元素是否接受鼠标事件handcursor="true" 鼠标移动该元素上时,是否变为小手maskchildren="false" 设置是否将子控件变为蒙板,设置为TRUE后,除子控件范围显示外,子控件边框与父控件边框之间区域将不显示scalechildren="false" 设置是否子空间跟随父控件一同缩放zorder="" 插入元素的次序索引,可以是字符也可以是数字,html5输出必须是0-100整数capture="true" 只是该元素接受事件,false时子元素也可接受事件children="true" 启用当前元素的子元素来接收鼠标事件。preload="false" 预加载,在加载pano之前先加载图层/插件的url,然后执行任何操作。blendmode="normal" 混合/混合模式( normal, layer, screen, add, subtract, difference, multiply, overlay, lighten, darken, hardlight, invert)仅flashstyle="" 调用已在文件中定义好的style的名称align="" 元素在屏幕对齐方式,lefttop, left, leftbottom, top, center, bottom, righttop, right, rightbottom (见示意图)edge="" 元素的边缘或描点层对齐方式,lefttop, left, leftbottom, top, center, bottom, righttop, right, rightbottom (见示意图)x="" 对齐边界到对齐点的X横向距离y="" 对齐边界到对齐点的y横向距离ox="" 偏移oy="" 偏移rotate="0.0" 插入元素显示时旋转度数width="" 插入元素的显示宽度(prop:自适应)height="" 插入元素的显示高度minwidth="0"maxwidth="0"minheight="0"maxheight="0"autowidth="false" 根据内容自适应宽度autoheight="false" 根据内容自适应高度scale="1.0" 插入元素的缩放比例pixelhittest="false" 仅flashsmoothing="true" 平滑 仅flashaccuracy="0" 精度alpha="1.0" 插入元素的不透明度autoalpha="false" 自动透明度usecontentsize="false" 满画布 仅flashscale9grid="" 定义9格网格(scale9grid="x-position|y-position|width|height|prescale*")crop="" 定义元素坐标及宽高 crop="x-position|y-position|width|height"onovercrop="" 设置元素鼠标移到上方后的坐标及宽高ondowncrop="" 设置元素鼠标按下状态后的坐标及宽高mask="" 遮罩 仅flasheffect="" 位图效果适用于层/插件的形象 仅flashbackground="" 可以设置false 去掉背景bgcolor="0x000000" type="container"状态下的背景颜色,非container状态下无效bgalpha="0.0" 背景不透明度bgborder="0" (bgborder="widths color alpha")边框bgroundedge="0" 圆角bgshadow="" (基本:bgshadow="xoffset yoffset blur color alpha";高级:gshadow="xoffset yoffset blur spread color alpha inset, ...")阴影bgcapture="false" 是否捕抓在背景容器上事件(type="container"状态下生效)onover="" 鼠标在经过上方时执行动作onhover="" 鼠标停在上方时执行动作onout="" 鼠标停移出范围时时执行动作onclick="" 鼠标停点击时执行动作ondown="" 鼠标按下时执行动作onup="" 鼠标按键松开时执行动作onloaded="" 加载元素完成后执行动作/>
4.增加热点事件
<!-- 定义一个动作 -->
<!-- 打开关闭图片 -->
<action name="open">
<!-- 这个语法的意思就是把第一个参数的visible(显示)设置为true -->
set(plugin[%1].visible,true);
tween(plugin[%1].alpha,1);
</action><action name="close">
set(plugin[%1].visible,false);
</action><hotspot name="mytext1"type="text"zoom="true"ath="4.642" atv="24.049" edge="center"distorted="true"renderer="webgl"html="[span]DMI[/span]"css="font-family:Arial; font-size:14px; color:#fff;"vcenter="false"padding="5"wordwrap="true"bg="true"bgcolor="0x000000"bgalpha="0.6"bgborder="0"bgroundedge="0"bgshadow=""txtshadow=""mergedalpha="true"oversampling="1.0"mipmapping="false"onautosized=""onover="tween(alpha,1);tween(scale,0.9);"onout="tween(alpha,1);tween(scale,1);"onclick="action(open,container1);"/><!-- 司机室右侧面板上ATP旋转开关 --><hotspot name="mytext2"type="text"zoom="true"ath="99.563" atv="34.140" edge="center"......onclick="action(open,container2);"这里声明点击的动作 其中container2 是下边图片图层的名字/><layername="container2"type="image" 定义图片图层url="图片的地址"width="100%"height="100%"maskchildren="true"visible="0"children="true"background="true" bgcapture="true" enabled="true"bgcolor="0x000000" bgalpha="0.8"onclick="action(close,get(name));" // 点击这个图片就可以隐藏图片>
先就记这些,欢迎关注。
相关文章:
krpano学习笔记,端口修改,krpano二次开发文档,krpano三维div信息展示,krpano热点显示文字
一、修改krpano端口 .\tour_testingserver -port8085 ,修改端口,指定启动时的端口 二、给krpano添加div展示信息 和场景一起转动,不是layer,layer是固定的,没啥用。 主要是onloaded里面的1个方法。 <action name…...
Jenkins 给任务分配 节点(Node)、设置工作空间目录
Jenkins 给任务分配 节点(Node)、设置工作空间目录 创建 Freestyle project 类型 任务 任务配置 Node 打开任务-> Configure-> General 勾选 Restrict where this project can be run Label Expression 填写一个 Node 的 Label,输入有效的 Label名字&#x…...
深入解析iOS视频录制(二):自定义UI的实现
深入解析 iOS 视频录制(一):录制管理核心MWRecordingController 类的设计与实现 深入解析iOS视频录制(二):自定义UI的实现 深入解析 iOS 视频录制(三):完…...
跳表的C语言实现
跳表(Skip List)是一种基于链表的动态数据结构,用于实现高效的查找、插入和删除操作。它通过引入多级索引来加速查找过程,类似于多级索引的有序链表。跳表的平均时间复杂度为 O(logn),在某些场景下可以替代平衡树。 以…...
Java Web开发实战与项目——Spring Security与权限管理实现
Web应用中,权限管理是系统安全的核心部分,确保用户只能访问他们被授权的资源。Spring Security是Spring框架中的一个安全框架,它提供了强大的认证和授权功能,用于实现用户认证和权限控制。本章节将详细讲解如何使用Spring Securit…...
单元测试方法的使用
import java.util.Date; import org.junit.Test; /** java中的JUnit单元测试* * 步骤:* 1.选中当前项目工程 --》 右键:build path --》 add libraries --》 JUnit 4 --》 下一步* 2.创建一个Java类进行单元测试。* 此时的Java类要求:①此类是公共的 ②此类提供一个公共的无参…...
VScode内接入deepseek包过程(本地部署版包会)
目录 1. 首先得有vscode软件 2. 在我们的电脑本地已经部署了ollama,我将以qwen作为实验例子 3. 在vscode上的扩展商店下载continue 4. 下载完成后,依次点击添加模型 5. 在这里可以添加,各种各样的模型,选择我们的ollama 6. 选…...
flink写入hdfs数据如何保证幂等的?
在 Flink 中使用 HDFS Connector 将数据写入 HDFS 时,保证幂等性是一个重要的需求,尤其是在数据可靠性要求较高的场景下。以下是详细介绍如何通过 Flink 和 HDFS 的特性以及一些设计上的优化来实现幂等性。 一、Flink 的 Checkpoint 机制 Flink 的 Chec…...
newgrp docker需要每次刷新问题
每次都需要运行 newgrp docker 的原因: 当用户被添加到 docker 组后,当前会话并不会立即更新组信息,因此需要通过 newgrp docker 切换到新的用户组以使权限生效 如果不想每次都手动运行 newgrp docker,可以在终端中配置一个自动刷新的脚本。…...
LM_Funny-2-01 递推算法:从数学基础到跨学科应用
目录 第一章 递推算法的数学本质 1.1 形式化定义与公理化体系 定理1.1 (完备性条件) 1.2 高阶递推的特征分析 案例:Gauss同余递推4 第二章 工程实现优化技术 2.1 内存压缩的革新方法 滚动窗口策略 分块存储技术 2.2 异构计算加速方案 GPU并行递推 量子计…...
WDM_OTN_基础知识_波分站点与组网类型
为了便于理解,我们用高铁来打个比方,这是郑州与武汉的高铁,中间经过了许昌孝感等很多个站点,郑州武汉作为始发站和终点站,所有人员都是上车或下车,而许昌等中间站点,既有人员上下车,…...
机器视觉--索贝尔滤波
引言 在图像处理领域,边缘检测是一项至关重要的任务,它能够帮助我们识别图像中不同区域的边界,为后续的目标识别、图像分割等操作奠定基础。索贝尔滤波(Sobel Filter)作为一种经典的边缘检测算法,因其简单…...
网络分析仪E5071C的回波损耗测量
回波损耗(Return Loss)是评估射频/微波元件(如滤波器、天线、电缆等)信号反射特性的关键参数,反映端口阻抗匹配性能。E5071C矢量网络分析仪(VNA)通过以下步骤实现高精度回波损耗测量:…...
力扣-二叉树-98 验证二叉搜索树
思路 第一个特性,二叉搜索树的中序遍历是有序的,第二个特性,利用两个指针判断大小关系 代码 class Solution { public:TreeNode* pre NULL;bool isValidBST(TreeNode* root) {if(root NULL) return true;bool left isValidBST(root->…...
【动态规划】详解 0-1背包问题
文章目录 1. 问题引入2. 从 dfs 到动态规划3. 动态规划过程分析4. 二维 dp 的遍历顺序5. 从二维数组到一维数组6. 一维数组的遍历次序7. 背包的遍历顺序8. 代码总结9. 总结 1. 问题引入 0-1 背包是比较经典的动态规划问题,这里以代码随想录里面的例子来介绍下。总的…...
【Java线程池与线程状态】线程池分类与最佳实践
解析Java线程池与线程状态变化,结合运行机制与业务场景对照,帮助形成系统性知识。 一、线程池核心要素(五维模型) 采用「参数配置→处理流程→工作模式」三层递进结构 核心参数(线程池DNA) corePoolSiz…...
【小白学AI系列】NLP 核心知识点(八)多头自注意力机制
文章目录 **多头自注意力机制(Multi-Head Self-Attention)****核心概念** **1. 自注意力机制(Self-Attention)****2. 多头机制(Multi-Head Attention)****3. 为什么要用多头注意力机制?****4. 公…...
学习笔记——word中图目录、表目录 标题引用
目标1: 建立——图1-1 引用——图1-1 1在word文档中的引用——>插入题注 新建标签,然后命名为“图1-“。 点击确认,即可插入如图所示 图1- 1 春天 需要把图1-和后面那个1中间的空格删除,即 图1-1 春天 2怎么去引用这个“…...
3.3 Hugging Face Transformers核心功能模块深度解析
Hugging Face Transformers核心功能模块深度解析 一、模块化架构总览 #mermaid-svg-wxTV5vrEo7Y57IlW {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-wxTV5vrEo7Y57IlW .error-icon{fill:#552222;}#mermaid-svg-wxT…...
linux中设置脚本定时执行ntp命令同步时间
目录 一、背景二、过程1.到系统目录2.安装ntp3.创建文件夹4.创建脚本文件5.提升脚本文件权限6.设置执行时间:7.检查是否设置了执行器(执行后输出的内容为执行器中的定时执行内容)8.执行脚本文件9.查看日志文件,是否执行成功 三、总…...
Java 语言特性(面试系列2)
一、SQL 基础 1. 复杂查询 (1)连接查询(JOIN) 内连接(INNER JOIN):返回两表匹配的记录。 SELECT e.name, d.dept_name FROM employees e INNER JOIN departments d ON e.dept_id d.dept_id; 左…...
多模态2025:技术路线“神仙打架”,视频生成冲上云霄
文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...
如何在看板中有效管理突发紧急任务
在看板中有效管理突发紧急任务需要:设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP(Work-in-Progress)弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中,设立专门的紧急任务通道尤为重要,这能…...
在Ubuntu中设置开机自动运行(sudo)指令的指南
在Ubuntu系统中,有时需要在系统启动时自动执行某些命令,特别是需要 sudo权限的指令。为了实现这一功能,可以使用多种方法,包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法,并提供…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...
html-<abbr> 缩写或首字母缩略词
定义与作用 <abbr> 标签用于表示缩写或首字母缩略词,它可以帮助用户更好地理解缩写的含义,尤其是对于那些不熟悉该缩写的用户。 title 属性的内容提供了缩写的详细说明。当用户将鼠标悬停在缩写上时,会显示一个提示框。 示例&#x…...
JS手写代码篇----使用Promise封装AJAX请求
15、使用Promise封装AJAX请求 promise就有reject和resolve了,就不必写成功和失败的回调函数了 const BASEURL ./手写ajax/test.jsonfunction promiseAjax() {return new Promise((resolve, reject) > {const xhr new XMLHttpRequest();xhr.open("get&quo…...
Webpack性能优化:构建速度与体积优化策略
一、构建速度优化 1、升级Webpack和Node.js 优化效果:Webpack 4比Webpack 3构建时间降低60%-98%。原因: V8引擎优化(for of替代forEach、Map/Set替代Object)。默认使用更快的md4哈希算法。AST直接从Loa…...
免费数学几何作图web平台
光锐软件免费数学工具,maths,数学制图,数学作图,几何作图,几何,AR开发,AR教育,增强现实,软件公司,XR,MR,VR,虚拟仿真,虚拟现实,混合现实,教育科技产品,职业模拟培训,高保真VR场景,结构互动课件,元宇宙http://xaglare.c…...
FFmpeg:Windows系统小白安装及其使用
一、安装 1.访问官网 Download FFmpeg 2.点击版本目录 3.选择版本点击安装 注意这里选择的是【release buids】,注意左上角标题 例如我安装在目录 F:\FFmpeg 4.解压 5.添加环境变量 把你解压后的bin目录(即exe所在文件夹)加入系统变量…...
