Skip to content

Instantly share code, notes, and snippets.

View vkuchinov's full-sized avatar

Vladimir V. Kuchinov vkuchinov

View GitHub Profile
@vkuchinov
vkuchinov / OrbitControls.js
Last active August 10, 2020 07:06
THREE.JS / GLSL : Dual Shaders for Highlighting Nodes
/**
* @author qiao / https://github.com/qiao
* @author mrdoob / http://mrdoob.com
* @author alteredq / http://alteredqualia.com/
* @author WestLangley / http://github.com/WestLangley
*/
THREE.OrbitControls = function ( object, domElement ) {
this.object = object;
@vkuchinov
vkuchinov / index.html
Last active June 15, 2019 20:51
D3.JS UI Player Controls
<!DOCTYPE html>
<html>
<head lang="en"><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="keywords" content="d3.js,javascript">
<title>D3.JS Player with Iterator</title>
<script src="https://d3js.org/d3.v4.min.js"></script>
<style>
@vkuchinov
vkuchinov / README.md
Last active July 3, 2019 09:12
D3.JS Weekly Ticket Stacks Chart

TODO LIST:

[x] dynamic gradients for pseudo-3D aesthetics [x] mockup tooltip, for now, containing only value. Eventually, could be extended with additional data.

[x] top left and right grids should match values [!] isometric view doesn't work well while back stack visually merge with front ones, so it makes the whole graph illegible. Have to be perspective view. To do this

@vkuchinov
vkuchinov / README.md
Last active July 5, 2019 07:13
D3.JS Weekly Ticket Stacks Chart based on two points perspective built with Ф golden ratio

WEEKLY TICKET STACKS Ф [based on two points prespective built with Ф golden ratio]

with UI interface for setting stack height ratio and radius.

golden ratio two point prespective

zl: { x: -11,070, y: 11,993 }
zm: { x: 0.0, y: 14.392 }
zr: { x: 12.749, y: 12.466 }

@vkuchinov
vkuchinov / OrbitControls.js
Last active October 4, 2019 10:38
THREE.JS / D3.JS : A Hybrid Weekly Ticket Stacks
/**
* @author qiao / https://github.com/qiao
* @author mrdoob / http://mrdoob.com
* @author alteredq / http://alteredqualia.com/
* @author WestLangley / http://github.com/WestLangley
*/
THREE.OrbitControls = function ( object, domElement ) {
this.object = object;
@vkuchinov
vkuchinov / app.js
Last active October 17, 2023 08:39
MapboxGL | THREE.JS Multiple Objects Mockup
var data = [
{ label: "Shandy Park", LngLat: [-0.039951, 51.520465], value: 18.78, color: 0x0074D9 },
{ label: "Mile End Park", LngLat: [-0.034683, 51.521343], value: 38.77, color: 0x85144B },
{ label: "Tower Hamlets Cemetery Park", LngLat: [-0.027022, 51.523187], value: 45.0, color: 0x39CCCC },
{ label: "Meath Gardens", LngLat: [-0.043844, 51.527939], value: 51.55, color: 0xB10DC9 },
{ label: "Tredegar Square", LngLat: [-0.032144, 51.527107], value: 16.01, color: 0x2ECC40 },
{ label: "Carlton Square & Gardens", LngLat: [-0.044712, 51.523860], value: 60.84, color: 0xFFDC00 }
];
@vkuchinov
vkuchinov / app.js
Last active July 12, 2019 12:42
D3.JS Bubble Stacks Mockup
/*
WEEKLY TICKET STACKS Ф
[based on two points prespective built with Ф golden ratio]
zl: { x: -11,070, y: 11,993 }
zm: { x: 0.0, y: 14.392 }
zr: { x: 12.749, y: 12.466 }
tp: { x: 0.0, y: 0.0 }
@vkuchinov
vkuchinov / app.js
Last active July 13, 2019 17:23
D3.JS Pie Stacks Mockup
var svg, chart, background, g, defs, div, fulldata, data, w = 800, h = 600, dist, offset = 64, vratio = 1.0, radius = 18, zAxis, zValues, ratio = 0.3814, stacksData = [], filter = false, filtered = [true, true, true], maxRation;;
var offset = 64;
var days = ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"]; //could be German or whatever
var states = ["Red Zone", "Yellow Zone", "Red Zone"];
var maxStack = Number.NEGATIVE_INFINITY;
var colors = ["#F0F0F0", "#FF652F", "#FFE400", "#14A76C"];
@vkuchinov
vkuchinov / app.js
Last active November 8, 2019 08:41
MapboxGL | THREE.JS + GLSL Shader
var sparkData64 =
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAAsTAAALEwEAmpwYAAAGvmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDE5LTA3LTA3VDE3OjU5OjI4KzAzOjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOS0wNy0wN1QxODowMDo1MSswMzowMCIgeG1wOk1ldGFkYX
@vkuchinov
vkuchinov / .DS_Store
Last active July 17, 2022 09:20
D3.JS Proportional Donut with Segment