Implement offline rendering, default to pre-render
@ -1,57 +1,105 @@
|
||||
import React, { useEffect, useRef } from "react";
|
||||
import { Renderer } from "./0-utility";
|
||||
import React, { useEffect, useRef, useState } from "react";
|
||||
import { DEFAULT_SIZE, RenderParams, Renderer } from "./0-utility.js";
|
||||
import { paramsGasket } from "./1-gasket.js";
|
||||
import { paramsBaseline } from "./2a-baseline.js";
|
||||
import { paramsPost } from "./2b-post.js";
|
||||
import { paramsFinal } from "./2c-final.js";
|
||||
import { paramsBinary } from "./3a-binary.js";
|
||||
import { paramsLinear } from "./3b-linear.js";
|
||||
import { paramsLogarithmic } from "./3c-logarithmic.js";
|
||||
import { paramsColor } from "./4-color.js";
|
||||
import { paramsGasketFlame } from "./5a-gasket.js";
|
||||
import { paramsSolo1, paramsSolo2, paramsSolo3 } from "./5b-solo.js";
|
||||
|
||||
export type CanvasParams = {
|
||||
defaultUrl: string;
|
||||
size: number;
|
||||
qualityMax: number;
|
||||
qualityStep: number;
|
||||
renderer: (size: number) => Renderer;
|
||||
};
|
||||
import urlGasket from "./images/1-gasket.png";
|
||||
import urlBaseline from "./images/2a-baseline.png";
|
||||
import urlPost from "./images/2b-post.png";
|
||||
import urlFinal from "./images/2c-final.png";
|
||||
import urlBinary from "./images/3a-binary.png";
|
||||
import urlLinear from "./images/3b-linear.png";
|
||||
import urlLogarithmic from "./images/3c-logarithmic.png";
|
||||
import urlColor from "./images/4-color.png";
|
||||
import urlGasketFlame from "./images/5a-gasket.png";
|
||||
import urlSolo1 from "./images/5b-solo1.png";
|
||||
import urlSolo2 from "./images/5b-solo2.png";
|
||||
import urlSolo3 from "./images/5b-solo3.png";
|
||||
|
||||
export const CanvasRenderer: React.FC<{ params: CanvasParams }> = ({
|
||||
params,
|
||||
}) => {
|
||||
export const DEFAULT_STEP: number = 0.1;
|
||||
|
||||
export type CanvasParams = RenderParams & { url: string };
|
||||
|
||||
export const CanvasRenderer: React.FC<CanvasParams> = (params) => {
|
||||
const canvasRef = useRef<HTMLCanvasElement | null>(null);
|
||||
const [useUrl, setUseUrl] = useState(true);
|
||||
|
||||
var qualityCurrent: number = 0;
|
||||
var rendererCurrent: Renderer = params.renderer(params.size);
|
||||
var rendererCurrent: Renderer = params.renderer(DEFAULT_SIZE);
|
||||
|
||||
const animate = () => {
|
||||
const ctx = canvasRef.current?.getContext("2d");
|
||||
if (!ctx) {
|
||||
console.log("Ref not ready");
|
||||
requestAnimationFrame(animate);
|
||||
return;
|
||||
}
|
||||
|
||||
const image = ctx.createImageData(params.size, params.size);
|
||||
rendererCurrent.run(params.qualityStep);
|
||||
const image = ctx.createImageData(DEFAULT_SIZE, DEFAULT_SIZE);
|
||||
rendererCurrent.run(DEFAULT_STEP);
|
||||
rendererCurrent.render(image);
|
||||
ctx.putImageData(image, 0, 0);
|
||||
|
||||
if (qualityCurrent < params.qualityMax) {
|
||||
qualityCurrent += params.qualityStep;
|
||||
if (qualityCurrent < params.quality) {
|
||||
qualityCurrent += DEFAULT_STEP;
|
||||
requestAnimationFrame(animate);
|
||||
}
|
||||
};
|
||||
|
||||
const useCanvas = () => {
|
||||
setUseUrl(false);
|
||||
requestAnimationFrame(animate);
|
||||
};
|
||||
|
||||
const reset = () => {
|
||||
qualityCurrent = 0;
|
||||
rendererCurrent = params.renderer(params.size);
|
||||
rendererCurrent = params.renderer(DEFAULT_SIZE);
|
||||
requestAnimationFrame(animate);
|
||||
};
|
||||
|
||||
useEffect(() => {
|
||||
if (canvasRef.current) {
|
||||
requestAnimationFrame(animate);
|
||||
}
|
||||
}, []);
|
||||
|
||||
return (
|
||||
<>
|
||||
<img src={params.url} onClick={useCanvas} hidden={!useUrl} />
|
||||
<canvas
|
||||
ref={canvasRef}
|
||||
width={params.size}
|
||||
height={params.size}
|
||||
width={DEFAULT_SIZE}
|
||||
height={DEFAULT_SIZE}
|
||||
onClick={reset}
|
||||
hidden={useUrl}
|
||||
/>
|
||||
</>
|
||||
);
|
||||
};
|
||||
|
||||
export const CanvasGasket: React.FC<{}> = () =>
|
||||
CanvasRenderer({ url: urlGasket, ...paramsGasket });
|
||||
export const CanvasBaseline: React.FC<{}> = () =>
|
||||
CanvasRenderer({ url: urlBaseline, ...paramsBaseline });
|
||||
export const CanvasPost: React.FC<{}> = () =>
|
||||
CanvasRenderer({ url: urlPost, ...paramsPost });
|
||||
export const CanvasFinal: React.FC<{}> = () =>
|
||||
CanvasRenderer({ url: urlFinal, ...paramsFinal });
|
||||
export const CanvasBinary: React.FC<{}> = () =>
|
||||
CanvasRenderer({ url: urlBinary, ...paramsBinary });
|
||||
export const CanvasLinear: React.FC<{}> = () =>
|
||||
CanvasRenderer({ url: urlLinear, ...paramsLinear });
|
||||
export const CanvasLogarithmic: React.FC<{}> = () =>
|
||||
CanvasRenderer({ url: urlLogarithmic, ...paramsLogarithmic });
|
||||
export const CanvasColor: React.FC<{}> = () =>
|
||||
CanvasRenderer({ url: urlColor, ...paramsColor });
|
||||
export const CanvasGasketFlame: React.FC<{}> = () =>
|
||||
CanvasRenderer({ url: urlGasketFlame, ...paramsGasketFlame });
|
||||
export const CanvasSolo1: React.FC<{}> = () =>
|
||||
CanvasRenderer({ url: urlSolo1, ...paramsSolo1 });
|
||||
export const CanvasSolo2: React.FC<{}> = () =>
|
||||
CanvasRenderer({ url: urlSolo2, ...paramsSolo2 });
|
||||
export const CanvasSolo3: React.FC<{}> = () =>
|
||||
CanvasRenderer({ url: urlSolo3, ...paramsSolo3 });
|
||||
|
@ -1,3 +1,5 @@
|
||||
export const DEFAULT_SIZE: number = 400;
|
||||
|
||||
/**
|
||||
* Image render manager
|
||||
*
|
||||
@ -28,7 +30,10 @@ export abstract class Renderer {
|
||||
abstract render(image: ImageData): void;
|
||||
}
|
||||
|
||||
export type renderFn = (image: ImageData) => void;
|
||||
export type RenderParams = {
|
||||
quality: number;
|
||||
renderer: (size: number) => Renderer;
|
||||
};
|
||||
|
||||
/**
|
||||
* @returns random number in the bi-unit square (-1, 1)
|
||||
|
@ -1,11 +1,11 @@
|
||||
import { CanvasParams } from "./0-canvas";
|
||||
import {
|
||||
randomBiUnit,
|
||||
randomInteger,
|
||||
imageIndex,
|
||||
Renderer,
|
||||
histIndex,
|
||||
} from "./0-utility";
|
||||
RenderParams,
|
||||
} from "./0-utility.js";
|
||||
|
||||
type Transform = (x: number, y: number) => [number, number];
|
||||
|
||||
@ -89,6 +89,7 @@ export class RendererGasket extends Renderer {
|
||||
}
|
||||
}
|
||||
|
||||
export function buildGasket(size: number) {
|
||||
return new RendererGasket(size);
|
||||
}
|
||||
export const paramsGasket: RenderParams = {
|
||||
quality: 1,
|
||||
renderer: (size) => new RendererGasket(size),
|
||||
};
|
||||
|
@ -1,10 +1,11 @@
|
||||
import {
|
||||
RenderParams,
|
||||
Renderer,
|
||||
histIndex,
|
||||
imageIndex,
|
||||
randomBiUnit,
|
||||
weightedChoice,
|
||||
} from "./0-utility";
|
||||
} from "./0-utility.js";
|
||||
|
||||
export type Variation = (
|
||||
x: number,
|
||||
@ -216,6 +217,7 @@ export const transformAll: [number, Transform][] = [
|
||||
[transform3Weight, transform3],
|
||||
];
|
||||
|
||||
export function buildBaseline(size: number) {
|
||||
return new RendererFlame(size, transformAll);
|
||||
}
|
||||
export const paramsBaseline: RenderParams = {
|
||||
quality: 1,
|
||||
renderer: (size) => new RendererFlame(size, transformAll),
|
||||
};
|
@ -1,4 +1,4 @@
|
||||
import { randomBiUnit, weightedChoice } from "./0-utility";
|
||||
import { RenderParams } from "./0-utility.js";
|
||||
import {
|
||||
Coefs,
|
||||
Variation,
|
||||
@ -11,7 +11,7 @@ import {
|
||||
transform3,
|
||||
identityCoefs,
|
||||
RendererFlame,
|
||||
} from "./2a-variations";
|
||||
} from "./2a-baseline.js";
|
||||
|
||||
export class TransformPost extends Transform {
|
||||
constructor(
|
||||
@ -62,6 +62,7 @@ export const transformAllPost: [number, TransformPost][] = [
|
||||
[transform3Weight, transform3Post],
|
||||
];
|
||||
|
||||
export function buildPost(size: number) {
|
||||
return new RendererFlame(size, transformAllPost);
|
||||
}
|
||||
export const paramsPost: RenderParams = {
|
||||
quality: 1,
|
||||
renderer: (size) => new RendererFlame(size, transformAllPost),
|
||||
};
|
||||
|
@ -1,18 +1,6 @@
|
||||
import { julia, identityCoefs, RendererFlame } from "./2a-variations";
|
||||
import { TransformPost, transformAllPost } from "./2b-post";
|
||||
|
||||
export const transformFinal = new TransformPost(
|
||||
{
|
||||
a: 2,
|
||||
b: 0,
|
||||
c: 0,
|
||||
d: 0,
|
||||
e: 2,
|
||||
f: 0,
|
||||
},
|
||||
[[1, julia]],
|
||||
identityCoefs
|
||||
);
|
||||
import { RenderParams } from "./0-utility.js";
|
||||
import { julia, identityCoefs, RendererFlame } from "./2a-baseline.js";
|
||||
import { TransformPost, transformAllPost } from "./2b-post.js";
|
||||
|
||||
export class RendererFinal extends RendererFlame {
|
||||
constructor(
|
||||
@ -28,6 +16,20 @@ export class RendererFinal extends RendererFlame {
|
||||
}
|
||||
}
|
||||
|
||||
export function buildFinal(size: number) {
|
||||
return new RendererFinal(size, transformAllPost, transformFinal);
|
||||
}
|
||||
export const transformFinal = new TransformPost(
|
||||
{
|
||||
a: 2,
|
||||
b: 0,
|
||||
c: 0,
|
||||
d: 0,
|
||||
e: 2,
|
||||
f: 0,
|
||||
},
|
||||
[[1, julia]],
|
||||
identityCoefs
|
||||
);
|
||||
|
||||
export const paramsFinal: RenderParams = {
|
||||
quality: 1,
|
||||
renderer: (size) => new RendererFinal(size, transformAllPost, transformFinal),
|
||||
};
|
||||
|
@ -1,17 +1,18 @@
|
||||
import { histIndex, imageIndex } from "./0-utility";
|
||||
import { RenderParams, histIndex, imageIndex } from "./0-utility.js";
|
||||
import {
|
||||
camera,
|
||||
transform1Weight,
|
||||
transform2Weight,
|
||||
transform3Weight,
|
||||
} from "./2a-variations";
|
||||
} from "./2a-baseline.js";
|
||||
import {
|
||||
TransformPost,
|
||||
transform1Post,
|
||||
transform2Post,
|
||||
transform3Post,
|
||||
} from "./2b-post";
|
||||
import { RendererFinal, transformFinal } from "./2c-final";
|
||||
transformAllPost,
|
||||
} from "./2b-post.js";
|
||||
import { RendererFinal, transformFinal } from "./2c-final.js";
|
||||
|
||||
export class RendererHistogram extends RendererFinal {
|
||||
protected histogram: number[] = [];
|
||||
@ -59,14 +60,8 @@ export class RendererHistogram extends RendererFinal {
|
||||
}
|
||||
}
|
||||
|
||||
export function buildBinary(size: number) {
|
||||
return new RendererHistogram(
|
||||
size,
|
||||
[
|
||||
[transform1Weight, transform1Post],
|
||||
[transform2Weight, transform2Post],
|
||||
[transform3Weight, transform3Post],
|
||||
],
|
||||
transformFinal
|
||||
);
|
||||
}
|
||||
export const paramsBinary: RenderParams = {
|
||||
quality: 1,
|
||||
renderer: (size) =>
|
||||
new RendererHistogram(size, transformAllPost, transformFinal),
|
||||
};
|
||||
|
@ -1,11 +1,14 @@
|
||||
import { histIndex, imageIndex } from "./0-utility";
|
||||
import { transformAllPost } from "./2b-post";
|
||||
import { transformFinal } from "./2c-final";
|
||||
import { RendererHistogram } from "./3a-binary";
|
||||
import { RenderParams, histIndex, imageIndex } from "./0-utility.js";
|
||||
import { transformAllPost } from "./2b-post.js";
|
||||
import { transformFinal } from "./2c-final.js";
|
||||
import { RendererHistogram } from "./3a-binary.js";
|
||||
|
||||
class RendererLinear extends RendererHistogram {
|
||||
render(image: ImageData): void {
|
||||
const maxHistogram = Math.max(...this.histogram);
|
||||
const maxHistogram = this.histogram.reduce(
|
||||
(max, v) => Math.max(max, v),
|
||||
-Infinity
|
||||
);
|
||||
|
||||
for (var x = 0; x < this.size; x++) {
|
||||
for (var y = 0; y < this.size; y++) {
|
||||
@ -20,6 +23,8 @@ class RendererLinear extends RendererHistogram {
|
||||
}
|
||||
}
|
||||
|
||||
export function buildLinear(size: number) {
|
||||
return new RendererLinear(size, transformAllPost, transformFinal);
|
||||
}
|
||||
export const paramsLinear: RenderParams = {
|
||||
quality: 10,
|
||||
renderer: (size) =>
|
||||
new RendererLinear(size, transformAllPost, transformFinal),
|
||||
};
|
||||
|
@ -1,13 +1,16 @@
|
||||
import { histIndex, imageIndex } from "./0-utility";
|
||||
import { transformAllPost } from "./2b-post";
|
||||
import { transformFinal } from "./2c-final";
|
||||
import { RendererHistogram } from "./3a-binary";
|
||||
import { RenderParams, histIndex, imageIndex } from "./0-utility.js";
|
||||
import { transformAllPost } from "./2b-post.js";
|
||||
import { transformFinal } from "./2c-final.js";
|
||||
import { RendererHistogram } from "./3a-binary.js";
|
||||
|
||||
export class RendererLogarithmic extends RendererHistogram {
|
||||
render(image: ImageData): void {
|
||||
// Because log(0) is -Infinity, all the math actually works out.
|
||||
const histogramLog = this.histogram.map(Math.log);
|
||||
const histogramLogMax = Math.max(...histogramLog);
|
||||
const histogramLogMax = histogramLog.reduce(
|
||||
(max, v) => Math.max(max, v),
|
||||
-Infinity
|
||||
);
|
||||
|
||||
for (var x = 0; x < this.size; x++) {
|
||||
for (var y = 0; y < this.size; y++) {
|
||||
@ -23,6 +26,8 @@ export class RendererLogarithmic extends RendererHistogram {
|
||||
}
|
||||
}
|
||||
|
||||
export function buildLogarithmic(size: number) {
|
||||
return new RendererLogarithmic(size, transformAllPost, transformFinal);
|
||||
}
|
||||
export const paramsLogarithmic: RenderParams = {
|
||||
quality: 10,
|
||||
renderer: (size) =>
|
||||
new RendererLogarithmic(size, transformAllPost, transformFinal),
|
||||
};
|
||||
|
@ -1,4 +1,9 @@
|
||||
import { histIndex, imageIndex, weightedChoice } from "./0-utility";
|
||||
import {
|
||||
RenderParams,
|
||||
histIndex,
|
||||
imageIndex,
|
||||
weightedChoice,
|
||||
} from "./0-utility.js";
|
||||
import {
|
||||
Coefs,
|
||||
Variation,
|
||||
@ -6,14 +11,14 @@ import {
|
||||
transform1Weight,
|
||||
transform2Weight,
|
||||
transform3Weight,
|
||||
} from "./2a-variations";
|
||||
} from "./2a-baseline.js";
|
||||
import {
|
||||
TransformPost,
|
||||
transform1Post,
|
||||
transform2Post,
|
||||
transform3Post,
|
||||
} from "./2b-post";
|
||||
import { RendererFinal, transformFinal } from "./2c-final";
|
||||
} from "./2b-post.js";
|
||||
import { RendererFinal, transformFinal } from "./2c-final.js";
|
||||
|
||||
export class TransformColor extends TransformPost {
|
||||
constructor(
|
||||
@ -171,8 +176,10 @@ export const paletteBytes = hexToBytes(paletteHex);
|
||||
*/
|
||||
export const paletteNumber = paletteBytes.map((b) => b / 0xff);
|
||||
|
||||
export function buildColor(size: number) {
|
||||
return new RendererColor(
|
||||
export const paramsColor: RenderParams = {
|
||||
quality: 30,
|
||||
renderer: (size) =>
|
||||
new RendererColor(
|
||||
size,
|
||||
[
|
||||
[transform1Weight, transform1Color],
|
||||
@ -181,5 +188,5 @@ export function buildColor(size: number) {
|
||||
],
|
||||
transformFinalColor,
|
||||
paletteNumber
|
||||
);
|
||||
}
|
||||
),
|
||||
};
|
||||
|
@ -1,5 +1,5 @@
|
||||
import { RendererFlame, Transform, linear } from "./2a-variations";
|
||||
import { RendererLogarithmic } from "./3c-logarithmic";
|
||||
import { RenderParams } from "./0-utility.js";
|
||||
import { RendererFlame, Transform, linear } from "./2a-baseline.js";
|
||||
|
||||
export const transformGasket1 = new Transform(
|
||||
{
|
||||
@ -43,6 +43,7 @@ export const transformGasket: [number, Transform][] = [
|
||||
[1 / 3, transformGasket3],
|
||||
];
|
||||
|
||||
export function buildGasketFlame(size: number) {
|
||||
return new RendererFlame(size, transformGasket);
|
||||
}
|
||||
export const paramsGasketFlame: RenderParams = {
|
||||
quality: 1,
|
||||
renderer: (size) => new RendererFlame(size, transformGasket),
|
||||
};
|
||||
|
@ -1,7 +1,7 @@
|
||||
import { weightedChoice } from "./0-utility";
|
||||
import { TransformPost, transformAllPost } from "./2b-post";
|
||||
import { transformFinal } from "./2c-final";
|
||||
import { RendererLogarithmic } from "./3c-logarithmic";
|
||||
import { RenderParams, weightedChoice } from "./0-utility.js";
|
||||
import { TransformPost, transformAllPost } from "./2b-post.js";
|
||||
import { transformFinal } from "./2c-final.js";
|
||||
import { RendererLogarithmic } from "./3c-logarithmic.js";
|
||||
|
||||
export class RendererSolo extends RendererLogarithmic {
|
||||
constructor(
|
||||
@ -27,14 +27,20 @@ export class RendererSolo extends RendererLogarithmic {
|
||||
}
|
||||
}
|
||||
|
||||
export function buildSolo1(size: number) {
|
||||
return new RendererSolo(size, transformAllPost, transformFinal, 0);
|
||||
}
|
||||
export const paramsSolo1: RenderParams = {
|
||||
quality: 10,
|
||||
renderer: (size) =>
|
||||
new RendererSolo(size, transformAllPost, transformFinal, 0),
|
||||
};
|
||||
|
||||
export function buildSolo2(size: number) {
|
||||
return new RendererSolo(size, transformAllPost, transformFinal, 1);
|
||||
}
|
||||
export const paramsSolo2: RenderParams = {
|
||||
quality: 10,
|
||||
renderer: (size) =>
|
||||
new RendererSolo(size, transformAllPost, transformFinal, 1),
|
||||
};
|
||||
|
||||
export function buildSolo3(size: number) {
|
||||
return new RendererSolo(size, transformAllPost, transformFinal, 2);
|
||||
}
|
||||
export const paramsSolo3: RenderParams = {
|
||||
quality: 10,
|
||||
renderer: (size) =>
|
||||
new RendererSolo(size, transformAllPost, transformFinal, 2),
|
||||
};
|
||||
|
@ -1,230 +0,0 @@
|
||||
<Flames name="baseline">
|
||||
<flame name="dependent" version="Apophysis 2.08 beta" size="555 428" center="0 0" scale="138.75" oversample="1" filter="0.2" quality="1" background="0 0 0" brightness="4" gamma="4" >
|
||||
<xform weight="0.5" color="0" linear="1" disc="-0.934" coefs="0.982996 0 0 0.982996 -0.219512 -0.1875" />
|
||||
<xform weight="0.5" color="0" swirl="0.156" polar="0.778" coefs="0.966511 0.256624 -0.256624 0.966511 0.050305 -0.235518" />
|
||||
<palette count="256" format="RGB">
|
||||
7886955967864652763240672432611E2D5D192757172255
|
||||
11224F0D1D410F1A39101E350F202C0F1F23101B1E0C161C
|
||||
08151A060E14040A12040D13050D12060C11050D12050D11
|
||||
050B0F05080F05080D04080C04080E050912040A18030C25
|
||||
0410350616450A1E560F2362122768172B63192B5D162959
|
||||
13234F1020420B1E3C0B1B380D19300E1A280D18200C191E
|
||||
0D1C200F1C1E0D1A1D0A171E0B171C0B1119070A15040611
|
||||
03050E01050C00060C01060C03090D061213081516071012
|
||||
0813160B1420081022060C24050926040728020528010429
|
||||
00042F060B3B0C124717255A22396D3B4E815564955D6F9B
|
||||
667AA28593AC7A8799707B875F6A784F59694751643F4A60
|
||||
2633602534622536651D3162162D60162B5D16295B15275E
|
||||
182B6324386D3F517F5A6B927686A992A1C1A5B1CAB8C2D4
|
||||
E4EAF3EEF3F8F9FCFDFBFCFDFEFCFDFEFCFDFEFDFDFCFDFF
|
||||
F5F7FBE1E6EED2D6E2C3C7D6B9BFD5AFB8D5B2B8D3B6B9D2
|
||||
CCD1E6DADEEAE8EBEEE3EAEFDFEAF1D8E3EBD1DDE6BACAD8
|
||||
9DB0D28199BF7790B56E87AC6C84A66B82A05C72934A5B7B
|
||||
2935531F2D451626381525351524321625341727371A2B44
|
||||
2536563B4D8955689E6F84B37A90BF869DCCA3B6D7B9C6DF
|
||||
CAD6E7C5CDDDC0C4D3BCC1CDB9BFC7B1B6C0ACB3BFB2BBC1
|
||||
BCC2C6D8DEE1E2E7EBECF0F5EDF1F6EFF3F8E9EFF7DDE3EF
|
||||
BAC0D8ABB1D19CA3CA98A1CA949FCB8E9BD097A2D5A9B3E2
|
||||
BBC6EADFE4F4E3EAF7E8F1FBE8F3FADEE9EECAD8E4B3C3D9
|
||||
8D9AAB808DA474809E737D9A737B977178925F6D9A4E5E95
|
||||
4552841B2D611524540F1C47091236080F2A080D22070C20
|
||||
11162D151E3A1A26482332532C3E5E42567557688B71839F
|
||||
8C9AB0BDC6C9BEC7C9C0C9CAC9C9C6C7CAC4B4BFB9A9AEA9
|
||||
9499A09198A08E97A1929C9D939FA08F9CA5899397767F82
|
||||
586873343A51272F491B2542141B360E142C0A0F250B0D20
|
||||
0B12270E152E1119351721461D2A5622316127387126397C
|
||||
22367C253581222F7E1D2C7722317E333B824A5289636FA2
|
||||
ACB3D0BAC1DAC8D0E4D5E1E7D8E3E2D0DBDBB7C8C69AA8AC
|
||||
</palette>
|
||||
</flame>
|
||||
<flame name="baseline" version="Apophysis 2.08 beta" size="555 428" center="0 0" scale="138.75" oversample="1" filter="0.2" quality="1" background="0 0 0" brightness="4" gamma="4" >
|
||||
<xform weight="0.5" color="0" linear="1" disc="-0.934" coefs="0.982996 0 0 0.982996 -0.219512 -0.1875" />
|
||||
<xform weight="0.5" color="0" swirl="0.156" polar="0.778" coefs="0.966511 0.256624 -0.256624 0.966511 0.050305 -0.235518" />
|
||||
<palette count="256" format="RGB">
|
||||
7886955967864652763240672432611E2D5D192757172255
|
||||
11224F0D1D410F1A39101E350F202C0F1F23101B1E0C161C
|
||||
08151A060E14040A12040D13050D12060C11050D12050D11
|
||||
050B0F05080F05080D04080C04080E050912040A18030C25
|
||||
0410350616450A1E560F2362122768172B63192B5D162959
|
||||
13234F1020420B1E3C0B1B380D19300E1A280D18200C191E
|
||||
0D1C200F1C1E0D1A1D0A171E0B171C0B1119070A15040611
|
||||
03050E01050C00060C01060C03090D061213081516071012
|
||||
0813160B1420081022060C24050926040728020528010429
|
||||
00042F060B3B0C124717255A22396D3B4E815564955D6F9B
|
||||
667AA28593AC7A8799707B875F6A784F59694751643F4A60
|
||||
2633602534622536651D3162162D60162B5D16295B15275E
|
||||
182B6324386D3F517F5A6B927686A992A1C1A5B1CAB8C2D4
|
||||
E4EAF3EEF3F8F9FCFDFBFCFDFEFCFDFEFCFDFEFDFDFCFDFF
|
||||
F5F7FBE1E6EED2D6E2C3C7D6B9BFD5AFB8D5B2B8D3B6B9D2
|
||||
CCD1E6DADEEAE8EBEEE3EAEFDFEAF1D8E3EBD1DDE6BACAD8
|
||||
9DB0D28199BF7790B56E87AC6C84A66B82A05C72934A5B7B
|
||||
2935531F2D451626381525351524321625341727371A2B44
|
||||
2536563B4D8955689E6F84B37A90BF869DCCA3B6D7B9C6DF
|
||||
CAD6E7C5CDDDC0C4D3BCC1CDB9BFC7B1B6C0ACB3BFB2BBC1
|
||||
BCC2C6D8DEE1E2E7EBECF0F5EDF1F6EFF3F8E9EFF7DDE3EF
|
||||
BAC0D8ABB1D19CA3CA98A1CA949FCB8E9BD097A2D5A9B3E2
|
||||
BBC6EADFE4F4E3EAF7E8F1FBE8F3FADEE9EECAD8E4B3C3D9
|
||||
8D9AAB808DA474809E737D9A737B977178925F6D9A4E5E95
|
||||
4552841B2D611524540F1C47091236080F2A080D22070C20
|
||||
11162D151E3A1A26482332532C3E5E42567557688B71839F
|
||||
8C9AB0BDC6C9BEC7C9C0C9CAC9C9C6C7CAC4B4BFB9A9AEA9
|
||||
9499A09198A08E97A1929C9D939FA08F9CA5899397767F82
|
||||
586873343A51272F491B2542141B360E142C0A0F250B0D20
|
||||
0B12270E152E1119351721461D2A5622316127387126397C
|
||||
22367C253581222F7E1D2C7722317E333B824A5289636FA2
|
||||
ACB3D0BAC1DAC8D0E4D5E1E7D8E3E2D0DBDBB7C8C69AA8AC
|
||||
</palette>
|
||||
</flame>
|
||||
<flame name="variations" version="Apophysis 2.08 beta" size="555 428" center="0 0" scale="138.75" oversample="1" filter="0.2" quality="1" background="0 0 0" brightness="4" gamma="4" >
|
||||
<xform weight="0.5" color="0" linear="1" disc="-0.934" coefs="0.982996 0 0 0.982996 -0.219512 -0.1875" />
|
||||
<xform weight="0.5" color="0" swirl="0.156" polar="0.778" coefs="0.966511 0.256624 -0.256624 0.966511 0.050305 -0.235518" />
|
||||
<palette count="256" format="RGB">
|
||||
7886955967864652763240672432611E2D5D192757172255
|
||||
11224F0D1D410F1A39101E350F202C0F1F23101B1E0C161C
|
||||
08151A060E14040A12040D13050D12060C11050D12050D11
|
||||
050B0F05080F05080D04080C04080E050912040A18030C25
|
||||
0410350616450A1E560F2362122768172B63192B5D162959
|
||||
13234F1020420B1E3C0B1B380D19300E1A280D18200C191E
|
||||
0D1C200F1C1E0D1A1D0A171E0B171C0B1119070A15040611
|
||||
03050E01050C00060C01060C03090D061213081516071012
|
||||
0813160B1420081022060C24050926040728020528010429
|
||||
00042F060B3B0C124717255A22396D3B4E815564955D6F9B
|
||||
667AA28593AC7A8799707B875F6A784F59694751643F4A60
|
||||
2633602534622536651D3162162D60162B5D16295B15275E
|
||||
182B6324386D3F517F5A6B927686A992A1C1A5B1CAB8C2D4
|
||||
E4EAF3EEF3F8F9FCFDFBFCFDFEFCFDFEFCFDFEFDFDFCFDFF
|
||||
F5F7FBE1E6EED2D6E2C3C7D6B9BFD5AFB8D5B2B8D3B6B9D2
|
||||
CCD1E6DADEEAE8EBEEE3EAEFDFEAF1D8E3EBD1DDE6BACAD8
|
||||
9DB0D28199BF7790B56E87AC6C84A66B82A05C72934A5B7B
|
||||
2935531F2D451626381525351524321625341727371A2B44
|
||||
2536563B4D8955689E6F84B37A90BF869DCCA3B6D7B9C6DF
|
||||
CAD6E7C5CDDDC0C4D3BCC1CDB9BFC7B1B6C0ACB3BFB2BBC1
|
||||
BCC2C6D8DEE1E2E7EBECF0F5EDF1F6EFF3F8E9EFF7DDE3EF
|
||||
BAC0D8ABB1D19CA3CA98A1CA949FCB8E9BD097A2D5A9B3E2
|
||||
BBC6EADFE4F4E3EAF7E8F1FBE8F3FADEE9EECAD8E4B3C3D9
|
||||
8D9AAB808DA474809E737D9A737B977178925F6D9A4E5E95
|
||||
4552841B2D611524540F1C47091236080F2A080D22070C20
|
||||
11162D151E3A1A26482332532C3E5E42567557688B71839F
|
||||
8C9AB0BDC6C9BEC7C9C0C9CAC9C9C6C7CAC4B4BFB9A9AEA9
|
||||
9499A09198A08E97A1929C9D939FA08F9CA5899397767F82
|
||||
586873343A51272F491B2542141B360E142C0A0F250B0D20
|
||||
0B12270E152E1119351721461D2A5622316127387126397C
|
||||
22367C253581222F7E1D2C7722317E333B824A5289636FA2
|
||||
ACB3D0BAC1DAC8D0E4D5E1E7D8E3E2D0DBDBB7C8C69AA8AC
|
||||
</palette>
|
||||
</flame>
|
||||
<flame name="variations" version="Apophysis 2.08 beta" size="555 428" center="0 0" scale="138.75" oversample="1" filter="0.2" quality="1" background="0 0 0" brightness="4" gamma="4" >
|
||||
<xform weight="0.5" color="0" linear="1" disc="-0.934" coefs="0.982996 0 0 0.982996 -0.219512 -0.1875" />
|
||||
<xform weight="0.5" color="0" swirl="0.156" polar="0.778" coefs="0.966511 0.256624 -0.256624 0.966511 0.050305 -0.235518" />
|
||||
<palette count="256" format="RGB">
|
||||
7886955967864652763240672432611E2D5D192757172255
|
||||
11224F0D1D410F1A39101E350F202C0F1F23101B1E0C161C
|
||||
08151A060E14040A12040D13050D12060C11050D12050D11
|
||||
050B0F05080F05080D04080C04080E050912040A18030C25
|
||||
0410350616450A1E560F2362122768172B63192B5D162959
|
||||
13234F1020420B1E3C0B1B380D19300E1A280D18200C191E
|
||||
0D1C200F1C1E0D1A1D0A171E0B171C0B1119070A15040611
|
||||
03050E01050C00060C01060C03090D061213081516071012
|
||||
0813160B1420081022060C24050926040728020528010429
|
||||
00042F060B3B0C124717255A22396D3B4E815564955D6F9B
|
||||
667AA28593AC7A8799707B875F6A784F59694751643F4A60
|
||||
2633602534622536651D3162162D60162B5D16295B15275E
|
||||
182B6324386D3F517F5A6B927686A992A1C1A5B1CAB8C2D4
|
||||
E4EAF3EEF3F8F9FCFDFBFCFDFEFCFDFEFCFDFEFDFDFCFDFF
|
||||
F5F7FBE1E6EED2D6E2C3C7D6B9BFD5AFB8D5B2B8D3B6B9D2
|
||||
CCD1E6DADEEAE8EBEEE3EAEFDFEAF1D8E3EBD1DDE6BACAD8
|
||||
9DB0D28199BF7790B56E87AC6C84A66B82A05C72934A5B7B
|
||||
2935531F2D451626381525351524321625341727371A2B44
|
||||
2536563B4D8955689E6F84B37A90BF869DCCA3B6D7B9C6DF
|
||||
CAD6E7C5CDDDC0C4D3BCC1CDB9BFC7B1B6C0ACB3BFB2BBC1
|
||||
BCC2C6D8DEE1E2E7EBECF0F5EDF1F6EFF3F8E9EFF7DDE3EF
|
||||
BAC0D8ABB1D19CA3CA98A1CA949FCB8E9BD097A2D5A9B3E2
|
||||
BBC6EADFE4F4E3EAF7E8F1FBE8F3FADEE9EECAD8E4B3C3D9
|
||||
8D9AAB808DA474809E737D9A737B977178925F6D9A4E5E95
|
||||
4552841B2D611524540F1C47091236080F2A080D22070C20
|
||||
11162D151E3A1A26482332532C3E5E42567557688B71839F
|
||||
8C9AB0BDC6C9BEC7C9C0C9CAC9C9C6C7CAC4B4BFB9A9AEA9
|
||||
9499A09198A08E97A1929C9D939FA08F9CA5899397767F82
|
||||
586873343A51272F491B2542141B360E142C0A0F250B0D20
|
||||
0B12270E152E1119351721461D2A5622316127387126397C
|
||||
22367C253581222F7E1D2C7722317E333B824A5289636FA2
|
||||
ACB3D0BAC1DAC8D0E4D5E1E7D8E3E2D0DBDBB7C8C69AA8AC
|
||||
</palette>
|
||||
</flame>
|
||||
<flame name="variations" version="Apophysis 2.08 beta" size="555 428" center="0 0" scale="138.75" oversample="1" filter="0.2" quality="1" background="0 0 0" brightness="4" gamma="4" >
|
||||
<xform weight="0.5" color="0" linear="1" disc="-0.934" coefs="0.982996 0 0 0.982996 -0.219512 -0.1875" />
|
||||
<xform weight="0.5" color="0" swirl="0.156" polar="0.778" coefs="0.966511 0.256624 -0.256624 0.966511 0.050305 -0.235518" />
|
||||
<palette count="256" format="RGB">
|
||||
7886955967864652763240672432611E2D5D192757172255
|
||||
11224F0D1D410F1A39101E350F202C0F1F23101B1E0C161C
|
||||
08151A060E14040A12040D13050D12060C11050D12050D11
|
||||
050B0F05080F05080D04080C04080E050912040A18030C25
|
||||
0410350616450A1E560F2362122768172B63192B5D162959
|
||||
13234F1020420B1E3C0B1B380D19300E1A280D18200C191E
|
||||
0D1C200F1C1E0D1A1D0A171E0B171C0B1119070A15040611
|
||||
03050E01050C00060C01060C03090D061213081516071012
|
||||
0813160B1420081022060C24050926040728020528010429
|
||||
00042F060B3B0C124717255A22396D3B4E815564955D6F9B
|
||||
667AA28593AC7A8799707B875F6A784F59694751643F4A60
|
||||
2633602534622536651D3162162D60162B5D16295B15275E
|
||||
182B6324386D3F517F5A6B927686A992A1C1A5B1CAB8C2D4
|
||||
E4EAF3EEF3F8F9FCFDFBFCFDFEFCFDFEFCFDFEFDFDFCFDFF
|
||||
F5F7FBE1E6EED2D6E2C3C7D6B9BFD5AFB8D5B2B8D3B6B9D2
|
||||
CCD1E6DADEEAE8EBEEE3EAEFDFEAF1D8E3EBD1DDE6BACAD8
|
||||
9DB0D28199BF7790B56E87AC6C84A66B82A05C72934A5B7B
|
||||
2935531F2D451626381525351524321625341727371A2B44
|
||||
2536563B4D8955689E6F84B37A90BF869DCCA3B6D7B9C6DF
|
||||
CAD6E7C5CDDDC0C4D3BCC1CDB9BFC7B1B6C0ACB3BFB2BBC1
|
||||
BCC2C6D8DEE1E2E7EBECF0F5EDF1F6EFF3F8E9EFF7DDE3EF
|
||||
BAC0D8ABB1D19CA3CA98A1CA949FCB8E9BD097A2D5A9B3E2
|
||||
BBC6EADFE4F4E3EAF7E8F1FBE8F3FADEE9EECAD8E4B3C3D9
|
||||
8D9AAB808DA474809E737D9A737B977178925F6D9A4E5E95
|
||||
4552841B2D611524540F1C47091236080F2A080D22070C20
|
||||
11162D151E3A1A26482332532C3E5E42567557688B71839F
|
||||
8C9AB0BDC6C9BEC7C9C0C9CAC9C9C6C7CAC4B4BFB9A9AEA9
|
||||
9499A09198A08E97A1929C9D939FA08F9CA5899397767F82
|
||||
586873343A51272F491B2542141B360E142C0A0F250B0D20
|
||||
0B12270E152E1119351721461D2A5622316127387126397C
|
||||
22367C253581222F7E1D2C7722317E333B824A5289636FA2
|
||||
ACB3D0BAC1DAC8D0E4D5E1E7D8E3E2D0DBDBB7C8C69AA8AC
|
||||
</palette>
|
||||
</flame>
|
||||
<flame name="variations" version="Apophysis 2.08 beta" size="555 428" center="0 0" scale="138.75" oversample="1" filter="0.2" quality="1" background="0 0 0" brightness="4" gamma="4" >
|
||||
<xform weight="0.5" color="0" linear="1" disc="-0.934" coefs="0.982996 0 0 0.982996 -0.219512 -0.1875" />
|
||||
<xform weight="0.5" color="0" swirl="0.156" polar="0.778" coefs="0.966511 0.256624 -0.256624 0.966511 0.050305 -0.235518" />
|
||||
<palette count="256" format="RGB">
|
||||
7886955967864652763240672432611E2D5D192757172255
|
||||
11224F0D1D410F1A39101E350F202C0F1F23101B1E0C161C
|
||||
08151A060E14040A12040D13050D12060C11050D12050D11
|
||||
050B0F05080F05080D04080C04080E050912040A18030C25
|
||||
0410350616450A1E560F2362122768172B63192B5D162959
|
||||
13234F1020420B1E3C0B1B380D19300E1A280D18200C191E
|
||||
0D1C200F1C1E0D1A1D0A171E0B171C0B1119070A15040611
|
||||
03050E01050C00060C01060C03090D061213081516071012
|
||||
0813160B1420081022060C24050926040728020528010429
|
||||
00042F060B3B0C124717255A22396D3B4E815564955D6F9B
|
||||
667AA28593AC7A8799707B875F6A784F59694751643F4A60
|
||||
2633602534622536651D3162162D60162B5D16295B15275E
|
||||
182B6324386D3F517F5A6B927686A992A1C1A5B1CAB8C2D4
|
||||
E4EAF3EEF3F8F9FCFDFBFCFDFEFCFDFEFCFDFEFDFDFCFDFF
|
||||
F5F7FBE1E6EED2D6E2C3C7D6B9BFD5AFB8D5B2B8D3B6B9D2
|
||||
CCD1E6DADEEAE8EBEEE3EAEFDFEAF1D8E3EBD1DDE6BACAD8
|
||||
9DB0D28199BF7790B56E87AC6C84A66B82A05C72934A5B7B
|
||||
2935531F2D451626381525351524321625341727371A2B44
|
||||
2536563B4D8955689E6F84B37A90BF869DCCA3B6D7B9C6DF
|
||||
CAD6E7C5CDDDC0C4D3BCC1CDB9BFC7B1B6C0ACB3BFB2BBC1
|
||||
BCC2C6D8DEE1E2E7EBECF0F5EDF1F6EFF3F8E9EFF7DDE3EF
|
||||
BAC0D8ABB1D19CA3CA98A1CA949FCB8E9BD097A2D5A9B3E2
|
||||
BBC6EADFE4F4E3EAF7E8F1FBE8F3FADEE9EECAD8E4B3C3D9
|
||||
8D9AAB808DA474809E737D9A737B977178925F6D9A4E5E95
|
||||
4552841B2D611524540F1C47091236080F2A080D22070C20
|
||||
11162D151E3A1A26482332532C3E5E42567557688B71839F
|
||||
8C9AB0BDC6C9BEC7C9C0C9CAC9C9C6C7CAC4B4BFB9A9AEA9
|
||||
9499A09198A08E97A1929C9D939FA08F9CA5899397767F82
|
||||
586873343A51272F491B2542141B360E142C0A0F250B0D20
|
||||
0B12270E152E1119351721461D2A5622316127387126397C
|
||||
22367C253581222F7E1D2C7722317E333B824A5289636FA2
|
||||
ACB3D0BAC1DAC8D0E4D5E1E7D8E3E2D0DBDBB7C8C69AA8AC
|
||||
</palette>
|
||||
</flame>
|
||||
</Flames>
|
@ -1,230 +0,0 @@
|
||||
<Flames name="baseline">
|
||||
<flame name="dependent" version="Apophysis 2.08 beta" size="555 428" center="0 0" scale="138.75" oversample="1" filter="0.2" quality="1" background="0 0 0" brightness="4" gamma="4" >
|
||||
<xform weight="0.5" color="0" linear="1" disc="-0.934" coefs="0.982996 0 0 0.982996 -0.219512 -0.1875" />
|
||||
<xform weight="0.5" color="0" swirl="0.156" polar="0.778" coefs="0.966511 0.256624 -0.256624 0.966511 0.050305 -0.235518" />
|
||||
<palette count="256" format="RGB">
|
||||
7886955967864652763240672432611E2D5D192757172255
|
||||
11224F0D1D410F1A39101E350F202C0F1F23101B1E0C161C
|
||||
08151A060E14040A12040D13050D12060C11050D12050D11
|
||||
050B0F05080F05080D04080C04080E050912040A18030C25
|
||||
0410350616450A1E560F2362122768172B63192B5D162959
|
||||
13234F1020420B1E3C0B1B380D19300E1A280D18200C191E
|
||||
0D1C200F1C1E0D1A1D0A171E0B171C0B1119070A15040611
|
||||
03050E01050C00060C01060C03090D061213081516071012
|
||||
0813160B1420081022060C24050926040728020528010429
|
||||
00042F060B3B0C124717255A22396D3B4E815564955D6F9B
|
||||
667AA28593AC7A8799707B875F6A784F59694751643F4A60
|
||||
2633602534622536651D3162162D60162B5D16295B15275E
|
||||
182B6324386D3F517F5A6B927686A992A1C1A5B1CAB8C2D4
|
||||
E4EAF3EEF3F8F9FCFDFBFCFDFEFCFDFEFCFDFEFDFDFCFDFF
|
||||
F5F7FBE1E6EED2D6E2C3C7D6B9BFD5AFB8D5B2B8D3B6B9D2
|
||||
CCD1E6DADEEAE8EBEEE3EAEFDFEAF1D8E3EBD1DDE6BACAD8
|
||||
9DB0D28199BF7790B56E87AC6C84A66B82A05C72934A5B7B
|
||||
2935531F2D451626381525351524321625341727371A2B44
|
||||
2536563B4D8955689E6F84B37A90BF869DCCA3B6D7B9C6DF
|
||||
CAD6E7C5CDDDC0C4D3BCC1CDB9BFC7B1B6C0ACB3BFB2BBC1
|
||||
BCC2C6D8DEE1E2E7EBECF0F5EDF1F6EFF3F8E9EFF7DDE3EF
|
||||
BAC0D8ABB1D19CA3CA98A1CA949FCB8E9BD097A2D5A9B3E2
|
||||
BBC6EADFE4F4E3EAF7E8F1FBE8F3FADEE9EECAD8E4B3C3D9
|
||||
8D9AAB808DA474809E737D9A737B977178925F6D9A4E5E95
|
||||
4552841B2D611524540F1C47091236080F2A080D22070C20
|
||||
11162D151E3A1A26482332532C3E5E42567557688B71839F
|
||||
8C9AB0BDC6C9BEC7C9C0C9CAC9C9C6C7CAC4B4BFB9A9AEA9
|
||||
9499A09198A08E97A1929C9D939FA08F9CA5899397767F82
|
||||
586873343A51272F491B2542141B360E142C0A0F250B0D20
|
||||
0B12270E152E1119351721461D2A5622316127387126397C
|
||||
22367C253581222F7E1D2C7722317E333B824A5289636FA2
|
||||
ACB3D0BAC1DAC8D0E4D5E1E7D8E3E2D0DBDBB7C8C69AA8AC
|
||||
</palette>
|
||||
</flame>
|
||||
<flame name="baseline" version="Apophysis 2.08 beta" size="555 428" center="0 0" scale="138.75" oversample="1" filter="0.2" quality="1" background="0 0 0" brightness="4" gamma="4" >
|
||||
<xform weight="0.5" color="0" linear="1" disc="-0.934" coefs="0.982996 0 0 0.982996 -0.219512 -0.1875" />
|
||||
<xform weight="0.5" color="0" swirl="0.156" polar="0.778" coefs="0.966511 0.256624 -0.256624 0.966511 0.050305 -0.235518" />
|
||||
<palette count="256" format="RGB">
|
||||
7886955967864652763240672432611E2D5D192757172255
|
||||
11224F0D1D410F1A39101E350F202C0F1F23101B1E0C161C
|
||||
08151A060E14040A12040D13050D12060C11050D12050D11
|
||||
050B0F05080F05080D04080C04080E050912040A18030C25
|
||||
0410350616450A1E560F2362122768172B63192B5D162959
|
||||
13234F1020420B1E3C0B1B380D19300E1A280D18200C191E
|
||||
0D1C200F1C1E0D1A1D0A171E0B171C0B1119070A15040611
|
||||
03050E01050C00060C01060C03090D061213081516071012
|
||||
0813160B1420081022060C24050926040728020528010429
|
||||
00042F060B3B0C124717255A22396D3B4E815564955D6F9B
|
||||
667AA28593AC7A8799707B875F6A784F59694751643F4A60
|
||||
2633602534622536651D3162162D60162B5D16295B15275E
|
||||
182B6324386D3F517F5A6B927686A992A1C1A5B1CAB8C2D4
|
||||
E4EAF3EEF3F8F9FCFDFBFCFDFEFCFDFEFCFDFEFDFDFCFDFF
|
||||
F5F7FBE1E6EED2D6E2C3C7D6B9BFD5AFB8D5B2B8D3B6B9D2
|
||||
CCD1E6DADEEAE8EBEEE3EAEFDFEAF1D8E3EBD1DDE6BACAD8
|
||||
9DB0D28199BF7790B56E87AC6C84A66B82A05C72934A5B7B
|
||||
2935531F2D451626381525351524321625341727371A2B44
|
||||
2536563B4D8955689E6F84B37A90BF869DCCA3B6D7B9C6DF
|
||||
CAD6E7C5CDDDC0C4D3BCC1CDB9BFC7B1B6C0ACB3BFB2BBC1
|
||||
BCC2C6D8DEE1E2E7EBECF0F5EDF1F6EFF3F8E9EFF7DDE3EF
|
||||
BAC0D8ABB1D19CA3CA98A1CA949FCB8E9BD097A2D5A9B3E2
|
||||
BBC6EADFE4F4E3EAF7E8F1FBE8F3FADEE9EECAD8E4B3C3D9
|
||||
8D9AAB808DA474809E737D9A737B977178925F6D9A4E5E95
|
||||
4552841B2D611524540F1C47091236080F2A080D22070C20
|
||||
11162D151E3A1A26482332532C3E5E42567557688B71839F
|
||||
8C9AB0BDC6C9BEC7C9C0C9CAC9C9C6C7CAC4B4BFB9A9AEA9
|
||||
9499A09198A08E97A1929C9D939FA08F9CA5899397767F82
|
||||
586873343A51272F491B2542141B360E142C0A0F250B0D20
|
||||
0B12270E152E1119351721461D2A5622316127387126397C
|
||||
22367C253581222F7E1D2C7722317E333B824A5289636FA2
|
||||
ACB3D0BAC1DAC8D0E4D5E1E7D8E3E2D0DBDBB7C8C69AA8AC
|
||||
</palette>
|
||||
</flame>
|
||||
<flame name="parametric" version="Apophysis 2.08 beta" size="555 428" center="0 0" scale="138.75" oversample="1" filter="0.2" quality="1" background="0 0 0" brightness="4" gamma="4" >
|
||||
<xform weight="0.5" color="0" linear="1" disc="-0.934" coefs="0.982996 0 0 0.982996 -0.219512 -0.1875" />
|
||||
<xform weight="0.5" color="0" swirl="0.156" polar="0.778" coefs="0.966511 0.256624 -0.256624 0.966511 0.050305 -0.235518" />
|
||||
<palette count="256" format="RGB">
|
||||
7886955967864652763240672432611E2D5D192757172255
|
||||
11224F0D1D410F1A39101E350F202C0F1F23101B1E0C161C
|
||||
08151A060E14040A12040D13050D12060C11050D12050D11
|
||||
050B0F05080F05080D04080C04080E050912040A18030C25
|
||||
0410350616450A1E560F2362122768172B63192B5D162959
|
||||
13234F1020420B1E3C0B1B380D19300E1A280D18200C191E
|
||||
0D1C200F1C1E0D1A1D0A171E0B171C0B1119070A15040611
|
||||
03050E01050C00060C01060C03090D061213081516071012
|
||||
0813160B1420081022060C24050926040728020528010429
|
||||
00042F060B3B0C124717255A22396D3B4E815564955D6F9B
|
||||
667AA28593AC7A8799707B875F6A784F59694751643F4A60
|
||||
2633602534622536651D3162162D60162B5D16295B15275E
|
||||
182B6324386D3F517F5A6B927686A992A1C1A5B1CAB8C2D4
|
||||
E4EAF3EEF3F8F9FCFDFBFCFDFEFCFDFEFCFDFEFDFDFCFDFF
|
||||
F5F7FBE1E6EED2D6E2C3C7D6B9BFD5AFB8D5B2B8D3B6B9D2
|
||||
CCD1E6DADEEAE8EBEEE3EAEFDFEAF1D8E3EBD1DDE6BACAD8
|
||||
9DB0D28199BF7790B56E87AC6C84A66B82A05C72934A5B7B
|
||||
2935531F2D451626381525351524321625341727371A2B44
|
||||
2536563B4D8955689E6F84B37A90BF869DCCA3B6D7B9C6DF
|
||||
CAD6E7C5CDDDC0C4D3BCC1CDB9BFC7B1B6C0ACB3BFB2BBC1
|
||||
BCC2C6D8DEE1E2E7EBECF0F5EDF1F6EFF3F8E9EFF7DDE3EF
|
||||
BAC0D8ABB1D19CA3CA98A1CA949FCB8E9BD097A2D5A9B3E2
|
||||
BBC6EADFE4F4E3EAF7E8F1FBE8F3FADEE9EECAD8E4B3C3D9
|
||||
8D9AAB808DA474809E737D9A737B977178925F6D9A4E5E95
|
||||
4552841B2D611524540F1C47091236080F2A080D22070C20
|
||||
11162D151E3A1A26482332532C3E5E42567557688B71839F
|
||||
8C9AB0BDC6C9BEC7C9C0C9CAC9C9C6C7CAC4B4BFB9A9AEA9
|
||||
9499A09198A08E97A1929C9D939FA08F9CA5899397767F82
|
||||
586873343A51272F491B2542141B360E142C0A0F250B0D20
|
||||
0B12270E152E1119351721461D2A5622316127387126397C
|
||||
22367C253581222F7E1D2C7722317E333B824A5289636FA2
|
||||
ACB3D0BAC1DAC8D0E4D5E1E7D8E3E2D0DBDBB7C8C69AA8AC
|
||||
</palette>
|
||||
</flame>
|
||||
<flame name="variations" version="Apophysis 2.08 beta" size="555 428" center="0 0" scale="138.75" oversample="1" filter="0.2" quality="1" background="0 0 0" brightness="4" gamma="4" >
|
||||
<xform weight="0.5" color="0" linear="1" disc="-0.934" coefs="0.982996 0 0 0.982996 -0.219512 -0.1875" />
|
||||
<xform weight="0.5" color="0" swirl="0.156" polar="0.778" coefs="0.966511 0.256624 -0.256624 0.966511 0.050305 -0.235518" />
|
||||
<palette count="256" format="RGB">
|
||||
7886955967864652763240672432611E2D5D192757172255
|
||||
11224F0D1D410F1A39101E350F202C0F1F23101B1E0C161C
|
||||
08151A060E14040A12040D13050D12060C11050D12050D11
|
||||
050B0F05080F05080D04080C04080E050912040A18030C25
|
||||
0410350616450A1E560F2362122768172B63192B5D162959
|
||||
13234F1020420B1E3C0B1B380D19300E1A280D18200C191E
|
||||
0D1C200F1C1E0D1A1D0A171E0B171C0B1119070A15040611
|
||||
03050E01050C00060C01060C03090D061213081516071012
|
||||
0813160B1420081022060C24050926040728020528010429
|
||||
00042F060B3B0C124717255A22396D3B4E815564955D6F9B
|
||||
667AA28593AC7A8799707B875F6A784F59694751643F4A60
|
||||
2633602534622536651D3162162D60162B5D16295B15275E
|
||||
182B6324386D3F517F5A6B927686A992A1C1A5B1CAB8C2D4
|
||||
E4EAF3EEF3F8F9FCFDFBFCFDFEFCFDFEFCFDFEFDFDFCFDFF
|
||||
F5F7FBE1E6EED2D6E2C3C7D6B9BFD5AFB8D5B2B8D3B6B9D2
|
||||
CCD1E6DADEEAE8EBEEE3EAEFDFEAF1D8E3EBD1DDE6BACAD8
|
||||
9DB0D28199BF7790B56E87AC6C84A66B82A05C72934A5B7B
|
||||
2935531F2D451626381525351524321625341727371A2B44
|
||||
2536563B4D8955689E6F84B37A90BF869DCCA3B6D7B9C6DF
|
||||
CAD6E7C5CDDDC0C4D3BCC1CDB9BFC7B1B6C0ACB3BFB2BBC1
|
||||
BCC2C6D8DEE1E2E7EBECF0F5EDF1F6EFF3F8E9EFF7DDE3EF
|
||||
BAC0D8ABB1D19CA3CA98A1CA949FCB8E9BD097A2D5A9B3E2
|
||||
BBC6EADFE4F4E3EAF7E8F1FBE8F3FADEE9EECAD8E4B3C3D9
|
||||
8D9AAB808DA474809E737D9A737B977178925F6D9A4E5E95
|
||||
4552841B2D611524540F1C47091236080F2A080D22070C20
|
||||
11162D151E3A1A26482332532C3E5E42567557688B71839F
|
||||
8C9AB0BDC6C9BEC7C9C0C9CAC9C9C6C7CAC4B4BFB9A9AEA9
|
||||
9499A09198A08E97A1929C9D939FA08F9CA5899397767F82
|
||||
586873343A51272F491B2542141B360E142C0A0F250B0D20
|
||||
0B12270E152E1119351721461D2A5622316127387126397C
|
||||
22367C253581222F7E1D2C7722317E333B824A5289636FA2
|
||||
ACB3D0BAC1DAC8D0E4D5E1E7D8E3E2D0DBDBB7C8C69AA8AC
|
||||
</palette>
|
||||
</flame>
|
||||
<flame name="variations" version="Apophysis 2.08 beta" size="555 428" center="0 0" scale="138.75" oversample="1" filter="0.2" quality="1" background="0 0 0" brightness="4" gamma="4" >
|
||||
<xform weight="0.5" color="0" linear="1" disc="-0.934" coefs="0.982996 0 0 0.982996 -0.219512 -0.1875" />
|
||||
<xform weight="0.5" color="0" swirl="0.156" polar="0.778" coefs="0.966511 0.256624 -0.256624 0.966511 0.050305 -0.235518" />
|
||||
<palette count="256" format="RGB">
|
||||
7886955967864652763240672432611E2D5D192757172255
|
||||
11224F0D1D410F1A39101E350F202C0F1F23101B1E0C161C
|
||||
08151A060E14040A12040D13050D12060C11050D12050D11
|
||||
050B0F05080F05080D04080C04080E050912040A18030C25
|
||||
0410350616450A1E560F2362122768172B63192B5D162959
|
||||
13234F1020420B1E3C0B1B380D19300E1A280D18200C191E
|
||||
0D1C200F1C1E0D1A1D0A171E0B171C0B1119070A15040611
|
||||
03050E01050C00060C01060C03090D061213081516071012
|
||||
0813160B1420081022060C24050926040728020528010429
|
||||
00042F060B3B0C124717255A22396D3B4E815564955D6F9B
|
||||
667AA28593AC7A8799707B875F6A784F59694751643F4A60
|
||||
2633602534622536651D3162162D60162B5D16295B15275E
|
||||
182B6324386D3F517F5A6B927686A992A1C1A5B1CAB8C2D4
|
||||
E4EAF3EEF3F8F9FCFDFBFCFDFEFCFDFEFCFDFEFDFDFCFDFF
|
||||
F5F7FBE1E6EED2D6E2C3C7D6B9BFD5AFB8D5B2B8D3B6B9D2
|
||||
CCD1E6DADEEAE8EBEEE3EAEFDFEAF1D8E3EBD1DDE6BACAD8
|
||||
9DB0D28199BF7790B56E87AC6C84A66B82A05C72934A5B7B
|
||||
2935531F2D451626381525351524321625341727371A2B44
|
||||
2536563B4D8955689E6F84B37A90BF869DCCA3B6D7B9C6DF
|
||||
CAD6E7C5CDDDC0C4D3BCC1CDB9BFC7B1B6C0ACB3BFB2BBC1
|
||||
BCC2C6D8DEE1E2E7EBECF0F5EDF1F6EFF3F8E9EFF7DDE3EF
|
||||
BAC0D8ABB1D19CA3CA98A1CA949FCB8E9BD097A2D5A9B3E2
|
||||
BBC6EADFE4F4E3EAF7E8F1FBE8F3FADEE9EECAD8E4B3C3D9
|
||||
8D9AAB808DA474809E737D9A737B977178925F6D9A4E5E95
|
||||
4552841B2D611524540F1C47091236080F2A080D22070C20
|
||||
11162D151E3A1A26482332532C3E5E42567557688B71839F
|
||||
8C9AB0BDC6C9BEC7C9C0C9CAC9C9C6C7CAC4B4BFB9A9AEA9
|
||||
9499A09198A08E97A1929C9D939FA08F9CA5899397767F82
|
||||
586873343A51272F491B2542141B360E142C0A0F250B0D20
|
||||
0B12270E152E1119351721461D2A5622316127387126397C
|
||||
22367C253581222F7E1D2C7722317E333B824A5289636FA2
|
||||
ACB3D0BAC1DAC8D0E4D5E1E7D8E3E2D0DBDBB7C8C69AA8AC
|
||||
</palette>
|
||||
</flame>
|
||||
<flame name="variations" version="Apophysis 2.08 beta" size="555 428" center="0 0" scale="138.75" oversample="1" filter="0.2" quality="1" background="0 0 0" brightness="4" gamma="4" >
|
||||
<xform weight="0.5" color="0" linear="1" disc="-0.934" coefs="0.982996 0 0 0.982996 -0.219512 -0.1875" />
|
||||
<xform weight="0.5" color="0" swirl="0.156" polar="0.778" coefs="0.966511 0.256624 -0.256624 0.966511 0.050305 -0.235518" />
|
||||
<palette count="256" format="RGB">
|
||||
7886955967864652763240672432611E2D5D192757172255
|
||||
11224F0D1D410F1A39101E350F202C0F1F23101B1E0C161C
|
||||
08151A060E14040A12040D13050D12060C11050D12050D11
|
||||
050B0F05080F05080D04080C04080E050912040A18030C25
|
||||
0410350616450A1E560F2362122768172B63192B5D162959
|
||||
13234F1020420B1E3C0B1B380D19300E1A280D18200C191E
|
||||
0D1C200F1C1E0D1A1D0A171E0B171C0B1119070A15040611
|
||||
03050E01050C00060C01060C03090D061213081516071012
|
||||
0813160B1420081022060C24050926040728020528010429
|
||||
00042F060B3B0C124717255A22396D3B4E815564955D6F9B
|
||||
667AA28593AC7A8799707B875F6A784F59694751643F4A60
|
||||
2633602534622536651D3162162D60162B5D16295B15275E
|
||||
182B6324386D3F517F5A6B927686A992A1C1A5B1CAB8C2D4
|
||||
E4EAF3EEF3F8F9FCFDFBFCFDFEFCFDFEFCFDFEFDFDFCFDFF
|
||||
F5F7FBE1E6EED2D6E2C3C7D6B9BFD5AFB8D5B2B8D3B6B9D2
|
||||
CCD1E6DADEEAE8EBEEE3EAEFDFEAF1D8E3EBD1DDE6BACAD8
|
||||
9DB0D28199BF7790B56E87AC6C84A66B82A05C72934A5B7B
|
||||
2935531F2D451626381525351524321625341727371A2B44
|
||||
2536563B4D8955689E6F84B37A90BF869DCCA3B6D7B9C6DF
|
||||
CAD6E7C5CDDDC0C4D3BCC1CDB9BFC7B1B6C0ACB3BFB2BBC1
|
||||
BCC2C6D8DEE1E2E7EBECF0F5EDF1F6EFF3F8E9EFF7DDE3EF
|
||||
BAC0D8ABB1D19CA3CA98A1CA949FCB8E9BD097A2D5A9B3E2
|
||||
BBC6EADFE4F4E3EAF7E8F1FBE8F3FADEE9EECAD8E4B3C3D9
|
||||
8D9AAB808DA474809E737D9A737B977178925F6D9A4E5E95
|
||||
4552841B2D611524540F1C47091236080F2A080D22070C20
|
||||
11162D151E3A1A26482332532C3E5E42567557688B71839F
|
||||
8C9AB0BDC6C9BEC7C9C0C9CAC9C9C6C7CAC4B4BFB9A9AEA9
|
||||
9499A09198A08E97A1929C9D939FA08F9CA5899397767F82
|
||||
586873343A51272F491B2542141B360E142C0A0F250B0D20
|
||||
0B12270E152E1119351721461D2A5622316127387126397C
|
||||
22367C253581222F7E1D2C7722317E333B824A5289636FA2
|
||||
ACB3D0BAC1DAC8D0E4D5E1E7D8E3E2D0DBDBB7C8C69AA8AC
|
||||
</palette>
|
||||
</flame>
|
||||
</Flames>
|
@ -1,41 +0,0 @@
|
||||
<Flames name="gasket">
|
||||
<flame name="Apophysis-230716-1" version="Apophysis 2.08 beta" size="800 800" center="0 0" scale="200" oversample="1" filter="0.2" quality="1" background="0 0 0" brightness="4" gamma="4" >
|
||||
<xform weight="0.5" color="0" linear="1" coefs="0.5 0 0 0.5 0 0" />
|
||||
<xform weight="0.5" color="0" linear="1" coefs="0.5 0.5 0 0 0 -0.5" />
|
||||
<xform weight="0.5" color="0" linear="1" coefs="0 0.5 0.5 0 0.5 -0.5" />
|
||||
<palette count="256" format="RGB">
|
||||
B48AA0AA688CAB5689AD44869E4B859052848A5782855C80
|
||||
695D6D50596437555B27565218584A17584417583F1B5540
|
||||
2052413B464A4C3F485D3947722D4A88224D941C50A11754
|
||||
C70D5ECD0A60D40762D30869D20A70CF0D73CC1076C61478
|
||||
B917739F1D67941F638A225F7C255E6F295D692B5A632E58
|
||||
4D3D4E49435146495451555D5D626764676B6B6C6F7C7B7B
|
||||
8C858BB8A0A1BBA2A4BEA5A8B69EA7AE97A6AC92A5AB8DA5
|
||||
98668E855880734A73673A6E5C2B695826685521684F2463
|
||||
442B58253B431D3D41163F40163E3E163E3D123D39123E37
|
||||
123A3F1135471030500E2F540D2F580C32590B355B0B3C5B
|
||||
0A455B0B56570B60590B6A5C0C6F5E0D75600F7D6012825D
|
||||
187F531B7C521F795221764F24744D276C432C64372C5E2E
|
||||
2C5A2A2F5C2F306434326D3932753A337D3C34874436944F
|
||||
3D8D60408561447E63487C644D7A665C6C636B5664763D61
|
||||
83275F9A145BA01259A61058AE0C54B1094FAE0B49A01144
|
||||
891C3D851C39821D357F1E337D1F3177222F7922317E2234
|
||||
8A1F39991B419A1C419B1D429A28419B374390454C805051
|
||||
62535764545267564E66564B6556495B4F464E4A454C4444
|
||||
4E423E4A4735464C354251353658392E6138296735286935
|
||||
2D633A2D5F3B2D5B3D2E523C2D4A3C28413D273B3F223446
|
||||
1D324817314E18304F193051222F5A2F2F603D3064473168
|
||||
553172582F755C2E79612D7C652E7C64347261426C5A4D65
|
||||
51555F4C565C4A525152544958513F59523B554E3C4B473E
|
||||
4A3842493642493543483342443641453C3E4A433A504438
|
||||
5742385D3E3D6A383D75383D7E373F8136447A3B4E723E53
|
||||
6A47565E515954575B4A66643F74683A8269378A6C3E836A
|
||||
4F786B5E6C6A67616469585B6D4E517444467C3E3D793B36
|
||||
6C3E2F5A432F4A4A2D4354313D573A3E58413F564F3F5057
|
||||
3F515C3E4C603F465F424165443B693F3D6A393F6A304264
|
||||
2A455F26475B1F48591D4958194A571A4C56194E53145052
|
||||
15555418585822605F366B65477A755F908879A19A8DB2AC
|
||||
AABFB6C0CCC4C9D6CDC8DDCDC4CBCBC1B4BCC4A0B2C184AB
|
||||
</palette>
|
||||
</flame>
|
||||
</Flames>
|
BIN
posts/2023/06/flam3/images/1-gasket.png
Normal file
After Width: | Height: | Size: 6.4 KiB |
BIN
posts/2023/06/flam3/images/2a-baseline.png
Normal file
After Width: | Height: | Size: 30 KiB |
BIN
posts/2023/06/flam3/images/2b-post.png
Normal file
After Width: | Height: | Size: 30 KiB |
BIN
posts/2023/06/flam3/images/2c-final.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
posts/2023/06/flam3/images/3a-binary.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
posts/2023/06/flam3/images/3b-linear.png
Normal file
After Width: | Height: | Size: 73 KiB |
BIN
posts/2023/06/flam3/images/3c-logarithmic.png
Normal file
After Width: | Height: | Size: 116 KiB |
BIN
posts/2023/06/flam3/images/4-color.png
Normal file
After Width: | Height: | Size: 272 KiB |
BIN
posts/2023/06/flam3/images/5a-gasket.png
Normal file
After Width: | Height: | Size: 1.6 KiB |
BIN
posts/2023/06/flam3/images/5b-solo1.png
Normal file
After Width: | Height: | Size: 88 KiB |
BIN
posts/2023/06/flam3/images/5b-solo2.png
Normal file
After Width: | Height: | Size: 6.0 KiB |
BIN
posts/2023/06/flam3/images/5b-solo3.png
Normal file
After Width: | Height: | Size: 47 KiB |
@ -1,16 +1,5 @@
|
||||
import { build } from "vite";
|
||||
import Blog from "../../../LayoutBlog";
|
||||
|
||||
import { CanvasRenderer } from "./0-canvas";
|
||||
import { buildBaseline } from "./2a-variations";
|
||||
import { buildPost } from "./2b-post";
|
||||
import { buildFinal } from "./2c-final";
|
||||
import { buildBinary } from "./3a-binary";
|
||||
import { buildColor } from "./4-color";
|
||||
import { buildLinear } from "./3b-linear";
|
||||
import { buildLogarithmic } from "./3c-logarithmic";
|
||||
import { buildSolo1, buildSolo2, buildSolo3 } from "./5b-solo";
|
||||
import { buildGasketFlame } from "./5a-gasket";
|
||||
import { CanvasColor } from "./0-canvas.js";
|
||||
|
||||
export default function () {
|
||||
const Layout = Blog({
|
||||
@ -20,105 +9,7 @@ export default function () {
|
||||
});
|
||||
return (
|
||||
<Layout>
|
||||
{/* <CanvasRenderer
|
||||
params={{
|
||||
defaultUrl: "",
|
||||
size: 400,
|
||||
renderer: new RendererGasket(400),
|
||||
qualityMax: 0.3,
|
||||
qualityStep: 0.1,
|
||||
}}
|
||||
/> */}
|
||||
{/* <CanvasRenderer
|
||||
params={{
|
||||
defaultUrl: "",
|
||||
size: 400,
|
||||
renderer: (size) => buildBaseline(size),
|
||||
qualityMax: 1,
|
||||
qualityStep: 0.1,
|
||||
}}
|
||||
/> */}
|
||||
{/* <CanvasRenderer
|
||||
params={{
|
||||
defaultUrl: "",
|
||||
size: 400,
|
||||
renderer: (size) => buildPost(size),
|
||||
qualityMax: 1,
|
||||
qualityStep: 0.1
|
||||
}} /> */}
|
||||
{/* <CanvasRenderer
|
||||
params={{
|
||||
defaultUrl: "",
|
||||
size: 400,
|
||||
renderer: (size) => buildFinal(size),
|
||||
qualityMax: 1,
|
||||
qualityStep: 0.1,
|
||||
}} /> */}
|
||||
{/* <CanvasRenderer
|
||||
params={{
|
||||
defaultUrl: "",
|
||||
size: 400,
|
||||
renderer: (size) => buildBinary(size),
|
||||
qualityMax: 1,
|
||||
qualityStep: 0.1,
|
||||
}} /> */}
|
||||
{/* <CanvasRenderer
|
||||
params={{
|
||||
defaultUrl: "",
|
||||
size: 400,
|
||||
renderer: (size) => buildLinear(size),
|
||||
qualityMax: 5,
|
||||
qualityStep: 0.1,
|
||||
}} /> */}
|
||||
{/* <CanvasRenderer
|
||||
params={{
|
||||
defaultUrl: "",
|
||||
size: 400,
|
||||
renderer: (size) => buildLogarithmic(size),
|
||||
qualityMax: 5,
|
||||
qualityStep: 0.1,
|
||||
}} /> */}
|
||||
{/* <CanvasRenderer
|
||||
params={{
|
||||
defaultUrl: "",
|
||||
size: 400,
|
||||
renderer: (size) => buildColor(size),
|
||||
qualityMax: 50,
|
||||
qualityStep: 0.1,
|
||||
}} /> */}
|
||||
{/* <CanvasRenderer
|
||||
params={{
|
||||
defaultUrl: "",
|
||||
size: 400,
|
||||
renderer: (size) => buildSolo1(size),
|
||||
qualityMax: 5,
|
||||
qualityStep: 0.1,
|
||||
}} /> */}
|
||||
{/* <CanvasRenderer
|
||||
params={{
|
||||
defaultUrl: "",
|
||||
size: 400,
|
||||
renderer: (size) => buildSolo2(size),
|
||||
qualityMax: 5,
|
||||
qualityStep: 0.1,
|
||||
}} /> */}
|
||||
{/* <CanvasRenderer
|
||||
params={{
|
||||
defaultUrl: "",
|
||||
size: 400,
|
||||
renderer: (size) => buildSolo3(size),
|
||||
qualityMax: 5,
|
||||
qualityStep: 0.1,
|
||||
}} /> */}
|
||||
<CanvasRenderer
|
||||
params={{
|
||||
defaultUrl: "",
|
||||
size: 400,
|
||||
renderer: (size) => buildGasketFlame(size),
|
||||
qualityMax: 0.3,
|
||||
qualityStep: 0.1,
|
||||
}}
|
||||
/>
|
||||
<CanvasColor />
|
||||
</Layout>
|
||||
);
|
||||
}
|
||||
|
45
posts/2023/06/flam3/offline.ts
Normal file
@ -0,0 +1,45 @@
|
||||
import * as fs from "fs/promises";
|
||||
import { createCanvas } from "canvas";
|
||||
import { DEFAULT_SIZE, RenderParams } from "./0-utility.js";
|
||||
import { paramsGasket } from "./1-gasket.js";
|
||||
import { paramsBaseline } from "./2a-baseline.js";
|
||||
import { paramsPost } from "./2b-post.js";
|
||||
import { paramsFinal } from "./2c-final.js";
|
||||
import { paramsBinary } from "./3a-binary.js";
|
||||
import { paramsLinear } from "./3b-linear.js";
|
||||
import { paramsLogarithmic } from "./3c-logarithmic.js";
|
||||
import { paramsColor } from "./4-color.js";
|
||||
import { paramsGasketFlame } from "./5a-gasket.js";
|
||||
import { paramsSolo1, paramsSolo2, paramsSolo3 } from "./5b-solo.js";
|
||||
|
||||
export type OfflineParams = RenderParams & { filename: string };
|
||||
|
||||
const paramsAll: OfflineParams[] = [
|
||||
{ filename: "images/1-gasket.png", ...paramsGasket },
|
||||
{ filename: "images/2a-baseline.png", ...paramsBaseline },
|
||||
{ filename: "images/2b-post.png", ...paramsPost },
|
||||
{ filename: "images/2c-final.png", ...paramsFinal },
|
||||
{ filename: "images/3a-binary.png", ...paramsBinary },
|
||||
{ filename: "images/3b-linear.png", ...paramsLinear },
|
||||
{ filename: "images/3c-logarithmic.png", ...paramsLogarithmic },
|
||||
{ filename: "images/4-color.png", ...paramsColor },
|
||||
{ filename: "images/5a-gasket.png", ...paramsGasketFlame },
|
||||
{ filename: "images/5b-solo1.png", ...paramsSolo1 },
|
||||
{ filename: "images/5b-solo2.png", ...paramsSolo2 },
|
||||
{ filename: "images/5b-solo3.png", ...paramsSolo3 },
|
||||
];
|
||||
|
||||
for (const param of paramsAll) {
|
||||
const render = param.renderer(DEFAULT_SIZE);
|
||||
render.run(param.quality);
|
||||
|
||||
const canvas = createCanvas(DEFAULT_SIZE, DEFAULT_SIZE);
|
||||
const ctx = canvas.getContext("2d");
|
||||
const data = ctx.createImageData(DEFAULT_SIZE, DEFAULT_SIZE);
|
||||
|
||||
render.render(data as any);
|
||||
ctx.putImageData(data, 0, 0);
|
||||
|
||||
const buffer = canvas.toBuffer();
|
||||
await fs.writeFile(param.filename, buffer);
|
||||
}
|
659
posts/2023/06/flam3/package-lock.json
generated
Normal file
@ -0,0 +1,659 @@
|
||||
{
|
||||
"name": "blog-flam3",
|
||||
"version": "1.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "blog-flam3",
|
||||
"version": "1.0.0",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"canvas": "^2.11.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"typescript": "^5.1.6"
|
||||
}
|
||||
},
|
||||
"node_modules/@mapbox/node-pre-gyp": {
|
||||
"version": "1.0.11",
|
||||
"resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz",
|
||||
"integrity": "sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==",
|
||||
"dependencies": {
|
||||
"detect-libc": "^2.0.0",
|
||||
"https-proxy-agent": "^5.0.0",
|
||||
"make-dir": "^3.1.0",
|
||||
"node-fetch": "^2.6.7",
|
||||
"nopt": "^5.0.0",
|
||||
"npmlog": "^5.0.1",
|
||||
"rimraf": "^3.0.2",
|
||||
"semver": "^7.3.5",
|
||||
"tar": "^6.1.11"
|
||||
},
|
||||
"bin": {
|
||||
"node-pre-gyp": "bin/node-pre-gyp"
|
||||
}
|
||||
},
|
||||
"node_modules/abbrev": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
|
||||
"integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q=="
|
||||
},
|
||||
"node_modules/agent-base": {
|
||||
"version": "6.0.2",
|
||||
"resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
|
||||
"integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
|
||||
"dependencies": {
|
||||
"debug": "4"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 6.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/ansi-regex": {
|
||||
"version": "5.0.1",
|
||||
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
|
||||
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/aproba": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz",
|
||||
"integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ=="
|
||||
},
|
||||
"node_modules/are-we-there-yet": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz",
|
||||
"integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==",
|
||||
"dependencies": {
|
||||
"delegates": "^1.0.0",
|
||||
"readable-stream": "^3.6.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/balanced-match": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
|
||||
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
|
||||
},
|
||||
"node_modules/brace-expansion": {
|
||||
"version": "1.1.11",
|
||||
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
|
||||
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
|
||||
"dependencies": {
|
||||
"balanced-match": "^1.0.0",
|
||||
"concat-map": "0.0.1"
|
||||
}
|
||||
},
|
||||
"node_modules/canvas": {
|
||||
"version": "2.11.2",
|
||||
"resolved": "https://registry.npmjs.org/canvas/-/canvas-2.11.2.tgz",
|
||||
"integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==",
|
||||
"hasInstallScript": true,
|
||||
"dependencies": {
|
||||
"@mapbox/node-pre-gyp": "^1.0.0",
|
||||
"nan": "^2.17.0",
|
||||
"simple-get": "^3.0.3"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
},
|
||||
"node_modules/chownr": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",
|
||||
"integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==",
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/color-support": {
|
||||
"version": "1.1.3",
|
||||
"resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz",
|
||||
"integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==",
|
||||
"bin": {
|
||||
"color-support": "bin.js"
|
||||
}
|
||||
},
|
||||
"node_modules/concat-map": {
|
||||
"version": "0.0.1",
|
||||
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
|
||||
"integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="
|
||||
},
|
||||
"node_modules/console-control-strings": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
|
||||
"integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ=="
|
||||
},
|
||||
"node_modules/debug": {
|
||||
"version": "4.3.4",
|
||||
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
|
||||
"integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
|
||||
"dependencies": {
|
||||
"ms": "2.1.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"supports-color": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/decompress-response": {
|
||||
"version": "4.2.1",
|
||||
"resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz",
|
||||
"integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==",
|
||||
"dependencies": {
|
||||
"mimic-response": "^2.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/delegates": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
|
||||
"integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ=="
|
||||
},
|
||||
"node_modules/detect-libc": {
|
||||
"version": "2.0.2",
|
||||
"resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.2.tgz",
|
||||
"integrity": "sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==",
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/emoji-regex": {
|
||||
"version": "8.0.0",
|
||||
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
|
||||
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
|
||||
},
|
||||
"node_modules/fs-minipass": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz",
|
||||
"integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==",
|
||||
"dependencies": {
|
||||
"minipass": "^3.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 8"
|
||||
}
|
||||
},
|
||||
"node_modules/fs-minipass/node_modules/minipass": {
|
||||
"version": "3.3.6",
|
||||
"resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
|
||||
"integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
|
||||
"dependencies": {
|
||||
"yallist": "^4.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/fs.realpath": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
|
||||
"integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw=="
|
||||
},
|
||||
"node_modules/gauge": {
|
||||
"version": "3.0.2",
|
||||
"resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz",
|
||||
"integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==",
|
||||
"dependencies": {
|
||||
"aproba": "^1.0.3 || ^2.0.0",
|
||||
"color-support": "^1.1.2",
|
||||
"console-control-strings": "^1.0.0",
|
||||
"has-unicode": "^2.0.1",
|
||||
"object-assign": "^4.1.1",
|
||||
"signal-exit": "^3.0.0",
|
||||
"string-width": "^4.2.3",
|
||||
"strip-ansi": "^6.0.1",
|
||||
"wide-align": "^1.1.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/glob": {
|
||||
"version": "7.2.3",
|
||||
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
|
||||
"integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
|
||||
"dependencies": {
|
||||
"fs.realpath": "^1.0.0",
|
||||
"inflight": "^1.0.4",
|
||||
"inherits": "2",
|
||||
"minimatch": "^3.1.1",
|
||||
"once": "^1.3.0",
|
||||
"path-is-absolute": "^1.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": "*"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
}
|
||||
},
|
||||
"node_modules/has-unicode": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
|
||||
"integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ=="
|
||||
},
|
||||
"node_modules/https-proxy-agent": {
|
||||
"version": "5.0.1",
|
||||
"resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
|
||||
"integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
|
||||
"dependencies": {
|
||||
"agent-base": "6",
|
||||
"debug": "4"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 6"
|
||||
}
|
||||
},
|
||||
"node_modules/inflight": {
|
||||
"version": "1.0.6",
|
||||
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
|
||||
"integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
|
||||
"dependencies": {
|
||||
"once": "^1.3.0",
|
||||
"wrappy": "1"
|
||||
}
|
||||
},
|
||||
"node_modules/inherits": {
|
||||
"version": "2.0.4",
|
||||
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
|
||||
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
|
||||
},
|
||||
"node_modules/is-fullwidth-code-point": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
|
||||
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/lru-cache": {
|
||||
"version": "6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
|
||||
"integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
|
||||
"dependencies": {
|
||||
"yallist": "^4.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/make-dir": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
|
||||
"integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
|
||||
"dependencies": {
|
||||
"semver": "^6.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/make-dir/node_modules/semver": {
|
||||
"version": "6.3.1",
|
||||
"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
|
||||
"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
|
||||
"bin": {
|
||||
"semver": "bin/semver.js"
|
||||
}
|
||||
},
|
||||
"node_modules/mimic-response": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz",
|
||||
"integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==",
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/minimatch": {
|
||||
"version": "3.1.2",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
|
||||
"integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
|
||||
"dependencies": {
|
||||
"brace-expansion": "^1.1.7"
|
||||
},
|
||||
"engines": {
|
||||
"node": "*"
|
||||
}
|
||||
},
|
||||
"node_modules/minipass": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
|
||||
"integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/minizlib": {
|
||||
"version": "2.1.2",
|
||||
"resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz",
|
||||
"integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
|
||||
"dependencies": {
|
||||
"minipass": "^3.0.0",
|
||||
"yallist": "^4.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 8"
|
||||
}
|
||||
},
|
||||
"node_modules/minizlib/node_modules/minipass": {
|
||||
"version": "3.3.6",
|
||||
"resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
|
||||
"integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
|
||||
"dependencies": {
|
||||
"yallist": "^4.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/mkdirp": {
|
||||
"version": "1.0.4",
|
||||
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
|
||||
"integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
|
||||
"bin": {
|
||||
"mkdirp": "bin/cmd.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/ms": {
|
||||
"version": "2.1.2",
|
||||
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
|
||||
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
|
||||
},
|
||||
"node_modules/nan": {
|
||||
"version": "2.17.0",
|
||||
"resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz",
|
||||
"integrity": "sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ=="
|
||||
},
|
||||
"node_modules/node-fetch": {
|
||||
"version": "2.6.12",
|
||||
"resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.12.tgz",
|
||||
"integrity": "sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g==",
|
||||
"dependencies": {
|
||||
"whatwg-url": "^5.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": "4.x || >=6.0.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"encoding": "^0.1.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"encoding": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/nopt": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz",
|
||||
"integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==",
|
||||
"dependencies": {
|
||||
"abbrev": "1"
|
||||
},
|
||||
"bin": {
|
||||
"nopt": "bin/nopt.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
},
|
||||
"node_modules/npmlog": {
|
||||
"version": "5.0.1",
|
||||
"resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz",
|
||||
"integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==",
|
||||
"dependencies": {
|
||||
"are-we-there-yet": "^2.0.0",
|
||||
"console-control-strings": "^1.1.0",
|
||||
"gauge": "^3.0.0",
|
||||
"set-blocking": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/object-assign": {
|
||||
"version": "4.1.1",
|
||||
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
|
||||
"integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/once": {
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
|
||||
"integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
|
||||
"dependencies": {
|
||||
"wrappy": "1"
|
||||
}
|
||||
},
|
||||
"node_modules/path-is-absolute": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
|
||||
"integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/readable-stream": {
|
||||
"version": "3.6.2",
|
||||
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
|
||||
"integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
|
||||
"dependencies": {
|
||||
"inherits": "^2.0.3",
|
||||
"string_decoder": "^1.1.1",
|
||||
"util-deprecate": "^1.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 6"
|
||||
}
|
||||
},
|
||||
"node_modules/rimraf": {
|
||||
"version": "3.0.2",
|
||||
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
|
||||
"integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
|
||||
"dependencies": {
|
||||
"glob": "^7.1.3"
|
||||
},
|
||||
"bin": {
|
||||
"rimraf": "bin.js"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
}
|
||||
},
|
||||
"node_modules/safe-buffer": {
|
||||
"version": "5.2.1",
|
||||
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
|
||||
"integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/feross"
|
||||
},
|
||||
{
|
||||
"type": "patreon",
|
||||
"url": "https://www.patreon.com/feross"
|
||||
},
|
||||
{
|
||||
"type": "consulting",
|
||||
"url": "https://feross.org/support"
|
||||
}
|
||||
]
|
||||
},
|
||||
"node_modules/semver": {
|
||||
"version": "7.5.4",
|
||||
"resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
|
||||
"integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
|
||||
"dependencies": {
|
||||
"lru-cache": "^6.0.0"
|
||||
},
|
||||
"bin": {
|
||||
"semver": "bin/semver.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/set-blocking": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
|
||||
"integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw=="
|
||||
},
|
||||
"node_modules/signal-exit": {
|
||||
"version": "3.0.7",
|
||||
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
|
||||
"integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ=="
|
||||
},
|
||||
"node_modules/simple-concat": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz",
|
||||
"integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/feross"
|
||||
},
|
||||
{
|
||||
"type": "patreon",
|
||||
"url": "https://www.patreon.com/feross"
|
||||
},
|
||||
{
|
||||
"type": "consulting",
|
||||
"url": "https://feross.org/support"
|
||||
}
|
||||
]
|
||||
},
|
||||
"node_modules/simple-get": {
|
||||
"version": "3.1.1",
|
||||
"resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz",
|
||||
"integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==",
|
||||
"dependencies": {
|
||||
"decompress-response": "^4.2.0",
|
||||
"once": "^1.3.1",
|
||||
"simple-concat": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/string_decoder": {
|
||||
"version": "1.3.0",
|
||||
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
|
||||
"integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
|
||||
"dependencies": {
|
||||
"safe-buffer": "~5.2.0"
|
||||
}
|
||||
},
|
||||
"node_modules/string-width": {
|
||||
"version": "4.2.3",
|
||||
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
|
||||
"integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
|
||||
"dependencies": {
|
||||
"emoji-regex": "^8.0.0",
|
||||
"is-fullwidth-code-point": "^3.0.0",
|
||||
"strip-ansi": "^6.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/strip-ansi": {
|
||||
"version": "6.0.1",
|
||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
|
||||
"integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
|
||||
"dependencies": {
|
||||
"ansi-regex": "^5.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/tar": {
|
||||
"version": "6.1.15",
|
||||
"resolved": "https://registry.npmjs.org/tar/-/tar-6.1.15.tgz",
|
||||
"integrity": "sha512-/zKt9UyngnxIT/EAGYuxaMYgOIJiP81ab9ZfkILq4oNLPFX50qyYmu7jRj9qeXoxmJHjGlbH0+cm2uy1WCs10A==",
|
||||
"dependencies": {
|
||||
"chownr": "^2.0.0",
|
||||
"fs-minipass": "^2.0.0",
|
||||
"minipass": "^5.0.0",
|
||||
"minizlib": "^2.1.1",
|
||||
"mkdirp": "^1.0.3",
|
||||
"yallist": "^4.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/tr46": {
|
||||
"version": "0.0.3",
|
||||
"resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
|
||||
"integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="
|
||||
},
|
||||
"node_modules/typescript": {
|
||||
"version": "5.1.6",
|
||||
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz",
|
||||
"integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==",
|
||||
"dev": true,
|
||||
"bin": {
|
||||
"tsc": "bin/tsc",
|
||||
"tsserver": "bin/tsserver"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14.17"
|
||||
}
|
||||
},
|
||||
"node_modules/util-deprecate": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
|
||||
"integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="
|
||||
},
|
||||
"node_modules/webidl-conversions": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
|
||||
"integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ=="
|
||||
},
|
||||
"node_modules/whatwg-url": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
|
||||
"integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
|
||||
"dependencies": {
|
||||
"tr46": "~0.0.3",
|
||||
"webidl-conversions": "^3.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/wide-align": {
|
||||
"version": "1.1.5",
|
||||
"resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz",
|
||||
"integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==",
|
||||
"dependencies": {
|
||||
"string-width": "^1.0.2 || 2 || 3 || 4"
|
||||
}
|
||||
},
|
||||
"node_modules/wrappy": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
||||
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
|
||||
},
|
||||
"node_modules/yallist": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
|
||||
"integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
|
||||
}
|
||||
}
|
||||
}
|
17
posts/2023/06/flam3/package.json
Normal file
@ -0,0 +1,17 @@
|
||||
{
|
||||
"name": "blog-flam3",
|
||||
"version": "1.0.0",
|
||||
"description": "",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"render": "tsc && node ./dist/offline.js"
|
||||
},
|
||||
"author": "",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"canvas": "^2.11.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"typescript": "^5.1.6"
|
||||
}
|
||||
}
|
14
posts/2023/06/flam3/tsconfig.json
Normal file
@ -0,0 +1,14 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"target": "ES2020",
|
||||
"module": "ESNext",
|
||||
"lib": ["DOM", "ES2021"],
|
||||
"moduleResolution": "node",
|
||||
"esModuleInterop": true,
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"strict": true,
|
||||
"skipLibCheck": true,
|
||||
"outDir": "./dist"
|
||||
},
|
||||
"exclude": ["*.tsx"]
|
||||
}
|
@ -1,120 +0,0 @@
|
||||
<Flames name="variations">
|
||||
<flame name="post xform" version="Apophysis 2.08 beta" size="600 600" center="0 0" scale="150" oversample="1" filter="0.2" quality="1" background="0 0 0" brightness="4" gamma="4" >
|
||||
<xform weight="0.422330042096567" color="0" pdj="1" coefs="1.51523 0.740356 -3.048677 -1.455964 0.724135 -0.362059" pdj_a="1.09358" pdj_b="2.13048" pdj_c="2.54127" pdj_d="2.37267" />
|
||||
<xform weight="0.564534951145298" color="0" julia="1" coefs="-1.381068 1.381068 -1.381068 -1.381068 0 0" />
|
||||
<xform weight="0.0131350067581356" color="0" linear="1" popcorn="1" coefs="0.031393 -0.031367 0.031367 0.031393 0 0" post="1 0 0 1 0.241352 0.271521" />
|
||||
<palette count="256" format="RGB">
|
||||
3A78875998AA5E9DAC78B1C2599BAB36798A2252601B3438
|
||||
1823270D1215080705010101000000000002080A090A0809
|
||||
0C070D0B090A030406010101000000000000000000000000
|
||||
0A00000B0A080E1213101B1F21202830243A6737357A3C31
|
||||
864424643A22452F1838251427190E1C12080E0F110E1213
|
||||
1014152110183720105D320FA0531F9144180409080A1312
|
||||
0C13140E13160E15160E17160F16171015180B161C0A1225
|
||||
0A0F2F101E37172E40294C5A3B6B7549798758879975A9BE
|
||||
79A7BF7EA6C0949FA2AA9985B7A27BC4AB72AC965A867654
|
||||
61574E4C4D48374343474141573F3F7C5C36B0914EC1DFF9
|
||||
C4E4FAC8E9FCBEE1F4B5DAEDB2D8EDB0D6ED5398A7386D78
|
||||
1D424A1B3B4219343B1B383E1D3C411D3B462155623D7C8B
|
||||
46747F4F6C74636454785C3584663E917047BEA467CEA86A
|
||||
DEAC6DC5975EAC834F916E41765A335F3D21431F21241625
|
||||
1F202B1A2B321A2D321B30331B323A1628360E1D220E1D21
|
||||
0F1D20101C1F111C1E111D1E121E1E2B21153B2B1B725432
|
||||
85542C9854279B63369F7346AD7C3AB2763AB18F4FB39453
|
||||
B69957B99B56BC9E56C19651CB9346AB6A2A9851254E341D
|
||||
2F261B10181A0E15160C12120D11120A10100D0D0D0C0E0E
|
||||
0B0F100B10120C11140F191A101F221829331A373B1E3D52
|
||||
1A40551744591D556420424C1E3B431D3C41112C33102328
|
||||
101B1D10191E111820101D2311242A1B33371B3A3F276476
|
||||
3E637D556284545F7D7759355C41261B30290E16180B0F0F
|
||||
0908060405030002010A0E0F12171A1C1B2B17343C3C7481
|
||||
467F8F508A9E528FA23E81923769722E69772248512B545E
|
||||
35616C688589807F85939FB5ABD6E6B3D6EA89B7CE5891A4
|
||||
467E92356C81194A6B1A373F132C310E1C1F050409020205
|
||||
0000020000000101010800000B0000170A000D0D0D0D1110
|
||||
0F0E14100F141F11082619082F1904210F05111717101919
|
||||
0F1B1B101F22182C2B252E2B282D311B2E321A2E2F162E30
|
||||
1325270E191B0F1314190D0F2E1211461A27552227612723
|
||||
6C303A56213D3033381C343619343B15383E193A431A4E5C
|
||||
</palette>
|
||||
</flame>
|
||||
<flame name="final xform" version="Apophysis 2.08 beta" size="600 600" center="0 0" scale="150" oversample="1" filter="0.2" quality="1" background="0 0 0" brightness="4" gamma="4" >
|
||||
<xform weight="0.422330042096567" color="0" pdj="1" coefs="1.51523 0.740356 -3.048677 -1.455964 0.724135 -0.362059" pdj_a="1.09358" pdj_b="2.13048" pdj_c="2.54127" pdj_d="2.37267" />
|
||||
<xform weight="0.564534951145298" color="0" julia="1" coefs="-1.381068 1.381068 -1.381068 -1.381068 0 0" />
|
||||
<xform weight="0.0131350067581356" color="0" linear="1" popcorn="1" coefs="0.031393 -0.031367 0.031367 0.031393 0 0" post="1 0 0 1 0.241352 0.271521" />
|
||||
<finalxform color="0" symmetry="1" julia="1" coefs="2 0 0 2 0 0" />
|
||||
<palette count="256" format="RGB">
|
||||
3A78875998AA5E9DAC78B1C2599BAB36798A2252601B3438
|
||||
1823270D1215080705010101000000000002080A090A0809
|
||||
0C070D0B090A030406010101000000000000000000000000
|
||||
0A00000B0A080E1213101B1F21202830243A6737357A3C31
|
||||
864424643A22452F1838251427190E1C12080E0F110E1213
|
||||
1014152110183720105D320FA0531F9144180409080A1312
|
||||
0C13140E13160E15160E17160F16171015180B161C0A1225
|
||||
0A0F2F101E37172E40294C5A3B6B7549798758879975A9BE
|
||||
79A7BF7EA6C0949FA2AA9985B7A27BC4AB72AC965A867654
|
||||
61574E4C4D48374343474141573F3F7C5C36B0914EC1DFF9
|
||||
C4E4FAC8E9FCBEE1F4B5DAEDB2D8EDB0D6ED5398A7386D78
|
||||
1D424A1B3B4219343B1B383E1D3C411D3B462155623D7C8B
|
||||
46747F4F6C74636454785C3584663E917047BEA467CEA86A
|
||||
DEAC6DC5975EAC834F916E41765A335F3D21431F21241625
|
||||
1F202B1A2B321A2D321B30331B323A1628360E1D220E1D21
|
||||
0F1D20101C1F111C1E111D1E121E1E2B21153B2B1B725432
|
||||
85542C9854279B63369F7346AD7C3AB2763AB18F4FB39453
|
||||
B69957B99B56BC9E56C19651CB9346AB6A2A9851254E341D
|
||||
2F261B10181A0E15160C12120D11120A10100D0D0D0C0E0E
|
||||
0B0F100B10120C11140F191A101F221829331A373B1E3D52
|
||||
1A40551744591D556420424C1E3B431D3C41112C33102328
|
||||
101B1D10191E111820101D2311242A1B33371B3A3F276476
|
||||
3E637D556284545F7D7759355C41261B30290E16180B0F0F
|
||||
0908060405030002010A0E0F12171A1C1B2B17343C3C7481
|
||||
467F8F508A9E528FA23E81923769722E69772248512B545E
|
||||
35616C688589807F85939FB5ABD6E6B3D6EA89B7CE5891A4
|
||||
467E92356C81194A6B1A373F132C310E1C1F050409020205
|
||||
0000020000000101010800000B0000170A000D0D0D0D1110
|
||||
0F0E14100F141F11082619082F1904210F05111717101919
|
||||
0F1B1B101F22182C2B252E2B282D311B2E321A2E2F162E30
|
||||
1325270E191B0F1314190D0F2E1211461A27552227612723
|
||||
6C303A56213D3033381C343619343B15383E193A431A4E5C
|
||||
</palette>
|
||||
</flame>
|
||||
<flame name="baseline" version="Apophysis 2.08 beta" size="600 600" center="0 0" scale="150" oversample="1" filter="0.2" quality="1" background="0 0 0" brightness="4" gamma="4" >
|
||||
<xform weight="0.422330042096567" color="0" pdj="1" coefs="1.51523 0.740356 -3.048677 -1.455964 0.724135 -0.362059" pdj_a="1.09358" pdj_b="2.13048" pdj_c="2.54127" pdj_d="2.37267" />
|
||||
<xform weight="0.564534951145298" color="0.13" julia="1" coefs="-1.381068 1.381068 -1.381068 -1.381068 0 0" />
|
||||
<xform weight="0.0131350067581356" color="0.844" linear="1" popcorn="1" coefs="0.031393 -0.031367 0.031367 0.031393 0 0" />
|
||||
<palette count="256" format="RGB">
|
||||
FF0000D31616BD2121A72C2C9137377C4242714747664D4D
|
||||
3A63631D7171008080008B8B00969600A1A100ACAC00B1B1
|
||||
00B7B700CCCC00D7D700E2E200EDED00F8F800FBFB00FFFF
|
||||
2CF0FF42E8FF58E0FF6DD8FF83D1FF8ECDFF99C9FFAFC2FF
|
||||
C5BAFFFFA6FFE9A2FFD39FFFBD9CFFA799FF9C97FF9196FF
|
||||
668FFF508CFF3A89FF2485FF0E82FF0781FF0080FF0B80FF
|
||||
1680FF2C80FF3780FF4280FF4D80FF5880FF5D80FF6380FF
|
||||
7980FF7785F4758BE96A96D35FA1BD59A6B254ACA749B791
|
||||
3EC17C28D7501DE23A12ED2409F61200FF0016E9002CD300
|
||||
58A7006D9100837C00996600AF5000BA4500C53A00DB2400
|
||||
F10E00E90B00D31600BD2100B22600A72C009137007C4200
|
||||
5058003A6300246E001973000E79000080000A7500146A00
|
||||
1E5F003249003C3E004633004B2D005028005A1D00651200
|
||||
8100008C00009800009E0000A40000AF0000BB0000C70000
|
||||
D20000EA0000F00000F60000FD0000F2160BE82C16DD4221
|
||||
C76E37BC8342B2994DACA452A7AF589CC56392DB6E87F179
|
||||
80FF8080E99680E39B80DEA180D3AC80C8B780BEC180B3CC
|
||||
809DE2808EF08080FF7A80F47580E96A80D35F80BD5480A7
|
||||
4980913380662D805B2880501D803A12802407800E008000
|
||||
2C841A3784204285265887336E8940838B4D998D5AAF8E66
|
||||
C59073FF9595FF9393FF9292FF9090FF8D8DFF8B8BFF8888
|
||||
FF8383FF8181FF8080FF7E7EFF7B7BFF7979FF7777FF7783
|
||||
FF768EFF769AFF75A6FF75B1FF74BDFF74C9FF73D4FF73E0
|
||||
FF72F8FF71FBFF71FFFF6BEDFF65DBFF5FC9FF5AB7FF54A5
|
||||
FF4E93FF4881FF426FFF3C5DFF374BFF2D2DFA293AF62548
|
||||
F12155ED1E63E81A70E4167EDF128BDB0E99D60AA6D106B4
|
||||
CD02C1CA00CACC00B9CE00A7CF0096D10085D30073D50062
|
||||
D70050D8003FDA002EDC001CDE000BDF0000D90C06D4180C
|
||||
CE2413C82F19C33B1FBD4725B7532BB25F32AC6B38A6773E
|
||||
9D8A489D7E429E723C9E66359F5B2FA04F29A04323A1371D
|
||||
A12B16A21F10A3130AA30804A40000A000009C0000980000
|
||||
9400009000008C00008800008400008000007C0000750000
|
||||
</palette>
|
||||
</flame>
|
||||
</Flames>
|