From 26cb7b318a80fe4175b1b66572b86ef73c7c26f8 Mon Sep 17 00:00:00 2001 From: Lino Schmidt Date: Fri, 13 May 2022 18:40:58 +0200 Subject: [PATCH] Added APPDATA saving --- src/assets/blenderScript.py | 4 +++- src/js/render.js | 17 +++++++++++------ 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/src/assets/blenderScript.py b/src/assets/blenderScript.py index 08033fa..64a2bfb 100644 --- a/src/assets/blenderScript.py +++ b/src/assets/blenderScript.py @@ -1,11 +1,13 @@ import csv +from importlib.resources import path import logging import math import sys import bpy import xml.etree.ElementTree as ET +import os -settings = ET.parse("./src/settings.xml") +settings = ET.parse(os.path.join(os.getenv('APPDATA'), "StickExporterTX", "settings.xml")) logger = logging.getLogger('simple_example') logger.setLevel(logging.INFO) diff --git a/src/js/render.js b/src/js/render.js index 06a7330..5618e7e 100644 --- a/src/js/render.js +++ b/src/js/render.js @@ -7,7 +7,7 @@ var fps = 25 var width = 540 var stickDistance = 5 var stickMode2 = true -var log = "C:\\" +var log = '"C:\\"' var output = "C:\\" const statusDisplay = document.getElementById("status"); @@ -23,14 +23,19 @@ const logger = require('electron-log'); const fs = require("fs"); const formatXml = require("xml-formatter"); const {dialog} = require("@electron/remote"); +const path = require('path'); + +var appName = "stickexportertx"; +var dataFolder = path.join(process.env.APPDATA, appName); +var SettingFolder = path.join(dataFolder, "settings.xml"); logger.transports.console.format = "{h}:{i}:{s} {text}"; logger.transports.file.getFile(); -logger.transports.file.resolvePath = () => 'logs/main.log'; +logger.transports.file.resolvePath = () => path.join(dataFolder, "logs", "main.log"); function startRender() { const {exec} = require("child_process"); - var blenderCons = exec("\"blender/blender\" src\\assets\\template.blend --background --python src\\assets\\blenderScript.py", {maxBuffer: Infinity}); + var blenderCons = exec('"' + dataFolder + '\\assets\\blender\\blender" "' + dataFolder + '\\assets\\template.blend" --background --python "' + dataFolder + '\\assets\\blenderScript.py"', {maxBuffer: Infinity}); frames = "0"; lastFrame = "0"; @@ -95,16 +100,16 @@ function updateSettings() { '' + output + ''; - fs.writeFile("src/settings.xml", formatXml(xmlStr, {collapseContent: true}), function(err) { + fs.writeFile(SettingFolder, formatXml(xmlStr, {collapseContent: true}), function(err) { if(err) { statusDisplay.innerHTML = "Couldn't write Log! Check Logs."; statusDisplay.style.color = "red"; - logger.error(error); + logger.error(err); } }); } -fetch("settings.xml").then(function(response){ +fetch(SettingFolder).then(function(response){ return response.text(); }).then(function(data){ let parser = new DOMParser();