backup commit

This commit is contained in:
skybldev
2024-08-30 10:22:46 -04:00
parent 1ee8ab8e74
commit 97ab6a5832
2 changed files with 32 additions and 3 deletions

View File

@@ -18,7 +18,7 @@ program
.option("-i, --stdin", "read the base keyframe data from stdin") .option("-i, --stdin", "read the base keyframe data from stdin")
.option("-r, --round", "round all generated values.\nyou can set this in the KE_ROUND environment variable", KE_ROUND) .option("-r, --round", "round all generated values.\nyou can set this in the KE_ROUND environment variable", KE_ROUND)
.addHelpText("beforeAll", "kdenease.js - generate eases for kdenlive using a cubic bezier curve") .addHelpText("beforeAll", "kdenease.js - generate eases for kdenlive using a cubic bezier curve")
.addHelpText("after", "you can use -i to read keyframe data from stdin and overwrite the selected values to the generated values."); .addHelpText("after", "\nyou can use -i to read keyframe data from stdin and overwrite the selected values to the generated values.");
function decodeKeyframes(kfString) { function decodeKeyframes(kfString) {
let out = {}; let out = {};
@@ -191,8 +191,11 @@ async function main() {
} else { } else {
for (let frame in newValues) { for (let frame in newValues) {
if (!baseJSON.value.hasOwnProperty(frame)) { if (!baseJSON.value.hasOwnProperty(frame)) {
const lastFrame = (frame - 1).toString(); const l = (() => { // last existing keyframe's value
const l = baseJSON.value[lastFrame]; for (let f = parseInt(frame); f >= firstFrame; f--) {
if (baseJSON.value.hasOwnProperty(f)) return baseJSON.value[f];
}
})();
baseJSON.value[frame] = { x: l.x, y: l.y, w: l.w, h: l.h }; baseJSON.value[frame] = { x: l.x, y: l.y, w: l.w, h: l.h };
} }

26
test.js Normal file
View File

@@ -0,0 +1,26 @@
const a = {
"2100": 30,
"2101": 31,
"2102": 32,
"2103": 33,
};
const b = {
"2100": 31,
"2101": 32,
"2102": 33,
"2103": 34,
"2104": 35,
"2105": 36,
"2106": 37
};
for (let el in b) {
if (!a[el]) {
a[el] = a[el - 1];
}
a[el] = b[el];
console.dir({ element: el, value: a });
}