Skip to content
Snippets Groups Projects
Commit 31be81b9 authored by Christophe Geuzaine's avatar Christophe Geuzaine
Browse files

- polish gui for interactive visibility
- upgrade tetgen to latest available version
parent fa4066be
No related branches found
No related tags found
No related merge requests found
// $Id: GUI.cpp,v 1.578 2006-12-03 04:00:18 geuzaine Exp $
// $Id: GUI.cpp,v 1.579 2006-12-03 17:45:37 geuzaine Exp $
//
// Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle
//
......@@ -3947,37 +3947,41 @@ void GUI::create_visibility_window()
vis_group[2] = new Fl_Group(WB, 2 * WB + 2 * BH, width - 2 * WB, height - 4 * WB - 2 * BH, "Interactive");
vis_group[2]->resizable(NULL);
Fl_Box *b2 = new Fl_Box(FL_NO_BOX, 2 * WB, 3 * WB + 2 * BH, brw, BH, "Hide with the mouse:");
b2->align(FL_ALIGN_INSIDE|FL_ALIGN_LEFT);
int ll = width/2 - BH - WB - IW;
Fl_Box *b2 = new Fl_Box(FL_NO_BOX, ll, 3 * WB + 2 * BH, IW, BH,
"Hide with the mouse:");
b2->align(FL_ALIGN_INSIDE|FL_ALIGN_CENTER);
Fl_Button *butt1 = new Fl_Button(2*WB, 3 * WB + 3 * BH, IW, BH, "Elements");
Fl_Button *butt1 = new Fl_Button(ll, 3 * WB + 3 * BH, IW, BH, "Elements");
butt1->callback(visibility_interactive_cb, (void *)"hide_elements");
Fl_Button *butt2 = new Fl_Button(2*WB, 3 * WB + 4 * BH, IW, BH, "Points");
Fl_Button *butt2 = new Fl_Button(ll, 3 * WB + 4 * BH, IW, BH, "Points");
butt2->callback(visibility_interactive_cb, (void *)"hide_points");
Fl_Button *butt3 = new Fl_Button(2*WB, 3 * WB + 5 * BH, IW, BH, "Lines");
Fl_Button *butt3 = new Fl_Button(ll, 3 * WB + 5 * BH, IW, BH, "Lines");
butt3->callback(visibility_interactive_cb, (void *)"hide_lines");
Fl_Button *butt4 = new Fl_Button(2*WB, 3 * WB + 6 * BH, IW, BH, "Surfaces");
Fl_Button *butt4 = new Fl_Button(ll, 3 * WB + 6 * BH, IW, BH, "Surfaces");
butt4->callback(visibility_interactive_cb, (void *)"hide_surfaces");
Fl_Button *butt5 = new Fl_Button(2*WB, 3 * WB + 7 * BH, IW, BH, "Volumes");
Fl_Button *butt5 = new Fl_Button(ll, 3 * WB + 7 * BH, IW, BH, "Volumes");
butt5->callback(visibility_interactive_cb, (void *)"hide_volumes");
Fl_Button *butt6 = new Fl_Button(3*WB + IW, 3 * WB + 3 * BH, 2 * BH, 5*BH, "Show\nAll");
Fl_Button *butt6 = new Fl_Button(ll + IW + WB, 3 * WB + 3 * BH, 2 * BH, 5*BH, "Show\nAll");
butt6->callback(visibility_interactive_cb, (void *)"show_all");
int ww = 4*WB + IW + 2*BH;
int ll2 = ll + IW + WB + 2*BH + WB;
Fl_Box *b12 = new Fl_Box(FL_NO_BOX, ww, 3 * WB + 2 * BH, brw, BH, "Show with the mouse:");
b12->align(FL_ALIGN_INSIDE|FL_ALIGN_LEFT);
Fl_Box *b12 = new Fl_Box(FL_NO_BOX, ll2, 3 * WB + 2 * BH, IW, BH,
"Show with the mouse:");
b12->align(FL_ALIGN_INSIDE|FL_ALIGN_CENTER);
Fl_Button *butt11 = new Fl_Button(ww, 3 * WB + 3 * BH, IW, BH, "Elements");
Fl_Button *butt11 = new Fl_Button(ll2, 3 * WB + 3 * BH, IW, BH, "Elements");
butt11->callback(visibility_interactive_cb, (void *)"show_elements");
Fl_Button *butt12 = new Fl_Button(ww, 3 * WB + 4 * BH, IW, BH, "Points");
Fl_Button *butt12 = new Fl_Button(ll2, 3 * WB + 4 * BH, IW, BH, "Points");
butt12->callback(visibility_interactive_cb, (void *)"show_points");
Fl_Button *butt13 = new Fl_Button(ww, 3 * WB + 5 * BH, IW, BH, "Lines");
Fl_Button *butt13 = new Fl_Button(ll2, 3 * WB + 5 * BH, IW, BH, "Lines");
butt13->callback(visibility_interactive_cb, (void *)"show_lines");
Fl_Button *butt14 = new Fl_Button(ww, 3 * WB + 6 * BH, IW, BH, "Surfaces");
Fl_Button *butt14 = new Fl_Button(ll2, 3 * WB + 6 * BH, IW, BH, "Surfaces");
butt14->callback(visibility_interactive_cb, (void *)"show_surfaces");
Fl_Button *butt15 = new Fl_Button(ww, 3 * WB + 7 * BH, IW, BH, "Volumes");
Fl_Button *butt15 = new Fl_Button(ll2, 3 * WB + 7 * BH, IW, BH, "Volumes");
butt15->callback(visibility_interactive_cb, (void *)"show_volumes");
vis_group[2]->end();
......
// $Id: gmshFace.cpp,v 1.29 2006-12-03 03:19:55 geuzaine Exp $
// $Id: gmshFace.cpp,v 1.30 2006-12-03 17:45:37 geuzaine Exp $
//
// Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle
//
......@@ -109,6 +109,9 @@ SVector3 gmshFace::normal(const SPoint2 &param) const
// We cannot use InterpolateSurface() for plane surfaces since it
// relies on the mean plane, which does not respect the
// orientation
// FIXME: move this test at the end of the MeanPlane computation
// routine--and store the correct normal, damn it!
GPoint p = point(param);
double n[3] = {meanPlane.a, meanPlane.b, meanPlane.c};
norme(n);
......
......@@ -27,9 +27,10 @@ For details, see http://tetgen.berlios.de
TetGen
A Quality Tetrahedral Mesh Generator and 3D Delaunay Triangulator
Version 1.3 (Released on June 13, 2004).
Version 1.4 (Released on January 14, 2006).
Copyright 2002, 2004 Hang Si
Copyright 2002, 2004, 2005, 2006
Hang Si
Rathausstr. 9, 10178 Berlin, Germany
si@wias-berlin.de
......
This is TetGen version 1.4.1 (released on July 28, 2006)
Please see the user's manul (available at the following link) for compiling
and using TetGen.
http://tetgen.berlios.de/index.html
TetGen may be freely copied, modified, and redistributed under the
following copyright notices stated in the file LICENSE.
Please send bugs/comments to Hang Si <si@wias-berlin.de>
Hang Si
July 28, 2006
This diff is collapsed.
This diff is collapsed.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment