2016-10-31 2 views
0

Я изо всех сил пытаюсь понять, как повторить эти 2 концентрических эллипса. Направления: 1) Нарисует случайное число изображения (это часть, на которой я включен) и 2) Используйте вложенный цикл цикла, так что заливка находится во внешнем цикле, а чертеж находится во внутреннем цикле. Используйте соответствующие значения. Это исходный код:a для цикла для повторения концентрических эллипсов

noStroke(); 



for(var total = 25; total > 0; total--){ 

    fill(random(0,255),random(0,255), random(0,255)); 

    ellipse(200, 200, total * 10, total * 20); 

    ellipse(200, 200, total * 20, total * 10); 

} 

Это то, что я есть, и как вы можете видеть, что я получил их повторить, но они должны держать их концентрические детали. Заставлять их сосредоточиться на том, что я застрял в последние несколько дней. (по концентрической детали я имею в виду эффект радуги)

noStroke(); 

var flower = function(x,y){ 

for(var total = 5; total > 0; total--){ 

    fill(random(0,255),random(0,255), random(0,255)); 



    for(var i = 0; i < random(1,20); i++) { 
    var circleX = random(x,y); 
    var circleY = random(x,y); 
    ellipse(circleX, circleY, total * 10, total * 20); 
    ellipse(circleX, circleY, total * 20, total * 10); 

} 
} 
}; 
flower(0, 400); 
+0

Что вы имеете в виду, что вы застряли? Я уверен, что у вас нет ошибок. Просто, что вы не смогли нарисовать эти круги. не так ли? – Pragun

+0

Я застрял в том смысле, что я провел дни, пытаясь понять, как включить эллипсы, чтобы они концентрировались. Вы правы, у меня нет ошибок. Я в основном прошу совета/советов, чтобы отправить меня в правильном направлении. – Smokeyflo

+0

не могли бы вы опубликовать простой рабочий код, чтобы узнать, что происходит? – Sreekanth

ответ

0

Вы используете Processing.js или p5.js? Вы получите лучшую помощь, если мы сможем запустить вашу программу, поэтому постарайтесь отправить MCVE вместо отключенного фрагмента.

Это может также помочь, если вы разместите макет того, что вы ожидаете от этого кода, по сравнению с тем, что он на самом деле делает. Но я думаю, что понимаю вашу цель: вы хотите рисовать цветы, рисуя концентрические круги, которые «стекают», чтобы создать контурный эффект, и вы хотите сделать это случайным числом раз.

Пару вещи выскочить на меня:

Подумайте о порядке ваши петли находятся в В своем первом фрагменте кода, вы рисуете один цветок, обернув total от 25 до 0, и это работает.. Теперь вы хотите сделать это случайное число раз. Это означает, что вы хотите, чтобы цикл total был внутри цикл, который повторяется случайным числом раз! Но вы отменили это и имеете свою случайную петлю внутри цикла total.

Что это такое? Обработка данных: для total из 5 раз, нарисуйте случайное количество кругов в случайных местах.

Вместо этого вы хотите: случайное число раз, нарисуйте total из 5 круги. Вам также необходимо проверить, где вы создаете circleX и circleY. Прямо сейчас каждый круг рисуется в случайном месте, когда вы действительно хотите использовать те же самые circleX и circleY для каждого круга, который составляет тот же цветок. Другими словами, вы хотите сгенерировать эти переменные перед внутренним циклом.