Чертеж круга с траекторией дуги SVG

Короткий вопрос: используя путь SVG, мы можем нарисовать 99,99% круга, и он появляется, но если он равен 99,999999999% круга, то круг не будет отображаться. Как это можно исправить?

Следующий путь SVG может нарисовать 99,99% круга: (попробуйте на http://jsfiddle.net/DFhUF/1381/ и посмотрите, если вы см. 4 дуги или только 2 дуги, но обратите внимание, что если это IE, он отображается в VML, а не SVG, но имеет аналогичную проблему)

M 100 100 a 50 50 0 1 0 0.00001 0

Но когда он составляет 99,999999999% от круга, тогда вообще ничего не покажется?

M 100 100 a 50 50 0 1 0 0.00000001 0    

И то же самое со 100% круга (это все еще дуга, не правда ли, просто очень полная дуга)

M 100 100 a 50 50 0 1 0 0 0 

Как это можно исправить? Причина в том, что я использую функцию, чтобы нарисовать процент дуги, и если мне нужно «особый случай», дуга 99,9999% или 100%, чтобы использовать функцию круга, это было бы глупо.

Опять же, тестовый пример для jsfiddle с использованием RaphaelJS находится по адресу http://jsfiddle.net/DFhUF/1381/
(и если это VML на IE 8, даже второй круг не будет отображаться ... вы должны изменить его на 0,01)


Обновление:

Это потому, что я рендерил дугу для оценка в нашей системе, поэтому 3,3 балла получают 1/3 круга. 0,5 получает половину круга, а 9,9 балла - 99% круга. Но что, если в нашей системе есть 9,99 баллов? Должен ли я проверить, находится ли он близко к 99,999% круга, и использовать функцию arc или функцию circle соответственно? Тогда как насчет 9.987? Какой использовать? Смешно знать, какие оценки будут отображаться в «слишком полный круг» и переключаться на функцию круга, а когда это «определенный 99,9%» от круга или 9,9997, тогда использовать функцию дуги .

136
задан 16 revs, 3 users 100% 8 July 2019 в 08:38
поделиться