]> granicus.if.org Git - graphviz/commitdiff
suppress some print out and some sanity checks
authoryifanhu <devnull@localhost>
Wed, 26 Mar 2008 21:37:02 +0000 (21:37 +0000)
committeryifanhu <devnull@localhost>
Wed, 26 Mar 2008 21:37:02 +0000 (21:37 +0000)
lib/sfdpgen/overlap.c

index 358b6600b5ac62a5a0b5d5b70ab8d4b67431434f..18cd2e7de4b19fdc31d1bed9177e3091f166db9e 100644 (file)
@@ -232,7 +232,7 @@ OverlapSmoother OverlapSmoother_new(SparseMatrix A, int dim, real lambda0, real
   SparseMatrix B;
   real *lambda, *d, *w, diag_d, diag_w, dist;
 
-  assert(SparseMatrix_is_symmetric(A, FALSE));
+  assert((!A) || SparseMatrix_is_symmetric(A, FALSE));
 
   sm = MALLOC(sizeof(struct OverlapSmoother_struct));
   lambda = sm->lambda = MALLOC(sizeof(real)*m);
@@ -343,8 +343,9 @@ static void scale_to_edge_length(int dim, SparseMatrix A, real *x, real avg_labe
   real dist;
   int i;
 
+  if (!A) return;
   dist = average_edge_length(A, dim, x);
-  fprintf(stderr,"avg edge len=%f avg_label-size= %f\n", dist, avg_label_size);
+  if (Verbose) fprintf(stderr,"avg edge len=%f avg_label-size= %f\n", dist, avg_label_size);
 
 
   dist = avg_label_size/MAX(dist, MACHINEACC);
@@ -388,10 +389,10 @@ void remove_overlap(int dim, SparseMatrix A, real *x, real *label_sizes, int ntr
 
   avg_label_size = 0;
   for (i = 0; i < A->m; i++) avg_label_size += label_sizes[i*dim]+label_sizes[i*dim+1];
+  /*  for (i = 0; i < A->m; i++) avg_label_size += 2*MAX(label_sizes[i*dim],label_sizes[i*dim+1]);*/
   avg_label_size /= A->m;
 
   scale_to_edge_length(dim, A, x,4*avg_label_size);
-
   *flag = 0;
 
   for (i = 0; i < ntry; i++){