//gradientLandscape
int[][] index, value, opacity;
int threshold;
void setup(){
size(720,720);
threshold = 135;
index = new int[width][height];
value = new int[width][height];
opacity = new int[width][height];
for (int i=0; i<width; i++){
for (int j=0; j<height; j++){
index[i][j] = (width*i)+j;
value[i][j] = int(map(cos(index[i][j]),abs(sin(i))*-1,abs(cos(j)),0,255));
opacity[i][j] = int(map(sin(index[i][j]),abs(sin(j))*-1,abs(cos(i)),0,255));
stroke(value[i][j],opacity[i][j]);
point(i,j);
}
}
}
void draw(){
loadPixels();
if (threshold < 255) {
for (int k=width; k<width*height-width; k++){
if (brightness(pixels[k]) < threshold) {
pixels[k-width] = color(
int(red(pixels[k])),
int(green(pixels[k])),
int(blue(pixels[k]))
);
} else {
pixels[k-1] = color(
int(red(pixels[k+1])),
int(green(pixels[k+1])),
int(blue(pixels[k+1]))
);
}
}
threshold = threshold+1;
} else {
threshold = 153;
}
updatePixels();
}
Alternates
3 weeks ago//gridCrusher2
int[][] index, value, opacity;
int threshold;
void setup(){
size(720,720);
threshold = 135;
index = new int[width][height];
value = new int[width][height];
opacity = new int[width][height];
for (int i=0; i<width; i++){
for (int j=0; j<height; j++){
index[i][j] = (width*i)+j;
value[i][j] = int(map(cos(index[i][j]),abs(sin(i))*-1,abs(cos(j)),0,255));
opacity[i][j] = int(map(sin(index[i][j]),abs(sin(j))*-1,abs(cos(i)),0,255));
stroke(value[i][j],opacity[i][j]);
point(i,j);
}
}
}
void draw(){
loadPixels();
if (threshold < 255) {
for (int k=width; k<width*height-width; k++){
if (brightness(pixels[k]) > threshold){
pixels[k-1] = color(
int(red(pixels[k+1])),
int(green(pixels[k+1])),
int(blue(pixels[k+1])),
int(brightness(pixels[k+1]))
);
} else if (brightness(pixels[k]) == threshold) {
pixels[k+width] = color(
int(red(pixels[k-width])),
int(green(pixels[k-width])),
int(blue(pixels[k-width])),
int(brightness(pixels[k-width]))
);
} else {
pixels[k-width] = color(
int(red(pixels[k+1])),
int(green(pixels[k+1])),
int(blue(pixels[k+1])),
int(brightness(pixels[k+1]))
);
}
}
threshold = threshold+1;
} else {
threshold = 153;
}
updatePixels();
}
The File Arts presents:
Fra[mes]: Adoration of the Magi
by Taylor HollandIt looks like a photoshop-content-aware-fill filter gone awry. But it is in fact a funny and skilled reflection on craftsmanship and ornament and the aura of the physical work.
The download contains: the highest resolution TIF image of ‘Adoration of the Magi’ (2901 x 3711 px) and a catalogue showing process pictures of the creation of the physical versions of the filled frames.
Buy at The File Arts for $20,- get a digital signed certificate of authenticity and support the creation of the physical versions of the work.
(Source: thefilearts)
3 weeks agoMore alternates
3 weeks ago//Building a Grid - 3 - gridCrusher
int[][] index, value, opacity;
int threshold;
void setup(){
size(720,720);
threshold = 135;
index = new int[width][height];
value = new int[width][height];
opacity = new int[width][height];
for (int i=0; i<width; i++){
for (int j=0; j<height; j++){
index[i][j] = (width*i)+j;
value[i][j] = int(map(cos(index[i][j]),abs(sin(j))*-1,abs(cos(i)),0,255));
opacity[i][j] = int(map(sin(index[i][j]),abs(sin(i))*-1,abs(cos(j)),0,255));
stroke(value[i][j],opacity[i][j]);
point(i,j);
}
}
}
void draw(){
loadPixels();
for (int w=0; w<width*height; w++){
if (threshold < 255) {
if (w > width) {
if (brightness(pixels[w]) == threshold) {
pixels[w] = pixels[w-width];
pixels[w-1] = pixels[w];
}
}
threshold = threshold+1;
} else {
threshold = 50;
}
}
updatePixels();
}
valleyBlocked stills
3 weeks ago
//valleyBlocked
int threshold;
String url;
PImage img;
void setup() {
url = “http://farm2.staticflickr.com/1286/4681693512_5f091a20bc_b.jpg”;
img = loadImage(url);
size(img.width, img.height);
frameRate(24);
threshold = 135;
}
void draw() {
image(img, 0, 0);
img.loadPixels();
for (int w=0; w<img.width*img.height; w++){
if (threshold < 255) {
if (w > img.width) {
if (brightness(img.pixels[w]) > threshold) {
img.pixels[w] = img.pixels[w-width];
}
}
threshold = threshold+1;
} else {
threshold = 135;
}
}
img.updatePixels();
}
//sortingNoiseE
int threshold;
void setup(){
size(1280,720);
frameRate(12);
threshold = 153;
loadPixels();
for (int i=0; i<width; i++) {
for (int j=0; j<height; j++) {
int index = i*height+j;
int red = int(map(i,width,0,0,255));
int green = int(map(i+j,0,width+height,0,255));
int blue = int(map(i,0,width,0,255));
int opacity = int(map(j,0,height,0,255));
pixels[index] = color(red,green,blue,opacity);
}
}
updatePixels();
}
void draw() {
loadPixels();
if (threshold < 255) {
for (int k=width; k<width*height-width; k++){
if (brightness(pixels[k]) < threshold) {
pixels[k] = color(
int(red(pixels[k-width])),
int(green(pixels[k-width])),
int(blue(pixels[k-width]))
);
pixels[k-1] = color(
int(red(pixels[k])),
int(green(pixels[k])),
int(blue(pixels[k]))
);
pixels[k+1] = color(
int(red(pixels[k])),
int(green(pixels[k])),
int(blue(pixels[k]))
);
pixels[k-width] = color(
int(red(pixels[k])),
int(green(pixels[k])),
int(blue(pixels[k]))
);
pixels[k+width] = color(
int(red(pixels[k])),
int(green(pixels[k])),
int(blue(pixels[k]))
);
} else {
pixels[k] = color(
int(red(pixels[k])),
int(green(pixels[k])),
int(blue(pixels[k]))
);
}
}
threshold = threshold+1;
} else {
threshold = 0;
}
updatePixels();
saveFrame();
}
