@openbraininstitute/morphoviewer 0.35.0 → 0.35.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/morpho-viewer-somas-only/manager/painter-soma-cloud.d.ts.map +1 -1
- package/dist/components/morpho-viewer-somas-only/manager/painter-soma-cloud.js +20 -8
- package/dist/package.json +1 -1
- package/dist/spikes/spiking-circuit.d.ts +1 -1
- package/dist/spikes/spiking-circuit.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"painter-soma-cloud.d.ts","sourceRoot":"","sources":["../../../../src/components/morpho-viewer-somas-only/manager/painter-soma-cloud.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,UAAU,EAMX,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"painter-soma-cloud.d.ts","sourceRoot":"","sources":["../../../../src/components/morpho-viewer-somas-only/manager/painter-soma-cloud.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,UAAU,EAMX,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AA+B/D,MAAM,WAAW,uBAAuB;IAEtC,SAAS,EAAE,YAAY,CAAC;IAExB,MAAM,EAAE,YAAY,CAAC;IAErB,OAAO,EAAE,YAAY,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAkBD,qBAAa,gBAAiB,SAAQ,UAAU;aAc5B,OAAO,EAAE,UAAU;IAbrC,SAAgB,KAAK,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IAEhC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2B;IACrD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAa;IACrC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAiB;IAErC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,UAAU,CAAS;gBAGT,OAAO,EAAE,UAAU,EACnC,OAAO,EAAE,uBAAuB;IAyClC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,YAAY,CAAC;IAwBpC,KAAK;IAcL,MAAM;CAIP"}
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
import { TgdDataset, TgdPainter, TgdPainterPointsCloud, TgdProgram, TgdShaderFragment, TgdShaderVertex, TgdVertexArray, } from "@tolokoban/tgd";
|
|
2
|
-
const DEFAULT_GLOW_COLOR = [1, 0.
|
|
3
|
-
const
|
|
2
|
+
const DEFAULT_GLOW_COLOR = [1, 0.97, 0.88];
|
|
3
|
+
const GLOW_BOOST = 2.2;
|
|
4
|
+
const GLOW_WHITEN = 0.35;
|
|
5
|
+
const GLOW_EMISSION = 0.2;
|
|
6
|
+
const GLOW_RIM_START = 0.9;
|
|
7
|
+
const GLOW_RIM_COLOR = [0.3, 0.26, 0.2];
|
|
8
|
+
const GLOW_BIAS = 0.4;
|
|
9
|
+
const DEFAULT_GLOW_SWELL = 0.7;
|
|
4
10
|
export class PainterSomaCloud extends TgdPainter {
|
|
5
11
|
constructor(context, options) {
|
|
6
12
|
var _a, _b, _c;
|
|
@@ -84,8 +90,9 @@ function createProgram(context, glowColor, glowSwell) {
|
|
|
84
90
|
},
|
|
85
91
|
mainCode: [
|
|
86
92
|
"varColor = texture(uniTexture, attUV);",
|
|
87
|
-
|
|
88
|
-
|
|
93
|
+
`float glow = pow(attGlow, ${GLOW_BIAS.toFixed(6)});`,
|
|
94
|
+
"varGlow = glow;",
|
|
95
|
+
`float radius = attPoint.w * uniRadiusMultiplier * (1.0 + glow * ${glowSwell.toFixed(6)});`,
|
|
89
96
|
"vec4 point = uniModelViewMatrix * vec4(attPoint.xyz, 1.0);",
|
|
90
97
|
"gl_Position = uniProjectionMatrix * point;",
|
|
91
98
|
"vec4 depth = point + vec4(0, 0, radius, 0);",
|
|
@@ -121,11 +128,16 @@ function createProgram(context, glowColor, glowSwell) {
|
|
|
121
128
|
],
|
|
122
129
|
},
|
|
123
130
|
mainCode: [
|
|
124
|
-
|
|
125
|
-
`
|
|
126
|
-
|
|
131
|
+
`vec3 glowColor = vec3(${red.toFixed(6)}, ${green.toFixed(6)}, ${blue.toFixed(6)});`,
|
|
132
|
+
`float rim = varGlow * smoothstep(${GLOW_RIM_START.toFixed(6)}, 1.0, length(varPointCoord));`,
|
|
133
|
+
`vec3 hotAlbedo = mix(min(varColor.rgb * ${GLOW_BOOST.toFixed(6)}, vec3(1.0)), glowColor, ${GLOW_WHITEN.toFixed(6)});`,
|
|
134
|
+
"vec3 albedo = mix(varColor.rgb, hotAlbedo, varGlow);",
|
|
135
|
+
"vec4 lit = render(vec4(albedo, varColor.a));",
|
|
136
|
+
`vec3 hot = lit.rgb + varGlow * ${GLOW_EMISSION.toFixed(6)} * albedo;`,
|
|
137
|
+
`vec3 rimColor = vec3(${GLOW_RIM_COLOR.map((c) => c.toFixed(6)).join(", ")});`,
|
|
138
|
+
"FragColor = vec4(mix(hot, rimColor, rim), mix(lit.a, 1.0, varGlow));",
|
|
127
139
|
],
|
|
128
140
|
}).code;
|
|
129
141
|
return new TgdProgram(context.gl, { vert, frag });
|
|
130
142
|
}
|
|
131
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
143
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFpbnRlci1zb21hLWNsb3VkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9ycGhvLXZpZXdlci1zb21hcy1vbmx5L21hbmFnZXIvcGFpbnRlci1zb21hLWNsb3VkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxVQUFVLEVBQ1YsVUFBVSxFQUNWLHFCQUFxQixFQUNyQixVQUFVLEVBQ1YsaUJBQWlCLEVBQ2pCLGVBQWUsRUFDZixjQUFjLEdBQ2YsTUFBTSxnQkFBZ0IsQ0FBQztBQWF4QixNQUFNLGtCQUFrQixHQUE2QixDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFFckUsTUFBTSxVQUFVLEdBQUcsR0FBRyxDQUFDO0FBRXZCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQztBQUV6QixNQUFNLGFBQWEsR0FBRyxHQUFHLENBQUM7QUFFMUIsTUFBTSxjQUFjLEdBQUcsR0FBRyxDQUFDO0FBRTNCLE1BQU0sY0FBYyxHQUE2QixDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFFbEUsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFDO0FBTXRCLE1BQU0sa0JBQWtCLEdBQUcsR0FBRyxDQUFDO0FBOEIvQixNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsVUFBVTtJQWE5QyxZQUNrQixPQUFtQixFQUNuQyxPQUFnQzs7UUFFaEMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFIVixZQUFPLEdBQVAsT0FBTyxDQUFZO1FBSDdCLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFPekIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDO1FBQy9CLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxNQUFBLE9BQU8sQ0FBQyxnQkFBZ0IsbUNBQUksQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxTQUFTLEdBQUcsTUFBQSxPQUFPLENB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
|
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { MorphoViewerSpikes } from "./types";
|
|
2
2
|
export declare const DEFAULT_SPIKE_SPEED = 100;
|
|
3
|
-
export declare const DEFAULT_SPIKE_AFTERGLOW_IN_SECONDS = 0.
|
|
3
|
+
export declare const DEFAULT_SPIKE_AFTERGLOW_IN_SECONDS = 0.25;
|
|
4
4
|
export declare class SpikingCircuit {
|
|
5
5
|
private spikes;
|
|
6
6
|
private _glow;
|