dps_canvas
Version:
Html canvas üzerinde şekiller oluşturmanızı sağlar
64 lines (56 loc) • 1.76 kB
JavaScript
export const cornerViolationDetected = (item, boundaryX, boundaryY) => {
if (
item.x <= 0 ||
item.x + item.width >= boundaryX ||
item.y <= 0 ||
item.y + item.width >= boundaryY
) {
return true;
}
}
export const equalization = (currentItem, items, width, height) => {
return items.filter(item => item.uid !== currentItem.uid).map(item => {
if (currentItem.y === item.y) {
return {
mt: { x: 0, y: currentItem.y },
lt: { x: width, y: currentItem.y }
}
}
else if (currentItem.x === item.x) {
return {
mt: { x: currentItem.x, y: 0 },
lt: { x: currentItem.x, y: height }
}
}
else if (item.y + item.width === currentItem.y) {
return {
mt: { x: 0, y: item.y + item.width },
lt: { x: width, y: item.y + item.width }
}
}
else if (item.x + item.width === currentItem.x) {
return {
mt: { x: currentItem.x, y: 0 },
lt: { x: currentItem.x, y: height }
}
}
else if (currentItem.x + currentItem.width === item.x) {
return {
mt: { x: currentItem.x + currentItem.width, y: 0 },
lt: { x: currentItem.x + currentItem.width, y: height }
}
}
else if (currentItem.y + currentItem.width === item.y) {
return {
mt: { x: 0, y: currentItem.y + currentItem.width },
lt: { x: width, y: currentItem.y + currentItem.width }
}
}
else if (currentItem.x + currentItem.width === item.x) {
return {
mt: { x: currentItem.x + currentItem.width, y: 0 },
lt: { x: currentItem.x + currentItem.width, y: height }
}
}
}).filter(c => c !== undefined)
}