我在Processing環境中編寫了一些代碼來創建動態畫筆,它改變顏色。在Java,Javascript和嵌入式JavaScript中運行時,相同的代碼會產生非常不同的結果。在使用java,javascript和使用processing.js運行嵌入時處理的差異
據我所知,在不同模式下處理全局變量沒有區別。我也定義顏色模式,所以即使存在差異,我的定義也應該取代這些。有任何想法嗎?
我有一個全局浮動變量,我增加循環的顏色。 (在HSB模式下的顏色) 我還在整個屏幕上繪製了一個黑色的直角座標,其alpha值非常低,以便逐漸淡出圖畫。
float cH = 0;
float cS = 0;
float cB = 0;
int counter = 0;
// other variables....
setup()
{
size(800,600);
colorMode(HSB, 1.0, 1.0, 1.0);
cH = 0.0;
cS = 0.74;
cB = 0.6;
counter = 0;
background(0);
// .. other setup code
}
// ... other code
mouseDragged()
{
counter ++;
if(counter %5 == 0) {
noStroke();
fill(0,0.01);
rect(0,0, width, height);
}
cH += 1/500;
if(cH >= 1.0)
cH = 0.0;
stroke(color(cH, cS, cB));
fill(color(cH, cS, cB));
//... then the code for drawing the shapes
}
在JavaScript模式下處理中運行它時,它可以很好地工作。請參閱下面的圖片1,使用顏色更改和淡出 運行此相同草圖時,使用javascript嵌入到瀏覽器中,顏色更改將起作用,但繪製在頂部的矩形變爲灰色而不是黑色。具有相同的顏色值!
你可以試一下here
# 當在Java模式,淡出黑色的作品,但顏色變化犯規運行它。刷子保持其初始顏色,紅色。
整個代碼processing.pde文件可以找到here。
在我的AppEngine我從加載HTML文件草圖如下:用我確信我是使用processing.js
<html>
<head>
<title>{{name}} Sketch</title>
<script src="/statics/processing.js" type="text/javascript"></script>
<script src="/statics/javascript.js" type="text/javascript"></script>
</head>
<body>
<label>Title</label>
<br>
<div class="proc">
<canvas id="SKETCH" data-processing-sources="/sketches/{{name}}/{{name}}.pde" >
</canvas>
<br>
this is below the canvas
</body>
</html>
有趣的感謝,我會記住它的未來計劃,但在這種情況下,CH是一個浮動和改變它到「」cH =(float)(cH + 1.0/500);「」沒有區別! – user3674592 2014-09-30 10:18:14
ops,對不起,我錯過了ch是一個浮動。 – 2014-09-30 12:20:43