Рассчитайте размер круга от дуги?
-
15-11-2019 - |
Вопрос
Как я могу рассчитать размер круга от набора дуг?
В частности, у меня есть это определение пути SVG, которое рисует круг, я ищу его размер.
<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"/>
.
Для вашей информации Круг нарисован в атрибуте «D».M334.293 56.846 Переходит к этому положению X, Y, то команда C - это кривые. Кривые
:
Рисует кривую кубической безье из текущей точки до (x, y) с использованием (x1, y1) в качестве контрольной точки в начале кривой и (x2, y2) в качестве контрольной точки в конце кривойОтказC (заглавные буквы) указывает, что будут следовать абсолютные координаты;C (строчные буквы) указывает на то, что относительные координаты будут следовать.
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
. Решение
At this juncture you have two possibilites:
You can treat the bezier curve as a circle (which is, as commented, wrong; it's just really circle-looking). To calculate the area, determine the radius and use π * r^2
as usual.
If you want to calculate generally the area enclosed by a path element; that requires some moderate calculus, and is not for the faint of heart.