You can subscribe to this list here.
2000 
_{Jan}

_{Feb}
(2) 
_{Mar}
(6) 
_{Apr}
(3) 
_{May}
(17) 
_{Jun}
(8) 
_{Jul}
(3) 
_{Aug}
(5) 
_{Sep}
(5) 
_{Oct}
(8) 
_{Nov}
(11) 
_{Dec}
(26) 

2001 
_{Jan}
(17) 
_{Feb}
(38) 
_{Mar}

_{Apr}
(30) 
_{May}
(48) 
_{Jun}
(9) 
_{Jul}
(1) 
_{Aug}
(26) 
_{Sep}
(7) 
_{Oct}
(12) 
_{Nov}
(25) 
_{Dec}
(18) 
2002 
_{Jan}
(12) 
_{Feb}
(5) 
_{Mar}
(48) 
_{Apr}
(26) 
_{May}
(50) 
_{Jun}
(27) 
_{Jul}
(21) 
_{Aug}
(5) 
_{Sep}
(17) 
_{Oct}
(25) 
_{Nov}
(43) 
_{Dec}
(14) 
2003 
_{Jan}
(39) 
_{Feb}
(22) 
_{Mar}
(95) 
_{Apr}
(33) 
_{May}
(6) 
_{Jun}
(2) 
_{Jul}
(6) 
_{Aug}
(13) 
_{Sep}
(20) 
_{Oct}
(17) 
_{Nov}
(16) 
_{Dec}
(22) 
2004 
_{Jan}
(24) 
_{Feb}
(28) 
_{Mar}
(39) 
_{Apr}
(6) 
_{May}
(8) 
_{Jun}
(19) 
_{Jul}
(19) 
_{Aug}
(19) 
_{Sep}
(14) 
_{Oct}
(41) 
_{Nov}
(16) 
_{Dec}
(13) 
2005 
_{Jan}
(23) 
_{Feb}
(14) 
_{Mar}
(28) 
_{Apr}
(27) 
_{May}
(19) 
_{Jun}
(22) 
_{Jul}
(18) 
_{Aug}
(21) 
_{Sep}
(29) 
_{Oct}
(22) 
_{Nov}
(47) 
_{Dec}
(48) 
2006 
_{Jan}
(20) 
_{Feb}
(18) 
_{Mar}
(23) 
_{Apr}
(10) 
_{May}
(2) 
_{Jun}
(19) 
_{Jul}
(40) 
_{Aug}
(34) 
_{Sep}
(4) 
_{Oct}
(14) 
_{Nov}
(10) 
_{Dec}
(1) 
2007 
_{Jan}
(11) 
_{Feb}
(6) 
_{Mar}
(10) 
_{Apr}
(29) 
_{May}
(5) 
_{Jun}
(8) 
_{Jul}
(7) 
_{Aug}
(1) 
_{Sep}
(14) 
_{Oct}
(17) 
_{Nov}
(1) 
_{Dec}
(15) 
2008 
_{Jan}
(14) 
_{Feb}
(6) 
_{Mar}
(3) 
_{Apr}
(4) 
_{May}
(7) 
_{Jun}
(3) 
_{Jul}
(2) 
_{Aug}
(16) 
_{Sep}
(2) 
_{Oct}
(15) 
_{Nov}
(12) 
_{Dec}
(13) 
2009 
_{Jan}
(25) 
_{Feb}
(3) 
_{Mar}
(23) 
_{Apr}
(2) 
_{May}
(16) 
_{Jun}
(2) 
_{Jul}
(14) 
_{Aug}
(22) 
_{Sep}
(12) 
_{Oct}
(19) 
_{Nov}
(21) 
_{Dec}
(4) 
2010 
_{Jan}

_{Feb}
(16) 
_{Mar}
(15) 
_{Apr}
(11) 
_{May}
(6) 
_{Jun}

_{Jul}

_{Aug}
(5) 
_{Sep}
(2) 
_{Oct}

_{Nov}
(1) 
_{Dec}

2011 
_{Jan}

_{Feb}
(1) 
_{Mar}
(18) 
_{Apr}

_{May}

_{Jun}
(1) 
_{Jul}

_{Aug}

_{Sep}
(1) 
_{Oct}

_{Nov}

_{Dec}

2012 
_{Jan}
(3) 
_{Feb}

_{Mar}

_{Apr}

_{May}
(9) 
_{Jun}

