@realsee/dnalogel
Version:
1,117 lines (756 loc) • 40.2 kB
Markdown
# CHANGELOG
## 3.30.4
- fix(blink): 修复标签闪烁问题
## 3.30.3
- doc(blink): 添加example
## 3.30.2
- doc(blink): 添加注释
## 3.30.1
- fix(ModelMakerPlugin): typing 优化
## 3.30.0
- feat(*): 兼容 five@6.0.0-alpha.74 及大于 74 的版本
## 3.29.9
- fix(ModelMakerPlugin): 修复 3.28.9 更新导致的 3D标注(box)的标签位置有可能不准确的问题
## 3.29.7
- fix(blink): 支持闪烁不可见的物体
## 3.29.6
- fix(*): 导出 animejs 类型
## 3.29.5
- fix(CSS3DRender): 兼容 five/react
## 3.29.4
- fix(PanoTagPlugin): 导出 `tag.blink` 类型
## 3.29.3
- fix(blink): 修复闪烁函数 blink 在处理一些有透明度的复杂模型时,第二次闪烁异常的问题
## 3.29.2
- fix(ModelMakerPlugin): 修复 item 的各种事件没有触发的 bug
## 3.29.1
- chore(ModelMakerPlugin): 修改属性访问权限。
## 3.29.0
- feat(PanoTagPlugin): 支持标签闪烁:`plugin.blinkTagById(id, animeParams)` 和 `tag.blink(animeParams)`
## 3.28.11
- fix(PanoTagPlugin): 修复部分标签无法加载的bug(我是啥比
## 3.28.10
- fix(ModelMakerPlugin): 修复区域标注(prism)的 z-fighting 问题
## 3.28.9
- fix(ModelMakerPlugin): 修复包含旋转数据的 3D标注(box)加载位置不准确的问题
## 3.28.8
- fix(PointSelector): 优化点击逻辑
## 3.28.7
- fix(PanoTagPlugin): 兼容 tag.stickType 没有时标签 config 的计算逻辑。
## 3.28.6
- fix(PointSelector): 修复 enable 时,一些状态没有重置的问题。
## 3.28.5
- fix(Object3DHelper): 修复一个 `Cannot read properties of undefined` 的报错
## 3.28.4
- fix(PanoTagPlugin): 修复 tag 的一些 events 没有触发的问题。
## 3.28.3
- fix(PanoTagPlugin): 修复 tag.id 改变后,tag 上的方法无法执行的问题
## 3.28.2
- chore: 发布 CHANGELOG
## 3.28.1
- change(PointSelector): 修改射线碰撞半径 0.01 => 0.02
## 3.28.0
- feat(PanoTagPlugin): 新增 `plugin.changePositionById(id, position)` 和 `tag.changePosition(position)`
## 3.27.10
- fix(PanoTagPlugin): 兼容 five/react
## 3.27.9
- fix(Sculpt): 修复 `item.off()` 不生效的问题
- fix(Sculpt): 修复 `plugin.clear()` 清除不干净的问题
- feat(FiveDomEvents): 支持设置不在场景中的物体不触发事件
## 3.27.8
- change(PanoMeasurePlugin): 右键不退出测量
## 3.27.7
- fix(PointSelector): 兼容点云场景
## 3.27.6
- fix(PanoTagPlugin): 优化&修复标签自动展开时,其他标签被动收起的逻辑。
## 3.27.5
- fix(PanoTagPlugin): 修复 `destroyTagById` 执行后,视图没有更新的bug
## 3.27.4
- fix(PanoTagPlugin): 修复 `destroyTagById` 执行后,标签数组缓存没有更新的bug
## 3.27.3
- fix(PanoTagPlugin): 修复 contentTypeConfig 中,`ModelLike` 和 `Mapview` 等模型态 mode 配置同时存在时,会出现配置相互覆盖而不合并的问题。
## 3.27.2
- fix(PanoTagPlugin): 回滚 3.27.0 中的第二个 feature
## 3.27.1
- fix(PanoTagPlugin): 修复 3.27.0 中 `initialState` 的bug
## 3.27.0
- feat(PanoTagPlugin): 支持移动屏幕时自动收起标签
- feat(PanoTagPlugin): `initialState`支持不同five mode
## 3.26.0
- change(PanoTagPlugin): contentTypeConfig 移除对自定义标签类型的 Mixin-[type] 支持,直接使用 type 作为 key 即可
## 3.25.10
- fix(PanoTagPlugin): contentTypeConfig 支持任意自定义标签。
## 3.25.9
- fix(PanoTagPlugin): 修复 `changeConfig`, `changeContentTypeConfig` 修改影响标签展示的配置时,可能不会立即生效的问题。
- fix(ObjectHelper): `ScaleController` 添加 `setScale` 方法。
## 3.25.8
- fix(PanoTagPlugin): 兼容 tailwind
## 3.25.7
- fix(PanoVideoPlugin): shader 修复
- chore(PanoTagPlugin): `Tag` 类型优化
## 3.25.6
- chore(PanoTagPlugin): 导出 `ContentTypeMapInterface` 类型
## 3.25.5
- chore(Sculpt): 优化 `Sculpt` ts类型
## 3.25.4
- fix(Object3DHelper): 修复模型位移组件在特殊边界条件下位移不准确的问题。
## 3.25.3
- fix(*): 修复插件 `load()` 时,数据校验检测不准确的问题。
## 3.25.2
- chore(Sculpt): 导出 type `SculptData`
## 3.25.1
- chore(Sculpt): 导出 SculptPlugin
## 3.25.0
- feat(MovePlugin): 模型漫游插件支持 `show()` `hide()` 路线
- fix(ModelMakerPlugin): `load()`后立即应用当前`state`
- fix(ModelMakerPlugin): 修复`clear()`没有清除干净的bug
## 3.24.3
- fix(ModelMakerPlugin): 修复区域标注 prism 在特殊情况下走点后 标签会隐藏的问题
## 3.24.2
- fix(ModelMakerPlugin): 修复模型隐藏时,仍然可以点击的问题
## 3.24.1
- fix(ModelMakerPlugin): 修复 Box 名称无法显示的问题 以及 没有name字段时会显示undefined的问题
## 3.24.0
- feat(PanoTagPlugin): 滑动屏幕时的性能优化,当前点位不可能看到的标签不会有任何多余的计算。
- fix(PanoTagPlugin): 修复 3.23.3 中手贱引入的 bug。
- fix(ModelMakerPlugin): 修复 disable 函数报错问题。
## 3.23.3
- fix(ModelMakerPlugin): 修复循环引用的问题。
- feat(ModelMakerPlugin): 添加函数`getItemById()`用来获取模型Item。
## 3.23.2
- fix(ModelMakerPlugin): 多边形支持hover态。
- fix(FiveDomEvent): 修复 unHover 不会触发的问题。
## 3.23.1
- fix(ModelMakerPlugin): 模型态标注标签支持碰撞检测。
## 3.23.0
- feat(ModelMakerPlugin): 新增默认UI, 使用 `plugin.registerTagRenderer` 可自定义UI。
## 3.22.0
- feat: add `ModelMakerPlugin`
## 3.21.2
- fix(PanoMeasurePlugin): 修复`disable()`后仍能点击的问题。
## 3.21.1
- fix(*): audio.js 支持 SSR
## 3.21.0
- feat: 新增 `Sculpt`, [文档](../plugins/src/Sculpt/README.md)
## 3.20.7
- fix(PanoMeasurePlugin): 彻底修复插件在序列化时会报错的问题 [相关issue](https://github.com/mrdoob/three.js/issues/26598)。
## 3.20.6
- fix(PanoMeasurePlugin): 修复插件`disable`后,再次`enable`时,新手引导不展示的问题。
- fix(PanoMeasurePlugin): 修复插件在序列化时会报错的问题 [相关issue](https://github.com/mrdoob/three.js/issues/26598)。
- chore(PanoMeasurePlugin): 移除废弃的类型声明。
## 3.20.5
- fix(GuideLinePlugin): 修复数据中没有id时,无法生成多条路线的bug
- change(GuideLinePlugin): dispose后可以正常调用load函数
- feat(GuideLinePlugin): 内置默认箭头图片
## 3.20.4
- feat(MovePlugin): load 参数 data.path 支持传入坐标点数组。
## 3.20.3
- fix(PanoTagPlugin): 修复部分手机(oppo reno 9)的火狐浏览器中,视频贴片黑屏的问题
## 3.20.2
- fix(PanoTagPlugin): 修复一些特殊情况下,走点后标签点可见性判断错误的问题
## 3.20.1
- fix(PanoTagPlugin): 之前由于性能问题,去除了标签的zIndex策略。现在使展开后的标签的zIndex生效,以解决展开后的标签被其他标签遮挡的问题。
## 3.20.0
- feat(floorplan): 添加 `roomDimensionEnable` 参数, 控制是否展示分间长宽。用`getRoomDimensionText`自定义分间尺寸文案
## 3.19.1
- fix(PanoTagPlugin): 移除视频贴片不可见时的多余逻辑
## 3.19.0
- feat(PanoVideoPlugin): 添加 `unmuteByRenderID(id: string)` 方法来取消静音。
## 3.18.0
- feat(ObjectHelperPLugin): `moveController.moveByMouse()`参数`useFaceNormal`开启时,新增 `fixedFaceNormal` 参数用来设置修正后的用来做重合的 face 法向量
## 3.17.1
- feat(ObjectHelperPLugin): `moveController.moveByMouse()`参数`useFaceNormal`开启时,新增 `alignmentVector` 参数用来设置需要和面片法向重合的物体本地向量,默认使用 Y 轴重合。
## 3.17.0
- feat(ObjectHelperPLugin): `moveController.moveByMouse()` 新增 `{ useFaceNormal?: boolean }` 参数用来控制物体放置时,是否考虑面片的法线方向,默认为 `false`
- update(ObjectHelperPLugin): BoundingBox 边框线关闭 `depthTest`
- fix(ObjectHelperPLugin): 修复controller是否启用的判断逻辑错误的问题
## 3.16.2
- fix(ObjectHelperPLugin): 修复关闭 rotateHelper 时,放置物体会触发走点的问题
## 3.16.1
- fix(GuildLinePlugin): `skip_group` 配置移动到 `panorama_style` 中
## 3.16.0
- feat(GuildLinePlugin): 支持设置 `skip_group: boolean` 来选择是否跳过全景点位,默认为 `true`
## 3.15.0
- feat(ObjectHelperPLugin): 支持设置 `moveHelper` x/y/z轴是否开启
## 3.14.2
- chore(ObjectHelperPLugin): 优化`addObject3DHelper`方法的返回类型
## 3.14.1
- fix(GuildLinePlugin): 修复路线箭头颜色混合不正确的问题
## 3.14.0
- feat(GuildLinePlugin): 支持修改 `backgroundClip`,默认为 `border-box`
## 3.13.0
- feat(GuildLinePlugin): 支持修改边框宽度
- fix(GuildLinePlugin): 修复箭头黑边问题
## 3.12.7
- fix(PanoTagPlugin): 修复低版本浏览器非透明图片的黑屏问题
## 3.12.6
- revert: 回滚svelte版本
## 3.12.5
- fix(PanoTagPlugin): 修复商品标签性能问题
## 3.12.4
- fix(PanoTagPlugin): 修复一个内存泄漏的问题
## 3.12.3
- fix(AreaMaker): 优化 `tagShow` / `tagHide` 触发时机
## 3.12.2
- fix(ModalFloorplanPlugin): 修复模型户型图插件实例化时可能会错过设置wrapper时机的问题
## 3.12.1
- fix(FloorplanRanderPlugin): 修复户型雷达图多次调用 `appendTo` 时不生效的bug
## 3.12.0
- feat(CruisePlugin): 支持 `five@6.0` 多work数据
- feat(GuildPlugin): 支持 `five@6.0` 多work数据
- feat(GuildPlugin): 路线默认图片支持低版本浏览器
- feat(PanoTagPlugin): 提供debug方法来关闭碰撞检测: `plugin.debugUtil.closeIntersectRaycaster()`
- fix(PanoTagPlugin): 修复 `changeGlobalConfig` 后 config 计算错误的 bug
## 3.11.0
- feat(AreaMakerPlugin): item 新增事件 `tagShow` / `tagHide`,在标注标签被模型遮挡/不遮挡时触发
## 3.10.3
- fix(CruisePlugin): 修复续播问题
## 3.10.2
- chore(AreaMakerPlugin): resize 使用 `resizeObserver` 的实现方案替代 `iframe` 的实现方案
## 3.10.1
- chore: 兼容 five@6.0.0-alpha.56
## 3.10.0
- feat(AreaMakerPlugin): object_data 新增 `{ visible?: boolean }` 属性,用于控制模型的可见性,默认为 true
## 3.9.0
- feat(PanoVideoPlugin): 添加渐现效果
## 3.8.11
- fix(PanoTagPlugin): 提升在点云场景下的性能
## 3.8.10
- fix(PanoTagPlugin): 兼容 Five 5.x 版本
## 3.8.9
- fix(AreaMakerPlugin): load 时之前的数据没有销毁干净的问题
## 3.8.8
- chore(PanoTagPlugin): 修改默认配置
## 3.8.7
- fix(AreaMakerPlugin): 修复 load 可能不生效的问题
## 3.8.6
- fix(MovePlugin): 修复不能重复播放的问题
## 3.8.5
- fix(PanoTagPlugin): 修复 usePoint 影响到了非自定义标签的问题
## 3.8.4
- fix(PanoTagPlugin): 修复标签在初始化过程中就妄图拿到初始化结果的问题,会导致一些设置了 visibleFiveMode 的标签无法按照预期显示
## 3.8.3
- fix(MovePlugin): 修复一些hook没有正常触发的问题;修复 开始播放/续播 时有延迟的的问题
## 3.8.2
- fix(CruisePlugin): 修复 CruisePlugin 和 MovePlugin 初始化参数无法设置的问题
## 3.8.1
- fix(Object3DHelperPlugin): 修复MoveHelper没有销毁的问题,更改boundingBox计算的逻辑
## 3.8.0
- feat(PanoTagPlugin): registerRenderer 新增 usePoint 参数,用于设置自定义标签是否使用标签点
## 3.7.0
- feat(MovePlugin): 新增 MovePlugin,支持按照指定的路径移动相机
## 3.6.0
- feat(AreaMakerPlugin): 支持通过设置`itemRenderer`属性来自定义标签渲染器
## 3.5.1
- fix(PanoTagPlugin): 修复修改标签position后没有重新计算标签可见性的问题
## 3.5.0
- feat(PanoTagPlugin): 添加 `bindRenderer(currentCententType: string, targetContentType: TagContentType)` 方法,当标签的 ContentType 为 currentCententType 时,会使用 targetContentType 的渲染器来渲染标签
- fix(PanoTagPlugin): 修复 tag.config 在处理多种 five mode 时 config 会被覆盖的问题
## 3.4.1
- style(PanoTagPlugin): 标签样式修复
## 3.4.0
- feat(PanoTagPlugin): 添加全景标签
## 3.3.6
- fix(PanoTagPlugin): 修复走点时可能报错的问题
## 3.3.5
- feat(PanoTagPlugin): 2d标签按需加载dom,优化性能问题
## 3.3.4
- fix(Floorplan): 复户型图在少数情况下,第一次从模型态展示户型图时展示失败。
## 3.3.3
- fix(PanoTagPlugin): 修复 3.3.2 中可能会出现报错的问题
## 3.3.2
- fix(PanoTagPlugin): 如果config keep值存在,强制修改 initialState
## 3.3.1
- fix(PanoTagPlugin): 修复报错
## 3.3.0
- feat(PanoTagPlugin): 标签在`Mapview`态时,支持按距离显示。
- feat(PanoTagPlugin): 标签位置计算支持多Work场景下的标签位置偏移量。
- fix(PanoTagPlugin): 修复了标签在消失动画过程中时不会更新位置的问题。
- fix(PanoTagPlugin): 图片贴片兼容低版本Chrome。
## 3.2.4
- fix(CurrentPanoImage): texture.minFilter 改为 THREE.LinearFilter,用于修复在部分设备下渲染图片异常。
## 3.2.3
- fix(GuideLinePlugin): 修复设置 tag 为空时再修改别的属性报错。
## 3.2.2
- fix(GuideLinePlugin): 修复 tag.data 为 null 时报错。
## 3.2.1
- fix(GuideLinePlugin): 修复配置路线引导位移时标签没有变化。
## 3.2.0
- feat(GuideLinePlugin): 路线引导支持配置位移。
## 3.1.3
- fix(PanoTagPlugin): 修复带帧动画的标签在低版本浏览器中显示异常的问题。
## 3.1.2
- fix(PanoTagPlugin): 视频贴片 autoplay 为 true 时,在微信场景下允许一直尝试自动播放。
## 3.1.1
- fix(floorplan-radar): 修复雷达图参数为空时报错的问题。
## 3.1.0
- feat(floorplan): 户型图支持缺失楼层配置。可以配置一张占位图片和文字。
- feat(floorplan): 雷达图图支持缺失楼层配置占位图。
## 3.0.1
- fix(PanoTagPlugin): 修复safari中模型态标签hide时,opacity不会立即生效的问题
## 3.0.0
- feat(*): 插件支持 Five 6.x 版本
- fix(CSS3DRenderPlugin): 嵌套object的 show/hide 修复
- fix(PanoTagPlugin): 修复 renderType 为 Mesh 时,MediaPlane 标签 无法正常显示 gif 的问题
- fix(PanoTagPlugin): 修复 changeConfig 性能问题;其他bug修复
- fix(PanoMeasurePlugin): 设置放大镜容器为传入的 container 而不是 body
- fix(PanoMeasurePlugin): 修复Five不为全屏时,测量时的辅助坐标点计算错误的问题
- chore(floorplan): 兼容 five changeMode 时, 传入 0, 得到的可能是 Math.PI * 2 的问题
- 优化FiveDomEvents性能
## 2.31.0
- PanoTagPlugin:
- feat: 更好的支持`2D标签`在模型态下的展示,内置模型态标签的相关配置
- feat: visibleMode 支持 `Mode | Mode[] | 'PanoramaLike' | 'ModelLike' | 'all' | function`; 默认值为 `tag.fiveState?.mode ?? 'Panorama'`
- feat: `plugin.config.contentTypeConfig` 支持设置标签在不同 FiveMode 下的展示行为。 具体值参照 `type ContentTypeConfigKey`
- feat: 使用 2.27.3 相似方式 优化 `tag.contentType` 的类型推断
- fix: 修复部分情况下标签的渐显动画失效的问题
- fix: 修复`2D标签`远近距离判断错误的问题
- fix: 使用 `five.model.uuid` 代替 `five.work.workCode` 作为标签点位缓存的 key, 修复加载其他 five 后,缓存依然生效的问题
- chore: `FiveDomEvents` 代码优化
## 2.30.3
- fix(MapviewFloorplanPlugin): 修复移动端缩放失效。
## 2.30.2
- fix(AreaMakerPlugin): 修复 initialState 不生效。
## 2.30.1
- fix(CurrentPanoImagePlugin): 修复 five initialState.mode 不为 Panorama 且 Plugin initialState.enabled 为 false 时,先 changeMode 到 Panorama 再调用 Plugin.enable() 在首点位模型没有正常展示的问题。
- feat(CurrentPanoImagePlugin): 提供 __whyCantSeeMesh 方法,用于 debug 时查找为什么无法看到模型。
## 2.30.0
- feat(CurrentPanoImagePlugin): 新增 CurrentPanoImagePlugin。
## 2.29.0
- feat(PanoTagPlugin): 添加函数 `tag.whyHide(tagId)`,会告诉你为什么看不到标签
- fix(PanoTagPlugin): 重构物体点击判断逻辑,修复bug;减少射线检测次数,提升性能
## 2.28.6
- fix(CruisePlugin): 后置load函数中的 `clearPauseData()` 调用时机,修复 play 过程中执行 load 导致暂停的情况下,记录了暂停数据的问题
## 2.28.5
- fix(PanoCompassPlugin): 支持配置 logoURL
## 2.28.4
- fix(PipelinePLugin): typo
- update github action
## 2.28.3
- fix(AreaMakerPlugin): 修复屏幕 Resize 时,标签位置错误。
## 2.28.2
- fix(AreaMakerPlugin): 修复调用 plugin.hide 时,标注标签没有隐藏。
- fix(AreaMakerPlugin): 修复 Five 初始状态不是全景时,没有正确加载。
- fix(AreaMakerPlugin): 修复插件参数没有正确传入。
## 2.28.1
- fix(PanoTagPlugin): 修复透明图片贴片的黑边问题
## 2.28.0
- feat(AreaMakerPlugin): 添加 AreaMakerPlugin。
## 2.27.4
- fix(PanoTagPlugin): 修复安卓小程序中,视频贴片无法自动播放的问题
## 2.27.3
- feat(PanoTagPlugin): 优化 tag.data 的类型
1. 对于未知类型的 tag 如 `tag: Tag`,现在可以使用 tag.data.my_any_property 而不报ts错误, 而之前版本需要使用`tag: Tag<any>`
2. 对于已知类型的 tag 如 `tag: Tag<'Text'>`, 现在可以使用 tag.data.my_any_other_property 而不报ts错误
## 2.27.2
- fix(PanoTagPlugin): 修复 tag 没有处理模型标签的 clickable。
## 2.27.1
- fix(PanoTagPlugin): 修复在部分IOS微信场景中,虚拟视频自动播放时播放按钮没有消失的bug
## 2.27.0
- feat(PanoTagPlugin): 碰撞检测支持更精细的检测配置,默认检测所有 tag.position,默认任意一点检测通过则视为碰撞检测通过
- fix(PanoTagPlugin): 修复 MediaPlane 标签的 `tag.disable()` / `tag.enable()` 方法不生效的bug
- fix(PanoTagPlugin): MediaPlane visible 状态变化为 false 时,立即销毁图片资源
- fix(PanoTagPlugin): TextTag 支持换行符
## 2.26.2
- fix(PanoTagPlugin): 修复模型 loaded 判断。
## 2.26.1
- fix(MeasurePlugin): 修复测量撤销时线段删除有问题 & 修复报错。
## 2.26.0
- fix(Floorplan): 修复户型图插件连续调用两次 show() 展示失败。
- feat(Pipeline): 添加 Pipeline 插件。
## 2.25.0
- feat(MapviewFloorplanPlugin): Mapview Floorplan 支持惯性滚动。
## 2.24.2
- fix(PanoTagPlugin): fix ImagePlane z-fighting
## 2.24.1
- fix(PanoMeasurePlugin): 测面积支持自定义单位转换,使用方法 `changeConfigs(getAreaText: (area: number) => string`
## 2.24.0
- feat(PanoTagPlugin): MediaPlane visible 状态变化为 false 时,立即销毁视频资源
## 2.23.1
- fix(PanoCompassPlugin): 支持 i18n 函数
## 2.23.0
- feat(PanoTagPlugin): textTag 的 plane 样式下新增 data.titleMaxRows 和 data.descriptionMaxRows,用于控制最大显示行数,默认显示全部
- fix(PanoTagPlugin): 修复 textTag.data.edit 的 placeholder 为空字符串时不显示插入符的问题
## 2.22.0
- feat(PanoMeasurePlugin): 新增测面积功能,使用 editParams.allowMeasureType: ['line', 'area'] 开启
## 2.21.1
- fix(PanoCompassPlugin): 修复 config.staticPrefix 不生效的问题
## 2.21.0
- fix(MeasurePlugin): 为了优化性能,测量插件去除「吸附」功能,将不会在模型初始化时计算模型边界。
- fix(ModelChassisCompassPlugin): 修复模型底盘在模型改变时,没有更新位置。
## 2.20.9
- chore(*): 插件图片转为 base64 或支持 staticPrefix 参数
## 2.20.8
- fix(GuideLinePlugin): 路线标签距离使用 Math.round。
## 2.20.7
- fix(GuideLinePlugin): 更改路线标签线条宽度。
## 2.20.6
- fix(GuideLinePlugin): 修复路线标签样式。
## 2.20.5
- feat(GuideLinePlugin): 标签展示路线长度。
## 2.20.4
- fix(PanoTagPlugin): 修复图片贴片没有根据 config.clickable 来设置点击事件的问题
## 2.20.3
- fix(*): fix Lint。
- fix(FloorplanRadarPlugin): 修复鼠标 hover 报错。
- feat(GuideLinePlugin): 支持距离计算。
## 2.20.2
- fix(GuideLinePlugin): 修复旧版本数据无法展示。
## 2.20.0
- feat(PanoTagPlugin):
- Typescript 类型优化
- 新增方法 `tag.changeData(data: PartialObjectDeep<TagData>): void`,用于修改标签的 `data`
- 新增方法 `registerRenderer(contentType: string, renderer: ElementRenderer): void`,插件会按照传入的 `renderer` 来渲染相应的 `ContentType`
- fix(PanoTagPlugin): 使用 `PartialObjectDeep` 代替 `PartialDeep`, 修复复杂场景下的类型推断问题
- fix(*): 修复eslint失效问题
- chore(*): 修改 load 日志级别为 `Verbose`
## 2.19.3
- fix(PanoTagPlugin): 使用z-index代替dom排序,解决标签数量较多时的卡顿问题
## 2.19.2
- fix(PanoTagPlugin): 修复多媒体标签没有自动轮播的问题。
## 2.19.1
- fix(PanoMeasure): 修复移动端测量工具没有触发 editedPolylineChange。
## 2.19.0
- feat(PanoTagPlugin): 添加 Model 类型。
- feat(PanoTagPlugin): 允许自动转向。
- feat(PanoTagPlugin): 添加 MediaModel 和 Model 的点击行为。
- fix(PanoTagPlugin): 修复标签插件初始化时合并 config 没有深度合并。
- fix(PanoTagPlugin): 修复 MediaModel renderType 不为 Mesh 时,非 Panorama 态展示异常。
- fix(PanoMeasure): 修复移动端删除测量线段报错。
## 2.18.5
- fix(PanoTagPlugin): 修复标签 style.point 报错。
## 2.18.4
- fix(GuideLinePlugin): 修复历史数据默认展示逻辑。
## 2.18.3
- fix(GuideLinePlugin): 修复标签控制判断。
## 2.18.2
- feat(GuideLinePlugin): 允许通过传入空值动态删除标签。
## 2.18.1
- fix(GuideLinePlugin): 加载标签插件时,不使用 followModelVisibility。修复自定义标签楼层显示错误。
## 2.18.0
- feat(GuideLinePlugin): 路线引导插件支持自定义路径。
- 支持添加模型 & 全景两种不同的路线。
- 支持配置路径背景、贴图颜色、边框、缩放。
- 支持模型态时添加起点、终点标签。
- 支持路径闪烁动画。
- 支持路径流动动画。
- refactor(*): 优化打包:
- 支持 CJS 库的引用。
- 优化 ESLint,在引用 TS 声明时,需要显示表明 import type。
## 2.17.1
- fix(PanoTagPlugin): 修复微信场景中的视频贴片不能自动播放的问题
- change(PanoTagPlugin): 修复一个拼写错误, autoUnfoldWhenHide -> autoFoldWhenHide
## 2.17.0
- feat(PanoTagPlugin): tag config 新增 initialData 字段,可以设置标签中的 data 的初始值。tag.mergeConfig.initialData 会深度合并入 tag.data 中
- feat(PanoTagPlugin): tag config 新增 followModelVisibility 字段,用于控制当标签在 Floorplan、MapView 可见时,是否仅在当前高亮的楼层显示。默认值为 false
- feat(PanoTagPlugin): 视频贴片支持通过 `tag.config.initialData.autoplayConfig.autoplayVideo` 或 `tag.data.autoplayConfig.autoplayVideo` 设置默认是否播放,默认值为 false
- fix(PanoTagPlugin): 修复以Mesh形式渲染的图片贴片没有 emit 点击事件的bug
- fix(PanoTagPlugin): 修复以Mesh形式渲染的贴片的 ObjectFit 没有生效的bug
- fix(PanoTagPlugin): 将 five.panoIndex 改为 five.getCurrentState().panoIndex,保证 panoIndex 不为 undefined
## 2.16.1
- fix(PanoTagPlugin): 视频贴片隐藏/禁用时,不再监听播放按钮Mesh的点击事件
- fix(PanoTagPlugin): 修复视频被动播放时封面图的展示逻辑
## 2.16.0
- feat(PanoTagPlugin): 视频贴片支持以 Mesh 方式渲染
- feat(PanoTagPlugin): 优化Five焦点环在不透明图片贴片上的效果
- fix(PanoTagPlugin): 修复 getRenderType 有可能返回 undefined 的bug,这个bug会导致部分含有 mediadata 的 3DPoint 标签无法显示
- fix(PanoTagPlugin): 修复广告牌中的图片以 css3d behind 模式渲染时, 调用disable时没有删除 css3dObject.opacityMesh 的问题
- fix(PanoTagPlugin): 修复广告牌中的图片以 css3d behind 模式渲染时, 调用enable时没有同步 css3dObject 的 matrix 的问题
## 2.15.0
- change(PanoTagPlugin): 单张的视频贴片不再支持以 behindDom 模式渲染,因为目前会有黑边问题;后续会直接使用 Mesh 实现
- change(threex): 监听到 touch 相关事件后不再执行 preventDefault()
- feat(PanoTagPlugin): 自定义标签(customTag)取消了展开/收起时的默认样式
- feat(PanoTagPlugin): 标签添加 className 属性,可以在标签的父元素上添加自定义的 className
- fix(PanoTagPlugin): 修复视频贴片播放时没有声音的问题
- fix(PanoTagPlugin): 修复视频贴片以Dom形式渲染时无法播放的问题
## 2.14.3
- fix(PanoTagPlugin): 虚拟屏幕标签存在多张图片的时候不以 behind 模式渲染
- fix(PanoTagPlugin): 单张的视频贴片支持以 behind 模式渲染
- fix(CruisePlugin): 修复 CruisePlugin 解析数据时可能计算出错误 longitude/latitude 的问题
## 2.14.2
- fix(PanoFloorplanRadarPlugin): 修复 PanoFloorplanRadarPlugin 配置hoverEnable为true报错的问题
## 2.14.1
- fix(ModelChassisCompassPlugin): 替换模型底盘文件使用的贴图宽高为2的整数次幂
## 2.14.0
- feat(PanoTagPlugin): MediaModel(虚拟广告牌)新增 `config.renderType: 'Mesh' | 'Dom'` 配置,默认值为`Dom`
- chore(*): 通过 loadTexture 函数加载的 texture 的 wrapS/wrapT 默认值设置为 ClampToEdgeWrapping
## 2.13.2
- refactor(floor & tag & roomLabel): 更改 dom resize 监听。从 iframe 改成了 resizeObserver。
## 2.13.1
- fix(*): 修复 ios16.4 上 texture 使用默认 mipmap 的方式插值时导致 texture 变黑的问题
## 2.13.0
- feat(PanoTagPlugin): 三维图片标签(贴片标签)新增 ` config.renderType: 'Mesh' | 'Dom' ` 配置,默认值为`Dom`,当数据中只有一张图片时,可以选择 Mesh 或 CSS3DRender 形式渲染。
## 2.12.0
- feat(PanoMeasurePlugin): 支持国际化配置。
## 2.11.2
- feat(TopviewFloorplanPlugin ModelFloorplanPlugin MapviewFloorplanPlugin): 支持 highlight高亮 支持 去掉Camera
## 2.11.1
- feat(ModelRoomLabelPlugin): 支持 Mapview 模式。
## 2.11.0
- fix(PanoTagPlugin): 修复无法被展开/收起的标签可以通过 changeUnfoldedById 方法强制展开/收起的bug
- feat(*): BasePlugin 添加 `readonly VERSION: string` 属性,默认值取自 package.json 中的 version 字段
- feat(PanoTagPlugin):
- 优化帧动画组件,减少不必要的Dom和计算
- 标签点支持帧动画
- 不再建议通过 size 设置标签点大小,而是通过 ratio 指定输入图片为几倍图,默认为三倍图
## 2.10.8
- fix(panoTagPlugin): 修复当`音频标签A`播放结束后,播放其他`音频标签B`时,`音频标签A`的播放动画会触发的问题。
- fix(PanoTagPlugin): 修复音频标签无法在部分 iPhone `(>= ios 15)` 中播放第二次的问题。
- 相关文档:
- [github issus](https://github.com/aws/amazon-chime-sdk-js/issues/2394)
- [webkit bugs](https://bugs.webkit.org/show_bug.cgi?id=241152)
- [Auto-Play Policy Changes for macOS](https://webkit.org/blog/7734/auto-play-policy-changes-for-macos/)
## 2.10.7
- fix(PanoTagPlugin): 修复 hide 未隐藏 MR 标签。
## 2.10.6
- fix(PanoVideoPlugin): 修复 video 事件监听丢失。
## 2.10.5
- fix(PanoVideoPlugin): 修复看向模型时视角错误。
- perf(PanoVideoPlugin): 优化视频添加时机。
## 2.10.4
- fix(PanoVideoPlugin): 修复 load 导致的 enable 失效。
## 2.10.3
- fix(PanoTagPlugin): 修复音频标签在部分 iPhone `(<= ios 15)`上续播失败的问题。原因是浏览器中的 HTMLAudioElement 在设置 currentTime 时,会根据 metadata 信息做校验,所以在 onloadeddata 事件触发前无法成功设置 currentTime。
- 相关文档:
- [MDN]('https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/currentTime')
## 2.10.2
- fix(PanoVideoPlugin): 点位视频支持点击播放时,判断视频 Mesh 是否在场景中。
## 2.10.1
- feat(PanoVideoPlugin): 点位视频支持点击播放。
- feat(PanoVideoPlugin): 点位视频支持点击看向某个视频元素。
## 2.10.0
- feat(PanoVideoPlugin): 添加点位视频融合插件。
## 2.9.2
- fix(PanoTagPlugin): 修复音频标签第二次播放时,点击播放按钮无反应的问题。
## 2.9.1
- feat(PanoMeasurePlugin): 测量工具 DistanceDOM 不再判断端点是否超出屏幕。
## 2.9.0
- feat(PanoTagPlugin): MarketingTag 新增黑色主题: `theme: 'light' | 'dark'`, 默认为 `light`。
- feat(PanoTagPlugin): Media组件优化,一张图片/视频时不放入轮播组件中。
- fix(PanoTagPlugin): 修复 disable() 无法完全禁用 MediaModelTag 的问题
## 2.8.6
- feat(PanoTagPlugin): 添加 ContentType 为 Sticker 的 Tag
- fix(PanoTagPlugin): 修复 LinkTag 动画帧数为1时不显示文字的问题
## 2.8.4
- fix(Object3DHelper): 修复初始化时的一个报错
## 2.8.3
- fix(Object3DHelper): 重构优化部分旋转逻辑,修复绕旋转z中心旋转时的bug
## 2.8.2
- fix(PanoTagPlugin): 修复 MediaModelTag loading 计算错误。
## 2.8.1
- fix(PanoTagPlugin): 修复 MediaModelTag 射线检测。
## 2.8.0
- feat(floorplan): 户型图插件添加配置
* 分间面积是否展示:roomAreaEnable
* 分间名称是否展示:roomNameEnable
## 2.7.3
- fix(PanoTagPlugin): 修复部分标签 content 无法点击的问题
## 2.7.2
- fix(Object3DHelperPlugin): 修复 Object3DHelperPlugin 的 CSS3DScaleHelper 的操作框位置错误的问题
## 2.7.1
- fix(PanoTagPlugin): 修复 disable -> load -> enable 路径 MediaModelTag media content 不展示。
## 2.7.0
- feat(PanoTagPlugin): 添加 ContentType 为 MediaModel 的 Tag。
* 允许加载外部 GLTF 模型。
* 允许通过 4 个点和多媒体信息,配置模型上应该展示的多媒体。
* TagConfig 添加 visibleFiveMode,允许配置在哪个模态下展示标签。
* 允许动态更改 Tag css3D mode。
- feat(Object3DHelper):
* 新增 BoundingBoxHelper,默认关闭
* 新增配置可以控制三条旋转轴的显示/隐藏
* 修复一些 bug
- change(PanoTagPlugin):
* 使用 svelte-carousel 代替 swiper
* 标签的 tag.data.objectFit 默认值改为 fill
## 2.6.6
- fix(TagPanoPlugin): 修复 config `clickable` 未生效的情况
- change(TagPanoPlugin): 移除文字 word-break: break-all 的css属性
## 2.6.5
- fix(TagPanoPlugin): videoTag disable picture-in-picture
## 2.6.4
- feat(GuidePlugin): fix dispose function
## 2.6.3
- feat(PanoTagPlugin): [changelog: 2.0.8](https://github.com/realsee-developer/dnalogel/blob/main/plugins/src/PanoTagPlugin/Archive/CHANGELOG.md)
## 2.6.2
- fix(CruisePlugin): 漫游插件(CruisePlugin)支持设置路线插件(GuideLinePlugin)的贴图等参数。
## 2.6.1
- fix(PanoMeasurePlugin): 修复先 load 数据再 changeMode:View 时,没有应用 panoIndexes 的问题。
## 2.5.4
- fix(PanoTagPlugin): 修复一个比较严重的报错
## 2.5.3
- fix(PanoTagPlugin): 修复模型状态下仍然可以点击标签点的问题
## 2.5.2
- fix(PanoMeasurePlugin): 修复 View 模式 load 数据时没有应用 visiblePanoIndexes。
## 2.5.1
- fix(PanoTagPlugin): tag-container 添加 `transform: translate3d(0,0,0)`,解决 iPhone13 上标签闪烁的问题,以及可能会影响其他Dom元素正常渲染的问题。
## 2.5.0
- feat(PanoTagPlugin): 标签插件升级。 [changelog: 1.2.7 -> 2.0.5](https://github.com/realsee-developer/dnalogel/blob/main/plugins/src/PanoTagPlugin/Archive/CHANGELOG.md)
## 2.4.0
- 1. feat(MeasurePlugin): 测量工具支持标尺功能。
## 2.3.8
- 1. feat(PanoTagPlugin): tag dom 添加 `data-content-type={tag.contentType}` 用来标识标签的 contentType
## 2.3.6
- 1. feat(CruisePlugin): load 添加参数 moveToFirstPanoDuration,可指定移动到漫游初始点时的速度。
## 2.3.5
- 1. feat(model-view-plugin): 支持动态 enable 和 disable。
## 2.3.4
- 1. fix(pano-tag-plugin): 修复空格不展示。
## 2.3.2
- 1. feat(pano-measure-plugin): 支持传入自定义UI文案
## 2.2.7
- 1. fix(build:libs): 修复 libs 构建产物异常的问题。
## 2.2.6
- 1. feat(entry-door): 入户门插件支持配置 name。
## 2.2.1
- 1. fix(floorplan-radar): 修复在 panoArrived 之后 loadData 时初始展示楼层只会是一层的问题。
## 2.2.0
- 1. refactor: 开发/构建流程优化
## 2.1.1
- 1. feat: PointHelper 和 PointDomHelper 直径改成 0.4m。
## 2.1.0
- 1. feat: CSS3DRenderPlugin API 支持插件 3.0 标准
- 2. refactor: CSS3DRenderPlugin 重构,提供不依赖 Five 的内部类
- 3. fix: CSS3DRenderPlugin 修复在部分情况下,CSS3DDom 最终渲染结果与传入的四个点的朝向可能不一致的情况
- 4. feat: ModelTVVideoPlugin 视频点击行为由 「静音播放/不静音播放」 改为 「播放/暂停」,且在暂停时显示播放按钮
- 5. feat: 导出 Util
## 2.0.4
- 1. 构建工具优化
## 2.0.3
- 1. fix: ModelRoomLabelPlugin 修复在 Five 模型切换动画过程中改变楼层,没有触发刷新的问题。
- 2. fix: ModelRoomLabelPlugin 修复切换楼层时,没有触发立即刷新的问题。
- 3. refactor: ModelViewPlugin 支持配置锁定视角和点位。
## 2.0.2
- 1. feat: FloorplanPlugin 支持动态修改房间面积展示和房间标尺展示
- 2. feat: PanoRulerPlugin 支持动态修改距离展示
- 3. feat: PanoMeasurePlugin 支持动态修改距离展示
- 4. refactor: FloorplanPlugin 允许 `setState` 传入 `Partial<Config>` 而不是 `Config`
## 2.0.0
- 1. fix: `ModelViewPlugin` 修复模型部分材质不展示的问题
- 2. feat: CruisePlugin 漫游插件
- 3. feat: GuideLinePlugin 地面路线引导插件
## 2.0.0-alpha.57
- 1.fix: PanoRulerPlugin 部分数据情况下 element 未 display: none 问题。
## 2.0.0-alpha.56
- 1.fix: PanoRulerPlugin off 全量事件监听。
## 2.0.0-alpha.55
- 1.fix: PanoRulerPlugin 异常 Dom。
- 2.51 ~ 54 版本为测试阶段,主版本无异常变更。
## 2.0.0-alpha.50
- 1.feat: MapviewFloorplanPlugin: 添加大空间户型图插件
## 2.0.0-alpha.49
- 1.fix: ModelTVVideoPlugin 多点位视频播放。
## 2.0.0-alpha.43
- 1.fix: PanoCompassPluginData 导出
## 2.0.0-alpha.42
- 1.fix: PanoCompassPlugin 未完全 dispose 导致切换 VR 重新加载数据出现异常。
- 2.fix: PanoCompassPlugin 在 five 切换全景与模型,入户门与分间指向错位的问题。
## 2.0.0-alpha.41
- 1.feat: 40 版本漏发。
## 2.0.0-alpha.40
- 1.refactor: PanoMeasurePlugin: 添加 View Mode,支持用户仅预览和点击高亮。
## 2.0.0-alpha.39
- 1.feat: 更新 ItemLabelPlugin 策略,仅在全景模态下展示。
## 2.0.0-alpha.38
- 1.feat: 新增 PanoRulerProPlugin。
## 2.0.0-alpha.37
- 1.feat: 参考 plugins/src/floorplan/CHANGELOG.md v1.0.1
## 2.0.0-alpha.36
- 1.style: PanoMeasurePlugin pc 端 UI 优化
- 2.style: PanoMeasurePlugin 准心优化,支持是否展示法向量和小球颜色可配置
- 3.fix: 修复 ResizeObserver 使用。
- 4.refactor: 参考 plugins/src/floorplan/CHANGELOG.md v1.0.0
## 2.0.0-beta.36
- 1.refactor: 户型图相关插件改造,详情参考 floorplan/CHANGELOGE.md。
## 2.0.0-alpha.35
- 1.style: PanoSpatialTagPlugin 标签样式兼容, 标签阴影背景自适应;
- 2.feat: PanoSpatialTagPlugin 开放可见距离配置参数,此功能不保证最佳 UI 效果);
- 3.refactor: PanoSpatialTagPlugin 更新中心点位置及事件监听。
## 2.0.0-alpha.34
- 1.feat: 新增 PaintBrush 组件,此版本为实验版,请谨慎使用。
## 2.0.0-alpha.33
- 1.fix: Floorplan Plugins Compass & ModelChassisCompassPlugin 修复对 north_rad 为 0 的处理
- 2.fix: panospatialtagplugin 兼容 nextjs 出现的 text 样式问题
## 2.0.0-alpha.32
- 1.feat: PanoRulerPlugin 修改标尺隐藏策略,线长小于 0.3m 隐藏;
- 2.fix: TopViewFloorplanPlugin & ModelFloorplanPlugin wrapper pointer-events: none。
## 2.0.0-alpha.31
- 1.fix: 修复 ?? 语法在 svelte 中不编译的问题。
## 2.0.0-alpha.30
- 1.feat: PanoMeasurePlugin 新增移动端 UI 交互模式
- 2.feat: PanoMeasurePlugin 点线、标签气泡、删除按钮、三维坐标系 UI 交互优化
- 3.feat: PanoMeasurePlugin 优化放大镜功能,支持可拖拽,新增放大镜开放参数
- 4.fix: TopviewFloorplanPlugin 兼容全局 text-align 使用
- 5.fix: 新增 ItemLabelPlugin 内测版
## 2.0.0-alpha.29
- 1.chore: 删除 react 依赖.
## 2.0.0-alpha.28
- 1.chore: 优化打包输出路径.
## 2.0.0-alpha.27
- 1.feat: PanoSpatialTagPlugin 兼容 bvh 为 false 模式.
## 2.0.0-alpha.26
- 1.fix: ModelRoomLabelPlugin - 修复渲染区域大小改变时,标签位置没有更新
- 2.pref: ModelRoomLabelPlugin - 优化渲染逻辑
## 2.0.0-alpha.25
- 1.refactor: 恢复发版
## 2.0.0-alpha.24
- 1.feat: PanoRulerPlugin 支持数据 reload。
## 2.0.0-alpha.23
- 1.fix: 修复 PanoFloorplanRadarPlugin reload 数据时报错
- 2.fix: 修复 PanoFloorplanRadarPlugin reload 户型图数据后雷达图标位置没有适配
## 2.0.0-alpha.22
- 1.fix: 修复 PanoMeasurePlugin disable 状态下仍有背景色占位问题。
## 2.0.0-alpha.21
- 1.fix: 修复 PanoMeasurePlugin 仅初始化 UI 面板仍占位为题。
## 2.0.0-alpha.20
- 1.fix: 修复 PanoMeasurePlugin hide 时 UI 面板仍占位为题。
## 2.0.0-alpha.19
- 1.fix: 修复在模型中切换全部楼层,切换回户型图,展示的是上一次展示时的楼层;
- 2.fix: 修复户型图界面切换楼层时,图片与 SVG 渲染有时间差导致闪烁的问题;
- 3.feat: TopviewFloorplanPlugin 插件支持放大缩小;
- 4.feat: ModelFloorplanPlugin 插件,autoShowEnable 和 hoverEnable 能同时支持;
- 5.chore: 设置 tsconfig.json importsNotUsedAsValues 为 error,在引用类型时,必须显示写为 import type。
## 2.0.0-alpha.18
- 1.fix: 修复 PanoMeasurePlugin 使用时 hammerjs 报错问题。
## 2.0.0-alpha.17
- 1.fix: 修复构建输出 px2rem 失效问题。
## 2.0.0-alpha.16
- 1.fix: 修复 z-index 问题;
- 2.fix: 修复 ModelItemLabelPlugin 事件监听问题。
## 2.0.0-alpha.15
- 1.refactor: 优化 ModelItemLabelPlugin 在调用 five.setState() 时的动画显示。
## 2.0.0-alpha.14
- 1.feat: 新增 ModelTVVideoPlugin 插件;
- 2.fix: 修复 ModelItemLabelPlugin disable & enable 方法逻辑;
- 3.refactor: 增加 ModelItemLabelPlugin 类型导出。
## 2.0.0-alpha.13
- 1.chore: 修改 tsconfig.json target 配置项为 es6。
## 2.0.0-alpha.12
- 1.feat: 新增 ModelItemLabelPlugin
## 2.0.0-alpha.11
- 1.fix: 修复 ModelRoomLabelPlugin 未监听多楼层切换 rerender 问题。
- 2.feat: ModelFloorplanPlugin & TopviewFloorplanPlugin 新增 `northDesc?: string` 配置项,支持用户修改指北针名称。
## 2.0.0-alpha.10
- 1.feat: 新增空间三维标签插件 PanoSpatialTagPlugin
- 2.feat: 新增轻量 ejs 渲染模板函数 shared-utils/tinyEJSrender.js
## 2.0.0-alpha.9
- 1.refactor: 增加插件独立 js 输出及对 svelte 的编译。
## 2.0.0-alpha.8
- 1.fix: 修复 ModelViewPlugin 实景 VR 模型不居中问题;
- 2.fix: 修复 ModelRoomLabelPlugin fov 更新未 rerender 问题;
- 2.fix: 修复 ModelRoomLabelPlugin enable 判断问题;
- 4.fix: 修改 ModelFloorplanPlugin 在全景态满足户型图的俯仰角时会自动切换户型图问题。
## 2.0.0-alpha.7
- 1.fix: PanoCompassPlugin 向下兼容;
- 2.feat: 新增 PC 全景测量插件:PanoMeasurePlugin;
- 3.docs: 修改 README.md;
## 2.0.0-alpha.6
- 1.fix: 标尺插件 PanoRulerPlugin 所有标尺仅展示一次问题;
- 2.fix: TopviewFloorplanPlugin && ModelFloorplanPlugin 插件小雷达位置显示不正确问题;
- 3.feat: 为 TopviewFloorplanPlugin && ModelFloorplanPlugin 插件新增线框图吸附位置配置选项。
- 可选地板、天花板、模型中心,默认吸附选项为模型中心。
## 2.0.0-alpha.5
1.修复全景指南针插件 PanoCompassPlugin 默认导出 name
## 2.0.0-alpha.4
1.新增全景标尺插件 PanoRulerPlugin
## 2.0.0-alpha.3
1.新增全景指南针插件 PanoCompassPlugin