Source: generators/ETSPGenerator.js

/**
 * Class for generating euclidean TSP instances
 */
export class ETSPGenerator {
    /**
     * Class constructor
     * @param {object} params parameters of the generated instance
     */
    constructor (params) {
        this.params = params;
        this.params.noCities= +this.params.noCities;
        this.params.x = +this.params.x;
        this.params.y = +this.params.y;
    }

    /**
     * Generate instance based on parameters
     * @return {String} instance of euclidean TSP coded as String
     */
    generate () {
        var generatedInstance = "" +  this.params.noCities + '\n';

        for (var i = 0; i < this.params.noCities; i++) {
            generatedInstance += Math.random()*this.params.x + " ";
            generatedInstance += Math.random()*this.params.y + '\n';
        }
        return generatedInstance;
    }
}