Я попытался найти похожие проблемы, учебные пособия по рисованию дуг и кругов и не нашел ничего полезного для этого вопроса.cairo/pycairo drawing arcs issue: PI/2 не нарисовал то, что ожидалось
Я играю с каиром и pycairo, пытаясь нарисовать круг с квадрантами.
Я не уверен, что я заблудился в любой момент, но то, что я ожидаю сделать, не то, что я рисую вообще.
Моя цель - нарисовать круг с различными квадрантами с различным цветом заполнения в каждом квадранте.
Я построю поверхность и контекст, и я могу нарисовать полный круг (2 * PI), половину круга (PI), и когда я попытаюсь нарисовать только квадрант (PI/2 -> 90 градусов), результат что-то я не понимаю.
Первый пример, полный круг (360 град ака 2 * PI радиан):
ctx.rectangle(0, 0,1200,1200) # Rectangle(x0,y0,w,h)
ctx.set_source_rgb(1,1,1)
ctx.fill()
ctx.arc(600,600,500,0,2*math.pi)
ctx.set_source_rgb(1,0,0)
ctx.fill()
ctx.stroke()
Результат является правильным, полный круг:
full circle as supposed to be with 2 * PI radians (360 degrees)
Второй пример, половина круга (180 градусов, PI радиан):
ctx.rectangle(0, 0,1200,1200) # Rectangle(x0,y0,w,h)
ctx.set_source_rgb(1,1,1)
ctx.fill()
ctx.arc(600,600,500,0,math.pi)
ctx.set_source_rgb(1,0,0)
ctx.fill()
ctx.stroke()
Результат является правильным, полукруг:
(я удалил изображение, потому что не хватает репутации еще)
Третий пример, четверть/квадрант (90 градусов, PI/2):
ctx.rectangle(0, 0,1200,1200) # Rectangle(x0,y0,w,h)
ctx.set_source_rgb(1,1,1)
ctx.fill()
ctx.arc(600,600,500,0,math.pi/2)
ctx.set_source_rgb(1,0,0)
ctx.fill()
ctx.stroke()
Не понимаю: -? Что здесь происходит?
The supposed to be quadrant, PI/2 90 degrees
Пожалуйста, кто-то может помочь мне с этим? Я потерялся.
Отличный совет, спасибо. Кстати, вы должны принять свой ответ. –
Thx! Я забыл :) –