Remove commented out code and make it work for sharp rectanguloid

This commit is contained in:
Mark Tolmacs 2025-05-02 18:09:06 +02:00
parent 436a0568fa
commit cdb7349111
No known key found for this signature in database

View file

@ -181,10 +181,13 @@ const drawHighlightForRectWithRotation = (
context.translate(x, y); context.translate(x, y);
context.rotate(element.angle); context.rotate(element.angle);
const radius = getCornerRadius( let radius = getCornerRadius(
Math.min(element.width, element.height), Math.min(element.width, element.height),
element, element,
); );
if (radius === 0) {
radius = 0.01;
}
context.beginPath(); context.beginPath();
@ -228,70 +231,6 @@ const drawHighlightForRectWithRotation = (
drawCatmullRomQuadraticApprox(context, topLeftApprox); drawCatmullRomQuadraticApprox(context, topLeftApprox);
} }
// context.moveTo(-padding + radius, -padding);
// context.lineTo(element.width + padding - radius, -padding);
// context.quadraticCurveTo(
// element.width + padding,
// -padding,
// element.width + padding,
// -padding + radius,
// );
// context.lineTo(element.width + padding, element.height + padding - radius);
// context.quadraticCurveTo(
// element.width + padding,
// element.height + padding,
// element.width + padding - radius,
// element.height + padding,
// );
// context.lineTo(-padding + radius, element.height + padding);
// context.quadraticCurveTo(
// -padding,
// element.height + padding,
// -padding,
// element.height + padding - radius,
// );
// context.lineTo(-padding, -padding + radius);
// context.quadraticCurveTo(-padding, -padding, -padding + radius, -padding);
// context.moveTo(-FIXED_BINDING_DISTANCE + radius, -FIXED_BINDING_DISTANCE);
// context.quadraticCurveTo(
// -FIXED_BINDING_DISTANCE,
// -FIXED_BINDING_DISTANCE,
// -FIXED_BINDING_DISTANCE,
// -FIXED_BINDING_DISTANCE + radius,
// );
// context.lineTo(
// -FIXED_BINDING_DISTANCE,
// element.height + FIXED_BINDING_DISTANCE - radius,
// );
// context.quadraticCurveTo(
// -FIXED_BINDING_DISTANCE,
// element.height + FIXED_BINDING_DISTANCE,
// -FIXED_BINDING_DISTANCE + radius,
// element.height + FIXED_BINDING_DISTANCE,
// );
// context.lineTo(
// element.width + FIXED_BINDING_DISTANCE - radius,
// element.height + FIXED_BINDING_DISTANCE,
// );
// context.quadraticCurveTo(
// element.width + FIXED_BINDING_DISTANCE,
// element.height + FIXED_BINDING_DISTANCE,
// element.width + FIXED_BINDING_DISTANCE,
// element.height + FIXED_BINDING_DISTANCE - radius,
// );
// context.lineTo(
// element.width + FIXED_BINDING_DISTANCE,
// -FIXED_BINDING_DISTANCE + radius,
// );
// context.quadraticCurveTo(
// element.width + FIXED_BINDING_DISTANCE,
// -FIXED_BINDING_DISTANCE,
// element.width + FIXED_BINDING_DISTANCE - radius,
// -FIXED_BINDING_DISTANCE,
// );
// context.lineTo(-FIXED_BINDING_DISTANCE + radius, -FIXED_BINDING_DISTANCE);
{ {
const topLeftApprox = offsetQuadraticBezier( const topLeftApprox = offsetQuadraticBezier(
pointFrom(0 + radius, 0), pointFrom(0 + radius, 0),
@ -368,7 +307,7 @@ const strokeRectWithRotation = (
context.restore(); context.restore();
}; };
const strokeDiamondWithRotation = ( const drawHighlightForDiamondWithRotation = (
context: CanvasRenderingContext2D, context: CanvasRenderingContext2D,
padding: number, padding: number,
element: ExcalidrawDiamondElement, element: ExcalidrawDiamondElement,
@ -567,7 +506,7 @@ const renderBindingHighlightForBindableElement = (
drawHighlightForRectWithRotation(context, element, padding); drawHighlightForRectWithRotation(context, element, padding);
break; break;
case "diamond": case "diamond":
strokeDiamondWithRotation(context, padding, element); drawHighlightForDiamondWithRotation(context, padding, element);
break; break;
case "ellipse": case "ellipse":
strokeEllipseWithRotation( strokeEllipseWithRotation(