TetGen version 1.4.3
- Most recent variant of 1.4.3 version from www.wias-berlin.de - Also found as upstream version for Ubunto distribution: https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/tetgen/1.4.3-1/tetgen_1.4.3.orig.tar.gz
This commit is contained in:
66
LICENSE
Normal file
66
LICENSE
Normal file
@@ -0,0 +1,66 @@
|
||||
TetGen License
|
||||
--------------
|
||||
|
||||
The software (TetGen) is licensed under the terms of the MIT license
|
||||
with the following exceptions:
|
||||
|
||||
Distribution of modified versions of this code is permissible UNDER
|
||||
THE CONDITION THAT THIS CODE AND ANY MODIFICATIONS MADE TO IT IN THE
|
||||
SAME SOURCE FILES tetgen.h AND tetgen.cxx REMAIN UNDER COPYRIGHT OF
|
||||
THE ORIGINAL AUTHOR, BOTH SOURCE AND OBJECT CODE ARE MADE FREELY
|
||||
AVAILABLE WITHOUT CHARGE, AND CLEAR NOTICE IS GIVEN OF THE
|
||||
MODIFICATIONS.
|
||||
|
||||
Distribution of this code for any commercial purpose is permissible
|
||||
ONLY BY DIRECT ARRANGEMENT WITH THE COPYRIGHT OWNER.
|
||||
|
||||
The full license text is reproduced below.
|
||||
|
||||
This means that TetGen is no free software, but for private, research,
|
||||
and educational purposes it can be used at absolutely no cost and
|
||||
without further arrangements.
|
||||
|
||||
|
||||
For details, see http://tetgen.berlios.de
|
||||
|
||||
==============================================================================
|
||||
|
||||
TetGen
|
||||
A Quality Tetrahedral Mesh Generator and 3D Delaunay Triangulator
|
||||
Version 1.4 (Released on January 14, 2006).
|
||||
|
||||
Copyright 2002, 2004, 2005, 2006
|
||||
Hang Si
|
||||
Rathausstr. 9, 10178 Berlin, Germany
|
||||
si@wias-berlin.de
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
Distribution of modified versions of this code is permissible UNDER
|
||||
THE CONDITION THAT THIS CODE AND ANY MODIFICATIONS MADE TO IT IN THE
|
||||
SAME SOURCE FILES tetgen.h AND tetgen.cxx REMAIN UNDER COPYRIGHT OF
|
||||
THE ORIGINAL AUTHOR, BOTH SOURCE AND OBJECT CODE ARE MADE FREELY
|
||||
AVAILABLE WITHOUT CHARGE, AND CLEAR NOTICE IS GIVEN OF THE
|
||||
MODIFICATIONS.
|
||||
|
||||
Distribution of this code for any commercial purpose is permissible
|
||||
ONLY BY DIRECT ARRANGEMENT WITH THE COPYRIGHT OWNER.
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
==============================================================================
|
||||
16
README
Normal file
16
README
Normal file
@@ -0,0 +1,16 @@
|
||||
This is TetGen version 1.4.3 (released on September 6, 2009, updated on December 13, 2010, updated on January 19, 2011, updated on April 15, 2011)
|
||||
|
||||
Please see the documentation of TetGen for compiling and using TetGen.
|
||||
It is available at the following link:
|
||||
|
||||
http://tetgen.berlios.de/index.html
|
||||
|
||||
TetGen may be freely copied, modified, and redistributed under the
|
||||
copyright notices stated in the file LICENSE.
|
||||
|
||||
Please send bugs/comments to Hang Si <si@wias-berlin.de>
|
||||
|
||||
Thank you and enjoy!
|
||||
|
||||
Hang Si
|
||||
January 19, 2011
|
||||
132
example.poly
Normal file
132
example.poly
Normal file
@@ -0,0 +1,132 @@
|
||||
#
|
||||
# example.poly - Sample file of TetGen.
|
||||
#
|
||||
# A .poly file describes a piecewise linear complex (PLC)
|
||||
# This file represents a compensated magic tee junction.
|
||||
#
|
||||
# The source file is from: Vali Catina <catina@uni-bremen.de>
|
||||
#
|
||||
|
||||
# Part 1 - node list
|
||||
54 3 0 0
|
||||
1 -13.716000000000001 -5.0800000000000001 0
|
||||
2 -13.716000000000001 5.0800000000000001 0
|
||||
3 -11.43 5.0800000000000001 0
|
||||
4 11.43 -5.0800000000000001 0
|
||||
5 11.43 7.3659999999999997 0
|
||||
6 -11.43 7.3659999999999997 0
|
||||
7 0.95105651629515364 -0.37999999999999989 0
|
||||
8 -0.95105651629515364 -0.37999999999999989 0
|
||||
9 -0.95105651629515364 4.6200000000000001 0
|
||||
10 0.95105651629515364 4.6200000000000001 0
|
||||
11 -0.95105651629515353 4.6200000000000001 -0.30901699437494756
|
||||
12 -0.58778525229247303 4.6200000000000001 -0.80901699437494756
|
||||
13 1.2246063538223773e-16 4.6200000000000001 -1
|
||||
14 0.58778525229247325 4.6200000000000001 -0.80901699437494734
|
||||
15 0.95105651629515364 4.6200000000000001 -0.30901699437494734
|
||||
16 -0.95105651629515353 -0.37999999999999989 -0.30901699437494756
|
||||
17 -0.58778525229247303 -0.37999999999999989 -0.80901699437494756
|
||||
18 1.2246063538223773e-16 -0.37999999999999989 -1
|
||||
19 0.58778525229247325 -0.37999999999999989 -0.80901699437494734
|
||||
20 0.95105651629515364 -0.37999999999999989 -0.30901699437494734
|
||||
21 -1.5874999999999999 -0.37999999999999989 -2.9160938800395356e-16
|
||||
22 -1.5098022196185561 -0.37999999999999989 -0.49056447857022928
|
||||
23 -1.2843144785702287 -0.37999999999999989 -0.93310908801430126
|
||||
24 -0.93310908801430081 -0.37999999999999989 -1.2843144785702292
|
||||
25 -0.49056447857022878 -0.37999999999999989 -1.5098022196185563
|
||||
26 1.9440625866930238e-16 -0.37999999999999989 -1.5874999999999999
|
||||
27 0.49056447857022917 -0.37999999999999989 -1.5098022196185561
|
||||
28 0.93310908801430115 -0.37999999999999989 -1.284314478570229
|
||||
29 1.284314478570229 -0.37999999999999989 -0.93310908801430092
|
||||
30 1.5098022196185563 -0.37999999999999989 -0.49056447857022889
|
||||
31 1.5874999999999999 -0.37999999999999989 9.7203129334651192e-17
|
||||
32 -1.5874999999999999 -5.0800000000000001 -2.9160938800395356e-16
|
||||
33 -1.5098022196185561 -5.0800000000000001 -0.49056447857022928
|
||||
34 -1.2843144785702287 -5.0800000000000001 -0.93310908801430126
|
||||
35 -0.93310908801430081 -5.0800000000000001 -1.2843144785702292
|
||||
36 -0.49056447857022878 -5.0800000000000001 -1.5098022196185563
|
||||
37 1.9440625866930238e-16 -5.0800000000000001 -1.5874999999999999
|
||||
38 0.49056447857022917 -5.0800000000000001 -1.5098022196185561
|
||||
39 0.93310908801430115 -5.0800000000000001 -1.284314478570229
|
||||
40 1.284314478570229 -5.0800000000000001 -0.93310908801430092
|
||||
41 1.5098022196185563 -5.0800000000000001 -0.49056447857022889
|
||||
42 1.5874999999999999 -5.0800000000000001 9.7203129334651192e-17
|
||||
43 -11.43 7.3659999999999997 -5.0800000000000001
|
||||
44 11.43 7.3659999999999997 -5.0800000000000001
|
||||
45 -11.43 5.0800000000000001 -5.0800000000000001
|
||||
46 11.43 5.0800000000000001 -5.0800000000000001
|
||||
47 -13.716000000000001 5.0800000000000001 -11.43
|
||||
48 -13.716000000000001 -5.0800000000000001 -11.43
|
||||
49 -11.43 -5.0800000000000001 -11.43
|
||||
50 -11.43 5.0800000000000001 -11.43
|
||||
51 -11.43 -5.0800000000000001 -13.715999999999999
|
||||
52 11.43 -5.0800000000000001 -13.715999999999999
|
||||
53 11.43 5.0800000000000001 -13.715999999999999
|
||||
54 -11.43 5.0800000000000001 -13.715999999999999
|
||||
|
||||
# Part 2 - facet list
|
||||
29 1
|
||||
1 0 1
|
||||
14 1 2 3 6 5 4 42 31 7 10 9 8 21 32
|
||||
1 0 1
|
||||
7 9 10 15 14 13 12 11
|
||||
1 0 1
|
||||
4 8 9 11 16
|
||||
1 0 1
|
||||
4 11 12 17 16
|
||||
1 0 1
|
||||
4 12 13 18 17
|
||||
1 0 1
|
||||
4 13 14 19 18
|
||||
1 0 1
|
||||
4 14 15 20 19
|
||||
1 0 1
|
||||
4 10 7 20 15
|
||||
1 0 1
|
||||
18 7 31 30 29 28 27 26 25 24 23 22 21 8 16 17 18 19 20
|
||||
1 0 1
|
||||
4 21 22 33 32
|
||||
1 0 1
|
||||
4 22 23 34 33
|
||||
1 0 1
|
||||
4 23 24 35 34
|
||||
1 0 1
|
||||
4 24 25 36 35
|
||||
1 0 1
|
||||
4 25 26 37 36
|
||||
1 0 1
|
||||
4 26 27 38 37
|
||||
1 0 1
|
||||
4 27 28 39 38
|
||||
1 0 1
|
||||
4 28 29 40 39
|
||||
1 0 1
|
||||
4 29 30 41 40
|
||||
1 0 1
|
||||
4 30 31 42 41
|
||||
1 0 1
|
||||
4 43 45 46 44
|
||||
1 0 1
|
||||
4 5 6 43 44
|
||||
1 0 1
|
||||
6 4 5 44 46 53 52
|
||||
1 0 1
|
||||
4 6 3 45 43
|
||||
1 0 1
|
||||
4 47 48 49 50
|
||||
1 0 1
|
||||
8 3 2 47 50 54 53 46 45
|
||||
1 0 1
|
||||
17 42 4 52 51 49 48 1 32 33 34 35 36 37 38 39 40 41
|
||||
1 0 1
|
||||
4 2 1 48 47
|
||||
1 0 1
|
||||
4 50 49 51 54
|
||||
1 0 1
|
||||
4 54 51 52 53
|
||||
|
||||
# Part 3 - hole list
|
||||
0
|
||||
|
||||
# Part 4 - region list
|
||||
0
|
||||
71
makefile
Normal file
71
makefile
Normal file
@@ -0,0 +1,71 @@
|
||||
###############################################################################
|
||||
# #
|
||||
# makefile for TetGen #
|
||||
# #
|
||||
# Type "make" to compile TetGen into an executable program (tetgen). #
|
||||
# Type "make tetlib" to compile TetGen into a library (libtet.a). #
|
||||
# Type "make distclean" to delete all object (*.o) files. #
|
||||
# #
|
||||
###############################################################################
|
||||
|
||||
# CXX should be set to the name of your favorite C++ compiler.
|
||||
# ===========================================================
|
||||
|
||||
CXX = g++
|
||||
#CXX = icpc
|
||||
#CXX = CC
|
||||
|
||||
# CXXFLAGS is the level of optimiztion, default is -O. One should try
|
||||
# -O2, -O3 ... to find the best optimization level.
|
||||
# ===================================================================
|
||||
|
||||
CXXFLAGS = -g
|
||||
|
||||
# PREDCXXFLAGS is for compiling J. Shewchuk's predicates. It should
|
||||
# always be equal to -O0 (no optimization). Otherwise, TetGen may not
|
||||
# work properly.
|
||||
|
||||
PREDCXXFLAGS = -O0
|
||||
|
||||
# SWITCHES is a list of switches to compile TetGen.
|
||||
# =================================================
|
||||
#
|
||||
# By default, TetGen uses double precision floating point numbers. If you
|
||||
# prefer single precision, use the -DSINGLE switch.
|
||||
#
|
||||
# The source code of TetGen includes a lot of assertions, which are mainly
|
||||
# used for catching bugs at that places. These assertions somewhat slow
|
||||
# down the speed of TetGen. They can be skipped by define the -DNDEBUG
|
||||
# switch.
|
||||
|
||||
SWITCHES = -Wall -DSELF_CHECK
|
||||
|
||||
# SWITCHES = -Wall -Wabi -Wctor-dtor-privacy \
|
||||
# -Woverloaded-virtual -Wno-pmf-conversions -Wsign-promo \
|
||||
# -Wsynth -Wchar-subscripts -Wconversion -Wsign-compare \
|
||||
# -Wcomment -Wimplicit -Wmissing-braces -Wparentheses \
|
||||
# -Wreturn-type -Wswitch -Wswitch-default \
|
||||
# -Wswitch-enum -Wtrigraphs -W -DSELF_CHECK
|
||||
|
||||
# RM should be set to the name of your favorite rm (file deletion program).
|
||||
|
||||
RM = /bin/rm
|
||||
|
||||
# The action starts here.
|
||||
|
||||
tetgen: tetgen.cxx predicates.o
|
||||
$(CXX) $(CXXFLAGS) $(SWITCHES) -o tetgen tetgen.cxx predicates.o -lm
|
||||
|
||||
tetlib: tetgen.cxx predicates.o
|
||||
$(CXX) $(CXXFLAGS) $(SWITCHES) -DTETLIBRARY -c tetgen.cxx
|
||||
ar r libtet.a tetgen.o predicates.o
|
||||
|
||||
predicates.o: predicates.cxx
|
||||
$(CXX) $(PREDCXXFLAGS) -c predicates.cxx
|
||||
|
||||
clean:
|
||||
$(RM) *.o *.a tetgen *~
|
||||
|
||||
|
||||
|
||||
|
||||
4187
predicates.cxx
Normal file
4187
predicates.cxx
Normal file
File diff suppressed because it is too large
Load Diff
34926
tetgen.cxx
Normal file
34926
tetgen.cxx
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user