@labelbee/lb-components 1.6.0-alpha.4 → 1.6.0-alpha.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/dist/components/AnnotationView/index.js +1 -1
  2. package/dist/components/AnnotationView/pointCloudAnnotationView.js +1 -1
  3. package/dist/components/customResizeHook/index.js +1 -1
  4. package/dist/components/pointCloudView/PointCloud2DView.js +1 -1
  5. package/dist/components/pointCloudView/PointCloud3DView.js +1 -1
  6. package/dist/components/pointCloudView/PointCloudBackView.js +1 -1
  7. package/dist/components/pointCloudView/PointCloudContext.js +1 -1
  8. package/dist/components/pointCloudView/PointCloudInfos.js +1 -1
  9. package/dist/components/pointCloudView/PointCloudLayout.js +1 -1
  10. package/dist/components/pointCloudView/PointCloudSideView.js +1 -1
  11. package/dist/components/pointCloudView/PointCloudTopView.js +1 -1
  12. package/dist/components/pointCloudView/hooks/usePointCloudViews.js +1 -1
  13. package/dist/components/pointCloudView/hooks/useZoom.js +1 -0
  14. package/dist/components/pointCloudView/index.js +1 -1
  15. package/dist/hooks/annotation.js +1 -1
  16. package/dist/index.css +0 -9
  17. package/dist/types/components/AnnotationView/index.d.ts +1 -0
  18. package/dist/types/components/pointCloudView/PointCloudContext.d.ts +2 -0
  19. package/dist/types/components/pointCloudView/PointCloudLayout.d.ts +1 -0
  20. package/dist/types/components/pointCloudView/hooks/useZoom.d.ts +7 -0
  21. package/dist/types/hooks/annotation.d.ts +1 -0
  22. package/dist/types/views/MainView/toolFooter/ZoomController/ZoomLevel/index.d.ts +1 -0
  23. package/dist/types/views/MainView/toolFooter/ZoomController/index.d.ts +1 -0
  24. package/dist/views/MainView/sidebar/GeneralOperation/useOperationList.js +1 -1
  25. package/dist/views/MainView/sidebar/PointCloudToolSidebar/index.js +1 -1
  26. package/dist/views/MainView/sidebar/ToolIcons.js +1 -1
  27. package/dist/views/MainView/toolFooter/ZoomController/ZoomLevel/index.js +1 -1
  28. package/dist/views/MainView/toolFooter/ZoomController/index.js +1 -1
  29. package/dist/views/MainView/toolHeader/headerOption/index.js +1 -1
  30. package/es/assets/attributeIcon/eraser.svg.js +4 -0
  31. package/es/assets/attributeIcon/eraser.svg.js.map +1 -0
  32. package/es/assets/attributeIcon/eraser_a.svg.js +4 -0
  33. package/es/assets/attributeIcon/eraser_a.svg.js.map +1 -0
  34. package/es/assets/attributeIcon/pen.svg.js +4 -0
  35. package/es/assets/attributeIcon/pen.svg.js.map +1 -0
  36. package/es/assets/attributeIcon/pen_a.svg.js +4 -0
  37. package/es/assets/attributeIcon/pen_a.svg.js.map +1 -0
  38. package/es/components/AnnotationView/index.js +1 -1
  39. package/es/components/AnnotationView/index.js.map +1 -1
  40. package/es/components/AnnotationView/pointCloudAnnotationView.js +1 -1
  41. package/es/components/AnnotationView/pointCloudAnnotationView.js.map +1 -1
  42. package/es/components/customResizeHook/index.js +1 -1
  43. package/es/components/customResizeHook/index.js.map +1 -1
  44. package/es/components/pointCloudView/PointCloud2DView.js +1 -1
  45. package/es/components/pointCloudView/PointCloud2DView.js.map +1 -1
  46. package/es/components/pointCloudView/PointCloud3DView.js +1 -1
  47. package/es/components/pointCloudView/PointCloud3DView.js.map +1 -1
  48. package/es/components/pointCloudView/PointCloudBackView.js +1 -1
  49. package/es/components/pointCloudView/PointCloudBackView.js.map +1 -1
  50. package/es/components/pointCloudView/PointCloudContext.js +1 -1
  51. package/es/components/pointCloudView/PointCloudContext.js.map +1 -1
  52. package/es/components/pointCloudView/PointCloudInfos.js +1 -1
  53. package/es/components/pointCloudView/PointCloudInfos.js.map +1 -1
  54. package/es/components/pointCloudView/PointCloudLayout.js +1 -1
  55. package/es/components/pointCloudView/PointCloudLayout.js.map +1 -1
  56. package/es/components/pointCloudView/PointCloudSideView.js +1 -1
  57. package/es/components/pointCloudView/PointCloudSideView.js.map +1 -1
  58. package/es/components/pointCloudView/PointCloudTopView.js +1 -1
  59. package/es/components/pointCloudView/PointCloudTopView.js.map +1 -1
  60. package/es/components/pointCloudView/hooks/usePointCloudViews.js +1 -1
  61. package/es/components/pointCloudView/hooks/usePointCloudViews.js.map +1 -1
  62. package/es/components/pointCloudView/hooks/useZoom.js +1 -0
  63. package/es/components/pointCloudView/hooks/useZoom.js.map +1 -0
  64. package/es/components/pointCloudView/index.js +1 -1
  65. package/es/components/pointCloudView/index.js.map +1 -1
  66. package/es/hooks/annotation.js +1 -1
  67. package/es/hooks/annotation.js.map +1 -1
  68. package/es/index.css +0 -9
  69. package/es/views/MainView/sidebar/GeneralOperation/useOperationList.js +1 -1
  70. package/es/views/MainView/sidebar/GeneralOperation/useOperationList.js.map +1 -1
  71. package/es/views/MainView/sidebar/PointCloudToolSidebar/index.js +1 -1
  72. package/es/views/MainView/sidebar/PointCloudToolSidebar/index.js.map +1 -1
  73. package/es/views/MainView/sidebar/ScribbleSidebar/index.js +60 -0
  74. package/es/views/MainView/sidebar/ScribbleSidebar/index.js.map +1 -0
  75. package/es/views/MainView/sidebar/ToolIcons.js +1 -1
  76. package/es/views/MainView/sidebar/ToolIcons.js.map +1 -1
  77. package/es/views/MainView/toolFooter/ZoomController/ZoomLevel/index.js +1 -1
  78. package/es/views/MainView/toolFooter/ZoomController/ZoomLevel/index.js.map +1 -1
  79. package/es/views/MainView/toolFooter/ZoomController/index.js +1 -1
  80. package/es/views/MainView/toolFooter/ZoomController/index.js.map +1 -1
  81. package/es/views/MainView/toolHeader/headerOption/index.js +1 -1
  82. package/es/views/MainView/toolHeader/headerOption/index.js.map +1 -1
  83. package/package.json +4 -4
@@ -1 +1 @@
1
- "use strict";var React=require("react"),lbAnnotation=require("@labelbee/lb-annotation"),es=require("antd/es");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),__defProp=Object.defineProperty,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,r,o)=>r in e?__defProp(e,r,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[r]=o,__spreadValues=(e,r)=>{for(var o in r||(r={}))__hasOwnProp.call(r,o)&&__defNormalProp(e,o,r[o]);if(__getOwnPropSymbols)for(var o of __getOwnPropSymbols(r))__propIsEnum.call(r,o)&&__defNormalProp(e,o,r[o]);return e};const DEFAULT_SIZE={width:1280,height:720},sizeInitialized=e=>e?(e.width||(e.width=DEFAULT_SIZE.width),e.height||(e.height=DEFAULT_SIZE.height),e):DEFAULT_SIZE,AnnotationView=(e,r)=>{const{src:o,annotations:c=[],style:g={stroke:"blue",thickness:3},zoomChange:s,backgroundStyle:h={},onChange:d,showLoading:_=!1}=e,i=sizeInitialized(e.size),[p,f]=React.useState(!1),v=React.useRef(null),t=React.useRef();React.useImperativeHandle(r,()=>{const n=t.current;return n?{zoomIn:()=>n.zoomChanged(!0),zoomOut:()=>n.zoomChanged(!1),initImgPos:()=>n.initImgPos(),toolInstance:n}:{}},[t.current]),React.useEffect(()=>(v.current&&(t.current=new lbAnnotation.ViewOperation({container:v.current,size:i,style:g,annotations:c,config:"{}"}),t.current.init()),()=>{var n;(n=t.current)==null||n.destroy()}),[]),React.useEffect(()=>{var n;t.current&&(f(!0),(n=t.current)==null||n.setLoading(!0),lbAnnotation.ImgUtils.load(o).then(u=>{var a,l;(a=t.current)==null||a.setLoading(!1),f(!1),(l=t.current)==null||l.setImgNode(u)}).catch(()=>{var u;(u=t.current)==null||u.setLoading(!1),f(!1)}))},[o]),React.useEffect(()=>{t.current&&t.current.updateData(c)},[c]),React.useEffect(()=>{const n=t.current;(n==null?void 0:n.setSize)&&n.setSize(i)},[i==null?void 0:i.width,i==null?void 0:i.height]),React.useEffect(()=>{var n,u;return t.current&&((n=t.current)==null||n.on("onChange",(...a)=>{d==null||d.apply(null,a)}),(u=t.current)==null||u.on("renderZoom",a=>{s&&s(a)})),()=>{var a,l;(a=t.current)==null||a.unbindAll("onChange"),(l=t.current)==null||l.unbindAll("renderZoom")}},[s,d]);const m=React__default.default.createElement("div",{ref:v,style:__spreadValues(__spreadValues({position:"relative"},i),h)});return React__default.default.createElement(es.Spin,{spinning:_||p,delay:300},m)};var AnnotationView$1=React__default.default.forwardRef(AnnotationView);module.exports=AnnotationView$1;
1
+ "use strict";var React=require("react"),lbAnnotation=require("@labelbee/lb-annotation"),es=require("antd/es");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),__defProp=Object.defineProperty,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,t,o)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,__spreadValues=(e,t)=>{for(var o in t||(t={}))__hasOwnProp.call(t,o)&&__defNormalProp(e,o,t[o]);if(__getOwnPropSymbols)for(var o of __getOwnPropSymbols(t))__propIsEnum.call(t,o)&&__defNormalProp(e,o,t[o]);return e};const DEFAULT_SIZE={width:500,height:100},sizeInitialized=e=>{if(!e)return DEFAULT_SIZE;if(e.width&&e.height)return e;const t=__spreadValues({},e);return t.width||(t.width=DEFAULT_SIZE.width),t.height||(t.height=DEFAULT_SIZE.height),t},AnnotationView=(e,t)=>{var o,g;const{src:h,annotations:u=[],style:_={stroke:"blue",thickness:3},zoomChange:s,backgroundStyle:m={},onChange:c,showLoading:p=!1,globalStyle:w}=e,d=sizeInitialized(e.size),[b,f]=React.useState(!1),v=React.useRef(null),r=React.useRef();React.useImperativeHandle(t,()=>{const n=r.current;return n?{zoomIn:()=>n.zoomChanged(!0),zoomOut:()=>n.zoomChanged(!1),initImgPos:()=>n.initImgPos(),toolInstance:n}:{}},[r.current]),React.useEffect(()=>(v.current&&(r.current=new lbAnnotation.ViewOperation({container:v.current,size:d,style:_,annotations:u,config:"{}"}),r.current.init()),()=>{var n;(n=r.current)==null||n.destroy()}),[]),React.useEffect(()=>{var n;r.current&&(f(!0),(n=r.current)==null||n.setLoading(!0),lbAnnotation.ImgUtils.load(h).then(a=>{var i,l;(i=r.current)==null||i.setLoading(!1),f(!1),(l=r.current)==null||l.setImgNode(a)}).catch(()=>{var a;(a=r.current)==null||a.setLoading(!1),f(!1)}))},[h]),React.useEffect(()=>{r.current&&r.current.updateData(u)},[u]),React.useEffect(()=>{const n=r.current;(n==null?void 0:n.setSize)&&(n.setSize(d),n.initPosition())},[(o=e.size)==null?void 0:o.width,(g=e.size)==null?void 0:g.height]),React.useEffect(()=>{var n,a;return r.current&&((n=r.current)==null||n.on("onChange",(...i)=>{c==null||c.apply(null,i)}),(a=r.current)==null||a.on("renderZoom",i=>{s&&s(i)})),()=>{var i,l;(i=r.current)==null||i.unbindAll("onChange"),(l=r.current)==null||l.unbindAll("renderZoom")}},[s,c]);const y=React__default.default.createElement("div",{ref:v,style:__spreadValues(__spreadValues({position:"relative"},d),m)});return React__default.default.createElement(es.Spin,{spinning:p||b,delay:300,style:w},y)};var AnnotationView$1=React__default.default.forwardRef(AnnotationView);module.exports=AnnotationView$1;
@@ -1 +1 @@
1
- "use strict";var lbAnnotation=require("@labelbee/lb-annotation"),lbUtils=require("@labelbee/lb-utils"),React=require("react");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var React__default=_interopDefaultLegacy(React);const PointCloudAnnotationView=t=>{const{src:n,result:a,size:o}=t;let l=React.useRef();const r=React.useRef(),c=React.useCallback(e=>{l.current=e},[]);return React.useEffect(()=>{const e=new lbAnnotation.PointCloud({container:l.current,backgroundColor:"#ccc"});r.current=e},[]),React.useEffect(()=>{var e;(e=r.current)==null||e.init()},[o]),React.useEffect(()=>{var e;r.current&&n&&((e=r.current)==null||e.loadPCDFile(n))},[n]),React.useEffect(()=>{a&&lbUtils.PointCloudUtils.getBoxParamsFromResultList(a).forEach(u=>{var i;(i=r.current)==null||i.generateBox(u,u.id)})},[a]),React__default.default.createElement("div",{style:o,ref:c})};module.exports=PointCloudAnnotationView;
1
+ "use strict";var lbAnnotation=require("@labelbee/lb-annotation"),lbUtils=require("@labelbee/lb-utils"),React=require("react");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var React__default=_interopDefaultLegacy(React);const PointCloudAnnotationView=t=>{const{src:l,result:o,size:i}=t;let u=React.useRef();const r=React.useRef(),s=React.useCallback(e=>{u.current=e},[]);return React.useEffect(()=>{const e=new lbAnnotation.PointCloud({container:u.current,backgroundColor:"#ccc"});r.current=e},[]),React.useEffect(()=>{var e;(e=r.current)==null||e.init()},[i]),React.useEffect(()=>{var e;r.current&&l&&((e=r.current)==null||e.loadPCDFile(l))},[l]),React.useEffect(()=>(o&&lbUtils.PointCloudUtils.getBoxParamsFromResultList(o).forEach(n=>{var a;(a=r.current)==null||a.generateBox(n,n.id)}),()=>{lbUtils.PointCloudUtils.getBoxParamsFromResultList(o).forEach(n=>{var a;(a=r.current)==null||a.removeObjectByName(n.id)})}),[o]),React__default.default.createElement("div",{style:i,ref:s})};module.exports=PointCloudAnnotationView;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var AnnotationSize=require("../../data/enums/AnnotationSize.js"),lbAnnotation=require("@labelbee/lb-annotation"),React=require("react"),reactRedux=require("react-redux"),actionCreators=require("../../store/annotation/actionCreators.js"),antd=require("antd");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React);const EKeyCode=lbAnnotation.cKeyCode.default,viewportContext=React__default.default.createContext({width:window.innerWidth,height:window.innerHeight}),ViewportProviderComponent=e=>{const{children:d,dispatch:n,annotation:{skipBeforePageTurning:o}}=e;console.log("viewport",e);const[i]=React.useState(window.innerWidth),[r]=React.useState(window.innerHeight),a=t=>{var c;if(!!lbAnnotation.toolUtils.hotkeyFilter(t)){if(!t.shiftKey||!t.ctrlKey){if(t.keyCode===EKeyCode.A){if(o){o(()=>n(actionCreators.PageBackward()));return}n(actionCreators.PageBackward())}if(t.keyCode===EKeyCode.D){if(o){o(()=>n(actionCreators.PageForward()));return}n(actionCreators.PageForward())}t.keyCode===EKeyCode.R&&n(actionCreators.UpdateRotate())}if(t.shiftKey===!0&&t.ctrlKey===!0&&t.altKey===!0&&t.keyCode===EKeyCode.C){antd.message.success("DEVELOPMENT TESTING - Switch Last Two Canvas");const u=(c=e.annotation)==null?void 0:c.annotationEngine.switchLastTwoCanvas();if(!u)return;n(actionCreators.UpdateToolInstance(u))}}};React.useEffect(()=>(window.addEventListener("keydown",a),()=>{window.removeEventListener("keydown",a)}),[e.annotation.annotationEngine,e.annotation.skipBeforePageTurning]);const s=React.useMemo(()=>({width:i,height:r}),[i,r]);return React__default.default.createElement(viewportContext.Provider,{value:s},d)},ViewportProvider=reactRedux.connect(e=>({annotation:e.annotation}))(ViewportProviderComponent),getFormatSize=(e,d=!1,n=!1)=>{const{width:o,height:i}=e,r=AnnotationSize.headerHeight+AnnotationSize.footerHeight,a=n?40+r+40:r,s=d?AnnotationSize.editStepWidth+AnnotationSize.sidebarWidth:AnnotationSize.sidebarWidth;return{width:o-s,height:i-a}};exports.ViewportProvider=ViewportProvider,exports.ViewportProviderComponent=ViewportProviderComponent,exports.getFormatSize=getFormatSize,exports.viewportContext=viewportContext;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var AnnotationSize=require("../../data/enums/AnnotationSize.js"),lbAnnotation=require("@labelbee/lb-annotation"),React=require("react"),reactRedux=require("react-redux"),actionCreators=require("../../store/annotation/actionCreators.js"),antd=require("antd");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React);const EKeyCode=lbAnnotation.cKeyCode.default,viewportContext=React__default.default.createContext({width:window.innerWidth,height:window.innerHeight}),ViewportProviderComponent=e=>{const{children:d,dispatch:n,annotation:{skipBeforePageTurning:o}}=e,[i]=React.useState(window.innerWidth),[r]=React.useState(window.innerHeight),a=t=>{var c;if(!!lbAnnotation.toolUtils.hotkeyFilter(t)){if(!t.shiftKey||!t.ctrlKey){if(t.keyCode===EKeyCode.A){if(o){o(()=>n(actionCreators.PageBackward()));return}n(actionCreators.PageBackward())}if(t.keyCode===EKeyCode.D){if(o){o(()=>n(actionCreators.PageForward()));return}n(actionCreators.PageForward())}t.keyCode===EKeyCode.R&&n(actionCreators.UpdateRotate())}if(t.shiftKey===!0&&t.ctrlKey===!0&&t.altKey===!0&&t.keyCode===EKeyCode.C){antd.message.success("DEVELOPMENT TESTING - Switch Last Two Canvas");const u=(c=e.annotation)==null?void 0:c.annotationEngine.switchLastTwoCanvas();if(!u)return;n(actionCreators.UpdateToolInstance(u))}}};React.useEffect(()=>(window.addEventListener("keydown",a),()=>{window.removeEventListener("keydown",a)}),[e.annotation.annotationEngine,e.annotation.skipBeforePageTurning]);const s=React.useMemo(()=>({width:i,height:r}),[i,r]);return React__default.default.createElement(viewportContext.Provider,{value:s},d)},ViewportProvider=reactRedux.connect(e=>({annotation:e.annotation}))(ViewportProviderComponent),getFormatSize=(e,d=!1,n=!1)=>{const{width:o,height:i}=e,r=AnnotationSize.headerHeight+AnnotationSize.footerHeight,a=n?40+r+40:r,s=d?AnnotationSize.editStepWidth+AnnotationSize.sidebarWidth:AnnotationSize.sidebarWidth;return{width:o-s,height:i-a}};exports.ViewportProvider=ViewportProvider,exports.ViewportProviderComponent=ViewportProviderComponent,exports.getFormatSize=getFormatSize,exports.viewportContext=viewportContext;
@@ -1 +1 @@
1
- "use strict";var dom=require("../../utils/dom.js"),React=require("react"),PointCloudLayout=require("./PointCloudLayout.js"),index=require("../AnnotationView/index.js"),PointCloudContext=require("./PointCloudContext.js"),reactRedux=require("react-redux"),icons=require("@ant-design/icons"),useSize=require("../../hooks/useSize.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),__defProp=Object.defineProperty,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,t,n)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,__spreadValues=(e,t)=>{for(var n in t||(t={}))__hasOwnProp.call(t,n)&&__defNormalProp(e,n,t[n]);if(__getOwnPropSymbols)for(var n of __getOwnPropSymbols(t))__propIsEnum.call(t,n)&&__defNormalProp(e,n,t[n]);return e};const Toolbar=({onNext:e,onPrev:t,imgLength:n,imgIndex:i})=>React__default.default.createElement("div",null,React__default.default.createElement(icons.LeftOutlined,{onClick:t}),React__default.default.createElement("span",null," ",i+1," / ",n," "),React__default.default.createElement(icons.RightOutlined,{onClick:e})),PointCloud2DView=({imgInfo:e})=>{var t,n;const[i,f]=React.useState([]),{pointCloudBoxList:s,topViewInstance:c}=React.useContext(PointCloudContext.PointCloudContext),[a,l]=React.useState(0),d=React.useRef(null),m=useSize(d),r=(t=e==null?void 0:e.mappingImgList)==null?void 0:t[a];if(React.useEffect(()=>{l(0)},[e]),React.useEffect(()=>{if(c&&r){const{pointCloudInstance:o}=c,v={fill:"transparent",color:"green"},g=s.reduce((C,P)=>{const _=o.pointCloudLidar2image(P,r.calib);return[...C,..._.map(p=>({type:p.type,annotation:__spreadValues({pointList:p.pointList},v)}))]},[]);f(g)}},[s,r]),!e)return React__default.default.createElement("div",null);const{mappingImgList:u}=e;return u?React__default.default.createElement(PointCloudLayout.PointCloudContainer,{className:dom.getClassName("point-cloud-2d-container"),title:"2D\u89C6\u56FE",toolbar:React__default.default.createElement(Toolbar,{imgIndex:a,imgLength:u.length,onNext:()=>{a>=u.length-1||l(o=>o+1)},onPrev:()=>{a<=0||l(o=>o-1)}})},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-2d-image"),ref:d},React__default.default.createElement(index,{src:(n=r==null?void 0:r.url)!=null?n:"",annotations:i,size:m}))):React__default.default.createElement("div",null)},mapStateToProps=e=>{const{imgList:t,imgIndex:n}=e.annotation;return{imgInfo:t[n]}};var PointCloud2DView$1=reactRedux.connect(mapStateToProps)(PointCloud2DView);module.exports=PointCloud2DView$1;
1
+ "use strict";var dom=require("../../utils/dom.js"),React=require("react"),PointCloudLayout=require("./PointCloudLayout.js"),index=require("../AnnotationView/index.js"),PointCloudContext=require("./PointCloudContext.js"),reactRedux=require("react-redux"),icons=require("@ant-design/icons"),useSize=require("../../hooks/useSize.js"),useSingleBox=require("./hooks/useSingleBox.js"),reactI18next=require("react-i18next");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),__defProp=Object.defineProperty,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,t,n)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,__spreadValues=(e,t)=>{for(var n in t||(t={}))__hasOwnProp.call(t,n)&&__defNormalProp(e,n,t[n]);if(__getOwnPropSymbols)for(var n of __getOwnPropSymbols(t))__propIsEnum.call(t,n)&&__defNormalProp(e,n,t[n]);return e};const Toolbar=({onNext:e,onPrev:t,imgLength:n,imgIndex:l})=>React__default.default.createElement("div",null,React__default.default.createElement(icons.LeftOutlined,{onClick:t}),React__default.default.createElement("span",null," ",l+1," / ",n," "),React__default.default.createElement(icons.RightOutlined,{onClick:e})),PointCloud2DView=({imgInfo:e})=>{var t,n,l,g,_;const[c,y]=React.useState([]),{pointCloudBoxList:x,topViewInstance:L}=React.useContext(PointCloudContext.PointCloudContext),[s,p]=React.useState(0),P=React.useRef(null),v=React.useRef(),{selectedBox:f}=useSingleBox.useSingleBox(),w=useSize(P),{t:E}=reactI18next.useTranslation(),r=(t=e==null?void 0:e.mappingImgList)==null?void 0:t[s];React.useEffect(()=>{p(0)},[e]),React.useEffect(()=>{if(L&&r){const{pointCloudInstance:o}=L,i={fill:"transparent",color:"green"},u=x.reduce((a,d)=>{const S=o.pointCloudLidar2image(d,r.calib);return[...a,...S.map(C=>({type:C.type,annotation:__spreadValues({id:d.id,pointList:C.pointList},i)}))]},[]);y(u)}},[x,r]);const m=!e||!(e==null?void 0:e.mappingImgList)||!(((n=e==null?void 0:e.mappingImgList)==null?void 0:n.length)>0);return React.useEffect(()=>{var o,i;const u=(o=v.current)==null?void 0:o.toolInstance;if(!f||!u)return;const a=c.find(d=>d.annotation.id===f.info.id);((i=a==null?void 0:a.annotation.pointList)==null?void 0:i.length)>0&&u.focusPositionByPointList(a==null?void 0:a.annotation.pointList)},[f,v.current,c]),React__default.default.createElement(PointCloudLayout.PointCloudContainer,{className:dom.getClassName("point-cloud-2d-container"),title:E("2DView"),toolbar:m?void 0:React__default.default.createElement(Toolbar,{imgIndex:s,imgLength:(g=(l=e.mappingImgList)==null?void 0:l.length)!=null?g:0,onNext:()=>{var o;!e||!(e==null?void 0:e.mappingImgList)||s>=((o=e==null?void 0:e.mappingImgList)==null?void 0:o.length)-1||p(i=>i+1)},onPrev:()=>{s<=0||p(o=>o-1)}}),style:{display:m?"none":"flex"}},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-2d-image"),ref:P},React__default.default.createElement(index,{src:(_=r==null?void 0:r.url)!=null?_:"",annotations:c,size:w,ref:v,globalStyle:{display:m?"none":"block"}})))},mapStateToProps=e=>{const{imgList:t,imgIndex:n}=e.annotation;return{imgInfo:t[n]}};var PointCloud2DView$1=reactRedux.connect(mapStateToProps)(PointCloud2DView);module.exports=PointCloud2DView$1;
@@ -1 +1 @@
1
- "use strict";var dom=require("../../utils/dom.js"),lbAnnotation=require("@labelbee/lb-annotation"),lbUtils=require("@labelbee/lb-utils"),classNames=require("classnames"),React=require("react"),PointCloudLayout=require("./PointCloudLayout.js"),PointCloudContext=require("./PointCloudContext.js"),map=require("../../store/annotation/map.js"),reactRedux=require("react-redux"),index=require("../../utils/index.js"),useSingleBox=require("./hooks/useSingleBox.js"),antd=require("antd"),useSize=require("../../hooks/useSize.js"),usePointCloudViews=require("./hooks/usePointCloudViews.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var classNames__default=_interopDefaultLegacy(classNames),React__default=_interopDefaultLegacy(React);const pointCloudID="LABELBEE-POINTCLOUD",PointCloud3DContext=React__default.default.createContext({isActive:!1,setTarget3DView:()=>{},reset3DView:()=>{}}),PointCloudViewIcon=({perspectiveView:e})=>{const{isActive:a,setTarget3DView:s}=React.useContext(PointCloud3DContext),r=o=>classNames__default.default({[dom.getClassName("point-cloud-3d-view",o)]:!0,active:a});return React__default.default.createElement("span",{onClick:()=>{s(lbUtils.EPerspectiveView[e])},className:r(e.toLocaleLowerCase())})},PointCloud3DSideBar=()=>{const{reset3DView:e}=React.useContext(PointCloud3DContext);return React__default.default.createElement("div",{className:dom.getClassName("point-cloud-3d-sidebar")},React__default.default.createElement(PointCloudViewIcon,{perspectiveView:"Top"}),React__default.default.createElement(PointCloudViewIcon,{perspectiveView:"Front"}),React__default.default.createElement(PointCloudViewIcon,{perspectiveView:"Left"}),React__default.default.createElement(PointCloudViewIcon,{perspectiveView:"Back"}),React__default.default.createElement(PointCloudViewIcon,{perspectiveView:"Right"}),React__default.default.createElement(PointCloudViewIcon,{perspectiveView:"LFT"}),React__default.default.createElement(PointCloudViewIcon,{perspectiveView:"RBT"}),React__default.default.createElement("span",{onClick:()=>{e()},className:dom.getClassName("point-cloud-3d-view","reset")}))},PointCloud3D=({currentData:e})=>{const a=React.useContext(PointCloudContext.PointCloudContext),[s,r]=React.useState(!0),o=React.useRef(null),{initPointCloud3d:u}=usePointCloudViews.usePointCloudViews(),d=useSize(o);React.useEffect(()=>{!a.mainViewInstance||u==null||u()},[d]);const{selectedBox:n}=useSingleBox.useSingleBox(),c=i=>{var t;const l=n==null?void 0:n.info;l&&((t=a.mainViewInstance)==null||t.updateCameraByBox(l,i))},m=()=>{var i;(i=a.mainViewInstance)==null||i.resetCamera()};React.useEffect(()=>{var i;if(o.current&&(e==null?void 0:e.url)){let t=a.mainViewInstance;if(t||(t=new lbAnnotation.PointCloud({container:o.current,backgroundColor:"#4c4c4c"})),e.result){const l=lbUtils.PointCloudUtils.getBoxParamsFromResultList(e.result);l.forEach(f=>{t==null||t.generateBox(f)}),a.setPointCloudResult(l),a.setPointCloudValid((i=index.jsonParser(e.result))==null?void 0:i.valid)}a.setMainViewInstance(t)}},[e]),React.useEffect(()=>{n&&c(lbUtils.EPerspectiveView.Top)},[n]);const v=React.useMemo(()=>({reset3DView:m,setTarget3DView:c,isActive:!!n}),[n]),C=React__default.default.createElement("div",null,React__default.default.createElement("span",{style:{marginRight:8}},"\u663E\u793A\u7BAD\u5934"),React__default.default.createElement(antd.Switch,{size:"small",checked:s,onChange:i=>{var t;r(i),(t=a.mainViewInstance)==null||t.setShowDirection(i)}}));return React__default.default.createElement(PointCloudLayout.PointCloudContainer,{className:dom.getClassName("point-cloud-3d-container"),title:"3D\u89C6\u56FE",toolbar:C},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-3d-content")},React__default.default.createElement(PointCloud3DContext.Provider,{value:v},React__default.default.createElement(PointCloud3DSideBar,null)),React__default.default.createElement("div",{className:dom.getClassName("point-cloud-3d-view"),id:pointCloudID,ref:o})))};var PointCloud3DView=reactRedux.connect(map.aMapStateToProps)(PointCloud3D);module.exports=PointCloud3DView;
1
+ "use strict";var dom=require("../../utils/dom.js"),lbAnnotation=require("@labelbee/lb-annotation"),lbUtils=require("@labelbee/lb-utils"),classNames=require("classnames"),React=require("react"),PointCloudLayout=require("./PointCloudLayout.js"),PointCloudContext=require("./PointCloudContext.js"),map=require("../../store/annotation/map.js"),reactRedux=require("react-redux"),index=require("../../utils/index.js"),useSingleBox=require("./hooks/useSingleBox.js"),antd=require("antd"),useSize=require("../../hooks/useSize.js"),usePointCloudViews=require("./hooks/usePointCloudViews.js"),reactI18next=require("react-i18next");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var classNames__default=_interopDefaultLegacy(classNames),React__default=_interopDefaultLegacy(React);const pointCloudID="LABELBEE-POINTCLOUD",PointCloud3DContext=React__default.default.createContext({isActive:!1,setTarget3DView:()=>{},reset3DView:()=>{}}),PointCloudViewIcon=({perspectiveView:e})=>{const{isActive:s,setTarget3DView:a}=React.useContext(PointCloud3DContext),r=u=>classNames__default.default({[dom.getClassName("point-cloud-3d-view",u)]:!0,active:s});return React__default.default.createElement("span",{onClick:()=>{a(lbUtils.EPerspectiveView[e])},className:r(e.toLocaleLowerCase())})},PointCloud3DSideBar=()=>{const{reset3DView:e}=React.useContext(PointCloud3DContext);return React__default.default.createElement("div",{className:dom.getClassName("point-cloud-3d-sidebar")},React__default.default.createElement(PointCloudViewIcon,{perspectiveView:"Top"}),React__default.default.createElement(PointCloudViewIcon,{perspectiveView:"Front"}),React__default.default.createElement(PointCloudViewIcon,{perspectiveView:"Left"}),React__default.default.createElement(PointCloudViewIcon,{perspectiveView:"Back"}),React__default.default.createElement(PointCloudViewIcon,{perspectiveView:"Right"}),React__default.default.createElement(PointCloudViewIcon,{perspectiveView:"LFT"}),React__default.default.createElement(PointCloudViewIcon,{perspectiveView:"RBT"}),React__default.default.createElement("span",{onClick:()=>{e()},className:dom.getClassName("point-cloud-3d-view","reset")}))},PointCloud3D=({currentData:e})=>{var s;const a=React.useContext(PointCloudContext.PointCloudContext),[r,u]=React.useState(!0),l=React.useRef(null),{initPointCloud3d:c}=usePointCloudViews.usePointCloudViews(),v=useSize(l),{t:d}=reactI18next.useTranslation();React.useEffect(()=>{!a.mainViewInstance||c==null||c()},[v]);const{selectedBox:n}=useSingleBox.useSingleBox(),m=i=>{var t;const o=n==null?void 0:n.info;o&&((t=a.mainViewInstance)==null||t.updateCameraByBox(o,i))},C=()=>{var i;(i=a.mainViewInstance)==null||i.resetCamera()};React.useEffect(()=>{var i;if(l.current&&(e==null?void 0:e.url)){let t=a.mainViewInstance;if(t||(t=new lbAnnotation.PointCloud({container:l.current,backgroundColor:"#4c4c4c"})),e.result){const o=lbUtils.PointCloudUtils.getBoxParamsFromResultList(e.result);o.forEach(w=>{t==null||t.generateBox(w)}),a.setPointCloudResult(o),a.setPointCloudValid((i=index.jsonParser(e.result))==null?void 0:i.valid)}a.setMainViewInstance(t)}},[e]),React.useEffect(()=>{n&&m(lbUtils.EPerspectiveView.Top)},[n]);const f=React.useMemo(()=>({reset3DView:C,setTarget3DView:m,isActive:!!n}),[n]),p=React__default.default.createElement("div",null,React__default.default.createElement("span",{style:{marginRight:8}},d("ShowArrows")),React__default.default.createElement(antd.Switch,{size:"small",checked:r,onChange:i=>{var t;u(i),(t=a.mainViewInstance)==null||t.setShowDirection(i)}}));return React__default.default.createElement(PointCloudLayout.PointCloudContainer,{className:dom.getClassName("point-cloud-3d-container"),title:d("3DView"),toolbar:p,style:{height:e.mappingImgList&&((s=e.mappingImgList)==null?void 0:s.length)>0?"55%":"100%"}},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-3d-content")},React__default.default.createElement(PointCloud3DContext.Provider,{value:f},React__default.default.createElement(PointCloud3DSideBar,null)),React__default.default.createElement("div",{className:dom.getClassName("point-cloud-3d-view"),id:pointCloudID,ref:l})))};var PointCloud3DView=reactRedux.connect(map.aMapStateToProps)(PointCloud3D);module.exports=PointCloud3DView;
@@ -1 +1 @@
1
- "use strict";var lbAnnotation=require("@labelbee/lb-annotation"),dom=require("../../utils/dom.js"),PointCloudLayout=require("./PointCloudLayout.js"),React=require("react"),PointCloudContext=require("./PointCloudContext.js"),useSingleBox=require("./hooks/useSingleBox.js"),lbUtils=require("@labelbee/lb-utils"),PointCloudInfos=require("./PointCloudInfos.js"),reactRedux=require("react-redux"),map=require("../../store/annotation/map.js"),usePointCloudViews=require("./hooks/usePointCloudViews.js"),useSize=require("../../hooks/useSize.js"),index=require("./components/EmptyPage/index.js");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var React__default=_interopDefaultLegacy(React);const TransferCanvas2WorldOffset=(t,e,n=1)=>{const{width:i,height:s}=e,r={x:t.x+i*n/2,y:t.y+s*n/2},o={x:e.width/2,y:e.height/2};return{offsetX:(o.x-r.x)/n,offsetY:-(o.y-r.y)/n}},updateBackViewByCanvas2D=(t,e,n,i,s)=>{const{offsetX:r,offsetY:o}=TransferCanvas2WorldOffset(t,n,e);if(s.camera.zoom=e,t){const c=Math.cos(i.rotation),a=Math.sin(i.rotation),l=r*c,u=r*a,{x:d,y:f,z:C}=s.initCameraPosition;s.camera.position.set(d+u,f-l,C+o)}s.camera.updateProjectionMatrix(),s.render()},PointCloudSideView=({currentData:t})=>{const e=React__default.default.useContext(PointCloudContext.PointCloudContext),n=React.useRef(null),i=useSize(n),{updateSelectedBox:s,selectedBox:r}=useSingleBox.useSingleBox();return React.useEffect(()=>{if(n.current){const o={width:n.current.clientWidth,height:n.current.clientHeight},c=new lbAnnotation.PointCloudAnnotation({container:n.current,size:o,polygonOperationProps:{showDirectionLine:!1,forbidAddNew:!0}});e.setBackViewInstance(c)}},[]),React.useEffect(()=>{if(!i||!e.backViewInstance)return;const{pointCloud2dOperation:o,pointCloudInstance:c}=e.backViewInstance;o.singleOn("renderZoom",(a,l)=>{!e.selectedPointCloudBox||updateBackViewByCanvas2D(l,a,i,e.selectedPointCloudBox,c)}),o.singleOn("dragMove",({currentPos:a,zoom:l})=>{!e.selectedPointCloudBox||updateBackViewByCanvas2D(a,l,i,e.selectedPointCloudBox,c)}),o.singleOn("updatePolygonByDrag",({newPolygon:a,originPolygon:l})=>{if(!e.selectedPointCloudBox||!e.mainViewInstance||!t.url)return;const[u,d,f]=a.pointList,[C,x,w]=l.pointList,p=lbAnnotation.MathUtils.getLineCenterPoint([u,f]),g=lbAnnotation.MathUtils.getLineCenterPoint([C,w]),P={x:{x:p.x-g.x,y:p.y-g.y}.x,y:0,z:p.y-g.y},v=lbAnnotation.MathUtils.getLineLength(u,d),m=lbAnnotation.MathUtils.getLineLength(C,x),y=v-m,B=lbAnnotation.MathUtils.getLineLength(d,f),V=lbAnnotation.MathUtils.getLineLength(x,w),L=B-V,{newBoxParams:h}=c.getNewBoxByBackUpdate(P,L,y,e.selectedPointCloudBox);usePointCloudViews.synchronizeTopView(h,a,e.topViewInstance,e.mainViewInstance),usePointCloudViews.synchronizeSideView(h,a,e.sideViewInstance,t.url),e.mainViewInstance.highlightOriginPointCloud(h),s(h)})},[e,i]),React.useEffect(()=>{var o;(o=e==null?void 0:e.backViewInstance)==null||o.initSize(i)},[i]),React__default.default.createElement(PointCloudLayout.PointCloudContainer,{className:dom.getClassName("point-cloud-container","back-view"),title:"\u80CC\u89C6\u56FE",toolbar:React__default.default.createElement(PointCloudInfos.SizeInfoForView,{perspectiveView:lbUtils.EPerspectiveView.Back})},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","bottom-view-content")},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","core-instance"),ref:n}),!r&&React__default.default.createElement(index,null)))};var PointCloudBackView=reactRedux.connect(map.aMapStateToProps)(PointCloudSideView);module.exports=PointCloudBackView;
1
+ "use strict";var lbAnnotation=require("@labelbee/lb-annotation"),dom=require("../../utils/dom.js"),PointCloudLayout=require("./PointCloudLayout.js"),React=require("react"),PointCloudContext=require("./PointCloudContext.js"),useSingleBox=require("./hooks/useSingleBox.js"),lbUtils=require("@labelbee/lb-utils"),PointCloudInfos=require("./PointCloudInfos.js"),reactRedux=require("react-redux"),map=require("../../store/annotation/map.js"),usePointCloudViews=require("./hooks/usePointCloudViews.js"),useSize=require("../../hooks/useSize.js"),index=require("./components/EmptyPage/index.js"),reactI18next=require("react-i18next");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var React__default=_interopDefaultLegacy(React);const TransferCanvas2WorldOffset=(t,e,n=1)=>{const{width:o,height:s}=e,r={x:t.x+o*n/2,y:t.y+s*n/2},u={x:e.width/2,y:e.height/2};return{offsetX:(u.x-r.x)/n,offsetY:-(u.y-r.y)/n}},updateBackViewByCanvas2D=(t,e,n,o,s)=>{const{offsetX:r,offsetY:u}=TransferCanvas2WorldOffset(t,n,e);if(s.camera.zoom=e,t){const i=Math.cos(o.rotation),c=Math.sin(o.rotation),a=r*i,l=r*c,{x:d,y:f,z:h}=s.initCameraPosition;s.camera.position.set(d+l,f-a,h+u)}s.camera.updateProjectionMatrix(),s.render()},PointCloudSideView=({currentData:t})=>{const e=React__default.default.useContext(PointCloudContext.PointCloudContext),n=React.useRef(null),o=useSize(n),{updateSelectedBox:s,selectedBox:r}=useSingleBox.useSingleBox(),{t:u}=reactI18next.useTranslation();return React.useEffect(()=>{if(n.current){const i={width:n.current.clientWidth,height:n.current.clientHeight},c=new lbAnnotation.PointCloudAnnotation({container:n.current,size:i,polygonOperationProps:{showDirectionLine:!1,forbidAddNew:!0}});e.setBackViewInstance(c)}},[]),React.useEffect(()=>{if(!o||!e.backViewInstance)return;const{pointCloud2dOperation:i,pointCloudInstance:c}=e.backViewInstance;i.singleOn("renderZoom",(a,l)=>{!e.selectedPointCloudBox||updateBackViewByCanvas2D(l,a,o,e.selectedPointCloudBox,c)}),i.singleOn("dragMove",({currentPos:a,zoom:l})=>{!e.selectedPointCloudBox||updateBackViewByCanvas2D(a,l,o,e.selectedPointCloudBox,c)}),i.singleOn("updatePolygonByDrag",({newPolygon:a,originPolygon:l})=>{if(!e.selectedPointCloudBox||!e.mainViewInstance||!t.url)return;const[d,f,h]=a.pointList,[g,w,v]=l.pointList,C=lbAnnotation.MathUtils.getLineCenterPoint([d,h]),x=lbAnnotation.MathUtils.getLineCenterPoint([g,v]),P={x:{x:C.x-x.x,y:C.y-x.y}.x,y:0,z:C.y-x.y},m=lbAnnotation.MathUtils.getLineLength(d,f),y=lbAnnotation.MathUtils.getLineLength(g,w),B=m-y,V=lbAnnotation.MathUtils.getLineLength(f,h),L=lbAnnotation.MathUtils.getLineLength(w,v),b=V-L,{newBoxParams:p}=c.getNewBoxByBackUpdate(P,b,B,e.selectedPointCloudBox);usePointCloudViews.synchronizeTopView(p,a,e.topViewInstance,e.mainViewInstance),usePointCloudViews.synchronizeSideView(p,a,e.sideViewInstance,t.url),e.mainViewInstance.highlightOriginPointCloud(p),s(p)})},[e,o]),React.useEffect(()=>{var i;(i=e==null?void 0:e.backViewInstance)==null||i.initSize(o)},[o]),React__default.default.createElement(PointCloudLayout.PointCloudContainer,{className:dom.getClassName("point-cloud-container","back-view"),title:u("BackView"),toolbar:React__default.default.createElement(PointCloudInfos.SizeInfoForView,{perspectiveView:lbUtils.EPerspectiveView.Back})},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","bottom-view-content")},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","core-instance"),ref:n}),!r&&React__default.default.createElement(index,null)))};var PointCloudBackView=reactRedux.connect(map.aMapStateToProps)(PointCloudSideView);module.exports=PointCloudBackView;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react");function _interopDefaultLegacy(s){return s&&typeof s=="object"&&"default"in s?s:{default:s}}var React__default=_interopDefaultLegacy(React);const PointCloudContext=React__default.default.createContext({pointCloudBoxList:[],polygonList:[],selectedID:"",selectedIDs:[],valid:!0,setSelectedIDs:()=>{},setPointCloudResult:()=>{},setPointCloudValid:()=>{},setTopViewInstance:()=>{},setSideViewInstance:()=>{},setBackViewInstance:()=>{},setMainViewInstance:()=>{},addSelectedID:()=>{},selectedAllBoxes:()=>{},addPointCloudBox:()=>{},setPolygonList:()=>{}}),PointCloudProvider=({children:s})=>{const[o,a]=React.useState([]),[c,C]=React.useState([]),[t,i]=React.useState([]),[d,P]=React.useState(!0),[l,p]=React.useState(),[u,I]=React.useState(),[r,x]=React.useState(),[f,V]=React.useState(),S=React.useMemo(()=>t.length===1?t[0]:"",[t]),w=React.useMemo(()=>{const y=o.find(e=>e.id===S),v=e=>{a(o.concat(e))},B=e=>{P(e!==!1)},n=e=>{e===void 0&&i([]),typeof e=="string"&&i([e]),Array.isArray(e)&&i(Array.from(new Set(e)))};return{selectedID:S,pointCloudBoxList:o,selectedIDs:t,setPointCloudResult:a,setSelectedIDs:n,addPointCloudBox:v,valid:d,selectedPointCloudBox:y,setPointCloudValid:B,addSelectedID:e=>{t.includes(e)?n(t.filter(g=>g!==e)):n([...t,e])},selectedAllBoxes:()=>{n(o.map(e=>e.id))},topViewInstance:l,setTopViewInstance:p,sideViewInstance:u,setSideViewInstance:I,backViewInstance:r,setBackViewInstance:x,mainViewInstance:f,setMainViewInstance:V,polygonList:c,setPolygonList:C}},[d,t,o,c,l,u,r,f]);return React__default.default.createElement(PointCloudContext.Provider,{value:w},s)};exports.PointCloudContext=PointCloudContext,exports.PointCloudProvider=PointCloudProvider;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react");function _interopDefaultLegacy(o){return o&&typeof o=="object"&&"default"in o?o:{default:o}}var React__default=_interopDefaultLegacy(React);const PointCloudContext=React__default.default.createContext({pointCloudBoxList:[],polygonList:[],selectedID:"",selectedIDs:[],valid:!0,setSelectedIDs:()=>{},setPointCloudResult:()=>{},setPointCloudValid:()=>{},setTopViewInstance:()=>{},setSideViewInstance:()=>{},setBackViewInstance:()=>{},setMainViewInstance:()=>{},addSelectedID:()=>{},selectedAllBoxes:()=>{},addPointCloudBox:()=>{},setPolygonList:()=>{},zoom:1,setZoom:()=>{}}),PointCloudProvider=({children:o})=>{const[s,a]=React.useState([]),[c,P]=React.useState([]),[t,i]=React.useState([]),[d,p]=React.useState(!0),[l,I]=React.useState(1),[u,x]=React.useState(),[r,V]=React.useState(),[f,w]=React.useState(),[S,y]=React.useState(),C=React.useMemo(()=>t.length===1?t[0]:"",[t]),m=React.useMemo(()=>{const v=s.find(e=>e.id===C),B=e=>{a(s.concat(e))},g=e=>{p(e!==!1)},n=e=>{e===void 0&&i([]),typeof e=="string"&&i([e]),Array.isArray(e)&&i(Array.from(new Set(e)))};return{selectedID:C,pointCloudBoxList:s,selectedIDs:t,setPointCloudResult:a,setSelectedIDs:n,addPointCloudBox:B,valid:d,selectedPointCloudBox:v,setPointCloudValid:g,addSelectedID:e=>{t.includes(e)?n(t.filter(L=>L!==e)):n([...t,e])},selectedAllBoxes:()=>{n(s.map(e=>e.id))},topViewInstance:u,setTopViewInstance:x,sideViewInstance:r,setSideViewInstance:V,backViewInstance:f,setBackViewInstance:w,mainViewInstance:S,setMainViewInstance:y,polygonList:c,setPolygonList:P,zoom:l,setZoom:I}},[d,t,s,c,u,r,f,S,l]);return React__default.default.createElement(PointCloudContext.Provider,{value:m},o)};exports.PointCloudContext=PointCloudContext,exports.PointCloudProvider=PointCloudProvider;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var lbUtils=require("@labelbee/lb-utils"),React=require("react"),PointCloudContext=require("./PointCloudContext.js"),lbAnnotation=require("@labelbee/lb-annotation"),useSingleBox=require("./hooks/useSingleBox.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React);const DECIMAL_PLACES=2,SizeInfoForView=({perspectiveView:e})=>{const{pointCloudBoxList:o,selectedID:n}=React__default.default.useContext(PointCloudContext.PointCloudContext),l=o.find(t=>t.id===n);if(n&&l){const t=e===lbUtils.EPerspectiveView.Back?[{label:"\u5BBD",value:l.width},{label:"\u9AD8",value:l.depth}]:[{label:"\u957F",value:l.height},{label:"\u5BBD",value:l.width}];return React__default.default.createElement(React__default.default.Fragment,null,t.map((u,i)=>React__default.default.createElement("span",{key:i,style:{marginRight:i===0?16:0,fontSize:12}},`${u.label}: ${u.value.toFixed(DECIMAL_PLACES)}`)))}return null},BoxInfos=()=>{const e=React__default.default.useContext(PointCloudContext.PointCloudContext),{selectedBox:o}=useSingleBox.useSingleBox(),[n,l]=React.useState([]);return React.useEffect(()=>{var t;if(!o)return;const{length:u,width:i,height:s,rotation_y:d}=lbUtils.PointCloudUtils.transferBox2Kitti(o.info);let a=[{label:"\u957F",value:u.toFixed(DECIMAL_PLACES)},{label:"\u5BBD",value:i.toFixed(DECIMAL_PLACES)},{label:"\u9AD8",value:s.toFixed(DECIMAL_PLACES)},{label:"\u671D\u5411\u89D2",value:lbAnnotation.UnitUtils.rad2deg(d).toFixed(DECIMAL_PLACES)}];(t=e.mainViewInstance)==null||t.filterPointsByBox(o.info).then(r=>{if(!r){l(a);return}a.push({label:"\u70B9\u6570",value:`${r.num}`}),l(a)})},[o]),o?React__default.default.createElement("div",{style:{position:"absolute",color:"white",backgroundColor:"rgba(153, 153, 153, 0.3)",right:8,top:8,fontSize:12,padding:8,zIndex:20}},n.map(t=>React__default.default.createElement("div",{key:t.label},`${t.label}: ${t.value}`))):null},PointCloudValidity=()=>React__default.default.useContext(PointCloudContext.PointCloudContext).valid===!1?React__default.default.createElement("div",{style:{position:"absolute",backgroundColor:"rgb(242, 101, 73)",color:"white",left:0,top:0,fontSize:20,padding:"8px 16px",zIndex:20}},"\u65E0\u6548"):null;exports.BoxInfos=BoxInfos,exports.PointCloudValidity=PointCloudValidity,exports.SizeInfoForView=SizeInfoForView;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var lbUtils=require("@labelbee/lb-utils"),React=require("react"),PointCloudContext=require("./PointCloudContext.js"),lbAnnotation=require("@labelbee/lb-annotation"),useSingleBox=require("./hooks/useSingleBox.js"),reactI18next=require("react-i18next");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React);const DECIMAL_PLACES=2,SizeInfoForView=({perspectiveView:e})=>{const{pointCloudBoxList:n,selectedID:a}=React__default.default.useContext(PointCloudContext.PointCloudContext),l=n.find(i=>i.id===a),d=reactI18next.useTranslation(),{t}=d;if(a&&l){const{length:i,width:o,height:r}=lbUtils.PointCloudUtils.transferBox2Kitti(l),c=e===lbUtils.EPerspectiveView.Back?[{label:t("Width"),value:o},{label:t("Height"),value:r}]:[{label:t("Length"),value:i},{label:t("Height"),value:r}];return React__default.default.createElement(React__default.default.Fragment,null,c.map((u,s)=>React__default.default.createElement("span",{key:s,style:{marginRight:s===0?16:0,fontSize:12}},`${u.label}: ${u.value.toFixed(DECIMAL_PLACES)}`)))}return null},BoxInfos=()=>{const e=React__default.default.useContext(PointCloudContext.PointCloudContext),{selectedBox:n}=useSingleBox.useSingleBox(),[a,l]=React.useState([]),d=reactI18next.useTranslation(),{t,i18n:i}=d;return React.useEffect(()=>{var o;if(!n)return;const{length:r,width:c,height:u,rotation_y:s}=lbUtils.PointCloudUtils.transferBox2Kitti(n.info);let f=[{label:t("Length"),value:r.toFixed(DECIMAL_PLACES)},{label:t("Width"),value:c.toFixed(DECIMAL_PLACES)},{label:t("Height"),value:u.toFixed(DECIMAL_PLACES)},{label:t("Rotation_y"),value:lbAnnotation.UnitUtils.rad2deg(s).toFixed(DECIMAL_PLACES)}];(o=e.mainViewInstance)==null||o.filterPointsByBox(n.info).then(x=>{if(!x){l(f);return}f.push({label:t("PointCount"),value:`${x.num}`}),l(f)})},[n,i.language]),n?React__default.default.createElement("div",{style:{position:"absolute",color:"white",backgroundColor:"rgba(153, 153, 153, 0.3)",right:8,top:8,fontSize:12,padding:8,zIndex:20}},a.map(o=>React__default.default.createElement("div",{key:o.label},`${o.label}: ${o.value}`))):null},PointCloudValidity=()=>{const e=React__default.default.useContext(PointCloudContext.PointCloudContext),{t:n}=reactI18next.useTranslation();return e.valid===!1?React__default.default.createElement("div",{style:{position:"absolute",backgroundColor:"rgb(242, 101, 73)",color:"white",left:0,top:0,fontSize:20,padding:"8px 16px",zIndex:20}},n("Invalid")):null};exports.BoxInfos=BoxInfos,exports.PointCloudValidity=PointCloudValidity,exports.SizeInfoForView=SizeInfoForView;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var dom=require("../../utils/dom.js"),classNames=require("classnames"),React=require("react");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var classNames__default=_interopDefaultLegacy(classNames),React__default=_interopDefaultLegacy(React);const PointCloudContainer=({title:e,toolbar:a,children:t,className:r})=>React__default.default.createElement("div",{className:classNames__default.default([r,dom.getClassName("point-cloud-container")])},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","header")},React__default.default.createElement("span",{className:dom.getClassName("point-cloud-container","header-title")},e),a&&React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","header-toolbar")},a)),t);exports.PointCloudContainer=PointCloudContainer;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var dom=require("../../utils/dom.js"),classNames=require("classnames"),React=require("react");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var classNames__default=_interopDefaultLegacy(classNames),React__default=_interopDefaultLegacy(React);const PointCloudContainer=({title:e,toolbar:a,children:t,className:r,style:l})=>React__default.default.createElement("div",{className:classNames__default.default([r,dom.getClassName("point-cloud-container")]),style:l},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","header")},React__default.default.createElement("span",{className:dom.getClassName("point-cloud-container","header-title")},e),a&&React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","header-toolbar")},a)),t);exports.PointCloudContainer=PointCloudContainer;
@@ -1 +1 @@
1
- "use strict";var lbAnnotation=require("@labelbee/lb-annotation"),dom=require("../../utils/dom.js"),PointCloudLayout=require("./PointCloudLayout.js"),React=require("react"),lbUtils=require("@labelbee/lb-utils"),PointCloudContext=require("./PointCloudContext.js"),PointCloudInfos=require("./PointCloudInfos.js"),reactRedux=require("react-redux"),map=require("../../store/annotation/map.js"),usePointCloudViews=require("./hooks/usePointCloudViews.js"),useSingleBox=require("./hooks/useSingleBox.js"),index=require("./components/EmptyPage/index.js"),useSize=require("../../hooks/useSize.js");function _interopDefaultLegacy(o){return o&&typeof o=="object"&&"default"in o?o:{default:o}}var React__default=_interopDefaultLegacy(React);const TransferCanvas2WorldOffset=(o,e,s=1)=>{const{width:u,height:t}=e,i={x:o.x+u*s/2,y:o.y+t*s/2},n={x:e.width/2,y:e.height/2};return{offsetX:(n.x-i.x)/s,offsetY:-(n.y-i.y)/s}},updateSideViewByCanvas2D=(o,e,s,u,t)=>{const{offsetX:i,offsetY:n}=TransferCanvas2WorldOffset(o,s,e);if(t.camera.zoom=e,o){const l=Math.cos(u.rotation),r=Math.sin(u.rotation),a=i*l,c=i*r,{x:d,y:f,z:C}=t.initCameraPosition;t.camera.position.set(d-a,f-c,C+n)}t.camera.updateProjectionMatrix(),t.render()},PointCloudSideView=({currentData:o})=>{const e=React__default.default.useContext(PointCloudContext.PointCloudContext),{sideViewUpdateBox:s}=usePointCloudViews.usePointCloudViews(),{selectedBox:u}=useSingleBox.useSingleBox(),t=React.useRef(null),i=useSize(t);return React.useEffect(()=>{if(t.current){const n={width:t.current.clientWidth,height:t.current.clientHeight},l=new lbAnnotation.PointCloudAnnotation({container:t.current,size:n,polygonOperationProps:{showDirectionLine:!1,forbidAddNew:!0}});e.setSideViewInstance(l)}},[]),React.useEffect(()=>{if(!i||!e.sideViewInstance)return;const{pointCloud2dOperation:n,pointCloudInstance:l}=e.sideViewInstance;n.singleOn("renderZoom",(r,a)=>{!e.selectedPointCloudBox||updateSideViewByCanvas2D(a,r,i,e.selectedPointCloudBox,l)}),n.singleOn("dragMove",({currentPos:r,zoom:a})=>{!e.selectedPointCloudBox||updateSideViewByCanvas2D(r,a,i,e.selectedPointCloudBox,l)}),n.singleOn("updatePolygonByDrag",({newPolygon:r,originPolygon:a})=>{s(r,a)})},[e,i]),React.useEffect(()=>{var n;(n=e==null?void 0:e.sideViewInstance)==null||n.initSize(i)},[i]),React__default.default.createElement(PointCloudLayout.PointCloudContainer,{className:dom.getClassName("point-cloud-container","side-view"),title:"\u4FA7\u89C6\u56FE",toolbar:React__default.default.createElement(PointCloudInfos.SizeInfoForView,{perspectiveView:lbUtils.EPerspectiveView.Left})},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","bottom-view-content")},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","core-instance"),ref:t}),!u&&React__default.default.createElement(index,null)))};var PointCloudSideView$1=reactRedux.connect(map.aMapStateToProps)(PointCloudSideView);module.exports=PointCloudSideView$1;
1
+ "use strict";var lbAnnotation=require("@labelbee/lb-annotation"),dom=require("../../utils/dom.js"),PointCloudLayout=require("./PointCloudLayout.js"),React=require("react"),lbUtils=require("@labelbee/lb-utils"),PointCloudContext=require("./PointCloudContext.js"),PointCloudInfos=require("./PointCloudInfos.js"),reactRedux=require("react-redux"),map=require("../../store/annotation/map.js"),usePointCloudViews=require("./hooks/usePointCloudViews.js"),useSingleBox=require("./hooks/useSingleBox.js"),index=require("./components/EmptyPage/index.js"),useSize=require("../../hooks/useSize.js"),reactI18next=require("react-i18next");function _interopDefaultLegacy(n){return n&&typeof n=="object"&&"default"in n?n:{default:n}}var React__default=_interopDefaultLegacy(React);const TransferCanvas2WorldOffset=(n,e,r=1)=>{const{width:u,height:t}=e,o={x:n.x+u*r/2,y:n.y+t*r/2},c={x:e.width/2,y:e.height/2};return{offsetX:(c.x-o.x)/r,offsetY:-(c.y-o.y)/r}},updateSideViewByCanvas2D=(n,e,r,u,t)=>{const{offsetX:o,offsetY:c}=TransferCanvas2WorldOffset(n,r,e);if(t.camera.zoom=e,n){const i=Math.cos(u.rotation),l=Math.sin(u.rotation),a=o*i,s=o*l,{x:d,y:f,z:C}=t.initCameraPosition;t.camera.position.set(d-a,f-s,C+c)}t.camera.updateProjectionMatrix(),t.render()},PointCloudSideView=({currentData:n})=>{const e=React__default.default.useContext(PointCloudContext.PointCloudContext),{sideViewUpdateBox:r}=usePointCloudViews.usePointCloudViews(),{selectedBox:u}=useSingleBox.useSingleBox(),t=React.useRef(null),o=useSize(t),{t:c}=reactI18next.useTranslation();return React.useEffect(()=>{if(t.current){const i={width:t.current.clientWidth,height:t.current.clientHeight},l=new lbAnnotation.PointCloudAnnotation({container:t.current,size:i,polygonOperationProps:{showDirectionLine:!1,forbidAddNew:!0}});e.setSideViewInstance(l)}},[]),React.useEffect(()=>{if(!o||!e.sideViewInstance)return;const{pointCloud2dOperation:i,pointCloudInstance:l}=e.sideViewInstance;i.singleOn("renderZoom",(a,s)=>{!e.selectedPointCloudBox||updateSideViewByCanvas2D(s,a,o,e.selectedPointCloudBox,l)}),i.singleOn("dragMove",({currentPos:a,zoom:s})=>{!e.selectedPointCloudBox||updateSideViewByCanvas2D(a,s,o,e.selectedPointCloudBox,l)}),i.singleOn("updatePolygonByDrag",({newPolygon:a,originPolygon:s})=>{r(a,s)})},[e,o]),React.useEffect(()=>{var i;(i=e==null?void 0:e.sideViewInstance)==null||i.initSize(o)},[o]),React__default.default.createElement(PointCloudLayout.PointCloudContainer,{className:dom.getClassName("point-cloud-container","side-view"),title:c("SideView"),toolbar:React__default.default.createElement(PointCloudInfos.SizeInfoForView,{perspectiveView:lbUtils.EPerspectiveView.Left})},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","bottom-view-content")},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","core-instance"),ref:t}),!u&&React__default.default.createElement(index,null)))};var PointCloudSideView$1=reactRedux.connect(map.aMapStateToProps)(PointCloudSideView);module.exports=PointCloudSideView$1;
@@ -1 +1 @@
1
- "use strict";var dom=require("../../utils/dom.js"),index=require("../../views/MainView/toolFooter/index.js"),index$1=require("../../views/MainView/toolFooter/ZoomController/index.js"),icons=require("@ant-design/icons"),lbAnnotation=require("@labelbee/lb-annotation"),React=require("react"),PointCloudContext=require("./PointCloudContext.js"),useRotate=require("./hooks/useRotate.js"),useSingleBox=require("./hooks/useSingleBox.js"),PointCloudLayout=require("./PointCloudLayout.js"),PointCloudInfos=require("./PointCloudInfos.js"),usePolygon=require("./hooks/usePolygon.js"),antd=require("antd"),map=require("../../store/annotation/map.js"),reactRedux=require("react-redux"),usePointCloudViews=require("./hooks/usePointCloudViews.js"),useSize=require("../../hooks/useSize.js");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var React__default=_interopDefaultLegacy(React);const{EPolygonPattern}=lbAnnotation.cTool,TransferCanvas2WorldOffset=(t,l,e=1)=>{const{width:i,height:a}=l,r={x:t.x+i*e/2,y:t.y+a*e/2},u={x:l.width/2,y:l.height/2};return{offsetX:(u.x-r.x)/e,offsetY:-(u.y-r.y)/e}},TopViewToolbar=({currentData:t})=>{const{selectNextBox:l,selectPrevBox:e}=useSingleBox.useSingleBox(),{updateRotate:i}=useRotate.useRotate({currentData:t}),a=2,r=()=>{i(-a)},u=()=>{i(a)},d=()=>{i(180)};return React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement("span",{onClick:u,className:dom.getClassName("point-cloud","rotate-reserve")}),React__default.default.createElement("span",{onClick:r,className:dom.getClassName("point-cloud","rotate")}),React__default.default.createElement("span",{onClick:d,className:dom.getClassName("point-cloud","rotate-180")}),React__default.default.createElement(index.FooterDivider,null),React__default.default.createElement(icons.UpSquareOutlined,{onClick:()=>{e()},className:dom.getClassName("point-cloud","prev")}),React__default.default.createElement(icons.DownSquareOutlined,{onClick:()=>{l()},className:dom.getClassName("point-cloud","next")}),React__default.default.createElement(index.FooterDivider,null),React__default.default.createElement(index$1.ZoomController,null))},ZAxisSlider=({setZAxisLimit:t,zAxisLimit:l})=>React__default.default.createElement("div",{style:{position:"absolute",top:128,right:8,height:"50%",zIndex:20}},React__default.default.createElement(antd.Slider,{vertical:!0,step:.5,max:10,min:.5,defaultValue:l,onAfterChange:e=>{t(e)}})),PointCloudTopView=({currentData:t})=>{const l=React.useRef(null),e=React__default.default.useContext(PointCloudContext.PointCloudContext),i=useSize(l),{addPolygon:a,deletePolygon:r}=usePolygon.usePolygon(),{deletePointCloudBox:u}=useSingleBox.useSingleBox(),[d,x]=React.useState(10),c=usePointCloudViews.usePointCloudViews();return React.useEffect(()=>{if(l.current&&(t==null?void 0:t.url)&&(t==null?void 0:t.result)){const o={width:l.current.clientWidth,height:l.current.clientHeight};if(e.topViewInstance)return;const n=new lbAnnotation.PointCloudAnnotation({container:l.current,size:o,pcdPath:t.url});n.addPolygonListOnTopView(t.result),e.setTopViewInstance(n)}},[t]),React.useEffect(()=>{if(!i||!e.topViewInstance||!e.sideViewInstance)return;const{pointCloud2dOperation:o}=e.topViewInstance;o.singleOn("polygonCreated",n=>{if(o.pattern===EPolygonPattern.Normal||!(t==null?void 0:t.url)){a(n);return}c.topViewAddBox(n,i)}),o.singleOn("deletedObject",({id:n})=>{u(n),r(n)}),o.singleOn("deleteSelectedIDs",()=>{e.setSelectedIDs([])}),o.singleOn("addSelectedIDs",n=>{e.addSelectedID(n)}),o.singleOn("setSelectedIDs",n=>{e.setSelectedIDs(n)}),o.singleOn("updatePolygonByDrag",({newPolygon:n})=>{var s;(s=c.topViewUpdateBox)==null||s.call(c,n,i)})},[e,i,t,c]),React.useEffect(()=>{if(!(i==null?void 0:i.width)||!e.topViewInstance)return;e.topViewInstance.initSize(i),e.topViewInstance.updatePolygonList(e.pointCloudBoxList);const{topViewInstance:{pointCloudInstance:o,pointCloud2dOperation:n}}=e;n.singleOn("renderZoom",(s,f)=>{const{offsetX:p,offsetY:C}=TransferCanvas2WorldOffset(f,i,s);if(o.camera.zoom=s,f){const{x:m,y:v,z:g}=o.initCameraPosition;o.camera.position.set(m+C,v-p,g)}o.camera.updateProjectionMatrix(),o.render()}),n.singleOn("dragMove",({currentPos:s,zoom:f})=>{const{offsetX:p,offsetY:C}=TransferCanvas2WorldOffset(s,i,f);o.camera.zoom=f;const{x:m,y:v,z:g}=o.initCameraPosition;o.camera.position.set(m+C,v-p,g),o.render()})},[i]),React.useEffect(()=>{var o,n;(n=(o=e.topViewInstance)==null?void 0:o.pointCloudInstance)==null||n.applyZAxisPoints(d)},[d]),React.useEffect(()=>{c.topViewSelectedChanged()},[e.selectedIDs]),React__default.default.createElement(PointCloudLayout.PointCloudContainer,{className:dom.getClassName("point-cloud-container","top-view"),title:"\u4FEF\u89C6\u56FE",toolbar:React__default.default.createElement(TopViewToolbar,{currentData:t})},React__default.default.createElement("div",{style:{position:"relative",flex:1}},React__default.default.createElement("div",{style:{width:"100%",height:"100%"},ref:l}),React__default.default.createElement(PointCloudInfos.BoxInfos,null),React__default.default.createElement(ZAxisSlider,{zAxisLimit:d,setZAxisLimit:x}),React__default.default.createElement(PointCloudInfos.PointCloudValidity,null)))};var PointCloudTopView$1=reactRedux.connect(map.aMapStateToProps)(PointCloudTopView);module.exports=PointCloudTopView$1;
1
+ "use strict";var dom=require("../../utils/dom.js"),index=require("../../views/MainView/toolFooter/index.js"),index$1=require("../../views/MainView/toolFooter/ZoomController/index.js"),icons=require("@ant-design/icons"),lbAnnotation=require("@labelbee/lb-annotation"),React=require("react"),PointCloudContext=require("./PointCloudContext.js"),useRotate=require("./hooks/useRotate.js"),useSingleBox=require("./hooks/useSingleBox.js"),PointCloudLayout=require("./PointCloudLayout.js"),PointCloudInfos=require("./PointCloudInfos.js"),usePolygon=require("./hooks/usePolygon.js"),useZoom=require("./hooks/useZoom.js"),antd=require("antd"),map=require("../../store/annotation/map.js"),reactRedux=require("react-redux"),usePointCloudViews=require("./hooks/usePointCloudViews.js"),useSize=require("../../hooks/useSize.js"),reactI18next=require("react-i18next");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var React__default=_interopDefaultLegacy(React);const{EPolygonPattern}=lbAnnotation.cTool,TransferCanvas2WorldOffset=(t,i,e=1)=>{const{width:l,height:c}=i,r={x:t.x+l*e/2,y:t.y+c*e/2},u={x:i.width/2,y:i.height/2};return{offsetX:(u.x-r.x)/e,offsetY:-(u.y-r.y)/e}},TopViewToolbar=({currentData:t})=>{const{zoom:i,zoomIn:e,zoomOut:l,initialPosition:c}=useZoom.useZoom(),{selectNextBox:r,selectPrevBox:u}=useSingleBox.useSingleBox(),{updateRotate:f}=useRotate.useRotate({currentData:t}),d=2,m=()=>{f(-d)},C=()=>{f(d)},a=()=>{f(180)};return React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement("span",{onClick:C,className:dom.getClassName("point-cloud","rotate-reserve")}),React__default.default.createElement("span",{onClick:m,className:dom.getClassName("point-cloud","rotate")}),React__default.default.createElement("span",{onClick:a,className:dom.getClassName("point-cloud","rotate-180")}),React__default.default.createElement(index.FooterDivider,null),React__default.default.createElement(icons.UpSquareOutlined,{onClick:()=>{u()},className:dom.getClassName("point-cloud","prev")}),React__default.default.createElement(icons.DownSquareOutlined,{onClick:()=>{r()},className:dom.getClassName("point-cloud","next")}),React__default.default.createElement(index.FooterDivider,null),React__default.default.createElement(index$1.ZoomController,{initialPosition:c,zoomIn:e,zoomOut:l,zoom:i}))},ZAxisSlider=({setZAxisLimit:t,zAxisLimit:i})=>React__default.default.createElement("div",{style:{position:"absolute",top:128,right:8,height:"50%",zIndex:20}},React__default.default.createElement(antd.Slider,{vertical:!0,step:.5,max:10,min:.5,defaultValue:i,onAfterChange:e=>{t(e)}})),PointCloudTopView=({currentData:t})=>{const i=React.useRef(null),e=React__default.default.useContext(PointCloudContext.PointCloudContext),l=useSize(i),{setZoom:c}=useZoom.useZoom(),{addPolygon:r,deletePolygon:u}=usePolygon.usePolygon(),{deletePointCloudBox:f}=useSingleBox.useSingleBox(),[d,m]=React.useState(10),{t:C}=reactI18next.useTranslation(),a=usePointCloudViews.usePointCloudViews();return React.useLayoutEffect(()=>{if(i.current&&(t==null?void 0:t.url)&&(t==null?void 0:t.result)){const o={width:i.current.clientWidth,height:i.current.clientHeight},n=new lbAnnotation.PointCloudAnnotation({container:i.current,size:o,pcdPath:t.url});e.setTopViewInstance(n)}},[]),React.useEffect(()=>{if(!l||!e.topViewInstance||!e.sideViewInstance)return;const{pointCloud2dOperation:o}=e.topViewInstance;o.singleOn("polygonCreated",n=>{if(o.pattern===EPolygonPattern.Normal||!(t==null?void 0:t.url)){r(n);return}a.topViewAddBox(n,l)}),o.singleOn("deletedObject",({id:n})=>{f(n),u(n)}),o.singleOn("deleteSelectedIDs",()=>{e.setSelectedIDs([])}),o.singleOn("addSelectedIDs",n=>{e.addSelectedID(n)}),o.singleOn("setSelectedIDs",n=>{e.setSelectedIDs(n)}),o.singleOn("updatePolygonByDrag",({newPolygon:n})=>{var s;(s=a.topViewUpdateBox)==null||s.call(a,n,l)})},[e,l,t,a]),React.useEffect(()=>{if(!(l==null?void 0:l.width)||!e.topViewInstance)return;e.topViewInstance.initSize(l),e.topViewInstance.updatePolygonList(e.pointCloudBoxList);const{topViewInstance:{pointCloudInstance:o,pointCloud2dOperation:n}}=e;n.singleOn("renderZoom",(s,p)=>{const{offsetX:v,offsetY:x}=TransferCanvas2WorldOffset(p,l,s);if(o.camera.zoom=s,p){const{x:g,y:w,z:P}=o.initCameraPosition;o.camera.position.set(g+x,w-v,P)}o.camera.updateProjectionMatrix(),o.render(),c(s)}),n.singleOn("dragMove",({currentPos:s,zoom:p})=>{const{offsetX:v,offsetY:x}=TransferCanvas2WorldOffset(s,l,p);o.camera.zoom=p;const{x:g,y:w,z:P}=o.initCameraPosition;o.camera.position.set(g+x,w-v,P),o.render()})},[l]),React.useEffect(()=>{var o,n;(n=(o=e.topViewInstance)==null?void 0:o.pointCloudInstance)==null||n.applyZAxisPoints(d)},[d]),React.useEffect(()=>{a.topViewSelectedChanged()},[e.selectedIDs]),React__default.default.createElement(PointCloudLayout.PointCloudContainer,{className:dom.getClassName("point-cloud-container","top-view"),title:C("TopView"),toolbar:React__default.default.createElement(TopViewToolbar,{currentData:t})},React__default.default.createElement("div",{style:{position:"relative",flex:1}},React__default.default.createElement("div",{style:{width:"100%",height:"100%"},ref:i}),React__default.default.createElement(PointCloudInfos.BoxInfos,null),React__default.default.createElement(ZAxisSlider,{zAxisLimit:d,setZAxisLimit:m}),React__default.default.createElement(PointCloudInfos.PointCloudValidity,null)))};var PointCloudTopView$1=reactRedux.connect(map.aMapStateToProps)(PointCloudTopView);module.exports=PointCloudTopView$1;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var lbAnnotation=require("@labelbee/lb-annotation"),lbUtils=require("@labelbee/lb-utils"),React=require("react"),PointCloudContext=require("../PointCloudContext.js"),useSingleBox=require("./useSingleBox.js"),_=require("lodash"),reactRedux=require("react-redux"),StepUtils=require("../../../utils/StepUtils.js"),index=require("../../../utils/index.js"),actionCreators=require("../../../store/annotation/actionCreators.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var ___default=_interopDefaultLegacy(_),__async=(e,i,s)=>new Promise((d,t)=>{var n=r=>{try{c(s.next(r))}catch(h){t(h)}},u=r=>{try{c(s.throw(r))}catch(h){t(h)}},c=r=>r.done?d(r.value):Promise.resolve(r.value).then(n,u);c((s=s.apply(e,i)).next())});const DEFAULT_SCOPE=5,DEFAULT_RADIUS=90,PointCloudView={"3D":"3D",Top:"Top",Side:"Side",Back:"Back"},transferCanvas2World=(e,i)=>{const{width:s,height:d}=i,{x:t,y:n}=e;return{x:-n+d/2,y:-(t-s/2)}},topViewPolygon2PointCloud=(e,i,s,d,t)=>{const[n,u,c,r]=e.pointList.map(f=>transferCanvas2World(f,i)),h=lbAnnotation.MathUtils.getLineCenterPoint([n,c]),L=lbAnnotation.MathUtils.getLineLength(n,u),p=lbAnnotation.MathUtils.getLineLength(u,c),g=lbAnnotation.MathUtils.getRadiusFromQuadrangle(e.pointList);let y=0,P=1;if(s){const f=s.getSensesPointZAxisInPolygon([n,u,c,r]);y=(f.maxZ+f.minZ)/2,P=f.maxZ-f.minZ}d&&(y=d.center.z,P=d.depth);const v={center:{x:h.x,y:h.y,z:y},width:p,height:L,depth:P,rotation:g,id:e.id,attribute:"",valid:!0};return t&&Object.assign(v,t),v},sideViewPolygon2PointCloud=(e,i,s,d)=>{const[t,n,u]=e.pointList,[c,r,h]=i.pointList,L=lbAnnotation.MathUtils.getLineCenterPoint([t,u]),p=lbAnnotation.MathUtils.getLineCenterPoint([c,h]),g={x:L.x-p.x,y:L.y-p.y},y=Math.cos(s.rotation),P=Math.sin(s.rotation),v={x:g.x,y:g.x*P+g.y*y,z:L.y-p.y},f=lbAnnotation.MathUtils.getLineLength(t,n),w=lbAnnotation.MathUtils.getLineLength(c,r),U=f-w,V=lbAnnotation.MathUtils.getLineLength(n,u),b=lbAnnotation.MathUtils.getLineLength(r,h),D=V-b,{newBoxParams:I}=d.getNewBoxBySideUpdate(v,D,U,s);return I},synchronizeSideView=(e,i,s,d)=>{if(!s)return;const{pointCloud2dOperation:t,pointCloudInstance:n}=s;n.loadPCDFileByBox(d,e,{width:DEFAULT_SCOPE,depth:DEFAULT_SCOPE});const{cameraPositionVector:u}=n.updateOrthoCamera(e,lbUtils.EPerspectiveView.Left);n.setInitCameraPosition(u);const{polygon2d:c,zoom:r}=n.getBoxSidePolygon2DCoordinate(e);n.camera.zoom=r,n.camera.updateProjectionMatrix(),n.render(),t.initPosition(),t.zoomChangeOnCenter(r),t.setResultAndSelectedID([{id:i.id,pointList:c,textAttribute:"",isRect:!0}],i.id)},synchronizeBackView=(e,i,s,d)=>{if(!s)return;const{pointCloud2dOperation:t,pointCloudInstance:n}=s;n.loadPCDFileByBox(d,e,{height:DEFAULT_SCOPE,depth:DEFAULT_SCOPE});const{cameraPositionVector:u}=n.updateOrthoCamera(e,lbUtils.EPerspectiveView.Back);n.setInitCameraPosition(u);const{polygon2d:c,zoom:r}=n.getBoxBackPolygon2DCoordinate(e);n.camera.zoom=r,n.camera.updateProjectionMatrix(),n.render(),t.initPosition(),t.zoomChangeOnCenter(r),t.setResultAndSelectedID([{id:i.id,pointList:c,textAttribute:"",isRect:!0}],i.id)},synchronizeTopView=(e,i,s,d)=>{if(!s||!d)return;d.generateBox(e,i.id),d.updateCameraByBox(e,lbUtils.EPerspectiveView.Top),d.render();const{pointCloud2dOperation:t,pointCloudInstance:n}=s,{polygon2d:u}=n.getBoxTopPolygon2DCoordinate(e),c=[...t.polygonList],r=c.find(h=>h.id===i.id);r?r.pointList=u:c.push({id:i.id,pointList:u,textAttribute:"",isRect:!0}),t.setResultAndSelectedID(c,i.id)},usePointCloudViews=()=>{const e=React.useContext(PointCloudContext.PointCloudContext),{topViewInstance:i,sideViewInstance:s,backViewInstance:d,mainViewInstance:t,addPointCloudBox:n,setSelectedIDs:u,selectedIDs:c,pointCloudBoxList:r,setPointCloudResult:h}=e,{updateSelectedBox:L}=useSingleBox.useSingleBox(),{currentData:p,config:g}=reactRedux.useSelector(o=>{const{stepList:l,step:a,imgList:C,imgIndex:x}=o.annotation;return{currentData:C[x],config:index.jsonParser(StepUtils.getCurrentStepInfo(a,l).config)}}),y=reactRedux.useDispatch(),{selectedBox:P}=useSingleBox.useSingleBox(),v=P==null?void 0:P.info;if(!i||!s)return{topViewAddBox:()=>{},topViewSelectedChanged:()=>{},sideViewUpdateBox:()=>{}};const{pointCloudInstance:f}=i,w=()=>{var o;return r.length>0?((o=r.sort((a,C)=>a.trackID-C.trackID).slice(-1)[0])==null?void 0:o.trackID)+1:1},U=o=>{t==null||t.generateBox(o),t==null||t.controls.update(),t==null||t.render()},V=(o,l)=>{var a,C,x;const m=topViewPolygon2PointCloud(o,l,f,void 0,{attribute:(x=(C=(a=g==null?void 0:g.attributeList)==null?void 0:a[0])==null?void 0:C.value)!=null?x:""}),O=i==null?void 0:i.pointCloud2dOperation,B=Object.assign(m,{trackID:w()});O.setSelectedIDs([o.id]),u(B.id),S(PointCloudView.Top,o,B),n(B)},b=()=>{const o=P==null?void 0:P.info,l=i==null?void 0:i.pointCloud2dOperation;if(l.setSelectedIDs(c),!o||!l)return;const a=l.selectedPolygon;S(PointCloudView.Top,a,o)},D=(o,l,a)=>{if(v){const C=sideViewPolygon2PointCloud(o,l,v,s.pointCloudInstance);L(C),S(a,o,C)}},I=(o,l)=>{D(o,l,PointCloudView.Side)},k=(o,l)=>{D(o,l,PointCloudView.Back)},R=(o,l)=>{if(v){const a=topViewPolygon2PointCloud(o,l,void 0,v);Object.assign(v,___default.default.pickBy(a,(C,x)=>["width","height","x","y"])),L(a),S(PointCloudView.Top,o,v)}},S=(o,l,a)=>{const C=p==null?void 0:p.url,x={[PointCloudView.Side]:()=>{synchronizeSideView(a,l,s,C)},[PointCloudView.Back]:()=>{d&&synchronizeBackView(a,l,d,C)},[PointCloudView.Top]:()=>{synchronizeTopView(a,l,i,t)}};Object.keys(x).forEach(m=>{m!==o&&x[m]()}),U(a),t==null||t.highlightOriginPointCloud(a)};return{topViewAddBox:V,topViewSelectedChanged:b,topViewUpdateBox:R,sideViewUpdateBox:I,backViewUpdateBox:k,pointCloudBoxListUpdated:o=>{i.updatePolygonList(o),t==null||t.generateBoxes(o)},clearAllResult:()=>{r.forEach(o=>{t==null||t.removeObjectByName(o.id)}),t==null||t.render(),h([]),i.pointCloud2dOperation.clearActiveStatus(),i.pointCloud2dOperation.clearResult()},initPointCloud3d:()=>{!t||(t.initPerspectiveCamera(),t.initRenderer(),t.render())},updatePointCloudData:()=>__async(void 0,null,function*(){var o,l,a,C,x,m;if(!(p==null?void 0:p.url)||!t)return;if(actionCreators.SetPointCloudLoading(y,!0),yield t.loadPCDFile(p.url,(o=g==null?void 0:g.radius)!=null?o:DEFAULT_RADIUS),r.forEach(B=>{t==null||t.removeObjectByName(B.id)}),p.result){const B=lbUtils.PointCloudUtils.getBoxParamsFromResultList(p.result),A=lbUtils.PointCloudUtils.getPolygonListFromResultList(p.result);B.forEach(j=>{t==null||t.generateBox(j)}),e.setPointCloudResult(B),e.setPolygonList(A)}else e.setPointCloudResult([]),e.setPolygonList([]);t.updateTopCamera();const O=(a=(l=index.jsonParser(p.result))==null?void 0:l.valid)!=null?a:!0;e.setPointCloudValid(O),(C=e.sideViewInstance)==null||C.clearAllData(),(x=e.backViewInstance)==null||x.clearAllData(),i.updateData(p.url,p.result,{radius:(m=g==null?void 0:g.radius)!=null?m:DEFAULT_RADIUS}),actionCreators.SetPointCloudLoading(y,!1)})}};exports.synchronizeBackView=synchronizeBackView,exports.synchronizeSideView=synchronizeSideView,exports.synchronizeTopView=synchronizeTopView,exports.topViewPolygon2PointCloud=topViewPolygon2PointCloud,exports.transferCanvas2World=transferCanvas2World,exports.usePointCloudViews=usePointCloudViews;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var lbAnnotation=require("@labelbee/lb-annotation"),lbUtils=require("@labelbee/lb-utils"),React=require("react"),PointCloudContext=require("../PointCloudContext.js"),useSingleBox=require("./useSingleBox.js"),_=require("lodash"),reactRedux=require("react-redux"),StepUtils=require("../../../utils/StepUtils.js"),index=require("../../../utils/index.js"),actionCreators=require("../../../store/annotation/actionCreators.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var ___default=_interopDefaultLegacy(_),__async=(e,o,s)=>new Promise((d,t)=>{var i=r=>{try{a(s.next(r))}catch(h){t(h)}},u=r=>{try{a(s.throw(r))}catch(h){t(h)}},a=r=>r.done?d(r.value):Promise.resolve(r.value).then(i,u);a((s=s.apply(e,o)).next())});const DEFAULT_SCOPE=5,DEFAULT_RADIUS=90,PointCloudView={"3D":"3D",Top:"Top",Side:"Side",Back:"Back"},transferCanvas2World=(e,o)=>{const{width:s,height:d}=o,{x:t,y:i}=e;return{x:-i+d/2,y:-(t-s/2)}},topViewPolygon2PointCloud=(e,o,s,d,t)=>{const[i,u,a,r]=e.pointList.map(f=>transferCanvas2World(f,o)),h=lbAnnotation.MathUtils.getLineCenterPoint([i,a]),L=lbAnnotation.MathUtils.getLineLength(i,u),p=lbAnnotation.MathUtils.getLineLength(u,a),g=lbAnnotation.MathUtils.getRadiusFromQuadrangle(e.pointList);let y=0,P=1;if(s){const f=s.getSensesPointZAxisInPolygon([i,u,a,r]);y=(f.maxZ+f.minZ)/2,P=f.maxZ-f.minZ}d&&(y=d.center.z,P=d.depth);const v={center:{x:h.x,y:h.y,z:y},width:p,height:L,depth:P,rotation:g,id:e.id,attribute:"",valid:!0};return t&&Object.assign(v,t),v},sideViewPolygon2PointCloud=(e,o,s,d)=>{const[t,i,u]=e.pointList,[a,r,h]=o.pointList,L=lbAnnotation.MathUtils.getLineCenterPoint([t,u]),p=lbAnnotation.MathUtils.getLineCenterPoint([a,h]),g={x:L.x-p.x,y:L.y-p.y},y=Math.cos(s.rotation),P=Math.sin(s.rotation),v={x:g.x,y:g.x*P+g.y*y,z:L.y-p.y},f=lbAnnotation.MathUtils.getLineLength(t,i),U=lbAnnotation.MathUtils.getLineLength(a,r),V=f-U,D=lbAnnotation.MathUtils.getLineLength(i,u),S=lbAnnotation.MathUtils.getLineLength(r,h),b=D-S,{newBoxParams:O}=d.getNewBoxBySideUpdate(v,b,V,s);return O},synchronizeSideView=(e,o,s,d)=>{if(!s)return;const{pointCloud2dOperation:t,pointCloudInstance:i}=s;i.loadPCDFileByBox(d,e,{width:DEFAULT_SCOPE,depth:DEFAULT_SCOPE});const{cameraPositionVector:u}=i.updateOrthoCamera(e,lbUtils.EPerspectiveView.Left);i.setInitCameraPosition(u);const{polygon2d:a,zoom:r}=i.getBoxSidePolygon2DCoordinate(e);i.camera.zoom=r,i.camera.updateProjectionMatrix(),i.render(),t.initPosition(),t.zoomChangeOnCenter(r),t.setResultAndSelectedID([{id:o.id,pointList:a,textAttribute:"",isRect:!0}],o.id)},synchronizeBackView=(e,o,s,d)=>{if(!s)return;const{pointCloud2dOperation:t,pointCloudInstance:i}=s;i.loadPCDFileByBox(d,e,{height:DEFAULT_SCOPE,depth:DEFAULT_SCOPE});const{cameraPositionVector:u}=i.updateOrthoCamera(e,lbUtils.EPerspectiveView.Back);i.setInitCameraPosition(u);const{polygon2d:a,zoom:r}=i.getBoxBackPolygon2DCoordinate(e);i.camera.zoom=r,i.camera.updateProjectionMatrix(),i.render(),t.initPosition(),t.zoomChangeOnCenter(r),t.setResultAndSelectedID([{id:o.id,pointList:a,textAttribute:"",isRect:!0}],o.id)},synchronizeTopView=(e,o,s,d)=>{if(!s||!d)return;d.generateBox(e,o.id),d.updateCameraByBox(e,lbUtils.EPerspectiveView.Top),d.render();const{pointCloud2dOperation:t,pointCloudInstance:i}=s,{polygon2d:u}=i.getBoxTopPolygon2DCoordinate(e),a=[...t.polygonList],r=a.find(h=>h.id===o.id);r?r.pointList=u:a.push({id:o.id,pointList:u,textAttribute:"",isRect:!0}),t.setResultAndSelectedID(a,o.id)},usePointCloudViews=()=>{const e=React.useContext(PointCloudContext.PointCloudContext),{topViewInstance:o,sideViewInstance:s,backViewInstance:d,mainViewInstance:t,addPointCloudBox:i,setSelectedIDs:u,selectedIDs:a,pointCloudBoxList:r,setPointCloudResult:h}=e,{updateSelectedBox:L}=useSingleBox.useSingleBox(),{currentData:p,config:g}=reactRedux.useSelector(n=>{const{stepList:l,step:c,imgList:C,imgIndex:x}=n.annotation;return{currentData:C[x],config:index.jsonParser(StepUtils.getCurrentStepInfo(c,l).config)}}),y=reactRedux.useDispatch(),{selectedBox:P}=useSingleBox.useSingleBox(),v=P==null?void 0:P.info;if(!o||!s)return{topViewAddBox:()=>{},topViewSelectedChanged:()=>{},sideViewUpdateBox:()=>{}};const{pointCloudInstance:f}=o,U=n=>{t==null||t.generateBox(n),t==null||t.controls.update(),t==null||t.render()},V=(n,l)=>{var c,C,x;const m=topViewPolygon2PointCloud(n,l,f,void 0,{attribute:(x=(C=(c=g==null?void 0:g.attributeList)==null?void 0:c[0])==null?void 0:C.value)!=null?x:""}),I=o==null?void 0:o.pointCloud2dOperation,B=m;I.setSelectedIDs([n.id]),u(B.id),w(PointCloudView.Top,n,B),i(B)},D=()=>{const n=P==null?void 0:P.info,l=o==null?void 0:o.pointCloud2dOperation;if(l.setSelectedIDs(a),!n||!l)return;const c=l.selectedPolygon;w(PointCloudView.Top,c,n)},S=(n,l,c)=>{if(v){const C=sideViewPolygon2PointCloud(n,l,v,s.pointCloudInstance);L(C),w(c,n,C)}},b=(n,l)=>{S(n,l,PointCloudView.Side)},O=(n,l)=>{S(n,l,PointCloudView.Back)},R=(n,l)=>{if(v){const c=topViewPolygon2PointCloud(n,l,void 0,v);Object.assign(v,___default.default.pickBy(c,(C,x)=>["width","height","x","y"])),L(c),w(PointCloudView.Top,n,v)}},w=(n,l,c)=>{const C=p==null?void 0:p.url,x={[PointCloudView.Side]:()=>{synchronizeSideView(c,l,s,C)},[PointCloudView.Back]:()=>{d&&synchronizeBackView(c,l,d,C)},[PointCloudView.Top]:()=>{synchronizeTopView(c,l,o,t)}};Object.keys(x).forEach(m=>{m!==n&&x[m]()}),U(c),t==null||t.highlightOriginPointCloud(c)};return{topViewAddBox:V,topViewSelectedChanged:D,topViewUpdateBox:R,sideViewUpdateBox:b,backViewUpdateBox:O,pointCloudBoxListUpdated:n=>{o.updatePolygonList(n),t==null||t.generateBoxes(n)},clearAllResult:()=>{r.forEach(n=>{t==null||t.removeObjectByName(n.id)}),t==null||t.render(),h([]),o.pointCloud2dOperation.clearActiveStatus(),o.pointCloud2dOperation.clearResult()},initPointCloud3d:()=>{!t||(t.initPerspectiveCamera(),t.initRenderer(),t.render())},updatePointCloudData:()=>__async(void 0,null,function*(){var n,l,c,C,x,m;if(!(p==null?void 0:p.url)||!t)return;if(actionCreators.SetPointCloudLoading(y,!0),yield t.loadPCDFile(p.url,(n=g==null?void 0:g.radius)!=null?n:DEFAULT_RADIUS),r.forEach(B=>{t==null||t.removeObjectByName(B.id)}),p.result){const B=lbUtils.PointCloudUtils.getBoxParamsFromResultList(p.result),A=lbUtils.PointCloudUtils.getPolygonListFromResultList(p.result);B.forEach(j=>{t==null||t.generateBox(j)}),e.setPointCloudResult(B),e.setPolygonList(A)}else e.setPointCloudResult([]),e.setPolygonList([]);t.updateTopCamera();const I=(c=(l=index.jsonParser(p.result))==null?void 0:l.valid)!=null?c:!0;e.setPointCloudValid(I),(C=e.sideViewInstance)==null||C.clearAllData(),(x=e.backViewInstance)==null||x.clearAllData(),o.updateData(p.url,p.result,{radius:(m=g==null?void 0:g.radius)!=null?m:DEFAULT_RADIUS}),actionCreators.SetPointCloudLoading(y,!1)})}};exports.synchronizeBackView=synchronizeBackView,exports.synchronizeSideView=synchronizeSideView,exports.synchronizeTopView=synchronizeTopView,exports.topViewPolygon2PointCloud=topViewPolygon2PointCloud,exports.transferCanvas2World=transferCanvas2World,exports.usePointCloudViews=usePointCloudViews;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react"),PointCloudContext=require("../PointCloudContext.js");const useZoom=()=>{const{topViewInstance:o}=React.useContext(PointCloudContext.PointCloudContext),{zoom:t,setZoom:e}=React.useContext(PointCloudContext.PointCloudContext);return{zoom:t,setZoom:e,initialPosition:()=>{o==null||o.pointCloud2dOperation.initImgPos()},zoomOut:()=>{o==null||o.pointCloud2dOperation.zoomChanged(!1)},zoomIn:()=>{o==null||o.pointCloud2dOperation.zoomChanged(!0)}}};exports.useZoom=useZoom;
@@ -1 +1 @@
1
- "use strict";var dom=require("../../utils/dom.js"),React=require("react"),PointCloud3DView=require("./PointCloud3DView.js"),PointCloudBackView=require("./PointCloudBackView.js"),PointCloudTopView=require("./PointCloudTopView.js"),PointCloudSideView=require("./PointCloudSideView.js"),PointCloud2DView=require("./PointCloud2DView.js"),PointCloudListener=require("./PointCloudListener.js"),reactRedux=require("react-redux");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React);const PointCloudView=({imgList:e})=>e.length===0?null:React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(PointCloudListener,null),React__default.default.createElement("div",{className:dom.getClassName("point-cloud-layout")},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-wrapper")},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","left")},React__default.default.createElement(PointCloud2DView,null),React__default.default.createElement(PointCloud3DView,null)),React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","right")},React__default.default.createElement(PointCloudTopView,null),React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","right-bottom")},React__default.default.createElement(PointCloudSideView,null),React__default.default.createElement(PointCloudBackView,null)))))),mapStateToProps=e=>({imgList:e.annotation.imgList});var PointCloudView$1=reactRedux.connect(mapStateToProps)(PointCloudView);module.exports=PointCloudView$1;
1
+ "use strict";var dom=require("../../utils/dom.js"),React=require("react"),PointCloud3DView=require("./PointCloud3DView.js"),PointCloudBackView=require("./PointCloudBackView.js"),PointCloudTopView=require("./PointCloudTopView.js"),PointCloudSideView=require("./PointCloudSideView.js"),PointCloud2DView=require("./PointCloud2DView.js"),PointCloudListener=require("./PointCloudListener.js"),reactRedux=require("react-redux");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React);const PointCloudView=({imgList:e})=>e.length===0?null:React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(PointCloudListener,null),React__default.default.createElement("div",{className:dom.getClassName("point-cloud-layout"),onContextMenu:t=>t.preventDefault()},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-wrapper")},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","left")},React__default.default.createElement(PointCloud2DView,null),React__default.default.createElement(PointCloud3DView,null)),React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","right")},React__default.default.createElement(PointCloudTopView,null),React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","right-bottom")},React__default.default.createElement(PointCloudSideView,null),React__default.default.createElement(PointCloudBackView,null)))))),mapStateToProps=e=>({imgList:e.annotation.imgList});var PointCloudView$1=reactRedux.connect(mapStateToProps)(PointCloudView);module.exports=PointCloudView$1;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react"),reactRedux=require("react-redux"),Actions=require("../store/Actions.js");const useCustomToolInstance=({basicInfo:t}={})=>{var r;const s=reactRedux.useDispatch(),u=React.useRef({valid:(r=t==null?void 0:t.valid)!=null?r:!0,exportData:()=>[[],{}],exportCustomData:()=>({}),clearResult:()=>{},singleOn:()=>{},on:()=>{},setResult:()=>{},history:{initRecord:()=>{},pushHistory:()=>{}},setDefaultAttribute:e=>{},setSubAttribute:(e,a)=>{},setValid:()=>{}}),o=e=>{s({type:Actions.ANNOTATION_ACTIONS.SET_TOOL,payload:{instance:e}})},n=()=>{s({type:Actions.ANNOTATION_ACTIONS.SET_TOOL,payload:{instance:void 0}})};return React.useEffect(()=>(o(u.current),()=>{n()}),[]),{toolInstanceRef:u}};exports.useCustomToolInstance=useCustomToolInstance;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react"),reactRedux=require("react-redux"),Actions=require("../store/Actions.js");const useCustomToolInstance=({basicInfo:e}={})=>{var r;const s=reactRedux.useDispatch(),u=React.useRef({valid:(r=e==null?void 0:e.valid)!=null?r:!0,exportData:()=>[[],{}],exportCustomData:()=>({}),clearResult:()=>{},singleOn:()=>{},on:()=>{},setResult:()=>{},history:{initRecord:()=>{},pushHistory:()=>{}},setDefaultAttribute:t=>{},setSubAttribute:(t,n)=>{},setValid:()=>{},updateRotate:()=>{}}),o=t=>{s({type:Actions.ANNOTATION_ACTIONS.SET_TOOL,payload:{instance:t}})},a=()=>{s({type:Actions.ANNOTATION_ACTIONS.SET_TOOL,payload:{instance:void 0}})};return React.useEffect(()=>(o(u.current),()=>{a()}),[]),{toolInstanceRef:u}};exports.useCustomToolInstance=useCustomToolInstance;
package/dist/index.css CHANGED
@@ -1235,18 +1235,9 @@
1235
1235
  }
