Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

226
Visualizações
d3.js Simulación de fuerza con zoom: Limite la transformación x/y al arrastrar

Tengo una simulación de fuerza d3 dentro de una capa de zoom. Básicamente, este ejemplo se modificó con más funciones: https://bl.ocks.org/puzzler10/4438752bb93f45dc5ad5214efaa12e4a

Mi pregunta es sobre la configuración del zoom.

 let transformXYLimit = 700; var zoom_handler = d3.zoom() .scaleExtent([.7, 5.5]) .on("zoom", (event) => { // This x/y limitation does not work properly event.transform.x = Math.min(transformXYLimit, Math.max(event.transform.x, -transformXYLimit)); event.transform.y = Math.min(transformXYLimit, Math.max(event.transform.y, -transformXYLimit)); zoomlayer.attr("transform", event.transform); }); zoom_handler(svg);

Logré limitar el zoom con la función "scaleExtent()", sin embargo, también quiero limitar cuánto puede arrastrar el usuario el "zoomlayer" en la dirección x/y para que no "pierda" el gráfico en la nada cuando arrastra demasiado. He intentado limitarlo estableciendo un límite fijo para las variables event.transform.x/y, sin embargo, combinado con un zoom más alto, esto no me permite ver el gráfico completo. ¿Hay alguna forma "oficial" adecuada de limitar estas coordenadas de arrastre x/y?

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda