java rect 旋转_处理(Java可视化语言):使用rectMode(CENTER)而不是rectMode(CORNER)旋转矩形,留下奇数衰落轨迹效果...
我正在練習(xí)在物體移動(dòng)時(shí)留下漸變效果的對(duì)象。此刻,我正在使一個(gè)矩形在畫布的中間順時(shí)針旋轉(zhuǎn),并在每個(gè)幀的畫布上繪制一個(gè)低透明度的矩形,從而產(chǎn)生一個(gè)不錯(cuò)的淡入淡出的痕跡。
問(wèn)題是:僅當(dāng)我使用rectMode(CORNER)時(shí),衰落軌跡才完全消失。 [我應(yīng)該提到的是,不提及rectMode默認(rèn)為CORNER。]這是不可取的,因?yàn)榫匦螄@一個(gè)角而不是其中心旋轉(zhuǎn)。
我更喜歡使用rectMode(CENTER),但是該命令的運(yùn)動(dòng)軌跡不會(huì)完全消失。取而代之的是,這些痕跡建立在完全不透明的純色圓圈的3/4處。
我試圖包括一個(gè)奇數(shù)3/4運(yùn)動(dòng)軌跡圈的屏幕截圖,但被告知我缺乏必要的聲譽(yù)。
這太奇怪了,看起來(lái)好像是個(gè)錯(cuò)誤。
有任何想法嗎?int shapeSize = 150;
float q = 0;
void setup() {
size(500, 500);
smooth();
noStroke();
background(0);
}
void draw() {
noStroke();
fill( 0, 15); //builds up low-opacity layers over object
rect(0, 0, width, height);
//pushMatrix();
rectMode(CENTER); //TOGGLE ON AND OFF TO SEE THE ISSUE
translate(width/2, height/2);
rotate(q);
noStroke();
fill(255,255);
rect(0,0, shapeSize,shapeSize);
q += 0.02;
//popMatrix(); //Tried toggling push and popMatrix -- no luck
}
最佳答案:
我總是會(huì)猶豫要不要指責(zé)一種語(yǔ)言有bug :)嘗試以下代碼,我想您會(huì)明白為什么會(huì)發(fā)生這種行為。 (與您的相同,只是我更改了半透明矩形的顏色)。如果您想進(jìn)一步說(shuō)明,請(qǐng)發(fā)表評(píng)論,我很樂(lè)意為您服務(wù)。int shapeSize = 150;
float q = 0;
void setup() {
size(500, 500);
smooth();
noStroke();
background(0);
}
void draw() {
noStroke();
fill( 100, 15); //builds up low-opacity layers over object
rect(0, 0, width, height);
//pushMatrix();
rectMode(CENTER); //TOGGLE ON AND OFF TO SEE THE ISSUE
translate(width/2, height/2);
rotate(q);
noStroke();
fill(255,255);
rect(0,0, shapeSize,shapeSize);
q += 0.02;
//popMatrix(); //Tried toggling push and popMatrix -- no luck
}
總結(jié)
以上是生活随笔為你收集整理的java rect 旋转_处理(Java可视化语言):使用rectMode(CENTER)而不是rectMode(CORNER)旋转矩形,留下奇数衰落轨迹效果...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: java如何创造一个整数的类_【技术干货
- 下一篇: java xpath 命名空间_【转】玩