mirror of
https://github.com/janishutz/libreevent.git
synced 2025-11-25 13:24:24 +00:00
seat numbering algorithm working
This commit is contained in:
File diff suppressed because one or more lines are too long
@@ -67,7 +67,7 @@ export default {
|
|||||||
let details = { 'data': {}, 'id': this.id };
|
let details = { 'data': {}, 'id': this.id };
|
||||||
for ( let row = this.startingRow; row < count; row++ ) {
|
for ( let row = this.startingRow; row < count; row++ ) {
|
||||||
let nn = row * ( Math.PI / 2 );
|
let nn = row * ( Math.PI / 2 );
|
||||||
details.data[ row ] = Math.floor( nn );
|
details.data[ row - 1 ] = Math.ceil( nn );
|
||||||
let r = row * size;
|
let r = row * size;
|
||||||
this.seats[ row ] = {};
|
this.seats[ row ] = {};
|
||||||
for ( let n = 0; n < nn; n++ ) {
|
for ( let n = 0; n < nn; n++ ) {
|
||||||
|
|||||||
@@ -72,7 +72,7 @@ export default {
|
|||||||
for ( let row = this.startingRow; row < count; row++ ) {
|
for ( let row = this.startingRow; row < count; row++ ) {
|
||||||
let nn = 2 + ( row - 1 ) * 2;
|
let nn = 2 + ( row - 1 ) * 2;
|
||||||
this.seats[ row ] = {};
|
this.seats[ row ] = {};
|
||||||
details.data[ row ] = Math.floor( nn );
|
details.data[ row - 1 ] = Math.floor( nn );
|
||||||
for ( let n = 0; n < nn; n++ ) {
|
for ( let n = 0; n < nn; n++ ) {
|
||||||
let side = n * sideOffset;
|
let side = n * sideOffset;
|
||||||
if ( this.origin === 1 ) {
|
if ( this.origin === 1 ) {
|
||||||
|
|||||||
@@ -73,10 +73,13 @@ export default {
|
|||||||
console.log( this.data.seatInfo );
|
console.log( this.data.seatInfo );
|
||||||
let offsets = {};
|
let offsets = {};
|
||||||
if ( this.data.seatInfo ) {
|
if ( this.data.seatInfo ) {
|
||||||
for ( let element in this.data.seatInfo.data ) {
|
for ( let element in this.data.seatInfo.data[ this.data.sector ] ) {
|
||||||
if ( this.data.seatInfo.data[ element ] > this.data.seatNumbering ) {
|
if ( element < this.data.seatNumbering ) {
|
||||||
for ( let row in this.data.seatInfo.data[ element ] ) {
|
for ( let row in this.data.seatInfo.data[ this.data.sector ][ element ] ) {
|
||||||
offsets[ row ] += this.data.seatInfo.data[ element ][ row ];
|
if ( row !== 'startingRow' ) {
|
||||||
|
if ( !offsets[ row ] ) offsets[ row ] = 0;
|
||||||
|
offsets[ row ] += this.data.seatInfo.data[ this.data.sector ][ element ][ row ];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -90,8 +93,8 @@ export default {
|
|||||||
let nn = row * ( Math.PI / 2 );
|
let nn = row * ( Math.PI / 2 );
|
||||||
let r = row * size;
|
let r = row * size;
|
||||||
this.seats[ row ] = {};
|
this.seats[ row ] = {};
|
||||||
for ( let n = ( offsets[ row ] ?? 0 ); n < ( nn + ( offsets[ row ] ?? 0 ) ); n++ ) {
|
for ( let n = 0; n < nn; n++ ) {
|
||||||
const seatNumber = this.data.numberingDirection === 'right' ? ( Math.floor( w / size ) + ( offsets[ row ] ?? 0 ) ) - n: n;
|
const seatNumber = this.data.numberingDirection === 'right' ? nn - n: n + ( offsets[ row - 1 ] ?? 0 );
|
||||||
this.seats[ row ][ n ] = {
|
this.seats[ row ][ n ] = {
|
||||||
'style': '',
|
'style': '',
|
||||||
'id': 'comp' + this.id + 'sec' + this.data.sector + 'r' + row + 's' + seatNumber,
|
'id': 'comp' + this.id + 'sec' + this.data.sector + 'r' + row + 's' + seatNumber,
|
||||||
|
|||||||
@@ -75,11 +75,15 @@ export default {
|
|||||||
// Size of seat at scale 1 is 32px
|
// Size of seat at scale 1 is 32px
|
||||||
// w & h are normalised
|
// w & h are normalised
|
||||||
let offsets = {};
|
let offsets = {};
|
||||||
|
console.log( this.data.seatInfo );
|
||||||
if ( this.data.seatInfo ) {
|
if ( this.data.seatInfo ) {
|
||||||
for ( let element in this.data.seatInfo.data ) {
|
for ( let element in this.data.seatInfo.data[ this.data.sector ] ) {
|
||||||
if ( this.data.seatInfo.data[ element ] > this.data.seatNumbering ) {
|
if ( element < this.data.seatNumbering ) {
|
||||||
for ( let row in this.data.seatInfo.data[ element ] ) {
|
for ( let row in this.data.seatInfo.data[ this.data.sector ][ element ] ) {
|
||||||
offsets[ row ] += this.data.seatInfo.data[ element ][ row ];
|
if ( row !== 'startingRow' ) {
|
||||||
|
if ( !offsets[ row ] ) offsets[ row ] = 0;
|
||||||
|
offsets[ row ] += this.data.seatInfo.data[ this.data.sector ][ element ][ row ];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -90,8 +94,8 @@ export default {
|
|||||||
this.seats = {};
|
this.seats = {};
|
||||||
for ( let row = 0; row < Math.floor( h / size ); row++ ) {
|
for ( let row = 0; row < Math.floor( h / size ); row++ ) {
|
||||||
this.seats[ row ] = {};
|
this.seats[ row ] = {};
|
||||||
for ( let n = ( offsets[ row ] ?? 0 ); n < ( Math.floor( w / size ) + ( offsets[ row ] ?? 0 ) ); n++ ) {
|
for ( let n = 0; n < Math.floor( w / size ); n++ ) {
|
||||||
const seatNumber = this.data.numberingDirection === 'right' ? ( Math.floor( w / size ) + ( offsets[ row ] ?? 0 ) ) - n: n;
|
const seatNumber = this.data.numberingDirection === 'right' ? Math.floor( w / size ) - n: n + ( offsets[ row ] ?? 0 );
|
||||||
this.seats[ row ][ n ] = {
|
this.seats[ row ][ n ] = {
|
||||||
'style': '',
|
'style': '',
|
||||||
'id': 'comp' + this.id + 'sec' + this.data.sector + 'r' + row + 's' + seatNumber,
|
'id': 'comp' + this.id + 'sec' + this.data.sector + 'r' + row + 's' + seatNumber,
|
||||||
|
|||||||
@@ -70,13 +70,15 @@ export default {
|
|||||||
calculateChairs () {
|
calculateChairs () {
|
||||||
// Size of seat at scale 1 is 32px
|
// Size of seat at scale 1 is 32px
|
||||||
// w & h are normalised
|
// w & h are normalised
|
||||||
// TODO: update to new algorithm
|
|
||||||
let offsets = {};
|
let offsets = {};
|
||||||
if ( this.data.seatInfo ) {
|
if ( this.data.seatInfo ) {
|
||||||
for ( let element in this.data.seatInfo.data ) {
|
for ( let element in this.data.seatInfo.data[ this.data.sector ] ) {
|
||||||
if ( this.data.seatInfo.data[ element ] > this.data.seatNumbering ) {
|
if ( element < this.data.seatNumbering ) {
|
||||||
for ( let row in this.data.seatInfo.data[ element ] ) {
|
for ( let row in this.data.seatInfo.data[ this.data.sector ][ element ] ) {
|
||||||
offsets[ row ] += this.data.seatInfo.data[ element ][ row ];
|
if ( row !== 'startingRow' ) {
|
||||||
|
if ( !offsets[ row ] ) offsets[ row ] = 0;
|
||||||
|
offsets[ row ] += this.data.seatInfo.data[ this.data.sector ][ element ][ row ];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -93,8 +95,8 @@ export default {
|
|||||||
for ( let row = this.startingRow; row < count; row++ ) {
|
for ( let row = this.startingRow; row < count; row++ ) {
|
||||||
let nn = 2 + ( row - 1 ) * 2;
|
let nn = 2 + ( row - 1 ) * 2;
|
||||||
this.seats[ row ] = {};
|
this.seats[ row ] = {};
|
||||||
for ( let n = ( offsets[ row ] ?? 0 ); n < ( nn + ( offsets[ row ] ?? 0 ) ); n++ ) {
|
for ( let n = 0; n < nn; n++ ) {
|
||||||
const seatNumber = this.data.numberingDirection === 'right' ? ( Math.floor( w / size ) + ( offsets[ row ] ?? 0 ) ) - n: n;
|
const seatNumber = this.data.numberingDirection === 'right' ? nn - n: n + ( offsets[ row - 1 ] ?? 0 );
|
||||||
this.seats[ row ][ n ] = {
|
this.seats[ row ][ n ] = {
|
||||||
'style': '',
|
'style': '',
|
||||||
'id': 'comp' + this.id + 'sec' + this.data.sector + 'r' + row + 's' + seatNumber,
|
'id': 'comp' + this.id + 'sec' + this.data.sector + 'r' + row + 's' + seatNumber,
|
||||||
|
|||||||
Reference in New Issue
Block a user