Pergunta

Como posso calcular o tamanho de um círculo a partir de um conjunto de arcos?

Especificamente, tenho esta definição de caminho SVG que desenha um círculo, estou procurando descobrir seu tamanho.

<path clip-path="url(#SVGID_2_)" fill="#99C44C" d="M334.293,56.846c0-4.782,3.88-8.659,8.665-8.659c4.78,0,8.66,3.877,8.66,8.659
    c0,4.783-3.88,8.661-8.66,8.661C338.173,65.507,334.293,61.629,334.293,56.846"/>

Para sua informação, o círculo é desenhado no atributo 'd'.M334.293,56.846 se move para esta posição x,y, então os comandos c são curvas.

Curvas:

Desenha uma curva Bézier cúbica do ponto atual até (x,y) usando (x1,y1) como ponto de controle no início da curva e (x2,y2) como ponto de controle no final da curva.C (maiúsculo) indica que as coordenadas absolutas seguirão;c (minúscula) indica que as coordenadas relativas se seguirão.

relative curves
c0-4.782,3.88-8.659,8.665-8.659
c4.78,0,8.66,3.877,8.66,8.659
c0,4.783-3.88,8.661-8.66,8.661

absolute curve
C338.173,65.507,334.293,61.629,334.293,56.846
Foi útil?

Solução

Neste momento você tem duas possibilidades:

Você pode tratar a curva Bézier como um círculo (o que é, como comentado, errado;é realmente parecido com um círculo).Para calcular a área, determine o raio e use π * r^2 como sempre.

Se você deseja calcular geralmente a área delimitada por um elemento de caminho;isso requer algum cálculo moderado e não é para os fracos de coração.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top