From 9b26aa76298ee40e18e11dc5f6733b4bf68e3ee7 Mon Sep 17 00:00:00 2001 From: gbrochar Date: Sat, 28 Nov 2020 13:50:06 +0100 Subject: [PATCH] setup instance lock for scene editing --- src/client/init.ts | 10 +++++++++- src/client/uijquery.ts | 17 ++++++++++++++++- views/index.ejs | 10 ++++++++++ 3 files changed, 35 insertions(+), 2 deletions(-) diff --git a/src/client/init.ts b/src/client/init.ts index cbaa63e..6b143ea 100644 --- a/src/client/init.ts +++ b/src/client/init.ts @@ -6,6 +6,14 @@ import {fetchObj, loadObj} from './objutils'; * @param {any} context the program context */ export function initParams(context: any) { + let instanceNumber = parseFloat($('#instance').val()); + if (($('input[name=instance]:checked', '#instanceoptions').val() == + 'one')) { + instanceNumber = 1; + } else if (($('input[name=instance]:checked', '#instanceoptions').val() == + 'zero')) { + instanceNumber = 0; + } context.params = { distance: parseFloat($('#distance').val()) + parseFloat($('#distancefine').val()), @@ -29,7 +37,7 @@ export function initParams(context: any) { z: parseFloat($('#scalez').val()), }, rotSpeed: parseFloat($('#rotspeed').val()), - instanceNumber: parseFloat($('#instance').val()), + instanceNumber: instanceNumber, squareRotation: 0, camRot: { x: 0, diff --git a/src/client/uijquery.ts b/src/client/uijquery.ts index cc9f97d..e087e05 100644 --- a/src/client/uijquery.ts +++ b/src/client/uijquery.ts @@ -28,7 +28,10 @@ export function uiUpdateParams(params: any) { params.circleSize = parseFloat($('#circlesize').val()); }); $('#instance').on('input', () => { - params.instanceNumber = parseFloat($('#instance').val()); + if ($('input[name=instance]:checked', '#instanceoptions').val() == + 'normal') { + params.instanceNumber = parseFloat($('#instance').val()); + } }); $('#rotx').on('input', () => { params.rot.x = parseFloat($('#rotx').val()); @@ -63,6 +66,18 @@ export function uiUpdateParams(params: any) { $('#fov').on('input', () => { params.fov = parseFloat($('#fov').val()); }); + $('#instanceoptions input').on('change', () => { + if ($('input[name=instance]:checked', '#instanceoptions').val() == + 'normal') { + params.instanceNumber = parseFloat($('#instance').val()); + } else if ( + ($('input[name=instance]:checked', '#instanceoptions').val() == + 'one')) { + params.instanceNumber = 1; + } else { + params.instanceNumber = 0; + } + }); } /** diff --git a/views/index.ejs b/views/index.ejs index 2593a53..3034c64 100644 --- a/views/index.ejs +++ b/views/index.ejs @@ -50,6 +50,16 @@
Change instances number:
+
+
+ + + + + + +
+
Change rotation:
X: