mirror of
https://github.com/G2-Games/website.git
synced 2025-04-20 10:22:54 -05:00
Compare commits
No commits in common. "d74cb3770989731e906b58eb4518d1bbbdf1e5a4" and "7733fd9187adf388cfdda4a794ad944446781559" have entirely different histories.
d74cb37709
...
7733fd9187
14 changed files with 1003 additions and 371 deletions
|
@ -259,7 +259,6 @@ main h3 {
|
||||||
font-family: "Montserrat", sans-serif;
|
font-family: "Montserrat", sans-serif;
|
||||||
font-size: 22pt;
|
font-size: 22pt;
|
||||||
font-weight: 300;
|
font-weight: 300;
|
||||||
margin-bottom: 10px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
main h4 {
|
main h4 {
|
||||||
|
@ -384,11 +383,6 @@ mark::selection {
|
||||||
font-family: 'Montserrat';
|
font-family: 'Montserrat';
|
||||||
}
|
}
|
||||||
|
|
||||||
#footnotelist ol li span a:last-of-type{
|
|
||||||
margin-left: 10px;
|
|
||||||
border-left: 1px solid grey;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Mobile/Small Screens */
|
/* Mobile/Small Screens */
|
||||||
@media(max-width: 700px) {
|
@media(max-width: 700px) {
|
||||||
header {
|
header {
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<meta name="darkreader-lock">
|
|
||||||
<title>G2's Website</title>
|
<title>G2's Website</title>
|
||||||
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
|
|
@ -24,8 +24,8 @@
|
||||||
<div class="centerx">
|
<div class="centerx">
|
||||||
<hr class="line" style="margin-bottom: 0;">
|
<hr class="line" style="margin-bottom: 0;">
|
||||||
<h3 class="text_box" style="text-align:left;hyphens:auto;">
|
<h3 class="text_box" style="text-align:left;hyphens:auto;">
|
||||||
I am a full-stack software developer with system administration experience on Linux and Windows. Co-creator and maintainer of Dango Music Player and Dangoware. Experience with embedded systems programming.
|
I am a full-stack software developer with system administration experience on Linux and Windows. Co-creator and maintainer of Dango Music Player and Dangoware. Experience in embedded systems programming.
|
||||||
Experienced in Rust, Bash, and Python. Proficient in JavaScript/TypeScript. Some experience with C/C++. Additionally, I have skills with creating webpages utilizing HTML and CSS, and utilizing EJS and PugJS.
|
Experienced in Rust, JavaScript (EMCAScript), TypeScript, Java, Bash, and Python, proficient in C/C++. Additionally, I have skills with creating webpages utilizing HTML and CSS, and utilizing VUE, EJS, and PugJS.
|
||||||
</h3>
|
</h3>
|
||||||
<hr class="line" style="margin-top: 0;background-image: linear-gradient( to right, #0000, #7dc4e4 10%, #c6a0f6 50%, #ed8796 90%, #0000 );">
|
<hr class="line" style="margin-top: 0;background-image: linear-gradient( to right, #0000, #7dc4e4 10%, #c6a0f6 50%, #ed8796 90%, #0000 );">
|
||||||
</div>
|
</div>
|
||||||
|
@ -94,11 +94,6 @@
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
<div class="centerx double_column">
|
<div class="centerx double_column">
|
||||||
<a href="https://github.com/Taiko2k/TauonMusicBox/pull/1137/" target="_blank"><div class="item">
|
|
||||||
<h2>Tauon Music Box</h2>
|
|
||||||
<p>Fixed acquisition of URLs for display in Discord with rich presence</p>
|
|
||||||
</div></a>
|
|
||||||
|
|
||||||
<a href="https://github.com/rustwasm/wasm-bindgen/pull/3821" target="_blank"><div class="item">
|
<a href="https://github.com/rustwasm/wasm-bindgen/pull/3821" target="_blank"><div class="item">
|
||||||
<h2>WASM Bindgen</h2>
|
<h2>WASM Bindgen</h2>
|
||||||
<p>Enabled the <code>UsbDevice.forget()</code> method</p>
|
<p>Enabled the <code>UsbDevice.forget()</code> method</p>
|
||||||
|
|
|
@ -5,25 +5,130 @@
|
||||||
<title>G2's Website</title>
|
<title>G2's Website</title>
|
||||||
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
<link rel="stylesheet" href="style.css">
|
|
||||||
|
<style>
|
||||||
|
@import url('https://g2games.dev/assets/fonts/fonts.css');
|
||||||
|
|
||||||
|
* {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
background-color: #111114;
|
||||||
|
color: mintcream;
|
||||||
|
position: relative;
|
||||||
|
height: 100vh;
|
||||||
|
font-family: "Maple Mono";
|
||||||
|
font-size: 16pt;
|
||||||
|
width: 100vw;
|
||||||
|
padding: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes fade-in {
|
||||||
|
from {
|
||||||
|
opacity: 0;
|
||||||
|
scale: 90%;
|
||||||
|
}
|
||||||
|
to {
|
||||||
|
opacity: 1;
|
||||||
|
scale: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
main {
|
||||||
|
animation-name: fade-in;
|
||||||
|
animation-duration: 1s;
|
||||||
|
animation-timing-function: cubic-bezier(.37,1.08,.83,1.12);
|
||||||
|
|
||||||
|
width: 400px;
|
||||||
|
max-width: 100%;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
position: relative;
|
||||||
|
left: 50%;
|
||||||
|
top: 50%;
|
||||||
|
translate: -50% -50%;
|
||||||
|
padding: 30px;
|
||||||
|
|
||||||
|
gap: 25px;
|
||||||
|
|
||||||
|
background-color: #26262d;
|
||||||
|
box-shadow: 0px 5px 20px black;
|
||||||
|
|
||||||
|
border-radius: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
width: 90px;
|
||||||
|
height: 90px;
|
||||||
|
border-radius: 50%;
|
||||||
|
margin: auto;
|
||||||
|
box-shadow: 4px 5px 2px black;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
height: fit-content;
|
||||||
|
margin: auto;
|
||||||
|
font-family: "Montserrat";
|
||||||
|
font-weight: 400;
|
||||||
|
}
|
||||||
|
|
||||||
|
hr {
|
||||||
|
border: none;
|
||||||
|
background: mediumaquamarine;
|
||||||
|
height: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
p {
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
li {
|
||||||
|
margin-left: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.left_corner {
|
||||||
|
height: 20px;
|
||||||
|
width: 20px;
|
||||||
|
border-left: 2px solid mediumaquamarine;
|
||||||
|
border-top: 2px solid mediumaquamarine;
|
||||||
|
margin-bottom: -40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.right_corner {
|
||||||
|
height: 20px;
|
||||||
|
width: 20px;
|
||||||
|
border-right: 2px solid gold;
|
||||||
|
border-bottom: 2px solid gold;
|
||||||
|
margin-top: -40px;
|
||||||
|
margin-left: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
div {
|
||||||
|
padding: 10px;
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
gap: 10px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<main>
|
<main>
|
||||||
<header>
|
<div>
|
||||||
<img src="TeraTeradaMelon.png">
|
<img src="TeraTeradaMelon.png">
|
||||||
<h1>Hi, I'm G2</h1>
|
<h1>Hi, I'm G2</h1>
|
||||||
</header>
|
|
||||||
|
|
||||||
<span class="left_corner"></span>
|
|
||||||
<p>I am a software developer specializing in Rust and website design.</p>
|
|
||||||
<span class="right_corner"></span>
|
|
||||||
|
|
||||||
<div style="width:fit-content;margin:auto;">
|
|
||||||
<p><a href="https://github.com/G2-Games/">GitHub</a></p>
|
|
||||||
<p><a href="mailto:ke0bhogsg@gmail.com">Email</a></p>
|
|
||||||
</div>
|
</div>
|
||||||
|
<span class="left_corner"></span>
|
||||||
<hr style="background: linear-gradient(90deg, rgba(102,153,221,1) 0%, rgba(102,221,170,1) 100%);">
|
<p>Some interesting text about me presented in a very concise manner.</p>
|
||||||
|
<span class="right_corner"></span>
|
||||||
|
<div style="width:fit-content;margin:auto;">
|
||||||
|
<p>GitHub</p>
|
||||||
|
<p>Email</p>
|
||||||
|
</div>
|
||||||
|
<hr>
|
||||||
</main>
|
</main>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -1,118 +0,0 @@
|
||||||
@import url('https://g2games.dev/assets/fonts/fonts.css');
|
|
||||||
|
|
||||||
* {
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
|
|
||||||
body {
|
|
||||||
background-color: #111114;
|
|
||||||
color: mintcream;
|
|
||||||
position: relative;
|
|
||||||
height: 100vh;
|
|
||||||
font-family: "Maple Mono";
|
|
||||||
font-size: 16pt;
|
|
||||||
width: 100vw;
|
|
||||||
padding: 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
@keyframes fade-in {
|
|
||||||
from {
|
|
||||||
opacity: 0;
|
|
||||||
scale: 90%;
|
|
||||||
}
|
|
||||||
to {
|
|
||||||
opacity: 1;
|
|
||||||
scale: 100%;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
main {
|
|
||||||
animation-name: fade-in;
|
|
||||||
animation-duration: 1s;
|
|
||||||
animation-timing-function: cubic-bezier(.37,1.08,.83,1.12);
|
|
||||||
|
|
||||||
width: 400px;
|
|
||||||
max-width: 100%;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
position: relative;
|
|
||||||
left: 50%;
|
|
||||||
top: 50%;
|
|
||||||
translate: -50% -50%;
|
|
||||||
padding: 30px;
|
|
||||||
|
|
||||||
gap: 25px;
|
|
||||||
|
|
||||||
background-color: #26262d;
|
|
||||||
box-shadow: 0px 5px 20px black;
|
|
||||||
|
|
||||||
border-radius: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
img {
|
|
||||||
width: 90px;
|
|
||||||
height: 90px;
|
|
||||||
border-radius: 50%;
|
|
||||||
margin: auto;
|
|
||||||
box-shadow: 4px 5px 2px black;
|
|
||||||
}
|
|
||||||
|
|
||||||
h1 {
|
|
||||||
height: fit-content;
|
|
||||||
margin: auto;
|
|
||||||
font-family: "Montserrat";
|
|
||||||
font-weight: 400;
|
|
||||||
}
|
|
||||||
|
|
||||||
hr {
|
|
||||||
border: none;
|
|
||||||
background: mediumaquamarine;
|
|
||||||
height: 2px;
|
|
||||||
}
|
|
||||||
|
|
||||||
p {
|
|
||||||
padding-left: 10px;
|
|
||||||
padding-right: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
a {
|
|
||||||
color: #88eaac;
|
|
||||||
}
|
|
||||||
|
|
||||||
a:visited {
|
|
||||||
color: #e8ea7a;
|
|
||||||
}
|
|
||||||
|
|
||||||
a:hover {
|
|
||||||
color: #7bc7ea;
|
|
||||||
}
|
|
||||||
|
|
||||||
li {
|
|
||||||
margin-left: 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.left_corner {
|
|
||||||
height: 20px;
|
|
||||||
width: 20px;
|
|
||||||
border-left: 2px solid mediumaquamarine;
|
|
||||||
border-top: 2px solid mediumaquamarine;
|
|
||||||
margin-bottom: -40px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.right_corner {
|
|
||||||
height: 20px;
|
|
||||||
width: 20px;
|
|
||||||
border-right: 2px solid gold;
|
|
||||||
border-bottom: 2px solid gold;
|
|
||||||
margin-top: -40px;
|
|
||||||
margin-left: auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
header, div {
|
|
||||||
padding: 10px;
|
|
||||||
display: flex;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
gap: 10px;
|
|
||||||
}
|
|
7
random/cassettevid/LICENSE
Normal file
7
random/cassettevid/LICENSE
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
Copyright 2020 Kris Slyka
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
43
random/cassettevid/README.md
Normal file
43
random/cassettevid/README.md
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
# Welcome to the world of Cassette Video!
|
||||||
|
|
||||||
|
This is the decoder for the cassette video format, a way to turn videos into audio to put them on normal compact audio cassettes.
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
Just put this somewhere and include it in your html. No installation needed. ¯\\\_(ツ)\_/¯
|
||||||
|
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
Check out the included example index.html file. Just instantiate a new decoder object and pass it the canvas you want to use as output in the options object.
|
||||||
|
|
||||||
|
The following additional options are also available
|
||||||
|
|
||||||
|
```
|
||||||
|
hFreq: 225.0,
|
||||||
|
vFreq: 3,
|
||||||
|
overScan: 0.82,
|
||||||
|
hOffset: 0.06525,
|
||||||
|
pulseLength: ( 0.2 / 1000 ),
|
||||||
|
```
|
||||||
|
Timing parameters. These will be output by the encoder script during encoding.
|
||||||
|
|
||||||
|
```
|
||||||
|
brightness: 1,
|
||||||
|
saturation: 1,
|
||||||
|
```
|
||||||
|
Brightness and saturation of the image. Increase these if the image looks dull or too dark.
|
||||||
|
|
||||||
|
```
|
||||||
|
lineWidth: 2.5,
|
||||||
|
```
|
||||||
|
Width of the lines drawn on screen. Increase this when your video has low vertical resolution, decrease this if you want more of a scan line effect.
|
||||||
|
|
||||||
|
```
|
||||||
|
clearInterval: 50,
|
||||||
|
```
|
||||||
|
How often the screen is cleared. Decreasing this will make the image fade faster. Might be needed for higher frame rates to reduce smearing or ghosting.
|
||||||
|
|
||||||
|
```
|
||||||
|
blend: true,
|
||||||
|
```
|
||||||
|
Disabling this will reduce ghosting but can also make the image look a little dark and less "CRT-like"
|
303
random/cassettevid/cv-decoder.js
Normal file
303
random/cassettevid/cv-decoder.js
Normal file
|
@ -0,0 +1,303 @@
|
||||||
|
class CVDecoder extends AudioWorkletProcessor
|
||||||
|
{
|
||||||
|
constructor( options )
|
||||||
|
{
|
||||||
|
super( options );
|
||||||
|
|
||||||
|
let config = options.processorOptions;
|
||||||
|
|
||||||
|
this.sig =
|
||||||
|
{
|
||||||
|
LMin: 0.0,
|
||||||
|
LMax: 1.0,
|
||||||
|
|
||||||
|
CMin: -1.0,
|
||||||
|
CMax: 1.0,
|
||||||
|
};
|
||||||
|
|
||||||
|
this.hPhase = 0;
|
||||||
|
this.vPhase = 0;
|
||||||
|
|
||||||
|
this.pulse =
|
||||||
|
{
|
||||||
|
length: 0,
|
||||||
|
timeout: 0,
|
||||||
|
luma: 0,
|
||||||
|
lumaPrev: 0,
|
||||||
|
chroma: 0,
|
||||||
|
chromaPrev: 0,
|
||||||
|
edge: false,
|
||||||
|
count: false
|
||||||
|
};
|
||||||
|
|
||||||
|
this.timing =
|
||||||
|
{
|
||||||
|
time: 0,
|
||||||
|
lastV: 0,
|
||||||
|
lastH: 0,
|
||||||
|
};
|
||||||
|
|
||||||
|
this.field = 0;
|
||||||
|
this.chromaField = 0;
|
||||||
|
|
||||||
|
this.chromaDelay = [];
|
||||||
|
this.chromaDelayIndex = 0;
|
||||||
|
|
||||||
|
this.currLine =
|
||||||
|
{
|
||||||
|
x1: 0,
|
||||||
|
y: 0,
|
||||||
|
maxPhase: 0,
|
||||||
|
colors: []
|
||||||
|
};
|
||||||
|
|
||||||
|
this.overScan = config.overScan;
|
||||||
|
this.hOffset = config.hOffset;
|
||||||
|
|
||||||
|
this.pulseLength = config.pulseLength;
|
||||||
|
|
||||||
|
this.brightness = config.brightness;
|
||||||
|
this.saturation = config.saturation;
|
||||||
|
|
||||||
|
this.hPerTarget = 1.0 / config.hFreq * sampleRate;
|
||||||
|
this.vPerTarget = 1.0 / config.vFreq * sampleRate;
|
||||||
|
this.hPeriod = this.hPerTarget;
|
||||||
|
this.vPeriod = this.vPerTarget;
|
||||||
|
}
|
||||||
|
|
||||||
|
hPhaseToX( hPhase, vPhase, field )
|
||||||
|
{
|
||||||
|
return ( ( hPhase - this.hOffset ) / this.overScan );
|
||||||
|
}
|
||||||
|
|
||||||
|
vPhaseToY( hPhase, vPhase, field )
|
||||||
|
{
|
||||||
|
return ( vPhase + ( field / this.vPeriod ) * this.hPeriod * 0.5 );
|
||||||
|
}
|
||||||
|
|
||||||
|
YCbCrToRGB( y, cb, cr )
|
||||||
|
{
|
||||||
|
let r = y + 45 * cr / 32;
|
||||||
|
let g = y - ( 11 * cb + 23 * cr ) / 32;
|
||||||
|
let b = y + 113 * cb / 64;
|
||||||
|
|
||||||
|
return [ r, g, b ]
|
||||||
|
}
|
||||||
|
|
||||||
|
process( inputs, outputs, parameters )
|
||||||
|
{
|
||||||
|
if( inputs[ 0 ].length != 2 )
|
||||||
|
return;
|
||||||
|
|
||||||
|
let lSamples = inputs[ 0 ][ 0 ];
|
||||||
|
let cSamples = inputs[ 0 ][ 1 ];
|
||||||
|
|
||||||
|
let s = this.sig;
|
||||||
|
let p = this.pulse;
|
||||||
|
let t = this.timing;
|
||||||
|
|
||||||
|
let blank = false;
|
||||||
|
|
||||||
|
for( let i = 0; i < lSamples.length; i++ )
|
||||||
|
{
|
||||||
|
t.time += 1;
|
||||||
|
|
||||||
|
let lSample = lSamples[ i ] + Math.random() * 0.01 - 0.005;
|
||||||
|
let cSample = cSamples[ i ] + Math.random() * 0.01 - 0.005;
|
||||||
|
|
||||||
|
|
||||||
|
if( lSample < s.LMin ) s.LMin = lSample;
|
||||||
|
if( lSample > s.LMax ) s.LMax = lSample;
|
||||||
|
|
||||||
|
s.LMin *= 1.0 - ( 1.0 / sampleRate );
|
||||||
|
s.LMax *= 1.0 - ( 1.0 / sampleRate );
|
||||||
|
|
||||||
|
if( s.LMin > -0.025 ) s.LMin = -0.025;
|
||||||
|
if( s.LMax < 0.025 ) s.LMax = 0.025;
|
||||||
|
|
||||||
|
|
||||||
|
if( cSample < s.CMin ) s.CMin = cSample;
|
||||||
|
if( cSample > s.CMax ) s.CMax = cSample;
|
||||||
|
|
||||||
|
s.CMin *= 1.0 - ( 1.0 / sampleRate );
|
||||||
|
s.CMax *= 1.0 - ( 1.0 / sampleRate );
|
||||||
|
|
||||||
|
if( s.CMin > -0.05 ) s.CMin = -0.05;
|
||||||
|
if( s.CMax < 0.05 ) s.CMax = 0.05;
|
||||||
|
|
||||||
|
|
||||||
|
let luma = ( lSample * 2.0 - s.LMin ) / ( s.LMax - s.LMin ) * this.brightness * 255;
|
||||||
|
let chroma = ( ( cSample * 2.0 - s.CMin ) / ( s.CMax - s.CMin ) * 255 - 128 ) * this.saturation;
|
||||||
|
let chromaLast = this.chromaDelay[ this.chromaDelayIndex ] || 0;
|
||||||
|
|
||||||
|
if( this.chromaDelayIndex < sampleRate / 10.0 )
|
||||||
|
{
|
||||||
|
this.chromaDelay[ this.chromaDelayIndex ] = chroma;
|
||||||
|
this.chromaDelayIndex++;
|
||||||
|
}
|
||||||
|
|
||||||
|
let [ r, g, b ] = ( this.chromaField == 0 ) ?
|
||||||
|
this.YCbCrToRGB( luma, chromaLast, chroma ) :
|
||||||
|
this.YCbCrToRGB( luma, chroma, chromaLast );
|
||||||
|
|
||||||
|
if( this.currLine.colors.length < this.hPerTarget * 2.0 )
|
||||||
|
this.currLine.colors.push(
|
||||||
|
{
|
||||||
|
phase: this.hPhase,
|
||||||
|
r: Math.max( Math.min( Math.round( r ), 255 ), 0 ),
|
||||||
|
g: Math.max( Math.min( Math.round( g ), 255 ), 0 ),
|
||||||
|
b: Math.max( Math.min( Math.round( b ), 255 ), 0 )
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
this.currLine.maxPhase = this.hPhase;
|
||||||
|
|
||||||
|
this.hPhase += 1.0 / this.hPeriod;
|
||||||
|
this.vPhase += 1.0 / this.vPeriod;
|
||||||
|
|
||||||
|
this.currLine.x2 = this.hPhaseToX( this.hPhase, this.vPhase, this.field );
|
||||||
|
|
||||||
|
if( ( ( s.LMax - s.LMin ) > 0.1 ) && ( ( s.CMax - s.CMin ) > 0.1 ) )
|
||||||
|
{
|
||||||
|
if( lSample < s.LMin * 0.5 )
|
||||||
|
p.luma = -1;
|
||||||
|
else if( lSample > s.LMax * 0.5 )
|
||||||
|
p.luma = 1;
|
||||||
|
else
|
||||||
|
p.luma = 0;
|
||||||
|
|
||||||
|
if( cSample < s.CMin * 0.5 )
|
||||||
|
p.chroma = -1;
|
||||||
|
else if( cSample > s.CMax * 0.5 )
|
||||||
|
p.chroma = 1;
|
||||||
|
else
|
||||||
|
p.chroma = 0;
|
||||||
|
|
||||||
|
if( ( p.luma != p.lumaPrev ) || ( p.chroma != p.chromaPrev ) )
|
||||||
|
{
|
||||||
|
p.length = 0;
|
||||||
|
p.lumaPrev = p.luma;
|
||||||
|
p.chromaPrev = p.chroma;
|
||||||
|
p.edge = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( ( p.luma != 0 ) && ( p.chroma != 0 ) )
|
||||||
|
{
|
||||||
|
p.length += 1.0 / sampleRate;
|
||||||
|
|
||||||
|
if( ( p.length > this.pulseLength * 0.5 ) && ( p.edge == true ) )
|
||||||
|
{
|
||||||
|
p.edge = false;
|
||||||
|
p.count += 1;
|
||||||
|
p.timeout = this.pulseLength * 1.25;
|
||||||
|
|
||||||
|
if( p.count == 2 )
|
||||||
|
{
|
||||||
|
p.count = 0;
|
||||||
|
blank = true;
|
||||||
|
|
||||||
|
if( ( t.time - t.lastH < this.hPerTarget * 1.5 ) &&
|
||||||
|
( t.time - t.lastH > this.hPerTarget * 0.5 ) )
|
||||||
|
this.hPeriod = this.hPeriod * 0.9 + ( t.time - t.lastH ) * 0.1;
|
||||||
|
|
||||||
|
t.lastH = t.time;
|
||||||
|
|
||||||
|
this.hPhase = 0;
|
||||||
|
this.chromaDelayIndex = 0;
|
||||||
|
|
||||||
|
if( p.luma > 0 )
|
||||||
|
this.chromaField = 0;
|
||||||
|
else
|
||||||
|
this.chromaField = 1;
|
||||||
|
|
||||||
|
if( p.luma != p.chroma )
|
||||||
|
{
|
||||||
|
if( ( t.time - t.lastV < this.vPerTarget * 1.5 ) &&
|
||||||
|
( t.time - t.lastV > this.vPerTarget * 0.5 ) )
|
||||||
|
this.vPeriod = this.vPeriod * 0.75 + ( t.time - t.lastV ) * 0.25;
|
||||||
|
|
||||||
|
t.lastV = t.time;
|
||||||
|
|
||||||
|
this.vPhase = 0;
|
||||||
|
this.chromaField = 1;
|
||||||
|
|
||||||
|
if( p.luma > 0 )
|
||||||
|
this.field = 0;
|
||||||
|
else
|
||||||
|
this.field = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if( p.count > 0 )
|
||||||
|
{
|
||||||
|
p.timeout -= 1.0 / sampleRate;
|
||||||
|
|
||||||
|
if( p.timeout <= 0 )
|
||||||
|
p.count = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
p.luma = p.lumaPrev = 0;
|
||||||
|
p.chroma = p.chromaPrev = 0;
|
||||||
|
p.edge = false;
|
||||||
|
p.count = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
this.hPeriod = this.hPeriod * ( 1.0 - 1.0 / sampleRate ) + this.hPerTarget * ( 1.0 / sampleRate );
|
||||||
|
this.vPeriod = this.vPeriod * ( 1.0 - 1.0 / sampleRate ) + this.vPerTarget * ( 1.0 / sampleRate );
|
||||||
|
|
||||||
|
if( this.hPhase >= 1.0 )
|
||||||
|
{
|
||||||
|
blank = true;
|
||||||
|
|
||||||
|
this.hPhase -= 1.0;
|
||||||
|
this.chromaDelayIndex = 0;
|
||||||
|
|
||||||
|
if( this.chromaField == 1 )
|
||||||
|
this.chromaField = 0;
|
||||||
|
else
|
||||||
|
this.chromaField = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( this.vPhase >= 1.0 )
|
||||||
|
{
|
||||||
|
blank = true;
|
||||||
|
|
||||||
|
this.vPhase -= 1.0;
|
||||||
|
|
||||||
|
if( this.field == 0 )
|
||||||
|
this.field = 1;
|
||||||
|
else
|
||||||
|
this.field = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( blank )
|
||||||
|
{
|
||||||
|
if(
|
||||||
|
( this.currLine.colors.length > 5 ) &&
|
||||||
|
( this.currLine.maxPhase > 0 )
|
||||||
|
)
|
||||||
|
{
|
||||||
|
this.port.postMessage( this.currLine );
|
||||||
|
}
|
||||||
|
|
||||||
|
this.currLine =
|
||||||
|
{
|
||||||
|
x1: this.hPhaseToX( this.hPhase, this.vPhase, this.field ),
|
||||||
|
y: this.vPhaseToY( this.hPhase, this.vPhase, this.field ),
|
||||||
|
maxPhase: 0,
|
||||||
|
colors: []
|
||||||
|
};
|
||||||
|
|
||||||
|
blank = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
registerProcessor( 'cv-decoder', CVDecoder );
|
131
random/cassettevid/cv.js
Normal file
131
random/cassettevid/cv.js
Normal file
|
@ -0,0 +1,131 @@
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
class VC
|
||||||
|
{
|
||||||
|
constructor( canvas, config )
|
||||||
|
{
|
||||||
|
const defConfig =
|
||||||
|
{
|
||||||
|
clearInterval: 50,
|
||||||
|
overScan: 0.82,
|
||||||
|
hOffset: 0.06525,
|
||||||
|
pulseLength: ( 0.2 / 1000 ),
|
||||||
|
lineWidth: 2.5,
|
||||||
|
brightness: 1,
|
||||||
|
saturation: 1,
|
||||||
|
blend: false,
|
||||||
|
hFreq: 225.0,
|
||||||
|
vFreq: 3
|
||||||
|
};
|
||||||
|
|
||||||
|
config = Object.assign( defConfig, config );
|
||||||
|
|
||||||
|
this.lines = [];
|
||||||
|
|
||||||
|
this.lastClear = 0;
|
||||||
|
this.clearInterval = config.clearInterval;
|
||||||
|
|
||||||
|
this.canvas = canvas;
|
||||||
|
|
||||||
|
this.width = this.canvas.width;
|
||||||
|
this.height = this.canvas.height;
|
||||||
|
|
||||||
|
this.lineWidth = config.lineWidth;
|
||||||
|
this.blend = config.blend;
|
||||||
|
|
||||||
|
this.config = config;
|
||||||
|
|
||||||
|
this.graphicsContext = null;
|
||||||
|
this.audioContext = null;
|
||||||
|
this.audioInput = null;
|
||||||
|
this.decoder = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
async start()
|
||||||
|
{
|
||||||
|
this.graphicsContext = this.canvas.getContext( "2d" );
|
||||||
|
|
||||||
|
this.audioContext = new window.AudioContext();
|
||||||
|
|
||||||
|
let stream = await navigator.mediaDevices.getUserMedia(
|
||||||
|
{
|
||||||
|
audio: {
|
||||||
|
echoCancellation: false,
|
||||||
|
noiseSuppression: false,
|
||||||
|
autoGainControl: false,
|
||||||
|
channelCount: {
|
||||||
|
exact: 2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} );
|
||||||
|
|
||||||
|
this.audioInput = this.audioContext.createMediaStreamSource( stream );
|
||||||
|
|
||||||
|
await this.audioContext.audioWorklet.addModule( 'cv-decoder.js' )
|
||||||
|
|
||||||
|
this.decoder = new AudioWorkletNode( this.audioContext, 'cv-decoder',
|
||||||
|
{
|
||||||
|
numberOfInputs: 2,
|
||||||
|
numberOfOutputs: 0,
|
||||||
|
processorOptions: this.config
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
this.decoder.port.onmessage = event =>
|
||||||
|
{
|
||||||
|
if( this.lines.length < 1024 )
|
||||||
|
this.lines.push( event.data )
|
||||||
|
};
|
||||||
|
|
||||||
|
this.audioInput.connect( this.decoder );
|
||||||
|
|
||||||
|
requestAnimationFrame( () => this.draw() );
|
||||||
|
}
|
||||||
|
|
||||||
|
activate()
|
||||||
|
{
|
||||||
|
this.audioContext.resume();
|
||||||
|
}
|
||||||
|
|
||||||
|
draw()
|
||||||
|
{
|
||||||
|
if( Date.now() - this.lastClear > this.clearInterval )
|
||||||
|
{
|
||||||
|
this.graphicsContext.fillStyle = 'rgba(0,0,0,0.05)';
|
||||||
|
this.graphicsContext.globalCompositeOperation = 'source-over';
|
||||||
|
this.graphicsContext.fillRect( 0, 0, this.width, this.height );
|
||||||
|
this.lastClear = Date.now();
|
||||||
|
}
|
||||||
|
|
||||||
|
if( this.blend )
|
||||||
|
this.graphicsContext.globalCompositeOperation = 'screen';
|
||||||
|
else
|
||||||
|
this.graphicsContext.globalCompositeOperation = 'source-over';
|
||||||
|
|
||||||
|
this.graphicsContext.lineWidth = this.lineWidth;
|
||||||
|
|
||||||
|
const width = this.width;
|
||||||
|
const height = this.height;
|
||||||
|
|
||||||
|
for( let line of this.lines )
|
||||||
|
{
|
||||||
|
var gradient = this.graphicsContext.createLinearGradient( line.x1 * width, line.y * height, line.x2 * width, line.y * height );
|
||||||
|
|
||||||
|
for( let color of line.colors )
|
||||||
|
gradient.addColorStop( color.phase / line.maxPhase, 'rgb(' + color.r + ',' + color.g + ',' + color.b + ')' );
|
||||||
|
|
||||||
|
this.graphicsContext.beginPath();
|
||||||
|
|
||||||
|
this.graphicsContext.moveTo( line.x1 * width + Math.random() * 2.0 - 1.0, line.y * height + Math.random() * 2.0 - 1.0 );
|
||||||
|
this.graphicsContext.lineTo( line.x2 * width + Math.random() * 2.0 - 1.0, line.y * height + Math.random() * 2.0 - 1.0 );
|
||||||
|
|
||||||
|
this.graphicsContext.strokeStyle = gradient;
|
||||||
|
|
||||||
|
this.graphicsContext.stroke();
|
||||||
|
}
|
||||||
|
|
||||||
|
this.lines = [];
|
||||||
|
|
||||||
|
requestAnimationFrame( () => this.draw() );
|
||||||
|
}
|
||||||
|
}
|
45
random/cassettevid/index.html
Normal file
45
random/cassettevid/index.html
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
<html>
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>VC</title>
|
||||||
|
<script src="cv.js"></script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
body {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
background: black;
|
||||||
|
}
|
||||||
|
|
||||||
|
#tv {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
object-fit: contain;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
document.addEventListener( "DOMContentLoaded", _ =>
|
||||||
|
{
|
||||||
|
let tv = document.getElementById( "tv" );
|
||||||
|
|
||||||
|
let decoder = new VC( tv,
|
||||||
|
{
|
||||||
|
// Other options go here!
|
||||||
|
} );
|
||||||
|
|
||||||
|
tv.addEventListener( "click", _ => decoder.activate() );
|
||||||
|
|
||||||
|
decoder.start().catch( console.error );
|
||||||
|
|
||||||
|
}, false );
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<canvas width="1280" height="720" id="tv"></canvas>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
|
@ -7,7 +7,7 @@
|
||||||
viewBox="0 0 222.86589 81.01266"
|
viewBox="0 0 222.86589 81.01266"
|
||||||
version="1.1"
|
version="1.1"
|
||||||
id="svg1"
|
id="svg1"
|
||||||
inkscape:version="1.3.2 (091e20ef0f, 2023-11-25)"
|
inkscape:version="1.3 (0e150ed6c4, 2023-07-21)"
|
||||||
sodipodi:docname="dango-icon-text.svg"
|
sodipodi:docname="dango-icon-text.svg"
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
inkscape:export-filename="dango-icon_Layer 1.png"
|
inkscape:export-filename="dango-icon_Layer 1.png"
|
||||||
|
@ -31,11 +31,11 @@
|
||||||
inkscape:pagecheckerboard="false"
|
inkscape:pagecheckerboard="false"
|
||||||
inkscape:deskcolor="#474747"
|
inkscape:deskcolor="#474747"
|
||||||
inkscape:document-units="mm"
|
inkscape:document-units="mm"
|
||||||
inkscape:zoom="0.35355339"
|
inkscape:zoom="0.5"
|
||||||
inkscape:cx="1115.8145"
|
inkscape:cx="2010"
|
||||||
inkscape:cy="87.681241"
|
inkscape:cy="788"
|
||||||
inkscape:window-width="2560"
|
inkscape:window-width="2560"
|
||||||
inkscape:window-height="1360"
|
inkscape:window-height="1354"
|
||||||
inkscape:window-x="0"
|
inkscape:window-x="0"
|
||||||
inkscape:window-y="0"
|
inkscape:window-y="0"
|
||||||
inkscape:window-maximized="1"
|
inkscape:window-maximized="1"
|
||||||
|
@ -65,29 +65,52 @@
|
||||||
id="defs1" /><g
|
id="defs1" /><g
|
||||||
inkscape:groupmode="layer"
|
inkscape:groupmode="layer"
|
||||||
id="layer8"
|
id="layer8"
|
||||||
inkscape:label="Text"><g
|
inkscape:label="Text"><text
|
||||||
|
xml:space="preserve"
|
||||||
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:77.115px;font-family:'Maple Mono';-inkscape-font-specification:'Maple Mono, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;display:inline;fill:#414178;fill-opacity:1;stroke-width:6.42627"
|
||||||
|
x="90.272095"
|
||||||
|
y="67.356735"
|
||||||
id="text22-6"
|
id="text22-6"
|
||||||
style="font-size:77.115px;font-family:'Maple Mono';-inkscape-font-specification:'Maple Mono, Normal';fill:#414178;stroke-width:6.42627"
|
transform="skewX(-7.0365086)"><tspan
|
||||||
transform="skewX(-7.0365086)"
|
id="tspan22-4"
|
||||||
aria-label="DMP"><path
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:77.115px;font-family:'Maple Mono';-inkscape-font-specification:'Maple Mono, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;fill:#414178;fill-opacity:1;stroke-width:6.42627"
|
||||||
d="m 107.43018,60.416385 q 9.06101,0 13.10955,-4.241324 4.00998,-4.241325 4.00998,-13.957815 0,-4.16421 -0.23134,-7.672942 -0.11568,-1.735088 -0.38558,-3.277388 -0.23134,-1.5423 -0.61692,-2.853255 -0.73259,-2.62191 -2.42912,-4.279882 -1.85076,-1.85076 -4.12565,-2.660467 -1.15673,-0.424133 -2.39057,-0.655478 -1.23384,-0.231345 -2.54479,-0.30846 -1.31096,-0.07712 -2.73759,-0.115672 -1.42662,-0.03856 -2.89181,-0.03856 -0.69403,0 -1.15672,0.46269 -0.50125,0.46269 -0.50125,1.156725 v 36.783854 q 0,0.694035 0.50125,1.156725 0.46269,0.501247 1.15672,0.501247 z m 0,6.94035 h -6.20776 q -1.503738,0 -2.544791,-1.07961 Q 97.59802,65.236073 97.59802,63.73233 V 17.000642 q 0,-1.465185 1.079609,-2.544795 1.041053,-1.07961 2.544791,-1.07961 h 7.7115 q 7.55727,0 12.56975,2.429122 5.01247,2.506238 7.48015,7.672942 2.50624,5.24382 2.50624,13.495125 v 5.24382 q 0,9.061012 -2.54479,14.574735 -2.62191,5.590837 -7.90429,8.058517 -5.35949,2.506237 -13.6108,2.506237 z"
|
x="90.272095"
|
||||||
id="path6" /><path
|
y="67.356735"
|
||||||
d="m 173.86478,68.51346 q -1.42663,0 -2.42912,-1.041052 -1.04105,-1.002495 -1.04105,-2.46768 V 32.886331 q 0,-0.385575 -0.23135,-0.61692 -0.30846,-0.192787 -0.57836,-0.192787 -0.38558,0 -0.69404,0.46269 l -5.08959,13.418009 q -0.5398,1.23384 -1.65797,1.966433 -1.19528,0.732592 -2.54479,0.732592 -1.31096,0 -2.46768,-0.694035 -1.19529,-0.732592 -1.69653,-2.00499 l -5.08959,-13.418009 q -0.23135,-0.46269 -0.65548,-0.46269 -0.77115,0 -0.77115,0.809707 v 32.118397 q 0,1.465185 -1.04105,2.46768 -1.04106,1.041052 -2.42913,1.041052 -1.42662,0 -2.42912,-1.041052 -1.04105,-1.002495 -1.04105,-2.46768 V 16.422279 q 0,-1.657972 1.23384,-2.968927 1.23384,-1.23384 2.89181,-1.23384 1.23384,0 2.35201,0.655477 1.04105,0.694035 1.50374,1.889318 l 8.17419,21.206624 q 0.46269,1.349513 1.50374,1.349513 0.69404,0 0.96394,-0.385575 0.15423,-0.192788 0.2699,-0.424133 0.15423,-0.269902 0.26991,-0.539805 l 8.13563,-21.206624 q 0.50125,-1.195283 1.5423,-1.889318 1.07961,-0.655477 2.31345,-0.655477 1.69653,0 3.00748,1.23384 1.23384,1.310955 1.23384,2.968927 v 48.582449 q 0,1.465185 -1.04105,2.46768 -1.07961,1.041052 -2.46768,1.041052 z"
|
sodipodi:role="line"><tspan
|
||||||
id="path7" /><path
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:77.115px;font-family:'Maple Mono';-inkscape-font-specification:'Maple Mono, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;fill:#414178;fill-opacity:1"
|
||||||
d="m 208.91358,38.824186 q 3.20027,0 5.51372,-2.31345 2.31345,-2.31345 2.31345,-7.441597 0,-2.93037 -1.04105,-4.819688 -0.53981,-0.963937 -1.2724,-1.69653 -0.69404,-0.732592 -1.58086,-1.233839 -1.77364,-0.963938 -3.93286,-0.963938 h -9.02246 q -0.69403,0 -1.15672,0.46269 -0.50125,0.46269 -0.50125,1.156725 v 15.191655 q 0,0.694035 0.50125,1.156725 0.46269,0.501247 1.15672,0.501247 z M 194.76297,68.51346 q -1.42662,0 -2.42912,-1.041052 -1.04105,-1.002495 -1.04105,-2.429123 V 17.000642 q 0,-1.465185 1.07961,-2.544795 1.04105,-1.07961 2.54479,-1.07961 h 13.99638 q 6.09208,0 10.48764,4.395555 2.15922,2.120662 3.23883,4.742572 1.04105,2.583352 1.04105,6.554775 0,4.93536 -2.00499,8.675437 -2.04355,3.778635 -5.35949,5.899297 -3.39306,2.120663 -7.40304,2.120663 h -9.02246 q -0.69403,0 -1.15672,0.46269 -0.50125,0.501247 -0.50125,1.195282 v 17.620777 q 0,1.426628 -1.0025,2.429123 -1.04105,1.041052 -2.46768,1.041052 z"
|
id="tspan24-1">D</tspan><tspan
|
||||||
id="path8" /></g><g
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:77.115px;font-family:'Maple Mono';-inkscape-font-specification:'Maple Mono, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;fill:#414178;fill-opacity:1"
|
||||||
|
id="tspan25-2">M</tspan>P</tspan></text><text
|
||||||
|
xml:space="preserve"
|
||||||
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:77.115px;font-family:'Maple Mono';-inkscape-font-specification:'Maple Mono, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;display:inline;fill:#414178;fill-opacity:1;stroke-width:6.42627"
|
||||||
|
x="88.341064"
|
||||||
|
y="67.365189"
|
||||||
|
id="text22-6-3"
|
||||||
|
transform="skewX(-7.0365086)"><tspan
|
||||||
|
id="tspan22-4-3"
|
||||||
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:77.115px;font-family:'Maple Mono';-inkscape-font-specification:'Maple Mono, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;fill:#414178;fill-opacity:1;stroke-width:6.42627"
|
||||||
|
x="88.341064"
|
||||||
|
y="67.365189"
|
||||||
|
sodipodi:role="line"><tspan
|
||||||
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:77.115px;font-family:'Maple Mono';-inkscape-font-specification:'Maple Mono, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;fill:#414178;fill-opacity:1"
|
||||||
|
id="tspan24-1-8">D</tspan><tspan
|
||||||
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:77.115px;font-family:'Maple Mono';-inkscape-font-specification:'Maple Mono, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;fill:#414178;fill-opacity:1"
|
||||||
|
id="tspan25-2-0">M</tspan>P</tspan></text><text
|
||||||
|
xml:space="preserve"
|
||||||
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:77.115px;font-family:'Maple Mono';-inkscape-font-specification:'Maple Mono, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;display:inline;opacity:1;fill:#30d19f;fill-opacity:1;stroke-width:6.42627"
|
||||||
|
x="87.101929"
|
||||||
|
y="64.921387"
|
||||||
id="text22"
|
id="text22"
|
||||||
style="font-size:77.115px;font-family:'Maple Mono';-inkscape-font-specification:'Maple Mono, Normal';fill:#30d19f;stroke-width:6.42627"
|
transform="skewX(-7.0365086)"><tspan
|
||||||
transform="skewX(-7.0365086)"
|
id="tspan22"
|
||||||
aria-label="DMP"><path
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:77.115px;font-family:'Maple Mono';-inkscape-font-specification:'Maple Mono, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;fill:#30d19f;fill-opacity:1;stroke-width:6.42627"
|
||||||
style="fill:#ff6581"
|
x="87.101929"
|
||||||
d="m 104.26002,57.981037 q 9.06101,0 13.10955,-4.241325 4.00998,-4.241325 4.00998,-13.957815 0,-4.164209 -0.23135,-7.672942 -0.11567,-1.735087 -0.38557,-3.277387 -0.23135,-1.5423 -0.61692,-2.853255 -0.7326,-2.62191 -2.42913,-4.279883 -1.85076,-1.85076 -4.12565,-2.660467 -1.15672,-0.424132 -2.39056,-0.655477 -1.23384,-0.231345 -2.5448,-0.30846 -1.31095,-0.07711 -2.73758,-0.115673 -1.42663,-0.03856 -2.89181,-0.03856 -0.69404,0 -1.15673,0.46269 -0.50125,0.462689 -0.50125,1.156724 v 36.783854 q 0,0.694035 0.50125,1.156725 0.46269,0.501248 1.15673,0.501248 z m 0,6.94035 h -6.207762 q -1.503742,0 -2.544795,-1.07961 -1.079609,-1.041053 -1.079609,-2.544795 V 14.565293 q 0,-1.465185 1.079609,-2.544795 1.041053,-1.07961 2.544795,-1.07961 h 7.711502 q 7.55727,0 12.56974,2.429123 5.01248,2.506237 7.48016,7.672942 2.50624,5.24382 2.50624,13.495125 v 5.243819 q 0,9.061013 -2.5448,14.574735 -2.62191,5.590837 -7.90429,8.058517 -5.35949,2.506238 -13.61079,2.506238 z"
|
y="64.921387"
|
||||||
id="path1" /><path
|
sodipodi:role="line"><tspan
|
||||||
style="fill:#ffd983"
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:77.115px;font-family:'Maple Mono';-inkscape-font-specification:'Maple Mono, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;fill:#ff6581;fill-opacity:1"
|
||||||
d="m 170.69462,66.078112 q -1.42663,0 -2.42913,-1.041053 -1.04105,-1.002495 -1.04105,-2.46768 V 30.450983 q 0,-0.385575 -0.23134,-0.61692 -0.30846,-0.192788 -0.57837,-0.192788 -0.38557,0 -0.69403,0.46269 l -5.08959,13.41801 q -0.53981,1.23384 -1.65797,1.966432 -1.19529,0.732593 -2.5448,0.732593 -1.31095,0 -2.46768,-0.694035 -1.19528,-0.732593 -1.69653,-2.00499 l -5.08959,-13.41801 q -0.23134,-0.46269 -0.65548,-0.46269 -0.77115,0 -0.77115,0.809708 v 32.118396 q 0,1.465185 -1.04105,2.46768 -1.04105,1.041053 -2.42912,1.041053 -1.42663,0 -2.42912,-1.041053 -1.04106,-1.002495 -1.04106,-2.46768 V 13.986931 q 0,-1.657973 1.23384,-2.968928 1.23384,-1.2338398 2.89182,-1.2338398 1.23384,0 2.352,0.6554778 1.04106,0.694035 1.50375,1.889317 l 8.17419,21.206625 q 0.46269,1.349512 1.50374,1.349512 0.69403,0 0.96394,-0.385575 0.15423,-0.192787 0.2699,-0.424132 0.15423,-0.269903 0.2699,-0.539805 l 8.13563,-21.206625 q 0.50125,-1.195282 1.5423,-1.889317 1.07961,-0.6554778 2.31345,-0.6554778 1.69653,0 3.00749,1.2338398 1.23384,1.310955 1.23384,2.968928 v 48.582448 q 0,1.465185 -1.04105,2.46768 -1.07961,1.041053 -2.46768,1.041053 z"
|
id="tspan24">D</tspan><tspan
|
||||||
id="path2" /><path
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:77.115px;font-family:'Maple Mono';-inkscape-font-specification:'Maple Mono, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;fill:#ffd983;fill-opacity:1"
|
||||||
d="m 205.74341,36.388838 q 3.20027,0 5.51372,-2.31345 2.31345,-2.31345 2.31345,-7.441598 0,-2.93037 -1.04105,-4.819687 -0.5398,-0.963938 -1.2724,-1.69653 -0.69403,-0.732593 -1.58085,-1.23384 -1.77365,-0.963937 -3.93287,-0.963937 h -9.02245 q -0.69404,0 -1.15673,0.46269 -0.50125,0.462689 -0.50125,1.156724 v 15.191655 q 0,0.694035 0.50125,1.156725 0.46269,0.501248 1.15673,0.501248 z m -14.1506,29.689274 q -1.42663,0 -2.42912,-1.041053 -1.04106,-1.002495 -1.04106,-2.429122 V 14.565293 q 0,-1.465185 1.07961,-2.544795 1.04106,-1.07961 2.5448,-1.07961 h 13.99637 q 6.09209,0 10.48764,4.395555 2.15922,2.120663 3.23883,4.742572 1.04105,2.583353 1.04105,6.554775 0,4.93536 -2.00499,8.675438 -2.04354,3.778634 -5.35949,5.899297 -3.39306,2.120662 -7.40304,2.120662 h -9.02245 q -0.69404,0 -1.15673,0.46269 -0.50125,0.501248 -0.50125,1.195283 v 17.620777 q 0,1.426627 -1.00249,2.429122 -1.04105,1.041053 -2.46768,1.041053 z"
|
id="tspan25">M</tspan>P</tspan></text></g><g
|
||||||
id="path3" /></g></g><g
|
|
||||||
inkscape:groupmode="layer"
|
inkscape:groupmode="layer"
|
||||||
id="layer4"
|
id="layer4"
|
||||||
inkscape:label="Shadows"
|
inkscape:label="Shadows"
|
||||||
|
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 8.6 KiB |
|
@ -4,44 +4,70 @@
|
||||||
<svg
|
<svg
|
||||||
width="1024"
|
width="1024"
|
||||||
height="1024"
|
height="1024"
|
||||||
viewBox="0 0 270.93292 270.93332"
|
viewBox="0 0 81.012658 81.012658"
|
||||||
version="1.1"
|
version="1.1"
|
||||||
id="svg1"
|
id="svg1"
|
||||||
|
inkscape:version="1.3 (0e150ed6c4, 2023-07-21)"
|
||||||
|
sodipodi:docname="dango-icon.svg"
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
inkscape:version="1.3.2 (091e20ef0f, 2023-11-25)"
|
inkscape:export-filename="dango-icon_Layer 1.png"
|
||||||
sodipodi:docname="dango-icon2.svg"
|
inkscape:export-xdpi="48"
|
||||||
inkscape:export-filename="dango-icon2.png"
|
inkscape:export-ydpi="48"
|
||||||
inkscape:export-xdpi="49.152"
|
|
||||||
inkscape:export-ydpi="49.152"
|
|
||||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
|
xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||||
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
|
xmlns:dc="http://purl.org/dc/elements/1.1/"><title
|
||||||
|
id="title1">Dango Music Player</title><sodipodi:namedview
|
||||||
id="namedview1"
|
id="namedview1"
|
||||||
pagecolor="#909090"
|
pagecolor="#737373"
|
||||||
bordercolor="#ffffff"
|
bordercolor="#eeeeee"
|
||||||
borderopacity="1"
|
borderopacity="1"
|
||||||
inkscape:showpageshadow="false"
|
inkscape:showpageshadow="false"
|
||||||
inkscape:pageopacity="0"
|
inkscape:pageopacity="0"
|
||||||
inkscape:pagecheckerboard="1"
|
inkscape:pagecheckerboard="true"
|
||||||
inkscape:deskcolor="#434343"
|
inkscape:deskcolor="#474747"
|
||||||
inkscape:document-units="mm"
|
inkscape:document-units="mm"
|
||||||
inkscape:zoom="0.51224045"
|
inkscape:zoom="1"
|
||||||
inkscape:cx="454.86451"
|
inkscape:cx="965.5"
|
||||||
inkscape:cy="515.38296"
|
inkscape:cy="743"
|
||||||
inkscape:window-width="2560"
|
inkscape:window-width="2560"
|
||||||
inkscape:window-height="1354"
|
inkscape:window-height="1354"
|
||||||
inkscape:window-x="0"
|
inkscape:window-x="0"
|
||||||
inkscape:window-y="0"
|
inkscape:window-y="0"
|
||||||
inkscape:window-maximized="1"
|
inkscape:window-maximized="1"
|
||||||
inkscape:current-layer="svg1" /><defs
|
inkscape:current-layer="layer3"
|
||||||
|
inkscape:export-bgcolor="#ffffffff"
|
||||||
|
shape-rendering="auto"
|
||||||
|
inkscape:clip-to-page="false"
|
||||||
|
labelstyle="default"
|
||||||
|
showguides="false"
|
||||||
|
inkscape:lockguides="false"><sodipodi:guide
|
||||||
|
position="0,81.012658"
|
||||||
|
orientation="0,1024"
|
||||||
|
id="guide16"
|
||||||
|
inkscape:locked="false" /><sodipodi:guide
|
||||||
|
position="81.012658,81.012658"
|
||||||
|
orientation="1024,0"
|
||||||
|
id="guide17"
|
||||||
|
inkscape:locked="false" /><sodipodi:guide
|
||||||
|
position="81.012658,0"
|
||||||
|
orientation="0,-1024"
|
||||||
|
id="guide18"
|
||||||
|
inkscape:locked="false" /><sodipodi:guide
|
||||||
|
position="0,0"
|
||||||
|
orientation="-1024,0"
|
||||||
|
id="guide19"
|
||||||
|
inkscape:locked="false" /></sodipodi:namedview><defs
|
||||||
id="defs1"><inkscape:path-effect
|
id="defs1"><inkscape:path-effect
|
||||||
effect="fillet_chamfer"
|
effect="fillet_chamfer"
|
||||||
id="path-effect5"
|
id="path-effect22"
|
||||||
is_visible="true"
|
is_visible="true"
|
||||||
lpeversion="1"
|
lpeversion="1"
|
||||||
nodesatellites_param="F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 | F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 | F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 | F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1"
|
nodesatellites_param="F,0,0,1,0,0,0,1 @ F,0,0,1,0,4.8906993,0,1 @ F,0,0,1,0,3.27335,0,1 @ F,0,0,1,0,3.0925451,0,1 @ F,0,0,1,0,2.2825644,0,1 @ F,0,0,1,0,0,0,1"
|
||||||
radius="0"
|
radius="0"
|
||||||
unit="px"
|
unit="px"
|
||||||
method="auto"
|
method="auto"
|
||||||
|
@ -54,10 +80,42 @@
|
||||||
only_selected="false"
|
only_selected="false"
|
||||||
hide_knots="false" /><inkscape:path-effect
|
hide_knots="false" /><inkscape:path-effect
|
||||||
effect="fillet_chamfer"
|
effect="fillet_chamfer"
|
||||||
id="path-effect4"
|
id="path-effect21"
|
||||||
is_visible="true"
|
is_visible="true"
|
||||||
lpeversion="1"
|
lpeversion="1"
|
||||||
nodesatellites_param="F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 | F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 | F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 | F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1"
|
nodesatellites_param="F,0,0,1,0,3.9426156,0,1 @ F,0,0,1,0,5.3672681,0,1 @ F,0,0,1,0,3.6955029,0,1 @ F,0,0,1,0,1.7697805,0,1 @ F,0,0,1,0,2.6656312,0,1 @ F,0,0,1,0,3.0386092,0,1"
|
||||||
|
radius="0"
|
||||||
|
unit="px"
|
||||||
|
method="auto"
|
||||||
|
mode="F"
|
||||||
|
chamfer_steps="1"
|
||||||
|
flexible="false"
|
||||||
|
use_knot_distance="true"
|
||||||
|
apply_no_radius="true"
|
||||||
|
apply_with_radius="true"
|
||||||
|
only_selected="false"
|
||||||
|
hide_knots="false" /><inkscape:path-effect
|
||||||
|
effect="fillet_chamfer"
|
||||||
|
id="path-effect20"
|
||||||
|
is_visible="true"
|
||||||
|
lpeversion="1"
|
||||||
|
nodesatellites_param="F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1"
|
||||||
|
radius="0"
|
||||||
|
unit="px"
|
||||||
|
method="auto"
|
||||||
|
mode="F"
|
||||||
|
chamfer_steps="1"
|
||||||
|
flexible="false"
|
||||||
|
use_knot_distance="true"
|
||||||
|
apply_no_radius="true"
|
||||||
|
apply_with_radius="true"
|
||||||
|
only_selected="false"
|
||||||
|
hide_knots="false" /><inkscape:path-effect
|
||||||
|
effect="fillet_chamfer"
|
||||||
|
id="path-effect19"
|
||||||
|
is_visible="true"
|
||||||
|
lpeversion="1"
|
||||||
|
nodesatellites_param="F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1"
|
||||||
radius="0"
|
radius="0"
|
||||||
unit="px"
|
unit="px"
|
||||||
method="auto"
|
method="auto"
|
||||||
|
@ -69,157 +127,262 @@
|
||||||
apply_with_radius="true"
|
apply_with_radius="true"
|
||||||
only_selected="false"
|
only_selected="false"
|
||||||
hide_knots="false" /><linearGradient
|
hide_knots="false" /><linearGradient
|
||||||
id="linearGradient13"
|
id="linearGradient19"
|
||||||
inkscape:collect="always"><stop
|
inkscape:collect="always"><stop
|
||||||
style="stop-color:#f3f3ff;stop-opacity:1;"
|
style="stop-color:#2fd09d;stop-opacity:1;"
|
||||||
offset="0"
|
offset="0"
|
||||||
id="stop13" /><stop
|
id="stop19" /><stop
|
||||||
style="stop-color:#ebebff;stop-opacity:1;"
|
style="stop-color:#3ad8ab;stop-opacity:1;"
|
||||||
offset="1"
|
offset="1"
|
||||||
id="stop14" /></linearGradient><linearGradient
|
id="stop20" /></linearGradient><linearGradient
|
||||||
|
id="linearGradient2"
|
||||||
|
inkscape:collect="always"><stop
|
||||||
|
style="stop-color:#f5f5fe;stop-opacity:1;"
|
||||||
|
offset="0"
|
||||||
|
id="stop2" /><stop
|
||||||
|
style="stop-color:#f9f9fe;stop-opacity:1;"
|
||||||
|
offset="1"
|
||||||
|
id="stop3" /></linearGradient><linearGradient
|
||||||
|
id="linearGradient10"
|
||||||
|
inkscape:collect="always"><stop
|
||||||
|
style="stop-color:#f5f5fe;stop-opacity:1;"
|
||||||
|
offset="0"
|
||||||
|
id="stop10" /><stop
|
||||||
|
style="stop-color:#ffffff;stop-opacity:1;"
|
||||||
|
offset="1"
|
||||||
|
id="stop11" /></linearGradient><linearGradient
|
||||||
id="linearGradient8"
|
id="linearGradient8"
|
||||||
inkscape:collect="always"><stop
|
inkscape:collect="always"><stop
|
||||||
style="stop-color:#ffffff;stop-opacity:1;"
|
style="stop-color:#2bcd99;stop-opacity:1;"
|
||||||
offset="0"
|
offset="0"
|
||||||
id="stop8" /><stop
|
id="stop8" /><stop
|
||||||
style="stop-color:#eaeaff;stop-opacity:1;"
|
style="stop-color:#3ad8ab;stop-opacity:1;"
|
||||||
offset="1"
|
offset="1"
|
||||||
id="stop9" /></linearGradient><linearGradient
|
id="stop9" /></linearGradient><linearGradient
|
||||||
id="linearGradient6"
|
id="linearGradient6"
|
||||||
inkscape:collect="always"><stop
|
inkscape:collect="always"><stop
|
||||||
style="stop-color:#ff738f;stop-opacity:1;"
|
style="stop-color:#ff728e;stop-opacity:1;"
|
||||||
offset="0"
|
offset="0"
|
||||||
id="stop6" /><stop
|
id="stop6" /><stop
|
||||||
style="stop-color:#ff5e7c;stop-opacity:1;"
|
style="stop-color:#ff5f7b;stop-opacity:1;"
|
||||||
offset="1"
|
offset="1"
|
||||||
id="stop7" /></linearGradient><style
|
id="stop7" /></linearGradient><linearGradient
|
||||||
id="style1">.cls-1{fill:#414178;}.cls-2{fill:#fff;}.cls-3{fill:#ff738f;}.cls-4{fill:url(#linear-gradient);}.cls-5{fill:#cdb999;}.cls-6{fill:#3ad8ab;}</style><linearGradient
|
id="linearGradient4"
|
||||||
id="linear-gradient"
|
inkscape:collect="always"><stop
|
||||||
x1="138.15854"
|
style="stop-color:#ff5e7a;stop-opacity:1;"
|
||||||
y1="81.041435"
|
|
||||||
x2="128.51421"
|
|
||||||
y2="122.16921"
|
|
||||||
gradientUnits="userSpaceOnUse"
|
|
||||||
gradientTransform="translate(-62.896826,-57.679355)"><stop
|
|
||||||
offset="0"
|
offset="0"
|
||||||
stop-color="#3ad8ab"
|
id="stop4" /><stop
|
||||||
id="stop1"
|
style="stop-color:#ff738f;stop-opacity:1;"
|
||||||
style="stop-color:#3ad8ab;stop-opacity:1;" /><stop
|
|
||||||
offset="1"
|
offset="1"
|
||||||
stop-color="#3ad8ab"
|
id="stop5" /></linearGradient><linearGradient
|
||||||
stop-opacity="0.8"
|
inkscape:collect="always"
|
||||||
id="stop2"
|
xlink:href="#linearGradient4"
|
||||||
style="stop-color:#00d098;stop-opacity:1;" /></linearGradient><linearGradient
|
id="linearGradient5"
|
||||||
|
x1="82.654282"
|
||||||
|
y1="114.87984"
|
||||||
|
x2="96.269638"
|
||||||
|
y2="80.077705"
|
||||||
|
gradientUnits="userSpaceOnUse"
|
||||||
|
gradientTransform="matrix(0.98264903,0,0,0.98264903,-58.73546,-61.773204)" /><linearGradient
|
||||||
inkscape:collect="always"
|
inkscape:collect="always"
|
||||||
xlink:href="#linearGradient6"
|
xlink:href="#linearGradient6"
|
||||||
id="linearGradient7"
|
id="linearGradient7"
|
||||||
x1="41.97908"
|
x1="77.577637"
|
||||||
y1="26.045218"
|
y1="125.103"
|
||||||
x2="32.766212"
|
x2="79.659798"
|
||||||
y2="61.564529"
|
y2="132.13728"
|
||||||
gradientUnits="userSpaceOnUse"
|
gradientUnits="userSpaceOnUse"
|
||||||
gradientTransform="translate(-0.035,0.005)" /><linearGradient
|
gradientTransform="matrix(0.98264903,0,0,0.98264903,-58.73546,-61.773204)" /><linearGradient
|
||||||
inkscape:collect="always"
|
inkscape:collect="always"
|
||||||
xlink:href="#linearGradient8"
|
xlink:href="#linearGradient8"
|
||||||
id="linearGradient9"
|
id="linearGradient9"
|
||||||
x1="33.500832"
|
x1="114.22693"
|
||||||
y1="14.687151"
|
y1="123.33096"
|
||||||
x2="22.418392"
|
x2="124.94499"
|
||||||
y2="78.881516"
|
y2="77.316032"
|
||||||
gradientUnits="userSpaceOnUse"
|
gradientUnits="userSpaceOnUse"
|
||||||
gradientTransform="matrix(2.7245761,0,0,2.7245761,-0.72706094,-0.45814492)" /><linearGradient
|
gradientTransform="matrix(0.98264903,0,0,0.98264903,-58.73546,-61.773204)" /><linearGradient
|
||||||
inkscape:collect="always"
|
inkscape:collect="always"
|
||||||
xlink:href="#linearGradient13"
|
xlink:href="#linearGradient10"
|
||||||
id="linearGradient14"
|
id="linearGradient11"
|
||||||
x1="44.633045"
|
x1="114.78822"
|
||||||
y1="54.530647"
|
y1="137.24091"
|
||||||
x2="39.453175"
|
x2="85.211365"
|
||||||
y2="78.450645"
|
y2="72.780891"
|
||||||
gradientUnits="userSpaceOnUse"
|
gradientUnits="userSpaceOnUse"
|
||||||
gradientTransform="matrix(0.95518446,0,0,0.95518446,1.8783612,2.9493394)" /></defs><g
|
gradientTransform="matrix(0.98264903,0,0,0.98264903,-58.73546,-61.773204)" /><linearGradient
|
||||||
id="g3-3"
|
inkscape:collect="always"
|
||||||
inkscape:label="Shadow No Stick"
|
xlink:href="#linearGradient2"
|
||||||
inkscape:highlight-color="#6217e6"
|
id="linearGradient3"
|
||||||
style="display:none"
|
x1="97.431625"
|
||||||
transform="matrix(1.3598172,0,0,1.3598172,-0.2400525,-0.10574233)"><path
|
y1="132.32193"
|
||||||
id="path7"
|
x2="88.032585"
|
||||||
d="M 33.734196,5.6673927 C 28.280831,5.68682 23.078855,9.5175689 22.103156,15.590601 L 16.34844,51.769345 c -1.006992,0.620389 -1.947381,1.359102 -2.797362,2.209084 -2.872797,2.872797 -4.4865734,6.769432 -4.4865734,10.832228 0,2.984197 0.870553,5.878447 2.4713014,8.343445 l 1.133234,1.745074 -0.165691,1.041268 c -0.479699,3.018997 0.226416,5.918162 1.748114,8.261359 l 2.941013,4.528756 c 2.078197,3.199997 5.677067,5.363272 9.851763,5.378872 1.362199,0.001 2.714843,-0.228765 4.000142,-0.679865 l 23.960945,-8.563099 c 2.193831,1.1658 4.659143,1.791817 7.18893,1.791817 4.062696,0 7.95933,-1.614056 10.832227,-4.486953 1.424772,-1.424772 2.539111,-3.101372 3.301276,-4.925122 l 15.296379,-5.466657 c 6.899893,-3.034197 8.944032,-11.364908 5.168338,-17.179402 l -2.941012,-4.529136 c -0.696199,-1.071999 -1.590397,-2.058231 -2.688296,-2.91023 l -7.331439,-5.696193 2.856647,-14.062058 c 0.415099,-2.066898 -0.03947,-4.059951 -1.07547,-5.65515 L 82.671893,17.218247 C 81.213995,14.97325 78.604632,13.517241 75.647134,13.753941 L 52.61611,17.211787 40.953148,8.1504749 C 38.743806,6.4370641 36.212999,5.6585621 33.734196,5.6673927 Z m 2.941012,4.5287563 c 2.478792,-0.0088 5.00961,0.770042 7.218952,2.483462 l 10.236349,7.952779 15.421787,34.838776 c -2.812373,-2.554522 -6.482174,-3.97924 -10.299053,-3.97924 -4.062795,0 -7.95943,1.613776 -10.832227,4.486574 -2.872797,2.872797 -4.486573,6.769431 -4.486573,10.832227 0,2.984197 0.870603,5.878448 2.471301,8.343445 l 2.941392,4.528756 c 0.288861,0.444823 0.601205,0.875735 0.936761,1.290565 L 28.103368,88.90043 c -1.285298,0.4512 -2.637942,0.681345 -4.000141,0.680245 -3.178377,-0.0118 -6.022051,-1.269487 -8.11581,-3.280754 -0.647401,-1.798628 -0.867805,-3.786596 -0.543056,-5.830341 l 0.194953,-1.2252 c 0.270679,0.319289 0.554579,0.628683 0.852776,0.92688 2.872897,2.872897 6.769532,4.486953 10.832228,4.486953 4.062795,0 7.95895,-1.614056 10.831847,-4.486953 2.872797,-2.872797 4.486953,-6.769052 4.486953,-10.831848 0,-2.984097 -0.870883,-5.878547 -2.471681,-8.343445 l -2.941012,-4.528755 c -0.5786,-0.8909 -1.252573,-1.726084 -2.015272,-2.488783 -2.872797,-2.872797 -6.769052,-4.486573 -10.831848,-4.486573 -1.398055,0 -2.776368,0.190874 -4.100088,0.558636 l 4.760952,-29.931135 c 0.975767,-6.073094 6.177697,-9.903788 11.631039,-9.923208 z m 42.463215,8.061846 c 1.72433,-0.01694 3.308756,0.54034 4.586519,1.483997 0.216651,0.993263 0.238874,2.052116 0.02204,3.131785 L 80.497011,38.873962 57.97712,21.377239 78.588147,18.282697 c 0.184837,-0.01479 0.368353,-0.02291 0.550276,-0.0247 z M 55.557502,21.741303 94.10418,51.689539 c 0.332508,0.258035 0.646039,0.528496 0.941322,0.809833 1.951206,5.503203 -0.377384,12.119258 -6.362376,14.751044 l -11.17197,3.992541 c -0.01859,-2.949914 -0.88599,-5.808641 -2.469401,-8.246919 l -2.941392,-4.528756 c -0.235431,-0.362505 -0.4874,-0.715119 -0.753969,-1.057989 z M 27.324318,54.020612 c 4.062795,0 7.95895,1.614156 10.831847,4.486953 0.116897,0.116897 0.231221,0.235852 0.343923,0.356083 0.785492,1.864657 1.202018,3.884386 1.202018,5.947009 0,4.062796 -1.614156,7.95905 -4.486953,10.831847 -2.872797,2.872797 -6.769052,4.486953 -10.831848,4.486953 -3.038537,0 -5.983798,-0.903256 -8.477593,-2.560227 l 3.383361,-21.27075 c 2.396586,-1.476539 5.174443,-2.277868 8.035245,-2.277868 z m 34.869938,2.00007 c 3.189963,0 6.277017,0.995571 8.846978,2.813704 l 3.53081,7.976341 c 0,2.047722 -0.410755,4.05292 -1.185297,5.906346 l -21.322813,7.620258 c -1.329238,-0.706423 -2.559053,-1.61089 -3.642918,-2.694756 -0.11677,-0.11677 -0.230575,-0.235607 -0.343163,-0.355703 -0.785711,-1.864873 -1.202398,-3.884475 -1.202398,-5.947389 0,-4.062796 1.613776,-7.95943 4.486573,-10.832228 2.872897,-2.872797 6.769432,-4.486673 10.832228,-4.486573 z m 10.299052,3.97924 c 0.181204,0.164585 0.359281,0.333445 0.533175,0.507333 0.116897,0.116898 0.230837,0.236232 0.343543,0.356464 0.446851,1.060761 0.772978,2.171833 0.972103,3.312296 z m -57.492436,0.240556 -2.214784,13.92335 c -0.511714,-1.541975 -0.780571,-3.169226 -0.780571,-4.824416 0,-3.294864 1.061797,-6.480164 2.995355,-9.098934 z"
|
y2="111.82001"
|
||||||
style="display:inline;vector-effect:non-scaling-stroke;fill:#414178;fill-opacity:1;stroke:#414178;stroke-width:0.194573;stroke-dasharray:none;stroke-opacity:1;-inkscape-stroke:hairline"
|
gradientUnits="userSpaceOnUse"
|
||||||
inkscape:label="Long No Stick" /><path
|
gradientTransform="matrix(0.98264903,0,0,0.98264903,-60.55508,-61.60949)" /><linearGradient
|
||||||
id="path2-2"
|
inkscape:collect="always"
|
||||||
style="display:inline;vector-effect:non-scaling-stroke;fill:#414178;stroke:#414178;stroke-width:0.194573;stroke-dasharray:none;stroke-opacity:1;-inkscape-stroke:hairline"
|
xlink:href="#linearGradient19"
|
||||||
class="cls-1"
|
id="linearGradient20"
|
||||||
inkscape:label="Triangle No Stick"
|
x1="49.555607"
|
||||||
d="m 24.103174,89.580645 c -7.231557,-0.02695 -12.734781,-6.497983 -11.6,-13.64 l 9.6,-60.349999 c 1.419274,-8.8335549 11.780087,-12.9229159 18.85,-7.4400003 l 50.21,39.0099993 c 7.052825,5.47302 5.692049,16.496407 -2.48,20.09 l -60.58,21.65 c -1.285314,0.451126 -2.637816,0.681051 -4,0.68 z M 52.615997,17.211923 75.647115,13.753791 c 5.058951,-0.404929 9.09932,4.144226 8.1,9.119999 l -3.25,16 M 74.571972,66.8106 A 15.318771,15.318771 0 0 1 59.253201,82.129372 15.318771,15.318771 0 0 1 43.934429,66.8106 15.318771,15.318771 0 0 1 59.253201,51.491829 15.318771,15.318771 0 0 1 74.571972,66.8106 Z M 39.701968,64.810601 A 15.318771,15.318771 0 0 1 24.383197,80.129372 15.318771,15.318771 0 0 1 9.0644256,64.810601 15.318771,15.318771 0 0 1 24.383197,49.49183 15.318771,15.318771 0 0 1 39.701968,64.810601 Z" /></g><g
|
y1="69.925171"
|
||||||
id="g3"
|
x2="46.670128"
|
||||||
inkscape:label="Shadow With Stick"
|
y2="64.051262"
|
||||||
inkscape:highlight-color="#6217e6"
|
gradientUnits="userSpaceOnUse" /></defs><g
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
id="layer4"
|
||||||
|
inkscape:label="Shadows"
|
||||||
style="display:inline"
|
style="display:inline"
|
||||||
transform="matrix(2.7245762,0,0,2.7245762,-0.727061,-0.45814532)"><path
|
transform="translate(-8.2557827e-7,-4.0269466)"><g
|
||||||
id="path2315"
|
inkscape:groupmode="layer"
|
||||||
d="M 33.734171,5.6674376 C 28.280805,5.6868649 23.07883,9.5176138 22.103131,15.590646 l -5.771057,36.28059 c -2.033998,1.253699 -3.746388,2.965989 -4.999987,4.999987 L 8.331791,56.640928 c -3.5878465,-0.27 -6.7177976,2.413315 -6.9996773,6.000212 -0.1211499,1.487098 0.2689275,2.896926 1.0226468,4.057525 l 2.9410121,4.529136 c 1.0684789,1.645298 2.8675873,2.789452 4.9771854,2.942152 l 2.117498,0.165691 0.295659,0.455269 -0.182792,1.149576 c -0.479699,3.018997 0.226416,5.918162 1.748115,8.261359 l 2.941012,4.528756 c 2.078198,3.199997 5.677068,5.363272 9.851763,5.378872 1.362199,0.001 2.714843,-0.228765 4.000142,-0.679865 l 24.003508,-8.5783 c 7.146239,3.787539 16.006526,1.354794 20.216181,-5.551783 l 9.600187,0.76005 h 0.199893 c 4.444196,0.212599 7.783487,-4.002286 6.559989,-8.279981 C 98.524006,68.7454 100.56815,60.414309 96.79245,54.599814 L 93.851438,50.071058 C 93.155239,48.99906 92.261041,48.012447 91.163142,47.160448 L 83.832083,41.464636 86.68835,27.402578 c 0.4151,-2.066898 -0.03947,-4.060332 -1.07547,-5.65553 L 82.671868,17.218292 C 81.213969,14.973294 78.604606,13.517286 75.647109,13.753986 L 52.616084,17.211832 40.953122,8.1505198 C 38.743781,6.437109 36.212973,5.658607 33.734171,5.6674376 Z m 2.941012,4.5287554 c 2.478792,-0.0088 5.00961,0.770043 7.218951,2.483463 l 39.544244,30.723107 10.665777,8.286821 c 0.332507,0.258035 0.646039,0.528496 0.941321,0.809833 1.951206,5.503203 -0.377384,12.119257 -6.362376,14.751044 L 52.106471,80.322175 c -0.0011,-5.87e-4 -0.0023,-9.33e-4 -0.0034,-0.0015 l 0.0015,0.0023 -24.001228,8.57754 c -1.285299,0.4512 -2.637943,0.681345 -4.000142,0.680245 -3.178377,-0.0118 -6.022051,-1.269487 -8.11581,-3.280755 -0.6474,-1.798628 -0.867804,-3.786595 -0.543055,-5.830341 l 0.210533,-1.323626 c 0.0095,0.0112 0.01861,0.02265 0.02812,0.03382 l -0.02698,-0.04142 9.388134,-59.018996 c 0.975768,-6.073094 6.177697,-9.903788 11.63104,-9.923209 z m 42.463214,8.061467 c 1.724224,-0.01694 3.308797,0.540826 4.586519,1.484377 0.216657,0.993272 0.238876,2.052106 0.02204,3.131785 L 80.496986,38.873627 57.977474,21.377284 78.588121,18.282742 c 0.184837,-0.01479 0.368353,-0.02329 0.550276,-0.02508 z M 14.983746,60.34883 12.791382,74.13081 10.011881,69.850971 7.3319456,69.641197 C 6.2213058,69.560806 5.1982534,69.203245 4.3210089,68.644772 4.2507905,68.166255 4.232164,67.672696 4.2731258,67.169896 4.5550055,63.582999 7.6853567,60.900064 11.273183,61.170064 l 2.999916,0.229915 c 0.222492,-0.36097 0.460033,-0.711208 0.710647,-1.051149 z m 72.342286,12.966827 c -1.241799,1.422041 -3.097943,2.315482 -5.20292,2.214785 h -0.199893 l -0.650603,-0.0513 z"
|
id="layer7"
|
||||||
style="display:inline;vector-effect:non-scaling-stroke;fill:#414178;fill-opacity:1;stroke:#414178;stroke-width:0.194573;stroke-dasharray:none;stroke-opacity:1;-inkscape-stroke:hairline"
|
inkscape:label="BarShadow"
|
||||||
inkscape:label="Long With Stick" /><path
|
style="display:inline"><path
|
||||||
id="path2"
|
style="display:inline;fill:#414178;fill-opacity:1;stroke-width:0.259992"
|
||||||
style="display:inline;vector-effect:non-scaling-stroke;stroke:#414178;stroke-width:0.194573;stroke-dasharray:none;stroke-opacity:1;-inkscape-stroke:hairline"
|
d="m 51.380579,51.396498 7.866783,-37.875039 4.913236,-0.500811 c 0,0 6.476708,-1.090369 6.282222,3.99106 -0.01946,0.509327 -9.27544,42.267246 -9.27544,42.267246 L 50.721781,57.310993 Z"
|
||||||
class="cls-1"
|
id="path3-8"
|
||||||
inkscape:label="Triangle With Stick"
|
inkscape:label="NoteGreenShadow"
|
||||||
d="m 24.103174,89.580645 c -7.231557,-0.02695 -12.734781,-6.497983 -11.6,-13.64 l 9.6,-60.349999 c 1.419274,-8.8335549 11.780087,-12.9229159 18.85,-7.4400003 l 50.21,39.0099993 c 7.052825,5.47302 5.692049,16.496407 -2.48,20.09 l -60.58,21.65 c -1.285314,0.451126 -2.637816,0.681051 -4,0.68 z M 12.741968,74.651089 c -1.20327,-1.414425 -2.129409,-3.042802 -2.729999,-4.8 l -2.6800008,-0.21 c -3.5977956,-0.260438 -6.2928775,-3.4047 -6.0000001,-7 0.2818803,-3.586937 3.4121512,-6.270026 7.0000004,-6 l 2.9999995,0.23 c 1.253678,-2.033989 2.966011,-3.746322 5,-5 m 72.351206,15.379556 c 1.223503,4.277758 -2.115793,8.492601 -6.56,8.28 h -0.2 l -9.6,-0.76 c -4.21043,6.90784 -13.07309,9.340469 -20.22,5.55 m 0.512823,-63.108722 23.031118,-3.458132 c 5.058951,-0.404929 9.09932,4.144226 8.1,9.119999 l -3.25,16" /></g><path
|
sodipodi:nodetypes="cccsccc" /><path
|
||||||
class="cls-2"
|
style="display:inline;fill:#414178;fill-opacity:1;fill-rule:evenodd;stroke-width:0.285035"
|
||||||
d="M 242.66796,134.38289 105.81252,28.206155 A 23.92178,23.92178 0 0 0 67.668452,43.300305 L 41.37629,207.70124 a 23.92178,23.92178 0 0 0 31.65958,26.29218 l 163.09312,-58.19697 a 23.92178,23.92178 0 0 0 6.53897,-41.41356 z"
|
d="M 20.902627,48.896147 C 26.66067,20.015911 26.867846,20.02202 26.867846,20.02202 c 0,0 0.657438,-3.231283 5.311802,-3.614715 5.454955,-0.449387 27.067714,-2.885846 27.067714,-2.885846 l -3.534009,17.014681 -21.386082,0.557591 -3.202194,17.339785 -1.394259,6.679203 -9.289744,-2.041483 z"
|
||||||
id="path104"
|
id="path2-0"
|
||||||
style="display:inline;fill:url(#linearGradient9);fill-opacity:1;stroke-width:2.72459"
|
inkscape:label="NotePinkShadow"
|
||||||
|
sodipodi:nodetypes="ccsccccccc" /></g><g
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
id="layer6"
|
||||||
|
inkscape:label="TriangleShadow"
|
||||||
|
style="display:inline"><path
|
||||||
|
style="display:inline;fill:#414178;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.261524"
|
||||||
|
d="m 16.96174,80.474386 c -2.664785,-0.190708 -5.82867,-1.383802 -6.516198,-5.803208 -0.4536076,-2.91578 0.630647,-7.703933 1.156884,-10.621109 l 8.648471,-47.942428 c 0.362328,-2.008551 0.754766,-5.524882 2.181214,-6.9403517 1.496483,-1.4849662 3.644271,-1.2521374 5.11571,-0.8321913 0.938078,0.2677256 2.252797,1.1477525 2.998968,1.779087 L 76.14848,48.697711 c 1.123879,0.950912 3.026505,2.472481 3.743781,3.749152 1.038262,1.847989 0.929168,3.797933 0.223318,5.240514 -0.719799,1.47109 -3.413169,2.518709 -4.993562,3.08319 L 24.588783,78.819898 c -2.05057,0.732417 -5.463256,1.809342 -7.627043,1.654488 z"
|
||||||
|
id="path51"
|
||||||
|
inkscape:label="Triangle Shadow"
|
||||||
|
sodipodi:nodetypes="csscssc"
|
||||||
|
inkscape:path-effect="#path-effect21"
|
||||||
|
inkscape:original-d="m 20.875897,80.146057 c 0,0 -12.7919505,3.408556 -10.226308,-10.813974 L 20.90695,12.470838 C 22.206766,5.2653626 29.195726,8.9710527 29.195726,8.9710527 L 78.183442,50.419489 c 4.115895,3.482453 2.42254,8.392329 -0.199871,9.328995 z" /></g><g
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
id="layer5"
|
||||||
|
inkscape:label="MochiShadow"
|
||||||
|
style="display:inline"><rect
|
||||||
|
style="display:inline;opacity:1;fill:#414178;fill-opacity:1;stroke-width:0.394999"
|
||||||
|
id="rect2-7-9"
|
||||||
|
width="17.513771"
|
||||||
|
height="9.2218723"
|
||||||
|
x="55.957401"
|
||||||
|
y="50.753998"
|
||||||
|
rx="4.2030349"
|
||||||
|
ry="4.5425587"
|
||||||
|
transform="matrix(0.99472574,0.10257046,-0.09655455,0.99532769,0,0)"
|
||||||
|
inkscape:label="StickUpperShadow" /><rect
|
||||||
|
style="display:inline;fill:#414178;fill-opacity:1;stroke-width:0.394999"
|
||||||
|
id="rect2-7-9-3"
|
||||||
|
width="17.513771"
|
||||||
|
height="9.2218723"
|
||||||
|
x="5.9272799"
|
||||||
|
y="49.652416"
|
||||||
|
rx="4.2030349"
|
||||||
|
ry="4.5425587"
|
||||||
|
transform="matrix(0.99472574,0.10257046,-0.09655455,0.99532769,0,0)"
|
||||||
|
inkscape:label="StickUpperShadow" /><ellipse
|
||||||
|
style="display:inline;fill:#414178;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.262554"
|
||||||
|
id="path52"
|
||||||
|
cx="48.695099"
|
||||||
|
cy="59.529789"
|
||||||
|
rx="12.541522"
|
||||||
|
ry="13.285923"
|
||||||
|
inkscape:label="GreenShadow" /><ellipse
|
||||||
|
style="display:inline;fill:#414178;fill-opacity:1;stroke-width:0.24834"
|
||||||
|
id="path18"
|
||||||
|
cx="33.415474"
|
||||||
|
cy="58.190823"
|
||||||
|
rx="12.925907"
|
||||||
|
ry="12.818201"
|
||||||
|
inkscape:label="WhiteShadow" /><ellipse
|
||||||
|
style="display:inline;fill:#414178;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.259992"
|
||||||
|
id="path58"
|
||||||
|
cx="17.405779"
|
||||||
|
cy="56.631001"
|
||||||
|
rx="13.192164"
|
||||||
|
ry="12.82563"
|
||||||
|
inkscape:label="PinkShadow" /></g></g><g
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
id="layer3"
|
||||||
inkscape:label="Triangle"
|
inkscape:label="Triangle"
|
||||||
inkscape:highlight-color="#63f1ac" /><g
|
|
||||||
id="g2"
|
|
||||||
inkscape:label="Note"
|
|
||||||
inkscape:highlight-color="#cd83d1"
|
|
||||||
style="display:inline"
|
style="display:inline"
|
||||||
transform="matrix(2.7245762,0,0,2.7245762,-0.727061,-0.45814532)"><path
|
transform="translate(-8.2557827e-7,-4.0269466)"><path
|
||||||
class="cls-3"
|
style="display:inline;opacity:1;fill:url(#linearGradient11);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.259992"
|
||||||
d="m 75.878174,16.745645 -35.103043,5.131739 c -2.030197,0.167812 -3.713499,1.640195 -4.15,3.63 l -7.866957,32.818261 9.1,2.54 5.57,-25.39 34.976417,-1.258429 2.393583,-11.891571 c 0.639218,-3.037435 -1.82643,-5.83384 -4.92,-5.58 z"
|
d="m 22.218965,75.602081 c 0,0 -6.950756,2.380404 -9.589872,-0.608616 -1.728726,-1.957929 -0.484322,-6.807219 -0.0197,-9.468016 l 8.504099,-48.700805 c 0.310975,-1.780874 0.640452,-4.794159 1.620182,-6.298585 1.027058,-1.5770994 2.499747,-1.7299186 3.790652,-1.4351634 1.654175,0.3777014 3.840283,2.1984504 5.148565,3.2964234 l 43.836532,36.789713 c 0.965625,0.810398 2.6185,2.087358 3.254187,3.169659 1.630059,2.775289 -2.028391,4.004274 -2.028391,4.004274"
|
||||||
id="path105"
|
id="path19"
|
||||||
inkscape:label="Note_Pink"
|
inkscape:label="Triangle"
|
||||||
style="fill:url(#linearGradient7);fill-opacity:1"
|
sodipodi:nodetypes="cccccc"
|
||||||
sodipodi:nodetypes="ccccccccc" /><path
|
inkscape:original-d="m 22.218965,75.602081 c 0,0 -12.006634,4.111875 -10.450848,-5.258833 l 9.908449,-56.743162 c 1.312406,-8.0067219 7.627475,-3.200823 7.627475,-3.200823 l 47.953804,40.245125 c 4.615733,3.980446 -0.522622,5.706577 -0.522622,5.706577"
|
||||||
class="cls-4"
|
inkscape:path-effect="#path-effect22" /></g><g
|
||||||
d="m 75.913174,16.740645 -3.991175,0.583356 -10.268825,50.186644 9.42,2.62 9.76,-47.81 c 0.639218,-3.037435 -1.82643,-5.83384 -4.92,-5.58 z"
|
inkscape:groupmode="layer"
|
||||||
id="path106"
|
id="layer2"
|
||||||
style="fill:url(#linear-gradient);fill-opacity:1"
|
inkscape:label="Bar"
|
||||||
inkscape:label="Note_Green"
|
style="display:inline"
|
||||||
sodipodi:nodetypes="cccccc" /></g><g
|
transform="translate(-8.2557827e-7,-4.0269466)"><path
|
||||||
id="g1"
|
style="display:inline;fill:url(#linearGradient9);fill-opacity:1;stroke-width:0.259992"
|
||||||
|
d="m 52.034699,52.426363 7.684364,-38.2012 4.268264,-0.466783 c 0,0 4.929931,-0.411035 3.71745,4.995489 -0.766575,3.418217 -9.075678,44.356227 -9.075678,44.356227 l -8.080588,-5.061379 z"
|
||||||
|
id="path3"
|
||||||
|
inkscape:label="NoteGreen"
|
||||||
|
sodipodi:nodetypes="cccsccc" /><path
|
||||||
|
style="display:inline;fill:url(#linearGradient5);fill-opacity:1;fill-rule:evenodd;stroke-width:0.259992"
|
||||||
|
d="m 21.927329,46.536934 c 5.289375,-26.157452 5.307829,-26.194282 5.307829,-26.194282 0,0 0.689857,-2.72542 4.965386,-3.072703 5.010956,-0.407019 27.518519,-3.044786 27.518519,-3.044786 l -3.13807,15.600254 -23.017533,0.481335 -2.8902,15.853533 -0.808158,5.964758 -8.533619,-1.849011 z"
|
||||||
|
id="path2"
|
||||||
|
inkscape:label="NotePink"
|
||||||
|
sodipodi:nodetypes="ccsccccccc" /></g><g
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
id="layer1"
|
||||||
inkscape:label="Mochi"
|
inkscape:label="Mochi"
|
||||||
inkscape:highlight-color="#2b2def"
|
|
||||||
style="display:inline"
|
style="display:inline"
|
||||||
transform="matrix(2.7245762,0,0,2.7245762,-0.727061,-0.45814532)"><path
|
transform="translate(-8.2557827e-7,-4.0269466)"><rect
|
||||||
class="cls-5"
|
style="display:inline;fill:#cdb999;fill-opacity:1;stroke-width:0.26443"
|
||||||
d="m 76.103174,72.000645 h -0.28 l -68.3200003,-5.38 a 3.5107869,3.5107869 0 1 1 0.55,-7 l 68.2700003,5.37 a 3.5026026,3.5026026 0 0 1 -0.27,7 z"
|
id="rect2"
|
||||||
id="path107"
|
width="64.553551"
|
||||||
style="display:inline"
|
height="6.0538921"
|
||||||
inkscape:label="Stick background" /><circle
|
x="7.1946254"
|
||||||
class="cls-3"
|
y="51.202484"
|
||||||
cx="24.383171"
|
rx="2.8693211"
|
||||||
cy="64.810646"
|
ry="3.22065"
|
||||||
id="circle107"
|
transform="matrix(0.99512767,0.09859469,-0.10044971,0.99494214,0,0)"
|
||||||
inkscape:label="Pink Mochi"
|
inkscape:label="StickThrough" /><ellipse
|
||||||
style="display:inline"
|
style="display:inline;fill:url(#linearGradient7);fill-opacity:1;stroke-width:0.259992;image-rendering:auto"
|
||||||
r="12.28" /><circle
|
id="path1"
|
||||||
class="cls-2"
|
cx="16.844515"
|
||||||
cx="41.91317"
|
cy="56.350365"
|
||||||
cy="65.810646"
|
inkscape:label="Red"
|
||||||
id="circle108"
|
rx="11.368"
|
||||||
inkscape:label="White Mochi"
|
ry="11.367975" /><circle
|
||||||
style="display:inline;fill:url(#linearGradient14);fill-opacity:1;stroke-width:0.955184"
|
style="display:inline;fill:url(#linearGradient3);fill-opacity:1;stroke-width:0.259992;image-rendering:auto"
|
||||||
r="11.729665" /><circle
|
id="path1-8"
|
||||||
class="cls-6"
|
cx="31.268473"
|
||||||
cx="59.253174"
|
cy="57.846817"
|
||||||
cy="66.810646"
|
r="11.367975"
|
||||||
id="circle109"
|
inkscape:label="White" /><circle
|
||||||
inkscape:label="Green Mochi"
|
style="display:inline;fill:url(#linearGradient20);fill-opacity:1;stroke-width:0.259992;image-rendering:auto"
|
||||||
r="12.28" /><path
|
id="path1-8-3"
|
||||||
class="cls-5"
|
cx="48.112869"
|
||||||
d="m 82.243613,72.467867 h -0.27 l -13.32,-1.001835 a 3.5107869,3.5172298 0 1 1 0.55,-7.012846 l 13.31,1.001835 a 3.5026026,3.5090305 0 0 1 -0.27,7.012846 z"
|
cy="58.792713"
|
||||||
id="path109"
|
r="11.367975"
|
||||||
inkscape:label="Stick foreground"
|
inkscape:label="Green" /><rect
|
||||||
style="display:inline;stroke-width:1.00092" /></g></svg>
|
style="display:inline;fill:#cdb999;fill-opacity:1;stroke-width:0.26443"
|
||||||
|
id="rect2-7"
|
||||||
|
width="12.501794"
|
||||||
|
height="6.0538902"
|
||||||
|
x="55.625816"
|
||||||
|
y="51.207592"
|
||||||
|
rx="2.3237922"
|
||||||
|
ry="2.8723087"
|
||||||
|
transform="matrix(0.99512767,0.09859469,-0.10044971,0.99494214,0,0)"
|
||||||
|
inkscape:label="StickUpper" /><rect
|
||||||
|
style="display:inline;fill:#bca478;fill-opacity:1;stroke-width:0.26443"
|
||||||
|
id="rect2-7-6"
|
||||||
|
width="4.7050209"
|
||||||
|
height="6.0538902"
|
||||||
|
x="75.220451"
|
||||||
|
y="38.661915"
|
||||||
|
rx="2.3472202"
|
||||||
|
ry="2.9820588"
|
||||||
|
transform="matrix(0.96396568,0.26602665,-0.26782328,0.96346805,0,0)"
|
||||||
|
inkscape:label="StickEnd" /></g><metadata
|
||||||
|
id="metadata1"><rdf:RDF><cc:Work
|
||||||
|
rdf:about=""><dc:title>Dango Music Player</dc:title></cc:Work></rdf:RDF></metadata></svg>
|
||||||
|
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 16 KiB |
|
@ -2,7 +2,6 @@
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<meta name="darkreader-lock">
|
|
||||||
<title>G2's Website</title>
|
<title>G2's Website</title>
|
||||||
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
|
|
@ -1,57 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<meta charset="utf-8">
|
|
||||||
<title>G2's Website</title>
|
|
||||||
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
||||||
<meta name="author" content="G2">
|
|
||||||
<meta name="description" content="Projects, Blog, & More! A place for personal things.">
|
|
||||||
<meta name="theme-color" content="#2ec2c2">
|
|
||||||
<meta property="og:title" content="G2's Website">
|
|
||||||
<meta property="og:description" content="Projects, Blog, & More!
|
|
||||||
A place for personal projects and things. Enjoy!">
|
|
||||||
<meta property="og:image" content="/assets/shell3.png">
|
|
||||||
<meta name="twitter:title" content="G2's Website">
|
|
||||||
<link rel="icon" href="https://g2games.dev/icon.webp">
|
|
||||||
|
|
||||||
<!-- Selfhosted Analytics -->
|
|
||||||
<script data-goatcounter="https://resize.g2games.dev/count"
|
|
||||||
async src="//resize.g2games.dev/count.js"></script>
|
|
||||||
|
|
||||||
<!-- The Stylesheet -->
|
|
||||||
<link rel="stylesheet" href="/assets/main-style.css">
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<header>
|
|
||||||
<a href="/"><h1>G2 Games</h1></a>
|
|
||||||
<ul class="navigation">
|
|
||||||
<a href="/"><li>Home</li></a>
|
|
||||||
<a href="/random"><li>Random</li></a>
|
|
||||||
<a href="/portfolio"><li>Portfolio</li></a>
|
|
||||||
<a href="/blog"><li>Blog</li></a>
|
|
||||||
</ul>
|
|
||||||
</header>
|
|
||||||
|
|
||||||
<main>
|
|
||||||
<h2 class="sep center">LUCA System</h2>
|
|
||||||
<section class="centered">
|
|
||||||
<p>This page describes the various file formats used in the LUCA System <a href="https://en.wikipedia.org/wiki/Visual_novel">visual novel</a> engine made by <a href="https://en.wikipedia.org/wiki/Prototype_(company)">Prototype</a>.</p>
|
|
||||||
<p>A few programs which are capable of manipulating these files include <a href="https://github.com/wetor/LuckSystem">LuckSystem</a> by wetor, <a href="https://github.com/morkt/GARbro">GARbro</a> by morkt, <a href="https://github.com/YuriSizuku/GalgameReverse">GalgameReverse</a> by YuriSizuku, and <a href="https://github.com/G2-Games/lbee-utils/">lbee-utils</a> by G2.</p>
|
|
||||||
</section>
|
|
||||||
<section>
|
|
||||||
<h3>CZ Images</h3>
|
|
||||||
<p>Images in LUCA System are stored in files which are known as CZ# files (eg. CZ1, CZ3) due to the magic bytes in the file header. These formats are proprietary, and cannot be read or manipulated by regular image viewing or editing software.</p>
|
|
||||||
</section>
|
|
||||||
<section>
|
|
||||||
|
|
||||||
</section>
|
|
||||||
</main>
|
|
||||||
|
|
||||||
<footer>
|
|
||||||
<p>©2024 G2</p>
|
|
||||||
<p>Powered by <a href="https://developer.mozilla.org/en-US/docs/Glossary/HTML"><img class="icon" src="https://upload.wikimedia.org/wikipedia/commons/3/38/HTML5_Badge.svg"></a> and <a href="https://developer.mozilla.org/en-US/docs/Glossary/CSS"><img class="icon" src="https://upload.wikimedia.org/wikipedia/commons/6/62/CSS3_logo.svg"></a></p>
|
|
||||||
</footer>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
|
|
Loading…
Reference in a new issue