scrolling, numbers 1 through 7 dragging and left and right arrows
A fork of human connectome abstraction by ben
xxxxxxxxxx
//TODO make it so you can highlight specific regions by hovering mouse over them (dim the rest or only view one
//figure out a connect to nearest dot shape
let offsetx = 1;
let offsety = 1;
var fa;
let cnv;
var mode;
var strokewt = 2;
var devbool = true;
var deltaX = 0;
var deltaY = 0;
function setup() {
cnv = createCanvas(windowWidth, windowHeight, WEBGL);
let v1 = createVector(0.979063 * 10, 0.052998 * 10, -0.196538 * 10);
fa = 100
//strokeJoin(ROUND); //not yet implimented...
strokeWeight(strokewt);
noFill();
mode = TRIANGLE_STRIP;
// orbitControl(1,1,0.1);
}
function mouseDragged() { //for when orbit control is no bueno
offsetx -= pmouseX - mouseX;
offsety -= pmouseY - mouseY;
return false
}
function mouseWheel(event) {
fa += event.delta;
}
function keyPressed(){
if(key === "1"){mode = POINTS;}
if(key === "2"){mode = LINES;}
if(key === "3"){mode = TRIANGLES;}
if(key === "4"){mode = TRIANGLE_FAN;}
if(key === "5"){mode = TRIANGLE_STRIP;}
if(key === "6"){mode = QUADS;}
if(key === "7"){mode = QUAD_STRIP;}
if(key === "8"){mode = TESS;}
if(key === " "){devbool = !devbool;}
if(keyCode === RIGHT_ARROW){strokewt++;}
if(keyCode === LEFT_ARROW){strokewt--;}
}
function rotater() {
rotateX((frameCount * 0.01));
rotateY((frameCount * 0.01));
}
function draw() {
orbitControl(1,1,0);
strokeWeight(strokewt);
background(0);
beginShape(mode);
noFill();
if(devbool)rotater();
stroke("#FFFFFF");
vertex(0.539942 * fa, -0.198234 * fa, -0.818026 * fa);
vertex(-0.464728 * fa, -0.042725 * fa, 0.884422 * fa);
vertex(0.979063 * fa, 0.052998 * fa, -0.196538 * fa);
vertex(-0.977354 * fa, -0.052480 * fa, 0.205001 * fa);
vertex(0.450016 * fa, 0.229981 * fa, 0.862899 * fa);
vertex(-0.341756 * fa, -0.152278 * fa, -0.927370 * fa);
vertex(-0.421240 * fa, 0.863944 * fa, -0.275966 * fa);
vertex(0.254434 * fa, -0.904437 * fa, 0.342427 * fa);
vertex(0.129262 * fa, 0.654521 * fa, -0.744911 * fa);
vertex(0.050276 * fa, -0.675237 * fa, 0.735885 * fa);
vertex(-0.135196 * fa, -0.575131 * fa, -0.806813 * fa);
vertex(0.134217 * fa, 0.571410 * fa, 0.809615 * fa);
vertex(-0.714641 * fa, 0.469583 * fa, -0.518440 * fa);
endShape();
beginShape(mode);
stroke("#FFFFFF");
//vertex(0, 0, 0);
vertex(0.808233 * fa, -0.442937 * fa, 0.388028 * fa);
vertex(-0.887856 * fa, 0.390139 * fa, 0.243931 * fa);
vertex(0.906464 * fa, -0.415805 * fa, -0.073686 * fa);
vertex(0.476896 * fa, -0.617901 * fa, 0.625115 * fa);
vertex(-0.312457 * fa, 0.665387 * fa, -0.677961 * fa);
vertex(-0.185762 * fa, -0.893932 * fa, 0.407895 * fa);
vertex(0.007109 * fa, 0.921191 * fa, -0.389046 * fa);
vertex(-0.581457 * fa, -0.436747 * fa, -0.686411 * fa);
vertex(0.542166 * fa, 0.624732 * fa, 0.561930 * fa);
vertex(-0.779419 * fa, -0.024298 * fa, -0.626032 * fa);
vertex(0.702630 * fa, -0.144493 * fa, 0.696731 * fa);
vertex(-0.098552 * fa, -0.994110 * fa, -0.045077 * fa);
vertex(0.252182 * fa, 0.967631 * fa, 0.009727 * fa);
endShape();
beginShape(mode);
stroke("#FFFFFF");
//vertex(0, 0, 0);
vertex(-0.339250 * fa, -0.820858 * fa, -0.459458 * fa);
vertex(0.199993 * fa, 0.875430 * fa, 0.440029 * fa);
vertex(0.634499 * fa, 0.761414 * fa, 0.132886 * fa);
vertex(-0.511806 * fa, -0.859046 * fa, -0.009694 * fa);
vertex(0.967995 * fa, -0.048381 * fa, 0.246263 * fa);
vertex(-0.955264 * fa, 0.210453 * fa, -0.207799 * fa);
vertex(-0.773809 * fa, 0.131385 * fa, 0.619643 * fa);
vertex(0.812655 * fa, -0.315531 * fa, -0.489930 * fa);
vertex(0.037098 * fa, 0.134607 * fa, 0.990204 * fa);
vertex(0.099302 * fa, -0.202078 * fa, -0.974322 * fa);
vertex(0.102555 * fa, -0.862687 * fa, -0.495230 * fa);
vertex(-0.211998 * fa, 0.787148 * fa, 0.579184 * fa);
vertex(0.787911 * fa, 0.143247 * fa, -0.598897 * fa);
endShape();
beginShape(mode);
stroke("#FFFFFF");
//vertex(0,0,0)
vertex(-0.765462 * fa, -0.302441 * fa, 0.567976 * fa);
vertex(0.328170 * fa, -0.936968 * fa, -0.119980 * fa);
vertex(-0.173161 * fa, 0.978843 * fa, 0.109005 * fa);
vertex(-0.938438 * fa, -0.224547 * fa, -0.262513 * fa);
vertex(0.901670 * fa, 0.406893 * fa, 0.146385 * fa);
vertex(-0.397779 * fa, -0.526267 * fa, 0.751542 * fa);
vertex(0.545355 * fa, 0.517754 * fa, -0.659181 * fa);
vertex(0.466777 * fa, 0.815059 * fa, -0.343218 * fa);
vertex(-0.587150 * fa, -0.704834 * fa, 0.398075 * fa);
vertex(0.609454 * fa, -0.695681 * fa, -0.380256 * fa);
vertex(-0.550601 * fa, 0.800987 * fa, 0.235070 * fa);
vertex(0.343019 * fa, -0.580062 * fa, -0.738828 * fa);
vertex(-0.303384 * fa, 0.386576 * fa, 0.870929 * fa);
endShape();
beginShape(mode);
stroke("#FFFFFF");
//vertex(0,0,0)
vertex(0.340124 * fa, -0.263882 * fa, 0.902597 * fa);
vertex(-0.490274 * fa, 0.256689 * fa, -0.832912 * fa);
vertex(0.646063 * fa, -0.753254 * fa, 0.123331 * fa);
vertex(-0.765352 * fa, 0.633672 * fa, -0.112675 * fa);
vertex(0.816833 * fa, 0.509373 * fa, -0.270780 * fa);
vertex(-0.865914 * fa, -0.484816 * fa, 0.123070 * fa);
vertex(-0.092478 * fa, -0.285807 * fa, 0.953815 * fa);
vertex(-0.069490 * fa, 0.280500 * fa, -0.957335 * fa);
vertex(0.790907 * fa, 0.269150 * fa, 0.549567 * fa);
vertex(-0.728222 * fa, -0.609646 * fa, -0.313089 * fa);
vertex(-0.602017 * fa, 0.535677 * fa, 0.592137 * fa);
vertex(0.358252 * fa, 0.203052 * fa, -0.911277 * fa);
endShape();
beginShape(mode);
stroke("#FFFFFF");
//vertex(0,0,0)
vertex(0.539098 * fa, -0.198157 * fa, -0.818601 * fa);
vertex(-0.465158 * fa, -0.042829 * fa, 0.884191 * fa);
vertex(0.978784 * fa, 0.052791 * fa, -0.197976 * fa);
vertex(-0.977788 * fa, -0.052865 * fa, 0.202820 * fa);
vertex(0.450902 * fa, 0.230264 * fa, 0.862361 * fa);
vertex(-0.341148 * fa, -0.152080 * fa, -0.927626 * fa);
vertex(-0.421302 * fa, 0.863431 * fa, -0.277474 * fa);
vertex(0.254685 * fa, -0.904920 * fa, 0.340962 * fa);
vertex(0.129352 * fa, 0.653605 * fa, -0.745700 * fa);
vertex(0.050291 * fa, -0.676179 * fa, 0.735019 * fa);
vertex(-0.134895 * fa, -0.574508 * fa, -0.807307 * fa);
vertex(0.134290 * fa, 0.572369 * fa, 0.808925 * fa);
vertex(-0.714097 * fa, 0.469049 * fa, -0.519673 * fa);
endShape();
beginShape(mode);
stroke("#FFFFFF");
//vertex(0,0,0)
vertex(0.808890 * fa, -0.443132 * fa, 0.386433 * fa);
vertex(-0.888050 * fa, 0.390514 * fa, 0.242624 * fa);
vertex(0.906267 * fa, -0.415919 * fa, -0.075445 * fa);
vertex(0.477398 * fa, -0.618577 * fa, 0.624062 * fa);
vertex(-0.312390 * fa, 0.664389 * fa, -0.678970 * fa);
vertex(-0.185957 * fa, -0.894681 * fa, 0.406159 * fa);
vertex(0.006521 * fa, 0.920655 * fa, -0.390323 * fa);
vertex(-0.580761 * fa, -0.436667 * fa, -0.687050 * fa);
vertex(0.542280 * fa, 0.625380 * fa, 0.561099 * fa);
vertex(-0.778371 * fa, -0.024048 * fa, -0.627344 * fa);
vertex(0.703723 * fa, -0.144756 * fa, 0.695571 * fa);
vertex(-0.098852 * fa, -0.994011 * fa, -0.046596 * fa);
vertex(0.252434 * fa, 0.967580 * fa, 0.008056 * fa);
endShape();
}