~ubuntu-branches/ubuntu/intrepid/gmsh/intrepid

« back to all changes in this revision

Viewing changes to Mesh/Face.h

  • Committer: Bazaar Package Importer
  • Author(s): Emmet Hikory
  • Date: 2007-05-07 10:01:37 UTC
  • mfrom: (1.2.4 upstream)
  • Revision ID: james.westby@ubuntu.com-20070507100137-6j0rzz1ucbn0m2jt
Tags: 2.0.7-1ubuntu1
* Merged with Debian unstable.  Remaining Ubuntu changes:
  - Add .desktop file
  - Add icon
* Added XSBC-Original-Maintainer
* Removed Application Category from gmsh.desktop
* Link against GLU (fixes FTBFS)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#ifndef _FACE_H_
2
 
#define _FACE_H_
3
 
 
4
 
// Copyright (C) 1997-2006 C. Geuzaine, J.-F. Remacle
5
 
//
6
 
// This program is free software; you can redistribute it and/or modify
7
 
// it under the terms of the GNU General Public License as published by
8
 
// the Free Software Foundation; either version 2 of the License, or
9
 
// (at your option) any later version.
10
 
//
11
 
// This program is distributed in the hope that it will be useful,
12
 
// but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
 
// GNU General Public License for more details.
15
 
//
16
 
// You should have received a copy of the GNU General Public License
17
 
// along with this program; if not, write to the Free Software
18
 
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
19
 
// USA.
20
 
// 
21
 
// Please report all bugs and problems to <gmsh@geuz.org>.
22
 
 
23
 
#include "List.h"
24
 
#include "Tree.h"
25
 
#include "Vertex.h"
26
 
#include "Element.h"
27
 
 
28
 
typedef struct {
29
 
  Vertex *V[3];
30
 
} Face;
31
 
 
32
 
class QuadFace
33
 
{
34
 
 public:
35
 
  Vertex *V[4];
36
 
  Vertex *newv;
37
 
  Quadrangle *quad;
38
 
  Hexahedron *hexa[2];
39
 
  Prism *prism[2];
40
 
  Pyramid *pyramid[2];
41
 
  QuadFace();
42
 
  ~QuadFace(){;}
43
 
};
44
 
 
45
 
class QuadFacesContainer
46
 
{
47
 
 public :
48
 
  Tree_T *AllFaces;
49
 
  QuadFacesContainer();
50
 
  ~QuadFacesContainer();
51
 
  void AddQuadrangleTree(Tree_T *Quadrangles);
52
 
  void AddHexahedronTree(Tree_T *Hexahedra);
53
 
  void AddPrismTree(Tree_T *Prisms);    
54
 
  void AddPyramidTree(Tree_T *Pyramids);
55
 
  void AddQuadFaces(Quadrangle *q);
56
 
  void AddQuadFaces(Hexahedron *h);
57
 
  void AddQuadFaces(Prism *p);
58
 
  void AddQuadFaces(Pyramid *p);
59
 
  void Print();
60
 
};
61
 
 
62
 
int compareFace(const void *a, const void *b);
63
 
int compareQuadFace(const void *a, const void *b);
64
 
 
65
 
#endif