В цикле FOR NEXT шаг задается параметром STEP, например:
Code: Select all
FOR R = 0 TO 1 STEP 0.001
...
NEXT R
Можете еще раз перечитать раздел справки "Основы" чтобы ознакомиться с этими командами.
Code: Select all
FOR R = 0 TO 1 STEP 0.001
...
NEXT R
Code: Select all
graphics
refresh off
x=screen_width()
y=screen_height()/3
for a=0 to 1 step 0.01
graphics clear
fill alpha a
fill color 1,1,1
fill rect 0,0 to x,y
fill color 0,0,1
fill rect 0,y to x,y*2
fill color 1,0,0
fill rect 0,y*2 to x,y*3
refresh
pause 0.001
next a
Code: Select all
graphics
refresh off
x=screen_width()
y=screen_height()/3
1 for a=0 to 1 step 0.05
if n%2=0 then a1=a else a1=1-a
graphics clear
fill alpha a1
fill color 1,1,1
fill rect 0,0 to x,y
fill color 0,0,1
fill rect 0,y to x,y*2
fill color 1,0,0
fill rect 0,y*2 to x,y*3
refresh
next a
n+=1
goto 1
Code: Select all
if n%2=0 then
Code: Select all
if even(n) then
У вас широкой линией (ширина 50 точек) по одному и тому же месту 100 раз рисуется дуга одного цвета, разной прозрачностью. В итоге - просто закрашенная линия.Ilirias wrote:Привет всем! Мой вариант радуги, но не пойму, где прозрачность( Подскажите, хотел прозрачность переходящую - слева прозрачнее, справа непрозрачнее, где ошибся?
graphics
graphics clear ' очищаем экран
option angle degrees ' переводим в градусы
draw color 1,0,0 ' выбираем красный цвет
draw size 50 ' ширина дуги
for x=0 to 100 ' цикл
draw alpha x/100 ' задаем прозрачность
draw arc 450,500 , 400 , -180,0 , 0 ' дуга
next x
draw color 1,165/255,0 ' оранжевый
draw size 50 ' ширина дуги
for x=0 to 100 ' цикл
draw alpha x/100 ' задаем прозрачность
draw arc 450,500 , 350 , -180,0 , 0 ' дуга
next x
draw color 1,1,0 ' желтый
draw size 50 ' ширина дуги
for x=0 to 100 ' цикл
draw alpha x/100 ' задаем прозрачность
draw arc 450,500 , 300 , -180,0 , 0 ' дуга
next x
draw color 1,128/255,0 ' зеленый
draw size 50 ' ширина дуги
for x=0 to 100 ' цикл
draw alpha x/100 ' задаем прозрачность
draw arc 450,500 , 250 , -180,0 , 0 ' дуга
next x
draw color 66/255,170/255,1 ' голубой
draw size 50 ' ширина дуги
for x=0 to 100 ' цикл
draw alpha x/100 ' задаем прозрачность
draw arc 450,500 , 200 , -180,0 , 0 ' дуга
next x
draw color 0,0,1 ' синий
draw size 50 ' ширина дуги
for x=0 to 100 ' цикл
draw alpha x/100 ' задаем прозрачность
draw arc 450,500 , 150 , -180,0 , 0 ' дуга
next x
draw color 139/255,0,1 ' фиолетовый
draw size 50 ' ширина дуги
for x=0 to 100 ' цикл
draw alpha x/100 ' задаем прозрачность
draw arc 450,500 , 100 , -180,0 , 0 ' дуга
next x
Mr. Kibernetik, а не подскажете, как правильно сделать? По линии там понятно - задаются координаты через х, который и в прозрачности и в цикле, а дуга же задается через центр и радиус...Mr. Kibernetik wrote:У вас широкой линией (ширина 50 точек) по одному и тому же месту 100 раз рисуется дуга одного цвета, разной прозрачностью. В итоге - просто закрашенная линия.Ilirias wrote:Привет всем! Мой вариант радуги, но не пойму, где прозрачность( Подскажите, хотел прозрачность переходящую - слева прозрачнее, справа непрозрачнее, где ошибся?
graphics
graphics clear ' очищаем экран
option angle degrees ' переводим в градусы
draw color 1,0,0 ' выбираем красный цвет
draw size 50 ' ширина дуги
for x=0 to 100 ' цикл
draw alpha x/100 ' задаем прозрачность
draw arc 450,500 , 400 , -180,0 , 0 ' дуга
next x
draw color 1,165/255,0 ' оранжевый
draw size 50 ' ширина дуги
for x=0 to 100 ' цикл
draw alpha x/100 ' задаем прозрачность
draw arc 450,500 , 350 , -180,0 , 0 ' дуга
next x
draw color 1,1,0 ' желтый
draw size 50 ' ширина дуги
for x=0 to 100 ' цикл
draw alpha x/100 ' задаем прозрачность
draw arc 450,500 , 300 , -180,0 , 0 ' дуга
next x
draw color 1,128/255,0 ' зеленый
draw size 50 ' ширина дуги
for x=0 to 100 ' цикл
draw alpha x/100 ' задаем прозрачность
draw arc 450,500 , 250 , -180,0 , 0 ' дуга
next x
draw color 66/255,170/255,1 ' голубой
draw size 50 ' ширина дуги
for x=0 to 100 ' цикл
draw alpha x/100 ' задаем прозрачность
draw arc 450,500 , 200 , -180,0 , 0 ' дуга
next x
draw color 0,0,1 ' синий
draw size 50 ' ширина дуги
for x=0 to 100 ' цикл
draw alpha x/100 ' задаем прозрачность
draw arc 450,500 , 150 , -180,0 , 0 ' дуга
next x
draw color 139/255,0,1 ' фиолетовый
draw size 50 ' ширина дуги
for x=0 to 100 ' цикл
draw alpha x/100 ' задаем прозрачность
draw arc 450,500 , 100 , -180,0 , 0 ' дуга
next x
Не совсем понимаю, о чем вы... мне нужно, чтобы дуга меняла прозрачность на протяжении от -180 до 0. Т.е. одна линия должна быть разной прозрачности на своем протяжении. Или так нельзя сделать?Mr. Kibernetik wrote:Вы определитесь, какой шириной будете рисовать цветные линии разной прозрачности. И из этого уже исходите при рисовании дуг.