diff --git a/docs/API/attributes_functions_overview.md b/docs/API/attributes_functions_overview.md index 68628b7..7be8045 100644 --- a/docs/API/attributes_functions_overview.md +++ b/docs/API/attributes_functions_overview.md @@ -150,6 +150,7 @@ export interface ExcalidrawAutomate { //utility functions to generate EmbeddedFilesLoaderand ExportSettings objects getEmbeddedFilesLoader(isDark?:boolean):EmbeddedFilesLoader; getExportSettings(withBackground:boolean,withTheme:boolean):ExportSettings; + getBoundingBox(elements:ExcalidrawElement[]): {topX:number,topY:number,width:number,height:number}; } ``` diff --git a/src/ExcalidrawAutomate.ts b/src/ExcalidrawAutomate.ts index ed955cc..893a7db 100644 --- a/src/ExcalidrawAutomate.ts +++ b/src/ExcalidrawAutomate.ts @@ -1067,32 +1067,9 @@ function estimateLineBound(points:any):[number,number,number,number] { return[minX,minY,maxX,maxY]; } -/*export function estimateElementBounds (element:ExcalidrawElement):[number,number,number,number] { - if(element.type=="line" || element.type=="arrow") { - const [minX,minY,maxX,maxY] = estimateLineBound(element.points); - return [minX+element.x,minY+element.y,maxX+element.x,maxY+element.y]; - } - return[element.x,element.y,element.x+element.width,element.y+element.height]; -} */ - export function estimateBounds (elements:ExcalidrawElement[]):[number,number,number,number] { const bb = getCommonBoundingBox(elements); return [bb.minX,bb.minY,bb.maxX,bb.maxY]; -/* - if(!elements.length) return [0,0,0,0]; - let minX = Infinity; - let maxX = -Infinity; - let minY = Infinity; - let maxY = -Infinity; - - elements.forEach((element)=>{ - const [x1,y1,x2,y2] = estimateElementBounds(element); - minX = Math.min(minX, x1); - minY = Math.min(minY, y1); - maxX = Math.max(maxX, x2); - maxY = Math.max(maxY, y2); - }); - return [minX,minY,maxX,maxY];*/ } export function repositionElementsToCursor (elements:ExcalidrawElement[],newPosition:{x:number, y:number},center:boolean=false):ExcalidrawElement[] {