client/js/random-data.js
author veltr
Fri, 27 Jul 2012 19:15:32 +0200
changeset 4 f5297dde9053
child 20 bd58970ffd16
permissions -rw-r--r--
Can now add nodes/edges
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
     1
Rkns.Serializers.RandomData = Rkns.Utils.inherit(Rkns.Serializers._Base);
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
     2
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
     3
Rkns.Serializers.RandomData.prototype._init = function() {
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
     4
    this._USER_COUNT = 5;
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
     5
    this._NODE_COUNT = 20;
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
     6
    this._EDGE_COUNT = 40;
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
     7
    this.user_colors = ["#1f77b4","#aec7e8","#ff7f0e","#ffbb78","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5","#8c564b","#c49c94","#e377c2","#f7b6d2","#7f7f7f","#c7c7c7","#bcbd22","#dbdb8d","#17becf","#9edae5"];
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
     8
    this.load();
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
     9
}
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    10
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    11
Rkns.Serializers.RandomData.prototype.load = function() {
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    12
    var _p = this._project;
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    13
    _p.title = "Random Generated Data";
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    14
    for (var i = 0; i < this._USER_COUNT; i++) {
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    15
        _p.users.push(new Rkns.Model.User(_p, {
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    16
            id: "user-"+i,
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    17
            title: "User #"+(1+i),
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    18
            color: this.user_colors[i]
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    19
        }));
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    20
    }
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    21
    for (var i = 0; i < this._NODE_COUNT; i++) {
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    22
        _p.nodes.push(new Rkns.Model.Node(_p, {
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    23
            id: "node-"+i,
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    24
            title: "Node #"+(1+i),
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    25
            created_by: "user-" + Math.floor(this._USER_COUNT*Math.random()),
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    26
            position: {
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    27
//                x: 200 * Math.random(),
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    28
//                y: 150 * Math.random()
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    29
                x: 100 * Math.cos(2 * Math.PI * i / this._NODE_COUNT),
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    30
                y: 100 * Math.sin(2 * Math.PI * i / this._NODE_COUNT)
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    31
            }
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    32
        }));
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    33
    }
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    34
    for (var i = 0; i < this._EDGE_COUNT; i++) {
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    35
        var _from, _to;
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    36
        _from = _to = Math.floor(this._NODE_COUNT*Math.random());
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    37
        while(_from === _to) {
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    38
            _to = Math.floor(this._NODE_COUNT*Math.random());
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    39
        }
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    40
        _p.edges.push(new Rkns.Model.Edge(_p, {
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    41
            id: "edge-"+i,
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    42
            title: "Edge #"+(1+i),
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    43
            created_by: "user-" + Math.floor(this._USER_COUNT*Math.random()),
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    44
            from: "node-" + _from,
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    45
            to: "node-" + _to
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    46
        }));
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    47
    }
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    48
    this.handleCallbacks();
f5297dde9053 Can now add nodes/edges
veltr
parents:
diff changeset
    49
}