1236
1236
  .bee-point-cloud-wrapper .bee-point-cloud-container__left .bee-point-cloud-2d-container .bee-point-cloud-2d-image {
1237
1237
  flex: 1;
1238
- display: flex;
1239
- align-items: center;
1240
1238
  background-color: #4c4c4c;
1241
- overflow: hidden;
1242
- }
1243
- .bee-point-cloud-wrapper .bee-point-cloud-container__left .bee-point-cloud-2d-container .bee-point-cloud-2d-image > img {
1244
- object-fit: scale-down;
1245
- width: 100%;
1246
- height: 100%;
1247
1239
  }
1248
1240
  .bee-point-cloud-wrapper .bee-point-cloud-container__left .bee-point-cloud-3d-container {
1249
- height: 55%;
1250
1241
  display: flex;
1251
1242
  flex-direction: column;
1252
1243
  overflow: hidden;
@@ -19,6 +19,7 @@ interface IProps {
19
19
  backgroundStyle?: React.CSSProperties;
20
20
  onChange?: (type: 'hover' | 'selected', ids: string[]) => void;
21
21
  showLoading?: boolean;
22
+ globalStyle?: React.CSSProperties;
22
23
  }
23
24
  declare const _default: React.ForwardRefExoticComponent<IProps & React.RefAttributes<unknown>>;
24
25
  export default _default;
@@ -25,6 +25,8 @@ export interface IPointCloudContext extends IPointCloudContextInstances {
25
25
  addPointCloudBox: (boxParams: IPointCloudBox) => void;
26
26
  polygonList: IPolygonData[];
27
27
  setPolygonList: (polygonList: IPolygonData[]) => void;
28
+ zoom: number;
29
+ setZoom: (zoom: number) => void;
28
30
  }
29
31
  export declare const PointCloudContext: React.Context<IPointCloudContext>;
30
32
  export declare const PointCloudProvider: React.FC<{}>;
@@ -3,4 +3,5 @@ export declare const PointCloudContainer: React.FC<{
3
3
  title: string;
4
4
  toolbar?: React.ReactElement;
5
5
  className?: string;
6
+ style?: React.CSSProperties;
6
7
  }>;
@@ -0,0 +1,7 @@
1
+ export declare const useZoom: () => {
2
+ zoom: number;
3
+ setZoom: (zoom: number) => void;
4
+ initialPosition: () => void;
5
+ zoomOut: () => void;
6
+ zoomIn: () => void;
7
+ };
@@ -14,6 +14,7 @@ export interface ICustomToolInstance {
14
14
  };
15
15
  setDefaultAttribute: (attribute: string) => void;
16
16
  setSubAttribute: (key: string, value: string) => void;
17
+ updateRotate: () => void;
17
18
  }
