Я писал программу, которая перерисовывает много (несколько сотен) одного и того же PShape в разных цветах. Тем не менее, я не нашел способ перерисовать PShape в разных цветах без фактического воссоздания PShape, то есть через форму начала/конца, переделывая все вершины и просто меняя заливку, а затем назначая ее новой переменной PShape. Я пробовал такие вещи, как tint(), fill(), setFill(), и все они, кажется, требуют вызова в форме начала/конца.Есть ли способ изменить цвет PShape без ввода начала/конца?
Есть ли способ перерисовать PShape в разных цветах без полного переопределения формы и назначения ее новой переменной?
Любая помощь очень ценится.
(Вот это своего рода сопоставления различных вещей, которые я пробовал)
PShape p;
void setup()
{
size(600,600,P2D);
p = createShape();
p.beginShape();
p.vertex(0, 0);
p.vertex(20, 0);
p.vertex(20, 20);
p.vertex(0, 20);
p.endShape(CLOSE);
}
void draw()
{
p.tint(200,100,30);
p.fill(200,100,30);
p.setFill(0,0);
shape(p,100,100);
}
любая помощь очень ценится
Нет, 'begin 'и' end' вводят и оставляют контекст, если вы не в контексте, вы ничего не можете изменить в нем. – Serdalis