33
src/types/coordinates.ts
Normal file
33
src/types/coordinates.ts
Normal file
@@ -0,0 +1,33 @@
|
||||
export default class Coordinates {
|
||||
mIndex : number
|
||||
rIndex : number
|
||||
eIndex : number
|
||||
dIndex : number
|
||||
|
||||
constructor(m : number, r : number, e : number, d : number){
|
||||
this.mIndex = m
|
||||
this.rIndex = r
|
||||
this.eIndex = e
|
||||
this.dIndex = d
|
||||
}
|
||||
|
||||
toString() : string {
|
||||
return `${this.mIndex}-${this.rIndex}-${this.eIndex}-${this.dIndex}`
|
||||
}
|
||||
|
||||
static toString(m : number, r : number, e : number, d : number) : string {
|
||||
return `${m}-${r}-${e}-${d}`
|
||||
}
|
||||
|
||||
static stringToCoord(strRepr : string) : Coordinates | undefined {
|
||||
let re = /^[0-9]+-[0-9]+-[0-9]+-[0-9]+$/
|
||||
let numbers = []
|
||||
|
||||
if(re.test(strRepr)){
|
||||
numbers = strRepr.split('-')
|
||||
|
||||
return new Coordinates(+numbers[0], +numbers[1], +numbers[2], +numbers[3])
|
||||
}
|
||||
return
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user