У меня есть старый код QuickBasic (да, действительно), над которым я работаю над переписыванием в JavaScript. В QuickBasic круг определяется следующим образом:Как можно написать это заявление BASIC Circle в JavaScript?
CIRCLE (column, row), radius, color, startRadian, stopRadian, aspect
В JavaScript на холсте HTML5, как так:
c.arc(column, row, radius, startAngle, endAngle, counterclockwise);
Как видно, высказывания довольно похожи - за исключением того, что QuickBasic имеет параметры для цвета и аспект.
Я могу использовать context.strokeStyle для обработки цвета, но я не уверен, как обращаться с этим аспектом? Какую команду JavaScript я использовал бы для достижения аналогичного эффекта, как описано в QuickBasic через параметр аспекта?
В этом случае аспекте может быть определен как:.
«SINGLE значение от 0 до 1 влияет на вертикальную высоту и значение более 1 влияют на горизонтальную ширину эллипса Аспект = 1 является нормальным кругом. " - QB64 Wiki
1http://www.qb64.net/wiki/index.php?title=CIRCLE
Возможный дубликат [Как нарисовать овал в html5 холст?] (Http://stackoverflow.com/questions/2172798/how-to-draw-an-oval-in -html5-canvas) Обратите внимание, что установка параметра 'aspect'' CIRCLE' в значение, отличное от 1, заставляет его нарисовать овал вместо круга. – duskwuff
Используйте 'ctx.scale', чтобы задать аспект,' ctx.arc', чтобы создать путь. Прежде чем вы сможете восстановить масштаб до квадрата, вызовите 'ctx.stroke'. Если вы не восстановите масштаб до квадратного аспект, ширина линии будет меняться по дуге. – Blindman67