added image manipulation files
This commit is contained in:
@@ -2,12 +2,13 @@ let img1, img2;
|
|||||||
|
|
||||||
async function setup() {
|
async function setup() {
|
||||||
try {
|
try {
|
||||||
img1 = await loadImage('assets/wallpaper/dear.png');
|
img1 = await new Promise(resolve => loadImage('assets/wallpaper/dear.png', resolve));
|
||||||
img2 = await loadImage('assets/wallpaper/elphantJap.jpg');
|
img2 = await new Promise(resolve => loadImage('assets/wallpaper/elphantJap.jpg', resolve));
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.error('Image load failed', err);
|
console.error('Image load failed', err);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
createCanvas(img1.width, img1.height);
|
createCanvas(img1.width, img1.height);
|
||||||
background(255, 255, 255)
|
background(255, 255, 255)
|
||||||
|
|
||||||
@@ -19,20 +20,22 @@ async function setup() {
|
|||||||
if (col % 2 == 0) {
|
if (col % 2 == 0) {
|
||||||
stroke(color(c));
|
stroke(color(c));
|
||||||
strokeWeight(1);
|
strokeWeight(1);
|
||||||
point(col, row);
|
square(col-1, row-1, 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
console.log('img2 loaded');
|
||||||
for (let col = 0; col < img2.width; col += 1) {
|
for (let col = 0; col < img2.width; col += 1) {
|
||||||
for (let row = 0; row < img2.height; row += 1) {
|
for (let row = 0; row < img2.height; row += 1) {
|
||||||
let c = img2.get(col, row);
|
let c = img2.get(col, row);
|
||||||
if (col % 2 == 1) {
|
if (col % 2 == 1) {
|
||||||
stroke(color(c));
|
stroke(color(c));
|
||||||
strokeWeight(1);
|
strokeWeight(1);
|
||||||
point(col, row);
|
square(col-1, row-1, 0.5);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
console.log('done');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -302,7 +302,7 @@ function generateFractal() {
|
|||||||
decrementTurningAngle();
|
decrementTurningAngle();
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
// Ignore characters not in the specification (like X)
|
console.warn("Unknown character: " + c);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
async function setup() {
|
async function setup() {
|
||||||
try {
|
try {
|
||||||
img1 = await loadImage('assets/wallpaper/dear.png');
|
img1 = await new Promise(resolve => loadImage('assets/wallpaper/dear.png', resolve));
|
||||||
console.log('img1 loaded');
|
console.log('img1 loaded');
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.error('Failed to load dear.png', err);
|
console.error('Failed to load dear.png', err);
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
img2 = await loadImage('assets/wallpaper/elphantJap.jpg');
|
img2 = await new Promise(resolve => loadImage('assets/wallpaper/elphantJap.jpg', resolve));
|
||||||
console.log('img2 loaded');
|
console.log('img2 loaded');
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.error('Failed to load elphantJap.jpg', err);
|
console.error('Failed to load elphantJap.jpg', err);
|
||||||
@@ -16,19 +16,37 @@ async function setup() {
|
|||||||
createCanvas(img1.width, img1.height);
|
createCanvas(img1.width, img1.height);
|
||||||
background(255, 255, 255)
|
background(255, 255, 255)
|
||||||
|
|
||||||
//image(img1, 0, 0);
|
|
||||||
var glithes = random(3, 10);
|
|
||||||
|
|
||||||
for (let col = 0; col < img1.width; col += 1) {
|
for (let col = 0; col < img1.width; col += 1) {
|
||||||
for (let row = 0; row < img1.height; row += 1) {
|
for (let row = 0; row < img1.height; row += 1) {
|
||||||
let c = img1.get(col, row);
|
let c = img1.get(col, row);
|
||||||
stroke(color(c));
|
stroke(color(c));
|
||||||
strokeWeight(1);
|
strokeWeight(2);
|
||||||
|
if (yesOrNo()) {
|
||||||
point(col, row);
|
point(col, row);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for (let col = 0; col < img2.width; col += 1) {
|
||||||
|
for (let row = 0; row < img2.height; row += 1) {
|
||||||
|
let c = img2.get(col, row);
|
||||||
|
stroke(color(c));
|
||||||
|
strokeWeight(2);
|
||||||
|
if (yesOrNo()) {
|
||||||
|
point(col, row);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
console.log('finished');
|
||||||
|
}
|
||||||
|
|
||||||
|
function yesOrNo(){
|
||||||
|
if (random(0, 1) < 0.5) {
|
||||||
|
return true;
|
||||||
|
}else{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function draw() {
|
function draw() {
|
||||||
|
|
||||||
|
|||||||
92
sketches/imageOverlap.js
Normal file
92
sketches/imageOverlap.js
Normal file
@@ -0,0 +1,92 @@
|
|||||||
|
let img1, img2;
|
||||||
|
let mode = [0,0,0]; //rgb each coloum says if 1 look for bigger if -1 look for smaller if 0 ignore in decition
|
||||||
|
let imageList = ["assets/wallpaper/dear.png", "assets/wallpaper/elphantJap.jpg", "assets/wallpaper/lagrugru.jpg"];
|
||||||
|
let loadedImages = [];
|
||||||
|
async function setup() {
|
||||||
|
makeRandomMode();
|
||||||
|
console.log(mode);
|
||||||
|
for (i = 0; i < imageList.length; i++) {
|
||||||
|
try {
|
||||||
|
loadedImages[i] = await new Promise(resolve => loadImage(imageList[i], resolve));
|
||||||
|
console.log(imageList[i] + " loaded");
|
||||||
|
} catch (err) {
|
||||||
|
console.error('Failed to load ' + imageList[i], err);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
img1 = await new Promise(resolve => loadImage('assets/wallpaper/dear.png', resolve));
|
||||||
|
console.log('img1 loaded');
|
||||||
|
} catch (err) {
|
||||||
|
console.error('Failed to load dear.png', err);
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
img2 = await new Promise(resolve => loadImage('assets/wallpaper/elphantJap.jpg', resolve));
|
||||||
|
console.log('img2 loaded');
|
||||||
|
} catch (err) {
|
||||||
|
console.error('Failed to load elphantJap.jpg', err);
|
||||||
|
}
|
||||||
|
|
||||||
|
createCanvas(img1.width, img1.height);
|
||||||
|
background(255, 255, 255)
|
||||||
|
|
||||||
|
for (let col = 0; col < img1.width; col += 1) {
|
||||||
|
for (let row = 0; row < img1.height; row += 1) {
|
||||||
|
if (img2.get(col, row) == null|| img2.get(col, row) == undefined) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
let color1 = img1.get(col, row);
|
||||||
|
let color2 = img2.get(col, row);
|
||||||
|
stroke(color(checkWhatPixelToTake(color1, color2)));
|
||||||
|
strokeWeight(2);
|
||||||
|
point(col, row);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
console.log('finished');
|
||||||
|
}
|
||||||
|
|
||||||
|
function makeRandomMode() {
|
||||||
|
mode = [round(random(-1, 1)), round(random(-1, 1)), round(random(-1, 1))];
|
||||||
|
if ([abs(mode[0]), abs(mode[1]), abs(mode[2])] == [0,0,0]) {
|
||||||
|
mode = [1,1,1];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function checkWhatPixelToTake(color1, color2) {
|
||||||
|
let sum1=0;
|
||||||
|
let sum2=0;
|
||||||
|
if (mode[0] == 1) {
|
||||||
|
sum1 += color1[0];
|
||||||
|
sum2 += color2[0];
|
||||||
|
}else if (mode[0] == -1) {
|
||||||
|
sum1 += (255-color1[0]);
|
||||||
|
sum2 += (255-color2[0]);
|
||||||
|
}
|
||||||
|
if (mode[1] == 1) {
|
||||||
|
sum1 += color1[1];
|
||||||
|
sum2 += color2[1];
|
||||||
|
}else if (mode[1] == -1) {
|
||||||
|
sum1 += (255-color1[1]);
|
||||||
|
sum2 += (255-color2[1]);
|
||||||
|
}
|
||||||
|
if (mode[2] == 1) {
|
||||||
|
sum1 += color1[2];
|
||||||
|
sum2 += color2[2];
|
||||||
|
}else if (mode[2] == -1) {
|
||||||
|
sum1 += (255-color1[2]);
|
||||||
|
sum2 += (255-color2[2]);
|
||||||
|
}
|
||||||
|
if (sum1 > sum2) {
|
||||||
|
return color1;
|
||||||
|
} else {
|
||||||
|
return color2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function draw() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function mousePressed() {
|
||||||
|
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user