Как вы зациклите сплайн в POV-Ray?
Вздох! Я бы хотел, чтобы это сработало:
// Spline Sine
#declare SphereSine = union {
#local Radius = 0.15;
#local Amplitude = 2;
#local Iterator = 0;
#local Amount = 20;
sphere_sweep {
b_spline
Amount,
#for (Iterator, 0, Amount, 1)
<Iterator, sin(Iterator)*Amplitude, 0>, Radius
#end
tolerance 0.1
pigment {
rgb <1, 0, 0>
}
}
}
Есть ли способы автоматизировать добавление точек к сплайну в POV-Ray, поэтому мне не нужно добавлять точки вручную? Есть ли другие альтернативы?
2 ответа
Вы можете написать собственный макрос, чтобы обернуть for
Цикл и сократить код до одной строки, скажем, points(0.15, 2, 20);
, В противном случае, если вы ищете что-то наподобие встроенного ключевого слова для указания количества точек или функции генерации точек, я боюсь, что нет доступных вариантов из коробки.
жаль что поздно...
проблема в том, что вы указали количество 20, но внутри цикла есть 21 значение (от 0 до 20).
ваше решение действительно работает! просто измени
#for (Итератор, 0, Сумма, 1)
с
#for (Итератор, 0, Сумма-1, 1)