JoanaChicau
3 years ago
3 changed files with 474 additions and 0 deletions
@ -0,0 +1,303 @@ |
|||
//--------------------------------------------------------------------------
|
|||
// CHOREOGRAPHIC CODE by Joana Chicau
|
|||
//--------------------------------------------------------------------------
|
|||
|
|||
|
|||
// errors we live by
|
|||
|
|||
// trial and error
|
|||
// margin of error
|
|||
// https://upload.wikimedia.org/wikipedia/commons/a/a9/Empirical_Rule.PNG
|
|||
// printing error messages;
|
|||
|
|||
// creating a loop for changing text in all headings
|
|||
|
|||
|
|||
// https://developer.mozilla.org/en-US/docs/Web/HTTP/Status
|
|||
|
|||
var delay="1"; |
|||
var count='0'; |
|||
var tempo="500"; |
|||
var elements = document.getElementsByTagName("a") |
|||
|
|||
var textarray = [ |
|||
"ヽ(´∇´)ノ (∇´ノ) ヽ( )ノ (ヽ´∇) ヽ(´∇`)ノ \ (^_^ ) ノ", |
|||
"(。・・。) 401 Unauthorized", |
|||
" 402 Payment Required 💸 💱 (゜゜)", |
|||
" (゚ρ゚; 403 Forbidden", |
|||
" 404 Not Found ヾ(´・ ・`。)ノ” ", |
|||
" 406 Not Acceptable ⊙ ﹏ ⊙", |
|||
" what error? ʍɥɐʇ ǝɹɹoɹ¿ what error? ʍɥɐʇ ǝɹɹoɹ¿", |
|||
" 408 Request Timeout ☼☼¸.•*", |
|||
"(─‿─) (─‿‿─) (─‿─) (─‿‿─) 409 Conflict (─‿─) (─‿‿─) (─‿─) (─‿‿─)", |
|||
"ˏ 𓏧 𓏲 𓏲 𓏲 𓋒 410 Gone 𓏲 𓏲 𓏲 𓏲 𓏧 ˎ", |
|||
"415 Unsupported Media Type (◔_◔)", |
|||
" ━━━━━━━ 416 Range ▼△▼△▼△▼ Not ▼△▼△▼△▼ Satisfiable ━━━━━━━ ", |
|||
" 417 Expectation ٩( ∩_∩ )۶ Failed (¸.꒳.¸) ", |
|||
" 418 I'm a teapot ☕ the server refuses the attempt to brew coffee with a teapot.", |
|||
"425 ⏰ ⌛ ⏱️ Too Early ⏱️ ⌛ ⏰ ・.⋆。⋆☂˚。⋆。˚☽˚。⋆", |
|||
"【☆】★【☆】★【426 Upgrade Required】★【☆】★【☆】", |
|||
"。°。°。°。°。°。°。°。°。°。°。° 429 Too Many Requests 。°。°。°。°。°。°。°。°。°。°。°", |
|||
"⤹⋆⸙͎۪۫。˚۰˚ 451 Unavailable For Legal Reasons˚⁀➷。˚⸙͎۪۫⋆ ༄ ", |
|||
"■ □ ■ □ ■ □ ■ □ 502 Bad Gateway ■ □ ■ □ ■ □ ■", |
|||
"‿︵‿︵‿︵‿ 508 Loop Detected ︵‿︵‿︵‿︵", |
|||
"○ꊞ○ꊞ○ꊞ○ꊞ○ꊞ 507 Insufficient Storage ꊞ○ꊞ○ꊞ○ꊞ○ꊞ○", |
|||
" 100 Continue ♪ ● ☽ ♩ ○ ♬ ☆ ༝̩̩̥͙ ", |
|||
"٩(✿∂‿∂✿)۶ 200 OK ✿ ✿ ✿ ✿ ✿ " |
|||
]; |
|||
|
|||
//textarray.push(" ♪ ♪ ♪ ┌(・ 。・)┘ ♩♪ ♫ ♬");
|
|||
|
|||
|
|||
function wonder02() { |
|||
var rannum= Math.floor(Math.random()*textarray.length); |
|||
for (var i = 0; i < elements.length; i++) { |
|||
elements[i].innerHTML = textarray[rannum]; |
|||
} |
|||
timer = setTimeout("wonder()", delay*tempo); |
|||
} |
|||
// clearTimeout(timer);
|
|||
|
|||
function wonder() { |
|||
document.querySelector('#stage02').innerHTML = textarray[count]; |
|||
count++; |
|||
if(count==textarray.length){count='0';} |
|||
setTimeout("wonder()",6000); |
|||
} |
|||
wonder() |
|||
|
|||
// - - - - - - - - INPUT Errors - - - - - - - -
|
|||
|
|||
// <p>Please input a number between 5 and 10:</p>
|
|||
// <input id="demo" type="text">
|
|||
// <button type="button" onclick="myFunction()">Test Input</button>
|
|||
// <p id="p01"></p>
|
|||
|
|||
function myFunction() { |
|||
const message = document.getElementById("p01"); |
|||
message.innerHTML = ""; |
|||
let x = document.getElementById("demo").value; |
|||
try { |
|||
if(x == "") throw "empty"; |
|||
if(isNaN(x)) throw "not a number"; |
|||
x = Number(x); |
|||
if(x < 5) throw "too low"; |
|||
if(x > 10) throw "too high"; |
|||
} |
|||
catch(err) { |
|||
message.innerHTML = "Input is " + err; |
|||
} |
|||
} |
|||
|
|||
// - - - - - - - - JavaScript Errors - - - - - - - -
|
|||
|
|||
$(document).ready(function(){ |
|||
if (typeof console != "undefined") |
|||
if (typeof console.log != 'undefined') |
|||
console.olog = console.log; |
|||
else |
|||
console.olog = function() {}; |
|||
|
|||
console.log = function(message) { |
|||
console.olog(message); |
|||
$('#err').append(message); |
|||
// $('#err').append('<span>' + message + '</span>');
|
|||
}; |
|||
console.error = console.debug = console.info = console.log |
|||
}); |
|||
|
|||
|
|||
window.onerror = function (msg, url, lineNo, columnNo, error) { |
|||
var string = msg.toLowerCase(); |
|||
var substring = 'script error'; |
|||
if (string.indexOf(substring) > -1){ |
|||
alert('Script Error: See Browser Console for Detail'); |
|||
} else { |
|||
var message = [ |
|||
'Message: ' + msg, |
|||
'URL: ' + url, |
|||
'Line: ' + lineNo, |
|||
'Column: ' + columnNo, |
|||
'Error object: ' + JSON.stringify(error) |
|||
].join(' - '); |
|||
|
|||
alert(message); |
|||
console.log(message); |
|||
} |
|||
|
|||
return false; |
|||
}; |
|||
/* |
|||
|
|||
let num = 1; |
|||
a = y + 1; |
|||
let ran = 1; |
|||
|
|||
try { |
|||
// Type Error
|
|||
num.toUpperCase(); |
|||
// Reference Error
|
|||
a = y + 1; |
|||
// Syntax Error
|
|||
eval("alert('Hello)"); |
|||
// Range Error
|
|||
ran.toPrecision(500); |
|||
} catch (error) { |
|||
|
|||
switch (true) { |
|||
case (error instanceof ForbiddenError): { |
|||
document.getElementById("err").innerHTML = error.name + "<br>" + error.message; |
|||
console.log(); |
|||
break; |
|||
} |
|||
case (error instanceof SyntaxError): { |
|||
document.getElementById("err").innerHTML = error.name + "<br>" + error.message; |
|||
console.log(); |
|||
break; |
|||
} |
|||
case (error instanceof RangeError): { |
|||
document.getElementById("err").innerHTML = error.name + "<br>" + error.message; |
|||
console.log(); |
|||
break; |
|||
} |
|||
default: { |
|||
document.getElementById("err").innerHTML = error.name + "<br>" + error.message; |
|||
console.log(); |
|||
} |
|||
} |
|||
|
|||
} |
|||
|
|||
|
|||
// Reference Error
|
|||
|
|||
|
|||
let a = 5; |
|||
try { |
|||
a = y + 1; // thrown if you use (reference) a variable that has not been declared
|
|||
} |
|||
catch(err) { |
|||
document.getElementById("err").innerHTML = err.name; |
|||
} |
|||
|
|||
// Syntax Error
|
|||
try { |
|||
eval("alert('Hello)"); // Missing ' will produce an error
|
|||
} |
|||
catch(err) { |
|||
document.getElementById("err").innerHTML = err.name; |
|||
} |
|||
|
|||
//
|
|||
try { |
|||
hello("world(s)!"); |
|||
} |
|||
catch(err) { |
|||
document.getElementById("err").innerHTML = |
|||
err.name + "<br>" + err.message; |
|||
} |
|||
|
|||
// URI (Uniform Resource Identifier) Error
|
|||
try { |
|||
decodeURI("%%%"); // You cannot URI decode percent signs
|
|||
} |
|||
catch(err) { |
|||
document.getElementById("err").innerHTML = err.name; |
|||
} |
|||
|
|||
// Type Error
|
|||
let num = 1; |
|||
try { |
|||
num.toUpperCase(); // You cannot convert a number to upper case
|
|||
} |
|||
catch(err) { |
|||
document.getElementById("err").innerHTML = err.name; |
|||
} |
|||
|
|||
// Range Error
|
|||
let ran = 1; |
|||
try { |
|||
ran.toPrecision(500); // A number cannot have 500 significant digits
|
|||
} |
|||
catch(err) { |
|||
document.getElementById("err").innerHTML = err.name; |
|||
} |
|||
*/ |
|||
|
|||
function Breathing() { |
|||
var zooming = document.querySelector("body"); |
|||
currentScale = 1; |
|||
currenttime = setInterval(function() { |
|||
zooming.style.transform="scale(" + currentScale + ")"; |
|||
currentScale = Math.random() * 5 |
|||
}, 800); |
|||
} |
|||
|
|||
function No_Breathing() { |
|||
clearInterval(currenttime); |
|||
} |
|||
|
|||
|
|||
// background: radial-gradient(ellipse at center, #0000FF, #E6E6FA 10%, #0000FF);
|
|||
// background: linear-gradient(#fff, #0000FF 100%, #fff 10%)
|
|||
// transform: matrix3d(1, 1, 0, 0, 10, 1, 0, 10, 10, 0, 1, 0, 200, 10, 0, 1);
|
|||
|
|||
|
|||
function Breathing02() { |
|||
var zooming = document.querySelector("body"); |
|||
numb = 1; |
|||
currenttime = setInterval(function() { |
|||
zooming.style.backgroundSize = numb + "%"; |
|||
numb = Math.random() * 500; |
|||
}, 800); |
|||
} |
|||
|
|||
|
|||
|
|||
var x = document.getElementsByTagName("div"); |
|||
var counter = 1000; |
|||
var i; |
|||
function Breathing03 () { |
|||
for (i = 0; i < x.length; i++) { |
|||
// x[i].style.opacity = Math.random() * 2;
|
|||
x[i].style.transform = "scaleY(" + Math.random() * 5 + ")"; |
|||
x[i].style.transition = "all 1s ease-in-out"; |
|||
window.setTimeout(Breathing03, counter); |
|||
} |
|||
}; |
|||
setTimeout(Breathing03, 1000); |
|||
|
|||
|
|||
|
|||
|
|||
function Breathing(){ |
|||
var x = document.getElementsByTagName("div"); |
|||
var i; |
|||
for (i = 0; i < x.length; i++) { |
|||
x[i].style.transform = "scaleY(" + Math.random() * 5 + ")"; |
|||
x[i].style.transition = "all 1s ease-in-out"; |
|||
} |
|||
} |
|||
// clearInterval(timer);
|
|||
// timer = setInterval(Breathing, 2000);
|
|||
|
|||
|
|||
function noBreathing() { |
|||
clearInterval(currenttime); |
|||
clearInterval(thistime); |
|||
} |
|||
|
|||
|
|||
|
|||
|
|||
// document.querySelector("body").style.border="solid #000 0rem"
|
|||
// document.querySelector("body").style.borderRadius="30rem"
|
|||
// document.querySelector("body").style.background="linear-gradient(70deg, Aquamarine, MistyRose, Blue, Plum, WhiteSmoke, LightYellow)"
|
|||
// document.querySelector("html").style.backgroundColor="black"
|
|||
|
|||
function skin () { |
|||
currenttime = setInterval(function() { |
|||
document.querySelector("body").style.background = "linear-gradient(" + Math.floor(Math.random() * 1000) + "deg, var(--color-pink), var(--color-yel), var(--color-blue), var(--color-gray))"; |
|||
}, 800); |
|||
} |
|||
|
@ -0,0 +1,57 @@ |
|||
<!DOCTYPE html> |
|||
<html> |
|||
<head> |
|||
<title>Choreo-Graphic Coding</title> |
|||
<meta content="text/html; charset=utf-8" http-equiv="content-type"> |
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=yes"> |
|||
<meta name="description" content="Live Coding Choreographies on Web Environments"> |
|||
<meta name="keywords" content="design, media design, graphic design, choreography, physical, digital, web, live, creative coding, choreographic thinking, performance, Joana Chicau"> |
|||
<meta name="author" content="Joana Chicau"> |
|||
|
|||
<link rel="stylesheet" href="rythm.css" media="screen" charset="utf-8"> |
|||
<link rel="stylesheet" href="digitalselves.css" media="screen" title="style by Joana Chicau" charset="utf-8"> |
|||
|
|||
<script type="text/javascript" src="https://unpkg.com/rythm.js/"></script> |
|||
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/rythm.js/2.2.5/rythm.min.js"></script> |
|||
|
|||
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js" referrerpolicy="no-referrer"></script> |
|||
|
|||
</head> |
|||
|
|||
|
|||
<body> |
|||
|
|||
<!-- STAGE 01 --> |
|||
|
|||
<h1 class="rythm blur2" id="stage02"></h1> |
|||
|
|||
<!-- STAGE 03 --> |
|||
|
|||
<iframe class="rythm vanish" id="stage03" src="https://en.wikipedia.org/wiki/Error"></iframe> |
|||
|
|||
|
|||
<span class="rythm tilt" id="oval"> </span> |
|||
|
|||
<span class="rythm size" id="dia"> </span> |
|||
|
|||
|
|||
<marquee id="err" scrolldelay="92"> * ◝ ₊· errors on air ♫♪. ♪ . * ◝ ₊· </marquee> |
|||
|
|||
<script type="text/javascript"> |
|||
var rythm = new Rythm() |
|||
rythm.setMusic('digitalselves_track2mix22_01_22.mp3') |
|||
rythm.addRythm('blur2', 'blur', 0, 10, { reverse: true }) |
|||
rythm.addRythm('tilt', 'tilt', 0, 10, { reverse: true }) |
|||
rythm.addRythm('size', 'size', 0, 10, { reverse: true }) |
|||
rythm.addRythm('vanish', 'vanish', 0, 10, { reverse: true }) |
|||
rythm.start() |
|||
</script> |
|||
|
|||
<script type="text/javascript" src="rythm.js"></script> |
|||
<script type="text/javascript" src="example.js"></script> |
|||
|
|||
<script type="text/javascript" src="digitalselves-scripts.js"></script> |
|||
|
|||
|
|||
</body> |
|||
</html> |
@ -0,0 +1,114 @@ |
|||
@font-face { |
|||
font-family: 'Combine'; |
|||
src: url('Combine.otf') format('opentype'); |
|||
font-weight: normal; |
|||
} |
|||
|
|||
@font-face { |
|||
font-family: 'Sinistre'; |
|||
src: url('Sinistre-S†Caroline.otf') format('opentype'); |
|||
font-weight: normal; |
|||
} |
|||
|
|||
:root { |
|||
--color-blue: #0000FF; |
|||
--color-gray: #edecec; |
|||
--color-pink: #f8a8ff; |
|||
--color-yel: #FDFFF0; |
|||
--color-aqua: #7FFFD4; |
|||
--special-font: 'Sinistre'; |
|||
} |
|||
|
|||
html { |
|||
box-sizing: border-box; |
|||
height: 100% |
|||
} |
|||
*, *:before, *:after { |
|||
-webkit-box-sizing: inherit; |
|||
-moz-box-sizing: inherit; |
|||
box-sizing: inherit; |
|||
} |
|||
|
|||
body{ |
|||
margin:0px; |
|||
/*animation: bodymove 60s infinite; |
|||
-webkit-animation: bodymove 60s infinite; */ |
|||
} |
|||
|
|||
@keyframes bodymove { |
|||
0% { background: radial-gradient(ellipse at center, var(--color-pink), var(--color-blue)); |
|||
background-size: 100% 100%;} |
|||
20% { background: radial-gradient(ellipse at top, var(--color-yel), var(--color-blue) 100%); |
|||
background-size: 10% 10%; } |
|||
30% { background: radial-gradient(ellipse at top, var(--color-yel), var(--color-blue) 40%); |
|||
background-size: 10% 100%;} |
|||
35% { background: radial-gradient(ellipse at top, var(--color-yel), var(--color-blue) 40%, var(--color-pink)); |
|||
background-size: 10% 100%;} |
|||
45% { background: radial-gradient(ellipse at center, var(--color-yel), var(--color-blue) 10%, var(--color-yel) 100%);} |
|||
65% { background: radial-gradient(ellipse at center, var(--color-blue), var(--color-yel) 10%, var(--color-blue) 100%); |
|||
background-size: 10% 999%; |
|||
background-position: left;} |
|||
70% { background: radial-gradient(ellipse at center, var(--color-pink), var(--color-yel) 10%, #f8a8ff 100%); |
|||
background-size: 10% 999%;} |
|||
85% { background: linear-gradient(var(--color-pink), var(--color-blue) 10%, var(--color-pink) 100%); |
|||
background-size: 10% 10%;} |
|||
90% { background: linear-gradient(var(--color-blue) 50%, var(--color-pink) 10% 10%); |
|||
background-size: 100% 1%;} |
|||
100% { background: linear-gradient(var(--color-pink) 10%, var(--color-blue) 100%);} |
|||
} |
|||
|
|||
marquee{ |
|||
color: var(--color-pink); |
|||
font-family: var(--special-font); |
|||
} |
|||
|
|||
#stage01{ |
|||
width: 100%; |
|||
height: 100vh; |
|||
} |
|||
#stage02{ |
|||
color: var(--color-blue); |
|||
font-size: 14vmax; |
|||
line-height: 18vmax; |
|||
position: absolute; |
|||
z-index: 2; |
|||
top: 0; |
|||
font-family: var(--special-font); |
|||
font-weight: bold; |
|||
word-spacing: 1vw; |
|||
filter: opacity(0.9); |
|||
text-shadow: 2px 2px 2px var(--color-pink); |
|||
} |
|||
|
|||
#stage03{ |
|||
filter: opacity(0.8); |
|||
position: absolute; |
|||
z-index: 3; |
|||
top: 0; |
|||
right: 0; |
|||
margin: 2vmax; |
|||
width: 130vmin; |
|||
height: 90vmin; |
|||
border: 0px; |
|||
box-shadow: 1px 1px 8px 2px var(--color-pink); |
|||
border-radius: 0 50% 50% 50%; |
|||
filter: grayscale(1); |
|||
} |
|||
|
|||
span { |
|||
box-shadow: 1px 1px 8px 2px var(--color-pink); |
|||
position: absolute; |
|||
z-index: 1; |
|||
} |
|||
|
|||
span#oval { |
|||
width: 50%; |
|||
height: 80%; |
|||
border-radius: 100% / 50%; |
|||
} |
|||
|
|||
span#dia { |
|||
width: 90%; |
|||
height: 90%; |
|||
transform: rotate(45deg); |
|||
} |
Loading…
Reference in new issue