_{Jul}

_{Aug}

_{Sep}

_{Oct}

_{Nov}

_{Dec}

2013 
_{Jan}

_{Feb}

_{Mar}

_{Apr}

_{May}

_{Jun}
(4) 
_{Jul}
(1) 
_{Aug}

_{Sep}

_{Oct}

_{Nov}

_{Dec}

2014 
_{Jan}

_{Feb}
(5) 
_{Mar}

_{Apr}

_{May}

_{Jun}

_{Jul}

_{Aug}

_{Sep}

_{Oct}

_{Nov}

_{Dec}

S  M  T  W  T  F  S 





1

2
(1) 
3

4

5

6

7

8

9

10

11

12
(1) 
13
(1) 
14

15

16
(1) 
17

18

19

20

21

22

23

24

25

26
(1) 
27

28

29

30
(1) 

From: Romain Behar <romainbehar@ya...>  20040430 11:10:34

When trying to compile the GTS library with MinGW, I get: In file included from predicates_init.c:28: rounding.h:20:20: config.h: No such file or directory rounding.h:44:10: #error "You need the Microsoft C compiler for the Win32 version" are there already compiled libraries and headers available to link with a MinGW application? Romain __________________________________ Do you Yahoo!? Win a $20,000 Career Makeover at Yahoo! HotJobs http://hotjobs.sweepstakes.yahoo.com/careermakeover 
From: Hua Ji <hji@su...>  20040426 14:33:51

