1 // Voro++, a 3D cell-based Voronoi library
3 // Author : Chris H. Rycroft (LBL / UC Berkeley)
4 // Email : chr@alum.mit.edu
5 // Date : August 30th 2011
8 * \brief Implementations of the small helper functions. */
14 /** \brief Prints a vector of integers.
16 * Prints a vector of integers.
17 * \param[in] v the vector to print.
18 * \param[in] fp the file stream to print to. */
19 void voro_print_vector(vector
<int> &v
,FILE *fp
) {
22 fprintf(fp
,"%d %d %d %d ",v
[k
],v
[k
+1],v
[k
+2],v
[k
+3]);
26 if(k
+4==s
) fprintf(fp
,"%d %d %d %d",v
[k
],v
[k
+1],v
[k
+2],v
[k
+3]);
27 else fprintf(fp
,"%d %d %d",v
[k
],v
[k
+1],v
[k
+2]);
29 if(k
+2==s
) fprintf(fp
,"%d %d",v
[k
],v
[k
+1]);
30 else fprintf(fp
,"%d",v
[k
]);
34 /** \brief Prints a vector of doubles.
36 * Prints a vector of doubles.
37 * \param[in] v the vector to print.
38 * \param[in] fp the file stream to print to. */
39 void voro_print_vector(vector
<double> &v
,FILE *fp
) {
42 fprintf(fp
,"%g %g %g %g ",v
[k
],v
[k
+1],v
[k
+2],v
[k
+3]);
46 if(k
+4==s
) fprintf(fp
,"%g %g %g %g",v
[k
],v
[k
+1],v
[k
+2],v
[k
+3]);
47 else fprintf(fp
,"%g %g %g",v
[k
],v
[k
+1],v
[k
+2]);
49 if(k
+2==s
) fprintf(fp
,"%g %g",v
[k
],v
[k
+1]);
50 else fprintf(fp
,"%g",v
[k
]);
54 /** \brief Prints a vector a face vertex information.
56 * Prints a vector of face vertex information. A value is read, which
57 * corresponds to the number of vertices in the next face. The routine reads
58 * this number of values and prints them as a bracked list. This is repeated
59 * until the end of the vector is reached.
60 * \param[in] v the vector to interpret and print.
61 * \param[in] fp the file stream to print to. */
62 void voro_print_face_vertices(vector
<int> &v
,FILE *fp
) {
67 if(l
==1) fprintf(fp
,"(%d)",v
[k
++]);
71 fprintf(fp
,"(%d",v
[k
++]);
72 while(k
<j
) fprintf(fp
,",%d",v
[k
++]);
75 while((unsigned int) k
<v
.size()) {
78 if(l
==1) fprintf(fp
," (%d)",v
[k
++]);
82 fprintf(fp
," (%d",v
[k
++]);
83 while(k
<j
) fprintf(fp
,",%d",v
[k
++]);