18
19
  export interface ICustomToolInstanceProps {
19
20
  basicInfo?: {
@@ -2,6 +2,7 @@ import React from 'react';
2
2
  import { ToolInstance } from '@/store/annotation/types';
3
3
  interface IProps {
4
4
  toolInstance: ToolInstance;
5
+ zoom?: number;
5
6
  }
6
7
  declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
7
8
  children?: React.ReactNode;
@@ -6,6 +6,7 @@ interface IZoomControllerProps {
6
6
  initialPosition?: () => void;
7
7
  zoomIn?: () => void;
8
8
  zoomOut?: () => void;
9
+ zoom?: number;
9
10
  }
10
11
  export declare const ZoomController: React.FC<IZoomControllerProps>;
11
12
  declare const _default: import("react-redux").ConnectedComponent<React.FC<{
@@ -1 +1 @@
1
- "use strict";var icon_clear=require("../../../../assets/annotation/common/icon_clear.svg.js"),icon_clear_a=require("../../../../assets/annotation/common/icon_clear_a.svg.js"),icon_invalid=require("../../../../assets/annotation/common/icon_invalid.svg.js"),icon_invalid_a=require("../../../../assets/annotation/common/icon_invalid_a.svg.js"),icons=require("@ant-design/icons"),reactI18next=require("react-i18next"),React=require("react"),actionCreators=require("../../../../store/annotation/actionCreators.js"),index=require("../../../../index.js"),reactRedux=require("react-redux");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),__defProp=Object.defineProperty,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,r,t)=>r in e?__defProp(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,__spreadValues=(e,r)=>{for(var t in r||(r={}))__hasOwnProp.call(r,t)&&__defNormalProp(e,t,r[t]);if(__getOwnPropSymbols)for(var t of __getOwnPropSymbols(r))__propIsEnum.call(r,t)&&__defNormalProp(e,t,r[t]);return e};const useOperationList=e=>{const[r,t]=React.useState(0),{t:a}=reactI18next.useTranslation(),{currentData:o}=reactRedux.useSelector(i=>{const{imgList:u,imgIndex:v}=i.annotation;return{currentData:u[v]}}),n={height:"25px",lineHeight:"25px",display:"flex",justifyContent:"center",alignItems:"center"},s={name:a("ClearLabel"),key:"empty",imgSvg:icon_clear,hoverSvg:icon_clear_a,onClick:()=>{e==null||e.clearResult()}},c={name:a((e==null?void 0:e.valid)===!1?"SetAsValid":"SetAsInvalid"),key:"setValidity",imgSvg:React__default.default.createElement(icons.StopOutlined,{style:n}),hoverSvg:React__default.default.createElement(icons.StopOutlined,{style:__spreadValues({color:"#666fff"},n)}),onClick:()=>{e.setValid(!e.valid),setTimeout(()=>{t(i=>i+1)})}},l={name:a("CopyThePrevious"),key:"copyPrevious",imgSvg:icon_invalid,hoverSvg:icon_invalid_a,onClick:()=>{index.store.dispatch(actionCreators.CopyBackWordResult())}};return React.useMemo(()=>({empty:s,setValidity:c,copyPrevious:l}),[e,r,o])};module.exports=useOperationList;
1
+ "use strict";var icon_clear=require("../../../../assets/annotation/common/icon_clear.svg.js"),icon_clear_a=require("../../../../assets/annotation/common/icon_clear_a.svg.js"),icon_invalid=require("../../../../assets/annotation/common/icon_invalid.svg.js"),icon_invalid_a=require("../../../../assets/annotation/common/icon_invalid_a.svg.js"),icons=require("@ant-design/icons"),reactI18next=require("react-i18next"),React=require("react"),actionCreators=require("../../../../store/annotation/actionCreators.js"),index=require("../../../../index.js"),reactRedux=require("react-redux");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),__defProp=Object.defineProperty,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,r,t)=>r in e?__defProp(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,__spreadValues=(e,r)=>{for(var t in r||(r={}))__hasOwnProp.call(r,t)&&__defNormalProp(e,t,r[t]);if(__getOwnPropSymbols)for(var t of __getOwnPropSymbols(r))__propIsEnum.call(r,t)&&__defNormalProp(e,t,r[t]);return e};const useOperationList=e=>{const[r,t]=React.useState(0),{t:a,i18n:o}=reactI18next.useTranslation(),{currentData:s}=reactRedux.useSelector(i=>{const{imgList:v,imgIndex:d}=i.annotation;return{currentData:v[d]}}),n={height:"25px",lineHeight:"25px",display:"flex",justifyContent:"center",alignItems:"center"},c={name:a("ClearLabel"),key:"empty",imgSvg:icon_clear,hoverSvg:icon_clear_a,onClick:()=>{e==null||e.clearResult()}},l={name:a((e==null?void 0:e.valid)===!1?"SetAsValid":"SetAsInvalid"),key:"setValidity",imgSvg:React__default.default.createElement(icons.StopOutlined,{style:n}),hoverSvg:React__default.default.createElement(icons.StopOutlined,{style:__spreadValues({color:"#666fff"},n)}),onClick:()=>{e.setValid(!e.valid),setTimeout(()=>{t(i=>i+1)})}},u={name:a("CopyThePrevious"),key:"copyPrevious",imgSvg:icon_invalid,hoverSvg:icon_invalid_a,onClick:()=>{index.store.dispatch(actionCreators.CopyBackWordResult())}};return React.useMemo(()=>({empty:c,setValidity:l,copyPrevious:u}),[e,r,s,o.language])};module.exports=useOperationList;
@@ -1 +1 @@
1
- "use strict";var React=require("react"),ToolIcons=require("../ToolIcons.js"),lbAnnotation=require("@labelbee/lb-annotation"),PointCloudContext=require("../../../../components/pointCloudView/PointCloudContext.js"),antd=require("antd"),StepUtils=require("../../../../utils/StepUtils.js"),reactRedux=require("react-redux"),index=require("../../../../utils/index.js"),useStatus=require("../../../../components/pointCloudView/hooks/useStatus.js"),useSingleBox=require("../../../../components/pointCloudView/hooks/useSingleBox.js");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var React__default=_interopDefaultLegacy(React);const AttributeUpdater=({attributeList:t,subAttributeList:u,toolInstance:o})=>{var l;const r=React.useContext(PointCloudContext.PointCloudContext),a={fontWeight:400,fontSize:14,marginBottom:14},c=e=>{o.setDefaultAttribute(e)},n=(e,i)=>{o.setSubAttribute(e,i)};return React__default.default.createElement("div",{style:{padding:24,borderBottom:"1px solid #eee"}},React__default.default.createElement("div",{style:{marginBottom:20,fontSize:14,fontWeight:500}},"\u6807\u7B7E"),React__default.default.createElement(antd.Row,{style:{marginBottom:12}},React__default.default.createElement(antd.Col,{span:10,style:a},"\u4E3B\u5C5E\u6027"),React__default.default.createElement(antd.Col,{span:14},React__default.default.createElement(antd.Radio.Group,{style:{width:"100%"},value:(l=r.selectedPointCloudBox)==null?void 0:l.attribute,onChange:e=>c(e.target.value)},t.map(e=>React__default.default.createElement(antd.Radio,{key:e.value,value:e.value,style:{marginBottom:16}},e.key))))),React__default.default.createElement("div",{style:a},"\u526F\u5C5E\u6027"),u.map(e=>{var i,d;return React__default.default.createElement(antd.Row,{key:e.value,style:{marginBottom:18}},React__default.default.createElement(antd.Col,{span:10,style:{color:"#999999"}},e.key),React__default.default.createElement(antd.Col,{span:14},React__default.default.createElement(antd.Select,{style:{width:"100%"},bordered:!1,value:(d=(i=r.selectedPointCloudBox)==null?void 0:i.subAttribute)==null?void 0:d[e.value],placeholder:"\u8BF7\u586B\u5199~",onChange:s=>n(e.value,s)},e.subSelected.map(s=>React__default.default.createElement(antd.Select.Option,{key:s.value,value:s.value},s.key)))))}))},PointCloudToolSidebar=({stepInfo:t,toolInstance:u})=>{var o,l;const{selectedBox:r}=useSingleBox.useSingleBox(),{updatePointCloudPattern:a,pointCloudPattern:c}=useStatus.useStatus(),n=index.jsonParser(t.config),e=(o=n==null?void 0:n.attributeList)!=null?o:[],i=(n==null?void 0:n.secondaryAttributeConfigurable)===!0?(l=n==null?void 0:n.inputList)!=null?l:[]:[];return React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(ToolIcons.ToolIcons,{toolName:lbAnnotation.cTool.EPointCloudName.PointCloud,selectedToolName:c,onChange:d=>a==null?void 0:a(d)}),r&&React__default.default.createElement(AttributeUpdater,{toolInstance:u,attributeList:e,subAttributeList:i}))},mapStateToProps=t=>{var u,o,l;const r=StepUtils.getCurrentStepInfo((u=t.annotation)==null?void 0:u.step,(o=t.annotation)==null?void 0:o.stepList),a=(l=t.annotation)==null?void 0:l.toolInstance;return{stepInfo:r,toolInstance:a}};var PointCloudToolSidebar$1=reactRedux.connect(mapStateToProps)(PointCloudToolSidebar);module.exports=PointCloudToolSidebar$1;
1
+ "use strict";var React=require("react"),ToolIcons=require("../ToolIcons.js"),lbAnnotation=require("@labelbee/lb-annotation"),PointCloudContext=require("../../../../components/pointCloudView/PointCloudContext.js"),antd=require("antd"),StepUtils=require("../../../../utils/StepUtils.js"),reactRedux=require("react-redux"),index=require("../../../../utils/index.js"),useStatus=require("../../../../components/pointCloudView/hooks/useStatus.js"),useSingleBox=require("../../../../components/pointCloudView/hooks/useSingleBox.js"),reactI18next=require("react-i18next");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var React__default=_interopDefaultLegacy(React);const AttributeUpdater=({attributeList:t,subAttributeList:r,toolInstance:l})=>{var n;const u=React.useContext(PointCloudContext.PointCloudContext),{t:o}=reactI18next.useTranslation(),d={fontWeight:400,fontSize:14,marginBottom:14},a=e=>{l.setDefaultAttribute(e)},c=(e,i)=>{l.setSubAttribute(e,i)};return React__default.default.createElement("div",{style:{padding:24,borderBottom:"1px solid #eee"}},React__default.default.createElement("div",{style:{marginBottom:20,fontSize:14,fontWeight:500}},o("Tag")),React__default.default.createElement(antd.Row,{style:{marginBottom:12}},React__default.default.createElement(antd.Col,{span:9,style:d},o("Attribute")),React__default.default.createElement(antd.Col,{span:15},React__default.default.createElement(antd.Radio.Group,{style:{width:"100%"},value:(n=u.selectedPointCloudBox)==null?void 0:n.attribute,onChange:e=>a(e.target.value)},t.map(e=>React__default.default.createElement(antd.Radio,{key:e.value,value:e.value,style:{marginBottom:16}},e.key))))),React__default.default.createElement("div",{style:d}," ",o("SubAttribute")),r.map(e=>{var i,v;return(e==null?void 0:e.subSelected)&&React__default.default.createElement(antd.Row,{key:e.value,style:{marginBottom:18}},React__default.default.createElement(antd.Col,{span:9,style:{color:"#999999",display:"flex",justifyContent:"flex-start",alignItems:"center"}},e.key),React__default.default.createElement(antd.Col,{span:15},React__default.default.createElement(antd.Select,{style:{width:"100%"},bordered:!1,value:(v=(i=u.selectedPointCloudBox)==null?void 0:i.subAttribute)==null?void 0:v[e.value],placeholder:o("PleaseSelect"),onChange:s=>c(e.value,s)},e.subSelected.map(s=>React__default.default.createElement(antd.Select.Option,{key:s.value,value:s.value},s.key)))))}))},PointCloudToolSidebar=({stepInfo:t,toolInstance:r})=>{var l,n;const{selectedBox:u}=useSingleBox.useSingleBox(),{updatePointCloudPattern:o,pointCloudPattern:d}=useStatus.useStatus(),a=index.jsonParser(t.config),c=(l=a==null?void 0:a.attributeList)!=null?l:[],e=(a==null?void 0:a.secondaryAttributeConfigurable)===!0?(n=a==null?void 0:a.inputList)!=null?n:[]:[];return React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(ToolIcons.ToolIcons,{toolName:lbAnnotation.cTool.EPointCloudName.PointCloud,selectedToolName:d,onChange:i=>o==null?void 0:o(i)}),u&&React__default.default.createElement(AttributeUpdater,{toolInstance:r,attributeList:c,subAttributeList:e}))},mapStateToProps=t=>{var r,l,n;const u=StepUtils.getCurrentStepInfo((r=t.annotation)==null?void 0:r.step,(l=t.annotation)==null?void 0:l.stepList),o=(n=t.annotation)==null?void 0:n.toolInstance;return{stepInfo:u,toolInstance:o}};var PointCloudToolSidebar$1=reactRedux.connect(mapStateToProps)(PointCloudToolSidebar);module.exports=PointCloudToolSidebar$1;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var ToolType=require("../../../data/enums/ToolType.js"),React=require("react"),index=require("./index.js"),icon_line=require("../../../assets/annotation/lineTool/icon_line.svg.js"),icon_line_a=require("../../../assets/annotation/lineTool/icon_line_a.svg.js"),icon_point=require("../../../assets/annotation/pointTool/icon_point.svg.js"),icon_point_a=require("../../../assets/annotation/pointTool/icon_point_a.svg.js"),icon_polygon_a=require("../../../assets/annotation/polygonTool/icon_polygon_a.svg.js"),icon_polygon=require("../../../assets/annotation/polygonTool/icon_polygon.svg.js"),icon_rect=require("../../../assets/annotation/rectTool/icon_rect.svg.js"),icon_rect_a=require("../../../assets/annotation/rectTool/icon_rect_a.svg.js"),lbAnnotation=require("@labelbee/lb-annotation"),classNames=require("classnames");function _interopDefaultLegacy(o){return o&&typeof o=="object"&&"default"in o?o:{default:o}}var React__default=_interopDefaultLegacy(React),classNames__default=_interopDefaultLegacy(classNames);const{EPointCloudName,TOOL_NAME}=lbAnnotation.cTool,toolList=[{toolName:ToolType.EToolName.Rect,commonSvg:icon_rect,selectedSvg:icon_rect_a},{toolName:ToolType.EToolName.Polygon,commonSvg:icon_polygon,selectedSvg:icon_polygon_a},{toolName:ToolType.EToolName.Line,commonSvg:icon_line,selectedSvg:icon_line_a},{toolName:ToolType.EToolName.Point,commonSvg:icon_point,selectedSvg:icon_point_a}],ToolIcons=({toolName:o,selectedToolName:l,onChange:n})=>{const a=toolList==null?void 0:toolList.filter(e=>o===EPointCloudName.PointCloud?[ToolType.EToolName.Polygon,ToolType.EToolName.Rect].includes(e==null?void 0:e.toolName):(e==null?void 0:e.toolName)===o),s=a.length>1;return React__default.default.createElement("div",{className:`${index.sidebarCls}__level`},a.map(e=>{const t=s&&l===e.toolName;return React__default.default.createElement("span",{className:`${index.sidebarCls}__toolOption`,key:e.toolName,onClick:()=>n==null?void 0:n(e.toolName)},React__default.default.createElement("img",{className:`${index.sidebarCls}__singleTool`,src:t?e==null?void 0:e.selectedSvg:e==null?void 0:e.commonSvg}),React__default.default.createElement("span",{className:classNames__default.default({[`${index.sidebarCls}__toolOption__selected`]:t})},TOOL_NAME[e.toolName]))}))};exports.ToolIcons=ToolIcons;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var ToolType=require("../../../data/enums/ToolType.js"),React=require("react"),index=require("./index.js"),icon_line=require("../../../assets/annotation/lineTool/icon_line.svg.js"),icon_line_a=require("../../../assets/annotation/lineTool/icon_line_a.svg.js"),icon_point=require("../../../assets/annotation/pointTool/icon_point.svg.js"),icon_point_a=require("../../../assets/annotation/pointTool/icon_point_a.svg.js"),icon_polygon_a=require("../../../assets/annotation/polygonTool/icon_polygon_a.svg.js"),icon_polygon=require("../../../assets/annotation/polygonTool/icon_polygon.svg.js"),icon_rect=require("../../../assets/annotation/rectTool/icon_rect.svg.js"),icon_rect_a=require("../../../assets/annotation/rectTool/icon_rect_a.svg.js"),lbAnnotation=require("@labelbee/lb-annotation"),classNames=require("classnames"),reactI18next=require("react-i18next");function _interopDefaultLegacy(o){return o&&typeof o=="object"&&"default"in o?o:{default:o}}var React__default=_interopDefaultLegacy(React),classNames__default=_interopDefaultLegacy(classNames);const{EPointCloudName,TOOL_NAME,TOOL_NAME_EN}=lbAnnotation.cTool,toolList=[{toolName:ToolType.EToolName.Rect,commonSvg:icon_rect,selectedSvg:icon_rect_a},{toolName:ToolType.EToolName.Polygon,commonSvg:icon_polygon,selectedSvg:icon_polygon_a},{toolName:ToolType.EToolName.Line,commonSvg:icon_line,selectedSvg:icon_line_a},{toolName:ToolType.EToolName.Point,commonSvg:icon_point,selectedSvg:icon_point_a}],getToolNameVersion=o=>o==="en"?TOOL_NAME_EN:TOOL_NAME,ToolIcons=({toolName:o,selectedToolName:l,onChange:n})=>{const{i18n:s}=reactI18next.useTranslation(),a=toolList==null?void 0:toolList.filter(e=>o===EPointCloudName.PointCloud?[ToolType.EToolName.Polygon,ToolType.EToolName.Rect].includes(e==null?void 0:e.toolName):(e==null?void 0:e.toolName)===o),r=a.length>1;return React__default.default.createElement("div",{className:`${index.sidebarCls}__level`},a.map(e=>{const t=r&&l===e.toolName;return React__default.default.createElement("span",{className:`${index.sidebarCls}__toolOption`,key:e.toolName,onClick:()=>n==null?void 0:n(e.toolName)},React__default.default.createElement("img",{className:`${index.sidebarCls}__singleTool`,src:t?e==null?void 0:e.selectedSvg:e==null?void 0:e.commonSvg}),React__default.default.createElement("span",{className:classNames__default.default({[`${index.sidebarCls}__toolOption__selected`]:t})},getToolNameVersion(s.language)[e.toolName]))}))};exports.ToolIcons=ToolIcons;
@@ -1 +1 @@
1
- "use strict";var React=require("react"),reactRedux=require("react-redux"),useSafeSate=require("../../../../../hooks/useSafeSate.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React);const ZoomLevel=({toolInstance:e})=>{var t;const[,a]=useSafeSate(0);React.useEffect(()=>{e&&e.on("renderZoom",()=>{a(r=>r+1)})},[e]);const o=(t=e==null?void 0:e.zoom)!=null?t:1;return React__default.default.createElement("span",{className:"zoomValue"},(o*100).toFixed(1),"%")},mapStateToProps=e=>({toolInstance:e.annotation.toolInstance});var ZoomLevel$1=reactRedux.connect(mapStateToProps)(ZoomLevel);module.exports=ZoomLevel$1;
1
+ "use strict";var React=require("react"),reactRedux=require("react-redux"),useSafeSate=require("../../../../../hooks/useSafeSate.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React);const ZoomLevel=({toolInstance:e,zoom:t})=>{var o;const[,r]=useSafeSate(0);React.useEffect(()=>{e&&e.on("renderZoom",()=>{r(u=>u+1)})},[e]);const a=(o=t!=null?t:e==null?void 0:e.zoom)!=null?o:1;return React__default.default.createElement("span",{className:"zoomValue"},(a*100).toFixed(1),"%")},mapStateToProps=e=>({toolInstance:e.annotation.toolInstance});var ZoomLevel$1=reactRedux.connect(mapStateToProps)(ZoomLevel);module.exports=ZoomLevel$1;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react"),icon_adapt=require("../../../../assets/annotation/common/icon_adapt.svg.js"),icon_adapt_black=require("../../../../assets/annotation/common/icon_adapt_black.svg.js"),icons=require("@ant-design/icons"),reactRedux=require("react-redux"),index$1=require("./ZoomLevel/index.js"),index=require("../index.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React);const ZoomController=({mode:e,initialPosition:t,zoomOut:o,zoomIn:a})=>{const n=e==="light"?icon_adapt:icon_adapt_black;return React__default.default.createElement("div",null,React__default.default.createElement("span",{className:`${index.footerCls}__zoomController`},React__default.default.createElement(icons.MinusOutlined,{className:`${index.footerCls}__highlight`,onClick:()=>{o==null||o()}}),React__default.default.createElement("span",{className:`${index.footerCls}__zoomText`,onClick:()=>{t==null||t()}},React__default.default.createElement("img",{src:n,className:"adaptIcon"}),React__default.default.createElement(index$1,null)),React__default.default.createElement(icons.PlusOutlined,{className:`${index.footerCls}__highlight`,onClick:()=>{a==null||a()}})))},ZoomControllerWithToolInstance=({toolInstance:e})=>{const t=()=>{e.initImgPos()},o=()=>{e.zoomChanged(!1)},a=()=>{e.zoomChanged(!0)};return React__default.default.createElement(ZoomController,{initialPosition:t,zoomIn:a,zoomOut:o})};var ZoomController$1=reactRedux.connect(e=>({toolInstance:e.annotation.toolInstance}))(ZoomControllerWithToolInstance);exports.ZoomController=ZoomController,exports.default=ZoomController$1;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react"),icon_adapt=require("../../../../assets/annotation/common/icon_adapt.svg.js"),icon_adapt_black=require("../../../../assets/annotation/common/icon_adapt_black.svg.js"),icons=require("@ant-design/icons"),reactRedux=require("react-redux"),index$1=require("./ZoomLevel/index.js"),index=require("../index.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React);const ZoomController=({mode:e,initialPosition:t,zoomOut:o,zoomIn:a,zoom:n})=>{const l=e==="light"?icon_adapt:icon_adapt_black;return React__default.default.createElement("div",null,React__default.default.createElement("span",{className:`${index.footerCls}__zoomController`},React__default.default.createElement(icons.MinusOutlined,{className:`${index.footerCls}__highlight`,onClick:()=>{o==null||o()}}),React__default.default.createElement("span",{className:`${index.footerCls}__zoomText`,onClick:()=>{t==null||t()}},React__default.default.createElement("img",{src:l,className:"adaptIcon"}),React__default.default.createElement(index$1,{zoom:n})),React__default.default.createElement(icons.PlusOutlined,{className:`${index.footerCls}__highlight`,onClick:()=>{a==null||a()}})))},ZoomControllerWithToolInstance=({toolInstance:e})=>{const t=()=>{e.initImgPos()},o=()=>{e.zoomChanged(!1)},a=()=>{e.zoomChanged(!0)};return React__default.default.createElement(ZoomController,{initialPosition:t,zoomIn:a,zoomOut:o})};var ZoomController$1=reactRedux.connect(e=>({toolInstance:e.annotation.toolInstance}))(ZoomControllerWithToolInstance);exports.ZoomController=ZoomController,exports.default=ZoomController$1;
@@ -1 +1 @@
1
- "use strict";var React=require("react"),reactRedux=require("react-redux"),icon_r=require("../../../../assets/annotation/common/icon_r.svg.js"),icon_next=require("../../../../assets/annotation/common/icon_next.svg.js"),icon_back=require("../../../../assets/annotation/common/icon_back.svg.js"),icon_rA=require("../../../../assets/annotation/common/icon_rA.svg.js"),icon_nextA=require("../../../../assets/annotation/common/icon_nextA.svg.js"),icon_backA=require("../../../../assets/annotation/common/icon_backA.svg.js"),icon_save=require("../../../../assets/annotation/common/icon_save.svg.js"),icon_saveA=require("../../../../assets/annotation/common/icon_saveA.svg.js"),index=require("../../../../constant/index.js"),ToolType=require("../../../../data/enums/ToolType.js"),actionCreators=require("../../../../store/annotation/actionCreators.js"),reactI18next=require("react-i18next"),lbAnnotation=require("@labelbee/lb-annotation");function _interopDefaultLegacy(o){return o&&typeof o=="object"&&"default"in o?o:{default:o}}var React__default=_interopDefaultLegacy(React);const{EVideoToolName}=lbAnnotation.cTool;var EColor;(function(o){o.Hover="#666fff",o.Normal="#cccccc"})(EColor||(EColor={}));const HeaderOption=o=>{const[r,c]=React.useState(""),{stepInfo:a}=o,l=reactRedux.useDispatch(),{annotation:{toolInstance:t,onSave:u}}=reactRedux.useSelector(e=>({annotation:e.annotation,imgAttribute:e.imgAttribute})),{t:v}=reactI18next.useTranslation(),s=[ToolType.EToolName.Tag,EVideoToolName.VideoTagTool].includes(a==null?void 0:a.tool),i=[EVideoToolName.VideoTagTool].includes(a==null?void 0:a.tool),n=o.isBegin||s,m=()=>{a.dataSourceStep!==0&&a.dataSourceStep!==void 0||t==null||t.updateRotate()},d=React.useCallback(()=>{t==null||t.undo()},[t]),g=React.useCallback(()=>{t==null||t.redo()},[t]),S=[{toolName:"save",title:"Save",show:!!u,commonSvg:icon_save,selectedSvg:icon_saveA,click:()=>{l(actionCreators.ChangeSave)},style:{fontSize:"12px",color:!n&&r==="save"?EColor.Hover:EColor.Normal}},{toolName:"revocation",title:"Undo",show:!0,commonSvg:icon_back,selectedSvg:icon_backA,click:()=>{s||d()},style:{opacity:n===!0?.4:1,fontSize:"12px",color:!n&&r==="revocation"?EColor.Hover:EColor.Normal}},{toolName:"restore",title:"Redo",show:!0,commonSvg:icon_next,selectedSvg:icon_nextA,click:()=>{s||g()},style:{opacity:n===!0?.4:1,fontSize:"12px",color:!n&&r==="restore"?EColor.Hover:EColor.Normal}},{toolName:"rotate",title:"Rotate",show:!0,selectedSvg:icon_rA,commonSvg:icon_r,click:()=>{i||m()},style:{opacity:i===!0?.4:1,fontSize:"12px",color:!n&&r==="rotate"?EColor.Hover:EColor.Normal}}];return React__default.default.createElement("div",{className:`${index.prefix}-header__hotKey`},S.map(e=>e.show&&React__default.default.createElement("div",{key:e.toolName,className:"item",onMouseEnter:()=>c(e.toolName),onMouseLeave:()=>c("")},React__default.default.createElement("a",{className:"item",onClick:e.click},React__default.default.createElement("img",{className:"singleTool",src:r===e.toolName?e.selectedSvg:e.commonSvg,style:e.style}),React__default.default.createElement("div",{style:e.style},v(e.title))))))};module.exports=HeaderOption;
1
+ "use strict";var React=require("react"),reactRedux=require("react-redux"),icon_r=require("../../../../assets/annotation/common/icon_r.svg.js"),icon_next=require("../../../../assets/annotation/common/icon_next.svg.js"),icon_back=require("../../../../assets/annotation/common/icon_back.svg.js"),icon_rA=require("../../../../assets/annotation/common/icon_rA.svg.js"),icon_nextA=require("../../../../assets/annotation/common/icon_nextA.svg.js"),icon_backA=require("../../../../assets/annotation/common/icon_backA.svg.js"),icon_save=require("../../../../assets/annotation/common/icon_save.svg.js"),icon_saveA=require("../../../../assets/annotation/common/icon_saveA.svg.js"),index=require("../../../../constant/index.js"),ToolType=require("../../../../data/enums/ToolType.js"),actionCreators=require("../../../../store/annotation/actionCreators.js"),reactI18next=require("react-i18next"),lbAnnotation=require("@labelbee/lb-annotation");function _interopDefaultLegacy(o){return o&&typeof o=="object"&&"default"in o?o:{default:o}}var React__default=_interopDefaultLegacy(React);const{EVideoToolName,EPointCloudName}=lbAnnotation.cTool;var EColor;(function(o){o.Hover="#666fff",o.Normal="#cccccc"})(EColor||(EColor={}));const HeaderOption=o=>{const[r,i]=React.useState(""),{stepInfo:t}=o,u=reactRedux.useDispatch(),{annotation:{toolInstance:a,onSave:v}}=reactRedux.useSelector(e=>({annotation:e.annotation,imgAttribute:e.imgAttribute})),{t:m}=reactI18next.useTranslation(),s=[ToolType.EToolName.Tag,EVideoToolName.VideoTagTool].includes(t==null?void 0:t.tool),l=[EVideoToolName.VideoTagTool].includes(t==null?void 0:t.tool),d=[EPointCloudName.PointCloud].includes(t==null?void 0:t.tool),n=o.isBegin||s,g=()=>{t.dataSourceStep!==0&&t.dataSourceStep!==void 0||a==null||a.updateRotate()},S=React.useCallback(()=>{a==null||a.undo()},[a]),p=React.useCallback(()=>{a==null||a.redo()},[a]);let c=[{toolName:"save",title:"Save",show:!!v,commonSvg:icon_save,selectedSvg:icon_saveA,click:()=>{u(actionCreators.ChangeSave)},style:{fontSize:"12px",color:!n&&r==="save"?EColor.Hover:EColor.Normal}},{toolName:"revocation",title:"Undo",show:!0,commonSvg:icon_back,selectedSvg:icon_backA,click:()=>{s||S()},style:{opacity:n===!0?.4:1,fontSize:"12px",color:!n&&r==="revocation"?EColor.Hover:EColor.Normal}},{toolName:"restore",title:"Redo",show:!0,commonSvg:icon_next,selectedSvg:icon_nextA,click:()=>{s||p()},style:{opacity:n===!0?.4:1,fontSize:"12px",color:!n&&r==="restore"?EColor.Hover:EColor.Normal}},{toolName:"rotate",title:"Rotate",show:!0,selectedSvg:icon_rA,commonSvg:icon_r,click:()=>{l||g()},style:{opacity:l===!0?.4:1,fontSize:"12px",color:!n&&r==="rotate"?EColor.Hover:EColor.Normal}}];return d&&(c=c.slice(0,1)),React__default.default.createElement("div",{className:`${index.prefix}-header__hotKey`},c.map(e=>e.show&&React__default.default.createElement("div",{key:e.toolName,className:"item",onMouseEnter:()=>i(e.toolName),onMouseLeave:()=>i("")},React__default.default.createElement("a",{className:"item",onClick:e.click},React__default.default.createElement("img",{className:"singleTool",src:r===e.toolName?e.selectedSvg:e.commonSvg,style:e.style}),React__default.default.createElement("div",{style:e.style},m(e.title))))))};module.exports=HeaderOption;
@@ -0,0 +1,4 @@
1
+ var img = "data:image/svg+xml,%3csvg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3e %3crect x='6.34875' y='0.353553' width='4.5' height='8.47848' rx='2.25' transform='rotate(45 6.34875 0.353553)' fill='%23E6E6E6' stroke='%23BAB8B8' stroke-width='0.5' /%3e %3cline x1='1.74547' y1='4.60767' x2='4.92401' y2='8.46733' stroke='%23BAB8B8' stroke-width='0.5' /%3e %3cline x1='2.00061' y1='9.75' x2='10.0006' y2='9.75' stroke='%23BAB8B8' stroke-width='0.5' /%3e%3c/svg%3e";
2
+
3
+ export { img as default };
4
+ //# sourceMappingURL=eraser.svg.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eraser.svg.js","sources":["../../../src/assets/attributeIcon/eraser.svg"],"sourcesContent":["var img = \"data:image/svg+xml,%3csvg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3e %3crect x='6.34875' y='0.353553' width='4.5' height='8.47848' rx='2.25' transform='rotate(45 6.34875 0.353553)' fill='%23E6E6E6' stroke='%23BAB8B8' stroke-width='0.5' /%3e %3cline x1='1.74547' y1='4.60767' x2='4.92401' y2='8.46733' stroke='%23BAB8B8' stroke-width='0.5' /%3e %3cline x1='2.00061' y1='9.75' x2='10.0006' y2='9.75' stroke='%23BAB8B8' stroke-width='0.5' /%3e%3c/svg%3e\";\n export default img;"],"names":[],"mappings":"AAAG,IAAC,GAAG,GAAG;;;;"}
@@ -0,0 +1,4 @@
1
+ var img = "data:image/svg+xml,%3csvg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3e %3crect x='6.34875' y='0.353553' width='4.5' height='8.47848' rx='2.25' transform='rotate(45 6.34875 0.353553)' fill='%236272FB' stroke='%23BAB8B8' stroke-width='0.5' /%3e %3cline x1='1.74547' y1='4.60767' x2='4.92401' y2='8.46733' stroke='%23BAB8B8' stroke-width='0.5' /%3e %3cline x1='2.00061' y1='9.75' x2='10.0006' y2='9.75' stroke='%236272FB' stroke-width='0.5' /%3e%3c/svg%3e";
2
+
3
+ export { img as default };
4
+ //# sourceMappingURL=eraser_a.svg.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eraser_a.svg.js","sources":["../../../src/assets/attributeIcon/eraser_a.svg"],"sourcesContent":["var img = \"data:image/svg+xml,%3csvg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3e %3crect x='6.34875' y='0.353553' width='4.5' height='8.47848' rx='2.25' transform='rotate(45 6.34875 0.353553)' fill='%236272FB' stroke='%23BAB8B8' stroke-width='0.5' /%3e %3cline x1='1.74547' y1='4.60767' x2='4.92401' y2='8.46733' stroke='%23BAB8B8' stroke-width='0.5' /%3e %3cline x1='2.00061' y1='9.75' x2='10.0006' y2='9.75' stroke='%236272FB' stroke-width='0.5' /%3e%3c/svg%3e\";\n export default img;"],"names":[],"mappings":"AAAG,IAAC,GAAG,GAAG;;;;"}
@@ -0,0 +1,4 @@
1
+ var img = "data:image/svg+xml,%3csvg width='12' height='13' viewBox='0 0 12 13' fill='none' xmlns='http://www.w3.org/2000/svg'%3e %3crect x='9.07153' y='1' width='3' height='10' rx='1' transform='rotate(45 9.07153 1)' fill='%23BAB8B8' /%3e %3cpath d='M1.06068 11.182L1.73311 8.67247L3.57023 10.5096L1.06068 11.182Z' fill='%23BAB8B8' /%3e %3ccircle cx='11.0002' cy='1' r='1' fill='%23BAB8B8' /%3e%3c/svg%3e";
2
+
3
+ export { img as default };
4
+ //# sourceMappingURL=pen.svg.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pen.svg.js","sources":["../../../src/assets/attributeIcon/pen.svg"],"sourcesContent":["var img = \"data:image/svg+xml,%3csvg width='12' height='13' viewBox='0 0 12 13' fill='none' xmlns='http://www.w3.org/2000/svg'%3e %3crect x='9.07153' y='1' width='3' height='10' rx='1' transform='rotate(45 9.07153 1)' fill='%23BAB8B8' /%3e %3cpath d='M1.06068 11.182L1.73311 8.67247L3.57023 10.5096L1.06068 11.182Z' fill='%23BAB8B8' /%3e %3ccircle cx='11.0002' cy='1' r='1' fill='%23BAB8B8' /%3e%3c/svg%3e\";\n export default img;"],"names":[],"mappings":"AAAG,IAAC,GAAG,GAAG;;;;"}
@@ -0,0 +1,4 @@
1
+ var img = "data:image/svg+xml,%3csvg width='12' height='13' viewBox='0 0 12 13' fill='none' xmlns='http://www.w3.org/2000/svg'%3e %3crect x='9.07153' y='1' width='3' height='10' rx='1' transform='rotate(45 9.07153 1)' fill='%236272FB' /%3e %3cpath d='M1.06068 11.182L1.73311 8.67247L3.57023 10.5096L1.06068 11.182Z' fill='%236272FB' /%3e %3ccircle cx='11.0002' cy='1' r='1' fill='%236272FB' /%3e%3c/svg%3e";
2
+
3
+ export { img as default };
4
+ //# sourceMappingURL=pen_a.svg.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pen_a.svg.js","sources":["../../../src/assets/attributeIcon/pen_a.svg"],"sourcesContent":["var img = \"data:image/svg+xml,%3csvg width='12' height='13' viewBox='0 0 12 13' fill='none' xmlns='http://www.w3.org/2000/svg'%3e %3crect x='9.07153' y='1' width='3' height='10' rx='1' transform='rotate(45 9.07153 1)' fill='%236272FB' /%3e %3cpath d='M1.06068 11.182L1.73311 8.67247L3.57023 10.5096L1.06068 11.182Z' fill='%236272FB' /%3e %3ccircle cx='11.0002' cy='1' r='1' fill='%236272FB' /%3e%3c/svg%3e\";\n export default img;"],"names":[],"mappings":"AAAG,IAAC,GAAG,GAAG;;;;"}
@@ -1 +1 @@
1
- import h,{useState as E,useRef as p,useImperativeHandle as z,useEffect as c}from"react";import{ViewOperation as C,ImgUtils as L}from"@labelbee/lb-annotation";import{Spin as A}from"antd/es";var R=Object.defineProperty,_=Object.getOwnPropertySymbols,V=Object.prototype.hasOwnProperty,Z=Object.prototype.propertyIsEnumerable,w=(t,r,o)=>r in t?R(t,r,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[r]=o,b=(t,r)=>{for(var o in r||(r={}))V.call(r,o)&&w(t,o,r[o]);if(_)for(var o of _(r))Z.call(r,o)&&w(t,o,r[o]);return t};const m={width:1280,height:720},j=t=>t?(t.width||(t.width=m.width),t.height||(t.height=m.height),t):m,D=(t,r)=>{const{src:o,annotations:s=[],style:y={stroke:"blue",thickness:3},zoomChange:d,backgroundStyle:I={},onChange:f,showLoading:O=!1}=t,a=j(t.size),[P,v]=E(!1),g=p(null),e=p();z(r,()=>{const n=e.current;return n?{zoomIn:()=>n.zoomChanged(!0),zoomOut:()=>n.zoomChanged(!1),initImgPos:()=>n.initImgPos(),toolInstance:n}:{}},[e.current]),c(()=>(g.current&&(e.current=new C({container:g.current,size:a,style:y,annotations:s,config:"{}"}),e.current.init()),()=>{var n;(n=e.current)==null||n.destroy()}),[]),c(()=>{var n;e.current&&(v(!0),(n=e.current)==null||n.setLoading(!0),L.load(o).then(l=>{var i,u;(i=e.current)==null||i.setLoading(!1),v(!1),(u=e.current)==null||u.setImgNode(l)}).catch(()=>{var l;(l=e.current)==null||l.setLoading(!1),v(!1)}))},[o]),c(()=>{e.current&&e.current.updateData(s)},[s]),c(()=>{const n=e.current;(n==null?void 0:n.setSize)&&n.setSize(a)},[a==null?void 0:a.width,a==null?void 0:a.height]),c(()=>{var n,l;return e.current&&((n=e.current)==null||n.on("onChange",(...i)=>{f==null||f.apply(null,i)}),(l=e.current)==null||l.on("renderZoom",i=>{d&&d(i)})),()=>{var i,u;(i=e.current)==null||i.unbindAll("onChange"),(u=e.current)==null||u.unbindAll("renderZoom")}},[d,f]);const S=h.createElement("div",{ref:g,style:b(b({position:"relative"},a),I)});return h.createElement(A,{spinning:O||P,delay:300},S)};var N=h.forwardRef(D);export{N as default};
1
+ import g,{useState as L,useRef as b,useImperativeHandle as A,useEffect as u}from"react";import{ViewOperation as R,ImgUtils as V}from"@labelbee/lb-annotation";import{Spin as Z}from"antd/es";var j=Object.defineProperty,y=Object.getOwnPropertySymbols,D=Object.prototype.hasOwnProperty,N=Object.prototype.propertyIsEnumerable,I=(t,e,o)=>e in t?j(t,e,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[e]=o,m=(t,e)=>{for(var o in e||(e={}))D.call(e,o)&&I(t,o,e[o]);if(y)for(var o of y(e))N.call(e,o)&&I(t,o,e[o]);return t};const _={width:500,height:100},U=t=>{if(!t)return _;if(t.width&&t.height)return t;const e=m({},t);return e.width||(e.width=_.width),e.height||(e.height=_.height),e},k=(t,e)=>{var o,p;const{src:w,annotations:s=[],style:O={stroke:"blue",thickness:3},zoomChange:c,backgroundStyle:z={},onChange:d,showLoading:P=!1,globalStyle:S}=t,f=U(t.size),[E,v]=L(!1),h=b(null),r=b();A(e,()=>{const n=r.current;return n?{zoomIn:()=>n.zoomChanged(!0),zoomOut:()=>n.zoomChanged(!1),initImgPos:()=>n.initImgPos(),toolInstance:n}:{}},[r.current]),u(()=>(h.current&&(r.current=new R({container:h.current,size:f,style:O,annotations:s,config:"{}"}),r.current.init()),()=>{var n;(n=r.current)==null||n.destroy()}),[]),u(()=>{var n;r.current&&(v(!0),(n=r.current)==null||n.setLoading(!0),V.load(w).then(a=>{var i,l;(i=r.current)==null||i.setLoading(!1),v(!1),(l=r.current)==null||l.setImgNode(a)}).catch(()=>{var a;(a=r.current)==null||a.setLoading(!1),v(!1)}))},[w]),u(()=>{r.current&&r.current.updateData(s)},[s]),u(()=>{const n=r.current;(n==null?void 0:n.setSize)&&(n.setSize(f),n.initPosition())},[(o=t.size)==null?void 0:o.width,(p=t.size)==null?void 0:p.height]),u(()=>{var n,a;return r.current&&((n=r.current)==null||n.on("onChange",(...i)=>{d==null||d.apply(null,i)}),(a=r.current)==null||a.on("renderZoom",i=>{c&&c(i)})),()=>{var i,l;(i=r.current)==null||i.unbindAll("onChange"),(l=r.current)==null||l.unbindAll("renderZoom")}},[c,d]);const C=g.createElement("div",{ref:h,style:m(m({position:"relative"},f),z)});return g.createElement(Z,{spinning:P||E,delay:300,style:S},C)};var x=g.forwardRef(k);export{x as default};