Pen Settings

HTML

CSS

CSS Base

Vendor Prefixing

Add External Stylesheets/Pens

Any URL's added here will be added as <link>s in order, and before the CSS in the editor. If you link to another Pen, it will include the CSS from that Pen. If the preprocessor matches, it will attempt to combine them before processing.

+ add another resource

JavaScript

Babel is required to process package imports. If you need a different preprocessor remove all packages first.

Add External Scripts/Pens

Any URL's added here will be added as <script>s in order, and run before the JavaScript in the editor. You can use the URL of any other Pen and it will include the JavaScript from that Pen.

+ add another resource

Behavior

Save Automatically?

If active, Pens will autosave every 30 seconds after being saved once.

Auto-Updating Preview

If enabled, the preview panel updates automatically as you code. If disabled, use the "Run" button to update.

Format on Save

If enabled, your code will be formatted when you actively save your Pen. Note: your code becomes un-folded during formatting.

Editor Settings

Code Indentation

Want to change your Syntax Highlighting theme, Fonts and more?

Visit your global Editor Settings.

HTML

              
                <canvas></canvas>
<img id="source" src="data:image/jpeg;base64,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" alt="">

              
            
!

CSS

              
                body, html {
	position: absolute;
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	background: #333;
}

canvas {
	position: absolute;
	padding: 0;
	width: 90vw;
	height: 90vw;
	max-height: 90vh;
	max-width: 90vh;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: #000;
	border-radius: 5%;
}
img {display: none;}
              
            
!

JS

              
                "use strict";
// ---- canvas ----
const canvas = document.createElement("canvas");
const ctx = canvas.getContext("2d");
document.body.appendChild(canvas);
const dpr = window.devicePixelRatio || 1;
canvas.width = canvas.offsetWidth * dpr;
canvas.height = canvas.offsetHeight * dpr;
// ---- source image ----
let img = {
	standardDeviationThreshold: 6,
	minSize: 3,
	img: new Image(),
	data: null,
	w: 0,
	h: 0,
	rx: 0,
	ry: 0,
	deconstruct() {
		this.w = this.img.width;
		this.h = this.img.height;
		const cmap = document.createElement("canvas");
		cmap.width = this.w;
		cmap.height = this.h;
		const ct = cmap.getContext("2d");
		ct.drawImage(this.img, 0, 0);
		this.data = ct.getImageData(0, 0, this.w, this.h).data;
		// ---- calc brillance ----
		for (let i = 0; i < this.w * this.h * 4; i += 4) {
			this.data[i + 3] =
				0.34 * this.data[i] + 0.5 * this.data[i + 1] + 0.16 * this.data[i + 2];
		}
		this.rx = canvas.width / this.w;
		this.ry = canvas.height / this.h;
	},
	load(id) {
		return new Promise((resolve) => {
			this.img.addEventListener("load", (_) => resolve());
			this.img.src = document.getElementById(id).src;
		});
	},
	// ---- create new Rectangle ----
	Rect(sdt, i, x, y, w, h) {
		const x0 = Math.floor(x);
		const y0 = Math.floor(y);
		const w0 = Math.ceil(w);
		const h0 = Math.ceil(h);
		const n = w0 * h0;
		// ---- average colors ----
		let r = 0, g = 0, b = 0, l = 0;
		for (let xi = x0; xi < x0 + w0; xi++) {
			for (let yi = y0; yi < y0 + h0; yi++) {
				const p = (yi * this.w + xi) * 4;
				r += this.data[p + 0];
				g += this.data[p + 1];
				b += this.data[p + 2];
				l += this.data[p + 3];
			}
		}
		r = (r / n) | 0;
		g = (g / n) | 0;
		b = (b / n) | 0;
		l = (l / n) | 0;
		// ---- standard deviation ----
		let sd = 0;
		for (let xi = x0; xi < x0 + w0; xi++) {
			for (let yi = y0; yi < y0 + h0; yi++) {
				const bri = this.data[(yi * this.w + xi) * 4 + 3] - l;
				sd += bri * bri;
			}
		}
		if ((w > this.minSize || h > this.minSize) && Math.sqrt(sd / n) > sdt) {
			// ---- recursive division ----
			this.Rect(sdt, i * 2, x, y, w * 0.5, h * 0.5);
			this.Rect(sdt, i * 2, x + w * 0.5, y, w * 0.5, h * 0.5);
			this.Rect(sdt, i * 2, x, y + h * 0.5, w * 0.5, h * 0.5);
			this.Rect(sdt, i * 2, x + w * 0.5, y + h * 0.5, w * 0.5, h * 0.5);
		} else {
			// ---- draw final rectangle ----
			if (w > 5) {
				// rectangle
				ctx.fillStyle = `rgb(${r},${g},${b})`;
				ctx.fillRect(x * this.rx, y * this.ry, w * this.rx - 0.5, h * this.ry - 0.5);
				// circle
				ctx.beginPath();
				ctx.fillStyle = `rgb(${(r * 1.1) | 0},${(g * 1.1) | 0},${(b * 1.1) | 0})`;
				ctx.arc((x + w / 2) * this.rx, (y + h / 2) * this.ry, (w / 2.2) * this.rx, 0, 2 * Math.PI);
				ctx.fill();
				// text
				ctx.fillStyle = "#333";
				ctx.fillText(i, x * this.rx + 2, y * this.ry + 10, w);
			} else {
				// rectangle only
				ctx.fillStyle = `rgb(${r},${g},${b})`;
				ctx.fillRect(x * this.rx, y * this.ry, w * this.rx - 0.5, h * this.ry - 0.5);
			}
		}
	}
};
// ---- promise raf ----
const requestAnimationFrame = () => {
	return new Promise((resolve) => window.requestAnimationFrame(resolve));
};
// ---- animation loop ----
async function run() {
	for (let sdt = 80; sdt >= img.standardDeviationThreshold; sdt--) {
		ctx.clearRect(0, 0, canvas.width, canvas.height);
		// ---- create the first rectangle ----
		img.Rect(sdt, 1, 0, 0, img.w, img.h);
		// ---- wait next frame ----
		await requestAnimationFrame();
	}
};
// ---- load image and run ----
img.load("source").then(() => {
	img.deconstruct();
	run();
});

              
            
!
999px

Console