Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

274
Vistas
Fabric.js Canvas: haga que un tipo de objeto siempre permanezca debajo del otro

Estoy trabajando en un proyecto en el que tengo que agregar rectángulos y agregar triángulos en esos rectángulos. Obtengo el rectángulo seleccionado actualmente usando esto

 const rect = canvas.getActiveObject().aCoords

Luego compruebo si el clic del mouse está en el rectángulo y, si es cierto, agrego un triángulo.

 const x = event.pointer.x const y = event.pointer.y if (rect.tl.x + 20 < x < rect.br.x - 20 && rect.tl.y + 20 < y < rect.br.y - 20) { var points = regularPolygonPoints(3, 10); var myPoly = new fabric.Polygon(points, { stroke: 'red', left: x, top: y, strokeWidth: 2, strokeLineJoin: 'bevil' }, false); canvas.add(myPoly); }

El problema es que cada vez que se selecciona el rectángulo, aparece encima de todos los triángulos agregados y solo después de hacer clic para anular la selección del rectángulo, los triángulos aparecen debajo.

Por favor, vea las imágenes a continuación para comprender mejor

no seleccionado

ingrese la descripción de la imagen aquí

Rectángulo seleccionado que viene encima de los triángulos

ingrese la descripción de la imagen aquí

Lo que quiero es que incluso si se selecciona el rectángulo, siempre permanece debajo de los triángulos.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

http://fabricjs.com/docs/fabric.Canvas.html#preserveObjectStacking

Indica si los objetos deben permanecer en la posición actual de la pila cuando se seleccionan. Cuando los objetos falsos se colocan en la parte superior y se representan como parte del grupo de selección

Establezca su canvas.preserveObjectStacking en true (es false de forma predeterminada).

Evitará que la selección traiga objetos al frente, pero tenga en cuenta que esto dependerá del orden en que haya agregado sus objetos.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda