ref: 79ad08a0818642903d8fd46492f498acff3cab27
parent: 2cc077e56d3d86bfa9283ccde8f130224ee5a734
author: rodri <rgl@antares-labs.eu>
date: Wed Jul 2 05:37:04 EDT 2025
vertex: finish _fprintvattrs()
--- a/internal.h
+++ b/internal.h
@@ -120,7 +120,7 @@
void _addvertex(BVertex*, BVertex*);
void _mulvertex(BVertex*, double);
void _delvattrs(BVertex*);
-void _fprintvattrs(int, BVertex*);
+void _fprintvattrs(int, Vertexattrs*);
void _addvattr(Vertexattrs*, char*, int, void*);
Vertexattr *_getvattr(Vertexattrs*, char*);
--- a/vertex.c
+++ b/vertex.c
@@ -179,11 +179,23 @@
}
void
-_fprintvattrs(int fd, BVertex *v)
+_fprintvattrs(int fd, Vertexattrs *v)
{
- int i;
+ static char *idtype[] = {
+ [VAPoint] "point",
+ [VANumber] "number",
+ };
+ Vertexattr *va;
- for(i = 0; i < v->nattrs; i++)
- fprint(fd, "id %s type %d v %g\n",
- v->attrs[i].id, v->attrs[i].type, v->attrs[i].n);
+ for(va = v->attrs; va < v->attrs + v->nattrs; va++){
+ fprint(fd, "id %s type %s", va->id, idtype[va->type]);
+ switch(va->type){
+ case VAPoint:
+ fprint(fd, " %V\n", va->p);
+ break;
+ case VANumber:
+ fprint(fd, " %g\n", va->n);
+ break;
+ }
+ }
}
--
⑨