Hi, there, I found the SoS function in GTS library didn't work very well (can't find the correct intersection point for a degeneracy case). For example, for a triangle with three vertices coordinates (1., 0., 0.), (0., 1., 0.), and (0., 0., 0.) intersets a edge with two vertices coordinates (0.25, 0.25, 0.) and (0.25, 0.25, 1.), the function can't return a intersection point. I changed the two functions as follows, it will get a correct intersection point. Any comments? ///////////// #include <stdlib.h> #include <stdio.h> #include "gts.h" #include "predicates.h" //=================================================================== // this program is used to test the robust of SoS //=================================================================== #define SIGN(x) ((x) > 0. ? 1 : 1) #define ORIENT1D(a,b) ((a) > (b) ? 1 : (a) < (b) ? 1 : 0) static gint sortp (gpointer * p, guint n) { gint sign = 1; guint i, j; for (i = 0; i < n  1; i++) for (j = 0; j < n  1  i; j++) if (GPOINTER_TO_UINT (p[j+1]) < GPOINTER_TO_UINT (p[j])) { gpointer tmp = p[j]; p[j] = p[j+1]; p[j+1] = tmp; sign =  sign; } return sign; } static gint gts_point_orientation_3d_inters (GtsPoint * p1, GtsPoint * p2, GtsPoint * p3, GtsPoint * p4, GtsTriangle * t) { gdouble o; g_return_val_if_fail (p1 != NULL && p2 != NULL && p3 != NULL && p4 != NULL, 0); o = orient3d ((gdouble *) &p1>x, (gdouble *) &p2>x, (gdouble *) &p3>x, (gdouble *) &p4>x); if (o != 0.) return SIGN (o); else { GtsPoint * p[4]; gint sign; sign = gts_point_is_in_triangle (p4, t); if(sign==1) sign=2; //out of the triangle if(sign==1  sign==0) sign=2; //in the triangle return(sign); } } static GtsPoint * segment_triangle_intersection (GtsSegment * s, GtsTriangle * t, GtsPointClass * klass) { GtsPoint * A, * B, * C, * D, * E; gint ABCE, ABCD, ADCE, ABDE, BCDE; GtsEdge * AB, * BC, * CA; gdouble a, b, c; g_return_val_if_fail (s != NULL, NULL); g_return_val_if_fail (t != NULL, NULL); g_return_val_if_fail (klass != NULL, NULL); gts_triangle_vertices_edges (t, NULL, (GtsVertex **) &A, (GtsVertex **) &B, (GtsVertex **) &C, &AB, &BC, &CA); D = GTS_POINT (s>v1); E = GTS_POINT (s>v2); ABCE = gts_point_orientation_3d_inters (A, B, C, E, t); ABCD = gts_point_orientation_3d_inters (A, B, C, D, t); if(ABCE==2) return gts_point_new (klass,E>x,E>y,E>z); //E point is the intersection point if(ABCD==2) return gts_point_new (klass,D>x,D>y,D>z); //D point is the intersection point if(ABCE==2  ABCD==2) return NULL; if (ABCE < 0  ABCD > 0) { GtsPoint * tmpp; gint tmp; tmpp = E; E = D; D = tmpp; tmp = ABCE; ABCE = ABCD; ABCD = tmp; } if (ABCE < 0  ABCD > 0) return NULL; ADCE = gts_point_orientation_3d_inters (A, D, C, E, t); if (ADCE < 0) return NULL; ABDE = gts_point_orientation_3d_inters (A, B, D, E, t); if (ABDE < 0) return NULL; BCDE = gts_point_orientation_3d_inters (B, C, D, E, t); if (BCDE < 0) return NULL; a = gts_point_orientation_3d (A, B, C, E); b = gts_point_orientation_3d (A, B, C, D); if (a != b) { c = a/(a  b); return gts_point_new (klass, E>x + c*(D>x  E>x), E>y + c*(D>y  E>y), E>z + c*(D>z  E>z)); } // D and E are contained within ABC g_assert (a == 0); return gts_point_new (klass, (E>x + D>x)/2., (E>y + D>y)/2., (E>z + D>z)/2.); } void main() { //define a free surface GtsSurface * s, *cs; GtsVertex * v0, *v1, *v2, *v3, *v4, *v; GtsEdge * e1, *e2, *e3, *e4, *e5, *e6, *e7; GtsFace *t; //define a solid surface class s = gts_surface_new (gts_surface_class (), gts_face_class (), gts_edge_class (), gts_vertex_class ()); //define a triangle v0 = gts_vertex_new (s>vertex_class, 1., 0., 0.); v1 = gts_vertex_new (s>vertex_class, 0., 1., 0.); v2 = gts_vertex_new (s>vertex_class, 0., 0., 0.); e1 = gts_edge_new (s>edge_class, v0, v1); e2 = gts_edge_new (s>edge_class, v1, v2); e3 = gts_edge_new (s>edge_class, v2, v0); t = gts_face_new (s>face_class, e1, e2, e3); gts_surface_add_face (s, gts_face_new (s>face_class, e1, e2, e3)); // //define another triangle cs = gts_surface_new (gts_surface_class (), gts_face_class (), gts_edge_class (), gts_vertex_class ()); v0 = gts_vertex_new (cs>vertex_class, 0.25, 0.25, 0.); v1 = gts_vertex_new (cs>vertex_class, 0.25, 0.25, 1.); e1 = gts_edge_new (cs>edge_class, v0, v1); v = GTS_VERTEX (segment_triangle_intersection (GTS_SEGMENT (e1), GTS_TRIANGLE(t), GTS_POINT_CLASS (s>vertex_class))); printf("v=%le,%le,%le\n",GTS_POINT(v)>x,GTS_POINT(v)>y,GTS_POINT(v)>z); } 
From: Luis Carlos Yamamoto <luiscyam@uo...>  20040416 23:10:25

John Aughey wrote: > I have a series of points and edges on a single plane that form a closed > figure. In my example, the points are on the X,Y plane with Z set to 0 > for all points. I want to create a surface (in this case, a single > polygon) from this vertex/edge collection. Is there an easy way to do > this using the GTS library? Hello, I guess you search for a Delaunay service, i.e., triangulation of a set of vertices with edge constraints. If you have source files, try the directory examples, you will find a file called delaunay.c. A little bit more simple you can find in directory tests/cartesian.c. That does what you want. Luis 
From: Hua Ji <hji@su...>  20040413 19:33:16

Hi, there, Does anybody know any article about the function "triangulate_face" in boolean.c? It is really hard to understand this function for me. Thanks a lot in advance. Hua 
From: John Aughey <jha@au...>  20040412 19:35:39

I have a series of points and edges on a single plane that form a closed figure. In my example, the points are on the X,Y plane with Z set to 0 for all points. I want to create a surface (in this case, a single polygon) from this vertex/edge collection. Is there an easy way to do this using the GTS library? Thank you John Aughey 
From: <aheloir@el...>  20040402 19:24:19

Hi all. I'm currently testing gts library and wondering if there is an elegant manner to obtain an orientable surface from an arbitrary surface using gts. actually, the initial surfaces are meshed representations (VRML 97) of mechanical parts, which are definitely crap. Thank you in advance for your help. Alexis. 