@soonspacejs/plugin-drawing-shape 2.4.4 → 2.4.7

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.
package/dist/index.esm.js CHANGED
@@ -1 +1 @@
1
- const s="drawingCanvas",i="drawingPoint",t="drawingLine",e="drawingPolygon",n="drawingCircle";class o{constructor(s){this.ssp=s,this.viewport=s.viewport}drawingPoint(t,e){return new Promise((n=>{this.clearDrawingCanvas3D();const o=new this.ssp.library.Canvas3D({id:s,points:[{...t,id:i}]});this.ssp.manager.store.canvas3DManager.scene.add(o);const a=o.getPoint(i),l=s=>{if(!a)return;const i=this.ssp.viewport.getIntersects(s),t=i.length>0?i[0].point.clone():this.ssp.getPositionByOffset(s);a.setOptions({position:t})},r=s=>{if(g(),!a)return;const i=this.ssp.viewport.getIntersects(s),e=i.length>0?i[0].point.clone():this.ssp.getPositionByOffset(s);a.setOptions({position:e}),n({...t,position:e.clone()})},c=()=>{var s;this.clearDrawingCanvas3D(),g(),null===(s=null==e?void 0:e.onCancel)||void 0===s||s.call(e)},p=s=>{switch(s.code){case"Escape":c()}},g=()=>{this.ssp.signals.mouseMove.remove(l),this.ssp.signals.click.remove(r),this.ssp.signals.rightClick.remove(c),this.ssp.signals.keyUp.remove(p)};this.ssp.signals.mouseMove.add(l),this.ssp.signals.click.add(r),this.ssp.signals.rightClick.add(c),this.ssp.signals.keyUp.add(p)}))}drawingLine(i,e){return new Promise((n=>{this.clearDrawingCanvas3D();const o=new this.ssp.library.Canvas3D({id:s,lines:[{...i,points:[],id:t}]});this.ssp.manager.store.canvas3DManager.scene.add(o);const a=o.getLine(t),l=[],r=s=>{const t=this.ssp.viewport.getIntersects(s),e=t.length>0?t[0].point.clone():this.ssp.getPositionByOffset(s);a&&a.setOptions({...i,points:[...l,e.clone().setY(e.y+1)]})},c=s=>{const t=this.ssp.viewport.getIntersects(s),e=t.length>0?t[0].point.clone():this.ssp.getPositionByOffset(s);l.push(e.clone().setY(e.y+1)),a&&a.setOptions({...i,points:l})},p=()=>{var s;l.pop(),a&&(a.setOptions({...i,points:l}),null===(s=null==e?void 0:e.onCancelPrev)||void 0===s||s.call(e))},g=()=>{d(),n({...i,points:l})},h=s=>{var i;switch(s.code){case"Backspace":p();break;case"Escape":this.clearDrawingCanvas3D(),d(),null===(i=null==e?void 0:e.onCancel)||void 0===i||i.call(e)}},d=()=>{this.ssp.signals.mouseMove.remove(r),this.ssp.signals.click.remove(c),this.ssp.signals.rightClick.remove(p),this.ssp.signals.dblClick.remove(g),this.ssp.signals.keyUp.remove(h)};this.ssp.signals.mouseMove.add(r),this.ssp.signals.click.add(c),this.ssp.signals.rightClick.add(p),this.ssp.signals.dblClick.add(g),this.ssp.signals.keyUp.add(h)}))}drawingPolygon(i,t){return new Promise((n=>{this.clearDrawingCanvas3D();const o=new this.ssp.library.Canvas3D({id:s,polygons:[{...i,points:[],yHeight:0,id:e}]});this.ssp.manager.store.canvas3DManager.scene.add(o);const a=o.getPolygon(e),l=[],r=s=>{var t;const e=this.ssp.viewport.getIntersects(s),n=e.length>0?e[0].point.clone():this.ssp.getPositionByOffset(s);a&&a.setOptions({...i,yHeight:((null===(t=l[0])||void 0===t?void 0:t.y)||n.y)+1,points:[...l,n]})},c=s=>{var t;const e=this.ssp.viewport.getIntersects(s),n=e.length>0?e[0].point.clone():this.ssp.getPositionByOffset(s);l.push(n),a&&a.setOptions({...i,yHeight:((null===(t=l[0])||void 0===t?void 0:t.y)||0)+1,points:l})},p=()=>{var s,e;l.pop(),a&&(a.setOptions({...i,yHeight:((null===(s=l[0])||void 0===s?void 0:s.y)||0)+1,points:l}),null===(e=null==t?void 0:t.onCancelPrev)||void 0===e||e.call(t))},g=()=>{var s;d(),n({...i,yHeight:((null===(s=l[0])||void 0===s?void 0:s.y)||0)+1,points:l})},h=s=>{var i;switch(s.code){case"Backspace":p();break;case"Escape":this.clearDrawingCanvas3D(),d(),null===(i=null==t?void 0:t.onCancel)||void 0===i||i.call(t)}},d=()=>{this.ssp.signals.mouseMove.remove(r),this.ssp.signals.click.remove(c),this.ssp.signals.rightClick.remove(p),this.ssp.signals.dblClick.remove(g),this.ssp.signals.keyUp.remove(h)};this.ssp.signals.mouseMove.add(r),this.ssp.signals.click.add(c),this.ssp.signals.rightClick.add(p),this.ssp.signals.dblClick.add(g),this.ssp.signals.keyUp.add(h)}))}drawingCircle(i,t){return new Promise((e=>{this.clearDrawingCanvas3D();const o=new this.ssp.library.Canvas3D({id:s,circles:[{...i,id:n}]});this.ssp.manager.store.canvas3DManager.scene.add(o);const a=o.getCircle(n);let l,r=100;const c=s=>{if(!a||!l)return;const i=this.ssp.viewport.getIntersects(s),t=i.length>0?i[0].point.clone():this.ssp.getPositionByOffset(s);r=t.distanceTo(l),a.setOptions({position:l,radius:r})},p=s=>{if(!a)return;const t=this.ssp.viewport.getIntersects(s),n=t.length>0?t[0].point.clone():this.ssp.getPositionByOffset(s);l?(d(),r=n.distanceTo(this.ssp.utils.IVector3ToVector3(l)),a.setOptions({position:l,radius:r}),e({...i,position:l,radius:r})):l=n.clone().setY(n.y+1)},g=()=>{var s;this.clearDrawingCanvas3D(),d(),null===(s=null==t?void 0:t.onCancel)||void 0===s||s.call(t)},h=s=>{switch(s.code){case"Escape":g()}},d=()=>{this.ssp.signals.mouseMove.remove(c),this.ssp.signals.click.remove(p),this.ssp.signals.rightClick.remove(g),this.ssp.signals.keyUp.remove(h)};this.ssp.signals.mouseMove.add(c),this.ssp.signals.click.add(p),this.ssp.signals.rightClick.add(g),this.ssp.signals.keyUp.add(h)}))}clearDrawingCanvas3D(){this.ssp.removeObjectById(s)}}export{o as default};
1
+ const s="drawingCanvas",i="drawingPoint",t="drawingLine",e="drawingPolygon",n="drawingCircle";class a{constructor(s){this.ssp=s,this.viewport=s.viewport}drawingPoint(t,e){return new Promise((n=>{this.clearDrawingCanvas3D();const a=new this.ssp.library.Canvas3D({id:s,points:[Object.assign(Object.assign({},t),{id:i})]});this.ssp.manager.store.canvas3DManager.scene.add(a);const o=a.getPoint(i),c=s=>{if(!o)return;const i=this.ssp.viewport.getIntersects(s),t=i.length>0?i[0].point.clone():this.ssp.getPositionByOffset(s);o.setOptions({position:t})},l=s=>{if(p(),!o)return;const i=this.ssp.viewport.getIntersects(s),e=i.length>0?i[0].point.clone():this.ssp.getPositionByOffset(s);o.setOptions({position:e}),n(Object.assign(Object.assign({},t),{position:e.clone()}))},r=()=>{var s;this.clearDrawingCanvas3D(),p(),null===(s=null==e?void 0:e.onCancel)||void 0===s||s.call(e)},g=s=>{switch(s.code){case"Escape":r()}},p=()=>{this.ssp.signals.mouseMove.remove(c),this.ssp.signals.click.remove(l),this.ssp.signals.rightClick.remove(r),this.ssp.signals.keyUp.remove(g)};this.ssp.signals.mouseMove.add(c),this.ssp.signals.click.add(l),this.ssp.signals.rightClick.add(r),this.ssp.signals.keyUp.add(g)}))}drawingLine(i,e){return new Promise((n=>{this.clearDrawingCanvas3D();const a=new this.ssp.library.Canvas3D({id:s,lines:[Object.assign(Object.assign({},i),{points:[],id:t})]});this.ssp.manager.store.canvas3DManager.scene.add(a);const o=a.getLine(t),c=[],l=s=>{const t=this.ssp.viewport.getIntersects(s),e=t.length>0?t[0].point.clone():this.ssp.getPositionByOffset(s);o&&o.setOptions(Object.assign(Object.assign({},i),{points:[...c,e.clone().setY(e.y+1)]}))},r=s=>{const t=this.ssp.viewport.getIntersects(s),e=t.length>0?t[0].point.clone():this.ssp.getPositionByOffset(s);c.push(e.clone().setY(e.y+1)),o&&o.setOptions(Object.assign(Object.assign({},i),{points:c}))},g=()=>{var s;c.pop(),o&&(o.setOptions(Object.assign(Object.assign({},i),{points:c})),null===(s=null==e?void 0:e.onCancelPrev)||void 0===s||s.call(e))},p=()=>{d(),n(Object.assign(Object.assign({},i),{points:c}))},h=s=>{var i;switch(s.code){case"Backspace":g();break;case"Escape":this.clearDrawingCanvas3D(),d(),null===(i=null==e?void 0:e.onCancel)||void 0===i||i.call(e)}},d=()=>{this.ssp.signals.mouseMove.remove(l),this.ssp.signals.click.remove(r),this.ssp.signals.rightClick.remove(g),this.ssp.signals.dblClick.remove(p),this.ssp.signals.keyUp.remove(h)};this.ssp.signals.mouseMove.add(l),this.ssp.signals.click.add(r),this.ssp.signals.rightClick.add(g),this.ssp.signals.dblClick.add(p),this.ssp.signals.keyUp.add(h)}))}drawingPolygon(i,t){return new Promise((n=>{this.clearDrawingCanvas3D();const a=new this.ssp.library.Canvas3D({id:s,polygons:[Object.assign(Object.assign({},i),{points:[],yHeight:0,id:e})]});this.ssp.manager.store.canvas3DManager.scene.add(a);const o=a.getPolygon(e),c=[],l=s=>{var t;const e=this.ssp.viewport.getIntersects(s),n=e.length>0?e[0].point.clone():this.ssp.getPositionByOffset(s);o&&o.setOptions(Object.assign(Object.assign({},i),{yHeight:((null===(t=c[0])||void 0===t?void 0:t.y)||n.y)+1,points:[...c,n]}))},r=s=>{var t;const e=this.ssp.viewport.getIntersects(s),n=e.length>0?e[0].point.clone():this.ssp.getPositionByOffset(s);c.push(n),o&&o.setOptions(Object.assign(Object.assign({},i),{yHeight:((null===(t=c[0])||void 0===t?void 0:t.y)||0)+1,points:c}))},g=()=>{var s,e;c.pop(),o&&(o.setOptions(Object.assign(Object.assign({},i),{yHeight:((null===(s=c[0])||void 0===s?void 0:s.y)||0)+1,points:c})),null===(e=null==t?void 0:t.onCancelPrev)||void 0===e||e.call(t))},p=()=>{var s;d(),n(Object.assign(Object.assign({},i),{yHeight:((null===(s=c[0])||void 0===s?void 0:s.y)||0)+1,points:c}))},h=s=>{var i;switch(s.code){case"Backspace":g();break;case"Escape":this.clearDrawingCanvas3D(),d(),null===(i=null==t?void 0:t.onCancel)||void 0===i||i.call(t)}},d=()=>{this.ssp.signals.mouseMove.remove(l),this.ssp.signals.click.remove(r),this.ssp.signals.rightClick.remove(g),this.ssp.signals.dblClick.remove(p),this.ssp.signals.keyUp.remove(h)};this.ssp.signals.mouseMove.add(l),this.ssp.signals.click.add(r),this.ssp.signals.rightClick.add(g),this.ssp.signals.dblClick.add(p),this.ssp.signals.keyUp.add(h)}))}drawingCircle(i,t){return new Promise((e=>{this.clearDrawingCanvas3D();const a=new this.ssp.library.Canvas3D({id:s,circles:[Object.assign(Object.assign({},i),{id:n})]});this.ssp.manager.store.canvas3DManager.scene.add(a);const o=a.getCircle(n);let c,l=100;const r=s=>{if(!o||!c)return;const i=this.ssp.viewport.getIntersects(s),t=i.length>0?i[0].point.clone():this.ssp.getPositionByOffset(s);l=t.distanceTo(c),o.setOptions({position:c,radius:l})},g=s=>{if(!o)return;const t=this.ssp.viewport.getIntersects(s),n=t.length>0?t[0].point.clone():this.ssp.getPositionByOffset(s);c?(d(),l=n.distanceTo(this.ssp.utils.IVector3ToVector3(c)),o.setOptions({position:c,radius:l}),e(Object.assign(Object.assign({},i),{position:c,radius:l}))):c=n.clone().setY(n.y+1)},p=()=>{var s;this.clearDrawingCanvas3D(),d(),null===(s=null==t?void 0:t.onCancel)||void 0===s||s.call(t)},h=s=>{switch(s.code){case"Escape":p()}},d=()=>{this.ssp.signals.mouseMove.remove(r),this.ssp.signals.click.remove(g),this.ssp.signals.rightClick.remove(p),this.ssp.signals.keyUp.remove(h)};this.ssp.signals.mouseMove.add(r),this.ssp.signals.click.add(g),this.ssp.signals.rightClick.add(p),this.ssp.signals.keyUp.add(h)}))}clearDrawingCanvas3D(){this.ssp.removeObjectById(s)}}export{a as default};
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- !function(s,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):(s="undefined"!=typeof globalThis?globalThis:s||self).DrawingShapePlugin=i()}(this,(function(){"use strict";const s="drawingCanvas",i="drawingPoint",e="drawingLine",t="drawingPolygon",n="drawingCircle";return class{constructor(s){this.ssp=s,this.viewport=s.viewport}drawingPoint(e,t){return new Promise((n=>{this.clearDrawingCanvas3D();const o=new this.ssp.library.Canvas3D({id:s,points:[{...e,id:i}]});this.ssp.manager.store.canvas3DManager.scene.add(o);const a=o.getPoint(i),l=s=>{if(!a)return;const i=this.ssp.viewport.getIntersects(s),e=i.length>0?i[0].point.clone():this.ssp.getPositionByOffset(s);a.setOptions({position:e})},r=s=>{if(g(),!a)return;const i=this.ssp.viewport.getIntersects(s),t=i.length>0?i[0].point.clone():this.ssp.getPositionByOffset(s);a.setOptions({position:t}),n({...e,position:t.clone()})},p=()=>{var s;this.clearDrawingCanvas3D(),g(),null===(s=null==t?void 0:t.onCancel)||void 0===s||s.call(t)},c=s=>{switch(s.code){case"Escape":p()}},g=()=>{this.ssp.signals.mouseMove.remove(l),this.ssp.signals.click.remove(r),this.ssp.signals.rightClick.remove(p),this.ssp.signals.keyUp.remove(c)};this.ssp.signals.mouseMove.add(l),this.ssp.signals.click.add(r),this.ssp.signals.rightClick.add(p),this.ssp.signals.keyUp.add(c)}))}drawingLine(i,t){return new Promise((n=>{this.clearDrawingCanvas3D();const o=new this.ssp.library.Canvas3D({id:s,lines:[{...i,points:[],id:e}]});this.ssp.manager.store.canvas3DManager.scene.add(o);const a=o.getLine(e),l=[],r=s=>{const e=this.ssp.viewport.getIntersects(s),t=e.length>0?e[0].point.clone():this.ssp.getPositionByOffset(s);a&&a.setOptions({...i,points:[...l,t.clone().setY(t.y+1)]})},p=s=>{const e=this.ssp.viewport.getIntersects(s),t=e.length>0?e[0].point.clone():this.ssp.getPositionByOffset(s);l.push(t.clone().setY(t.y+1)),a&&a.setOptions({...i,points:l})},c=()=>{var s;l.pop(),a&&(a.setOptions({...i,points:l}),null===(s=null==t?void 0:t.onCancelPrev)||void 0===s||s.call(t))},g=()=>{h(),n({...i,points:l})},d=s=>{var i;switch(s.code){case"Backspace":c();break;case"Escape":this.clearDrawingCanvas3D(),h(),null===(i=null==t?void 0:t.onCancel)||void 0===i||i.call(t)}},h=()=>{this.ssp.signals.mouseMove.remove(r),this.ssp.signals.click.remove(p),this.ssp.signals.rightClick.remove(c),this.ssp.signals.dblClick.remove(g),this.ssp.signals.keyUp.remove(d)};this.ssp.signals.mouseMove.add(r),this.ssp.signals.click.add(p),this.ssp.signals.rightClick.add(c),this.ssp.signals.dblClick.add(g),this.ssp.signals.keyUp.add(d)}))}drawingPolygon(i,e){return new Promise((n=>{this.clearDrawingCanvas3D();const o=new this.ssp.library.Canvas3D({id:s,polygons:[{...i,points:[],yHeight:0,id:t}]});this.ssp.manager.store.canvas3DManager.scene.add(o);const a=o.getPolygon(t),l=[],r=s=>{var e;const t=this.ssp.viewport.getIntersects(s),n=t.length>0?t[0].point.clone():this.ssp.getPositionByOffset(s);a&&a.setOptions({...i,yHeight:((null===(e=l[0])||void 0===e?void 0:e.y)||n.y)+1,points:[...l,n]})},p=s=>{var e;const t=this.ssp.viewport.getIntersects(s),n=t.length>0?t[0].point.clone():this.ssp.getPositionByOffset(s);l.push(n),a&&a.setOptions({...i,yHeight:((null===(e=l[0])||void 0===e?void 0:e.y)||0)+1,points:l})},c=()=>{var s,t;l.pop(),a&&(a.setOptions({...i,yHeight:((null===(s=l[0])||void 0===s?void 0:s.y)||0)+1,points:l}),null===(t=null==e?void 0:e.onCancelPrev)||void 0===t||t.call(e))},g=()=>{var s;h(),n({...i,yHeight:((null===(s=l[0])||void 0===s?void 0:s.y)||0)+1,points:l})},d=s=>{var i;switch(s.code){case"Backspace":c();break;case"Escape":this.clearDrawingCanvas3D(),h(),null===(i=null==e?void 0:e.onCancel)||void 0===i||i.call(e)}},h=()=>{this.ssp.signals.mouseMove.remove(r),this.ssp.signals.click.remove(p),this.ssp.signals.rightClick.remove(c),this.ssp.signals.dblClick.remove(g),this.ssp.signals.keyUp.remove(d)};this.ssp.signals.mouseMove.add(r),this.ssp.signals.click.add(p),this.ssp.signals.rightClick.add(c),this.ssp.signals.dblClick.add(g),this.ssp.signals.keyUp.add(d)}))}drawingCircle(i,e){return new Promise((t=>{this.clearDrawingCanvas3D();const o=new this.ssp.library.Canvas3D({id:s,circles:[{...i,id:n}]});this.ssp.manager.store.canvas3DManager.scene.add(o);const a=o.getCircle(n);let l,r=100;const p=s=>{if(!a||!l)return;const i=this.ssp.viewport.getIntersects(s),e=i.length>0?i[0].point.clone():this.ssp.getPositionByOffset(s);r=e.distanceTo(l),a.setOptions({position:l,radius:r})},c=s=>{if(!a)return;const e=this.ssp.viewport.getIntersects(s),n=e.length>0?e[0].point.clone():this.ssp.getPositionByOffset(s);l?(h(),r=n.distanceTo(this.ssp.utils.IVector3ToVector3(l)),a.setOptions({position:l,radius:r}),t({...i,position:l,radius:r})):l=n.clone().setY(n.y+1)},g=()=>{var s;this.clearDrawingCanvas3D(),h(),null===(s=null==e?void 0:e.onCancel)||void 0===s||s.call(e)},d=s=>{switch(s.code){case"Escape":g()}},h=()=>{this.ssp.signals.mouseMove.remove(p),this.ssp.signals.click.remove(c),this.ssp.signals.rightClick.remove(g),this.ssp.signals.keyUp.remove(d)};this.ssp.signals.mouseMove.add(p),this.ssp.signals.click.add(c),this.ssp.signals.rightClick.add(g),this.ssp.signals.keyUp.add(d)}))}clearDrawingCanvas3D(){this.ssp.removeObjectById(s)}}}));
1
+ !function(s,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):(s="undefined"!=typeof globalThis?globalThis:s||self).DrawingShapePlugin=i()}(this,(function(){"use strict";const s="drawingCanvas",i="drawingPoint",e="drawingLine",t="drawingPolygon",n="drawingCircle";return class{constructor(s){this.ssp=s,this.viewport=s.viewport}drawingPoint(e,t){return new Promise((n=>{this.clearDrawingCanvas3D();const a=new this.ssp.library.Canvas3D({id:s,points:[Object.assign(Object.assign({},e),{id:i})]});this.ssp.manager.store.canvas3DManager.scene.add(a);const o=a.getPoint(i),c=s=>{if(!o)return;const i=this.ssp.viewport.getIntersects(s),e=i.length>0?i[0].point.clone():this.ssp.getPositionByOffset(s);o.setOptions({position:e})},l=s=>{if(p(),!o)return;const i=this.ssp.viewport.getIntersects(s),t=i.length>0?i[0].point.clone():this.ssp.getPositionByOffset(s);o.setOptions({position:t}),n(Object.assign(Object.assign({},e),{position:t.clone()}))},r=()=>{var s;this.clearDrawingCanvas3D(),p(),null===(s=null==t?void 0:t.onCancel)||void 0===s||s.call(t)},g=s=>{switch(s.code){case"Escape":r()}},p=()=>{this.ssp.signals.mouseMove.remove(c),this.ssp.signals.click.remove(l),this.ssp.signals.rightClick.remove(r),this.ssp.signals.keyUp.remove(g)};this.ssp.signals.mouseMove.add(c),this.ssp.signals.click.add(l),this.ssp.signals.rightClick.add(r),this.ssp.signals.keyUp.add(g)}))}drawingLine(i,t){return new Promise((n=>{this.clearDrawingCanvas3D();const a=new this.ssp.library.Canvas3D({id:s,lines:[Object.assign(Object.assign({},i),{points:[],id:e})]});this.ssp.manager.store.canvas3DManager.scene.add(a);const o=a.getLine(e),c=[],l=s=>{const e=this.ssp.viewport.getIntersects(s),t=e.length>0?e[0].point.clone():this.ssp.getPositionByOffset(s);o&&o.setOptions(Object.assign(Object.assign({},i),{points:[...c,t.clone().setY(t.y+1)]}))},r=s=>{const e=this.ssp.viewport.getIntersects(s),t=e.length>0?e[0].point.clone():this.ssp.getPositionByOffset(s);c.push(t.clone().setY(t.y+1)),o&&o.setOptions(Object.assign(Object.assign({},i),{points:c}))},g=()=>{var s;c.pop(),o&&(o.setOptions(Object.assign(Object.assign({},i),{points:c})),null===(s=null==t?void 0:t.onCancelPrev)||void 0===s||s.call(t))},p=()=>{h(),n(Object.assign(Object.assign({},i),{points:c}))},d=s=>{var i;switch(s.code){case"Backspace":g();break;case"Escape":this.clearDrawingCanvas3D(),h(),null===(i=null==t?void 0:t.onCancel)||void 0===i||i.call(t)}},h=()=>{this.ssp.signals.mouseMove.remove(l),this.ssp.signals.click.remove(r),this.ssp.signals.rightClick.remove(g),this.ssp.signals.dblClick.remove(p),this.ssp.signals.keyUp.remove(d)};this.ssp.signals.mouseMove.add(l),this.ssp.signals.click.add(r),this.ssp.signals.rightClick.add(g),this.ssp.signals.dblClick.add(p),this.ssp.signals.keyUp.add(d)}))}drawingPolygon(i,e){return new Promise((n=>{this.clearDrawingCanvas3D();const a=new this.ssp.library.Canvas3D({id:s,polygons:[Object.assign(Object.assign({},i),{points:[],yHeight:0,id:t})]});this.ssp.manager.store.canvas3DManager.scene.add(a);const o=a.getPolygon(t),c=[],l=s=>{var e;const t=this.ssp.viewport.getIntersects(s),n=t.length>0?t[0].point.clone():this.ssp.getPositionByOffset(s);o&&o.setOptions(Object.assign(Object.assign({},i),{yHeight:((null===(e=c[0])||void 0===e?void 0:e.y)||n.y)+1,points:[...c,n]}))},r=s=>{var e;const t=this.ssp.viewport.getIntersects(s),n=t.length>0?t[0].point.clone():this.ssp.getPositionByOffset(s);c.push(n),o&&o.setOptions(Object.assign(Object.assign({},i),{yHeight:((null===(e=c[0])||void 0===e?void 0:e.y)||0)+1,points:c}))},g=()=>{var s,t;c.pop(),o&&(o.setOptions(Object.assign(Object.assign({},i),{yHeight:((null===(s=c[0])||void 0===s?void 0:s.y)||0)+1,points:c})),null===(t=null==e?void 0:e.onCancelPrev)||void 0===t||t.call(e))},p=()=>{var s;h(),n(Object.assign(Object.assign({},i),{yHeight:((null===(s=c[0])||void 0===s?void 0:s.y)||0)+1,points:c}))},d=s=>{var i;switch(s.code){case"Backspace":g();break;case"Escape":this.clearDrawingCanvas3D(),h(),null===(i=null==e?void 0:e.onCancel)||void 0===i||i.call(e)}},h=()=>{this.ssp.signals.mouseMove.remove(l),this.ssp.signals.click.remove(r),this.ssp.signals.rightClick.remove(g),this.ssp.signals.dblClick.remove(p),this.ssp.signals.keyUp.remove(d)};this.ssp.signals.mouseMove.add(l),this.ssp.signals.click.add(r),this.ssp.signals.rightClick.add(g),this.ssp.signals.dblClick.add(p),this.ssp.signals.keyUp.add(d)}))}drawingCircle(i,e){return new Promise((t=>{this.clearDrawingCanvas3D();const a=new this.ssp.library.Canvas3D({id:s,circles:[Object.assign(Object.assign({},i),{id:n})]});this.ssp.manager.store.canvas3DManager.scene.add(a);const o=a.getCircle(n);let c,l=100;const r=s=>{if(!o||!c)return;const i=this.ssp.viewport.getIntersects(s),e=i.length>0?i[0].point.clone():this.ssp.getPositionByOffset(s);l=e.distanceTo(c),o.setOptions({position:c,radius:l})},g=s=>{if(!o)return;const e=this.ssp.viewport.getIntersects(s),n=e.length>0?e[0].point.clone():this.ssp.getPositionByOffset(s);c?(h(),l=n.distanceTo(this.ssp.utils.IVector3ToVector3(c)),o.setOptions({position:c,radius:l}),t(Object.assign(Object.assign({},i),{position:c,radius:l}))):c=n.clone().setY(n.y+1)},p=()=>{var s;this.clearDrawingCanvas3D(),h(),null===(s=null==e?void 0:e.onCancel)||void 0===s||s.call(e)},d=s=>{switch(s.code){case"Escape":p()}},h=()=>{this.ssp.signals.mouseMove.remove(r),this.ssp.signals.click.remove(g),this.ssp.signals.rightClick.remove(p),this.ssp.signals.keyUp.remove(d)};this.ssp.signals.mouseMove.add(r),this.ssp.signals.click.add(g),this.ssp.signals.rightClick.add(p),this.ssp.signals.keyUp.add(d)}))}clearDrawingCanvas3D(){this.ssp.removeObjectById(s)}}}));
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@soonspacejs/plugin-drawing-shape",
3
3
  "pluginName": "DrawingShapePlugin",
4
- "version": "2.4.4",
4
+ "version": "2.4.7",
5
5
  "description": "DrawingShapePlugin plugin for SoonSpace.js",
6
6
  "main": "dist/index.js",
7
7
  "module": "dist/index.esm.js",
@@ -13,5 +13,5 @@
13
13
  ],
14
14
  "author": "xuek",
15
15
  "license": "UNLICENSED",
16
- "gitHead": "73b20b95e4b94f6634bfde269b1a983f3f2db6f9"
16
+ "gitHead": "7e7fb9c14b3d1c93c5365cd517b423cf0a1417c8"
17
17
  }