Skip to content

Commit 8331c7e

Browse files
committed
fixed edge weight and adapted Raibaz updates (just restored addEdge publi/private signatures)
1 parent ebc05e1 commit 8331c7e

File tree

4 files changed

+26
-17
lines changed

4 files changed

+26
-17
lines changed

plugins/sigma.parseGexf.js

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -131,8 +131,19 @@ sigma.publicPrototype.parseGexf = function(gexfPath) {
131131
var source = edgeNode.getAttribute('source');
132132
var target = edgeNode.getAttribute('target');
133133
var label = edgeNode.getAttribute('label');
134-
var weight_val = parseFloat(edgeNode.getAttribute('weight'));
135-
var edge = {id:j, sourceID:source, targetID:target,label:label, attributes:[]};
134+
var edge = {
135+
id: j,
136+
sourceID: source,
137+
targetID: target,
138+
label: label,
139+
attributes: []
140+
};
141+
142+
var weight = edgeNode.getAttribute('weight');
143+
if(weight!=undefined){
144+
edge['weight'] = weight;
145+
}
146+
136147
var attvalueNodes = edgeNode.getElementsByTagName('attvalue');
137148
for(k=0; k<attvalueNodes.length; k++){
138149
var attvalueNode = attvalueNodes[k];
@@ -141,7 +152,7 @@ sigma.publicPrototype.parseGexf = function(gexfPath) {
141152
edge.attributes.push({attr:attr, val:val});
142153
}
143154

144-
sigmaInstance.addEdge(edgeId++,source,target,edge,weight_val);
155+
sigmaInstance.addEdge(edgeId++,source,target,edge);
145156
}
146157
}
147158
};

src/core/graph.js

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -223,7 +223,7 @@ function Graph() {
223223
* of the edge.
224224
* @return {Graph} Returns itself.
225225
*/
226-
function addEdge(id, source, target, params, weight) {
226+
function addEdge(id, source, target, params) {
227227
if (self.edgesIndex[id]) {
228228
throw new Error('Edge "' + id + '" already exists.');
229229
}
@@ -238,21 +238,17 @@ function Graph() {
238238
throw new Error(s);
239239
}
240240

241-
if(!weight) {
242-
weight = 1;
243-
}
244-
245241
params = params || {};
246242
var e = {
247243
'source': self.nodesIndex[source],
248244
'target': self.nodesIndex[target],
249245
'size': 1,
250-
'weight': weight,
246+
'weight': 1,
251247
'displaySize': 0.5,
252248
'label': id.toString(),
253249
'id': id.toString(),
254-
'attr': {},
255-
'hidden': false
250+
'hidden': false,
251+
'attr': {}
256252
};
257253

258254
e['source']['degree']++;
@@ -266,10 +262,11 @@ function Graph() {
266262
case 'source':
267263
case 'target':
268264
break;
269-
case 'hidden':
265+
case 'hidden':
270266
e[k] = !!params[k];
271267
break;
272268
case 'size':
269+
case 'weight':
273270
e[k] = +params[k];
274271
break;
275272
case 'color':
@@ -307,6 +304,7 @@ function Graph() {
307304
'weight': edge['weight'],
308305
'displaySize': edge['displaySize'],
309306
'label': edge['label'],
307+
'hidden': edge['hidden'],
310308
'id': edge['id'],
311309
'attr': edge['attr'],
312310
'color': edge['color']
@@ -326,9 +324,9 @@ function Graph() {
326324
for (var k in copy) {
327325
switch (k) {
328326
case 'id':
329-
case 'weight':
330327
case 'displaySize':
331328
break;
329+
case 'weight':
332330
case 'size':
333331
edge[k] = +copy[k];
334332
break;

src/core/plotter.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -207,9 +207,9 @@ function Plotter(nodesCtx, edgesCtx, labelsCtx, hoverCtx, graph, w, h) {
207207
var s, t, i = 0;
208208

209209
while (i++< self.p.edgesSpeed && self.currentEdgeIndex < c) {
210-
e = graph.edges[self.currentEdgeIndex];
210+
e = graph.edges[self.currentEdgeIndex];
211211
s = e['source'];
212-
t = e['target'];
212+
t = e['target'];
213213
if (e['hidden'] ||
214214
s['hidden'] ||
215215
t['hidden'] ||

src/core/sigmapublic.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -124,8 +124,8 @@ function SigmaPublic(sigmaInstance) {
124124
return self;
125125
};
126126

127-
this.addEdge = function(id, source, target, params, weight) {
128-
s.graph.addEdge(id, source, target, params, weight);
127+
this.addEdge = function(id, source, target, params) {
128+
s.graph.addEdge(id, source, target, params);
129129
return self;
130130
}
131131

0 commit comments

Comments
 (0)