ARRAY -> Array

This commit is contained in:
Joachim Schoeberl 2009-01-25 12:35:25 +00:00
parent 3ce7cbc62f
commit 91d5c9888d
180 changed files with 8437 additions and 1785 deletions

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.10.1 from Makefile.am. # Makefile.in generated by automake 1.10 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. # 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -372,8 +372,8 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
mkid -fID $$unique mkid -fID $$unique
tags: TAGS tags: TAGS
@ -398,8 +398,8 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \ test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
@ -409,12 +409,13 @@ ctags: CTAGS
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP) $(TAGS_FILES) $(LISP)
tags=; \ tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \ test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique $$tags $$unique
@ -485,10 +486,6 @@ dist-bzip2: distdir
tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2 tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
$(am__remove_distdir) $(am__remove_distdir)
dist-lzma: distdir
tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
$(am__remove_distdir)
dist-tarZ: distdir dist-tarZ: distdir
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
$(am__remove_distdir) $(am__remove_distdir)
@ -515,8 +512,6 @@ distcheck: dist
GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\ GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
*.tar.bz2*) \ *.tar.bz2*) \
bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\ bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
*.tar.lzma*) \
unlzma -c $(distdir).tar.lzma | $(am__untar) ;;\
*.tar.Z*) \ *.tar.Z*) \
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
*.shar.gz*) \ *.shar.gz*) \
@ -668,8 +663,8 @@ uninstall-am:
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
all all-am am--refresh check check-am clean clean-generic \ all all-am am--refresh check check-am clean clean-generic \
clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \ clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \
dist-gzip dist-lzma dist-shar dist-tarZ dist-zip distcheck \ dist-gzip dist-shar dist-tarZ dist-zip distcheck distclean \
distclean distclean-generic distclean-hdr distclean-libtool \ distclean-generic distclean-hdr distclean-libtool \
distclean-tags distcleancheck distdir distuninstallcheck dvi \ distclean-tags distcleancheck distdir distuninstallcheck dvi \
dvi-am html html-am info info-am install install-am \ dvi-am html html-am info info-am install install-am \
install-data install-data-am install-dvi install-dvi-am \ install-data install-data-am install-dvi install-dvi-am \

6674
aclocal.m4 vendored

File diff suppressed because it is too large Load Diff

View File

@ -1,3 +1,14 @@
%
% Requires latex and latex2html packages
%
% Generate pdf-file with
% pdflatex ng4.tex
%
% Generate html docu with
% latex2html ng4.tex
%
\documentclass[12pt]{book} \documentclass[12pt]{book}
\usepackage{a4, epsf, graphicx} \usepackage{a4, epsf, graphicx}
\usepackage{html} \usepackage{html}

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.10.1 from Makefile.am. # Makefile.in generated by automake 1.10 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. # 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -333,8 +333,8 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
mkid -fID $$unique mkid -fID $$unique
tags: TAGS tags: TAGS
@ -359,8 +359,8 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \ test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
@ -370,12 +370,13 @@ ctags: CTAGS
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP) $(TAGS_FILES) $(LISP)
tags=; \ tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \ test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique $$tags $$unique

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.10.1 from Makefile.am. # Makefile.in generated by automake 1.10 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. # 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -54,7 +54,7 @@ am_libcsg_la_OBJECTS = algprim.lo brick.lo bspline2d.lo csgeom.lo \
meshsurf.lo polyhedra.lo revolution.lo singularref.lo solid.lo \ meshsurf.lo polyhedra.lo revolution.lo singularref.lo solid.lo \
specpoin.lo spline3d.lo surface.lo triapprox.lo specpoin.lo spline3d.lo surface.lo triapprox.lo
libcsg_la_OBJECTS = $(am_libcsg_la_OBJECTS) libcsg_la_OBJECTS = $(am_libcsg_la_OBJECTS)
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@
depcomp = $(SHELL) $(top_srcdir)/depcomp depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles am__depfiles_maybe = depfiles
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
@ -349,8 +349,8 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
mkid -fID $$unique mkid -fID $$unique
tags: TAGS tags: TAGS
@ -362,8 +362,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \ test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
@ -373,12 +373,13 @@ ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP) $(TAGS_FILES) $(LISP)
tags=; \ tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \ test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique $$tags $$unique

View File

@ -108,7 +108,7 @@ namespace netgen
void Plane :: GetPrimitiveData (const char *& classname, void Plane :: GetPrimitiveData (const char *& classname,
ARRAY<double> & coeffs) const Array<double> & coeffs) const
{ {
classname = "plane"; classname = "plane";
coeffs.SetSize (6); coeffs.SetSize (6);
@ -120,7 +120,7 @@ namespace netgen
coeffs.Elem(6) = n(2); coeffs.Elem(6) = n(2);
} }
void Plane :: SetPrimitiveData (ARRAY<double> & coeffs) void Plane :: SetPrimitiveData (Array<double> & coeffs)
{ {
p(0) = coeffs.Elem(1); p(0) = coeffs.Elem(1);
p(1) = coeffs.Elem(2); p(1) = coeffs.Elem(2);
@ -376,7 +376,7 @@ namespace netgen
c1 = (c(0) * c(0) + c(1) * c(1) + c(2) * c(2)) / (2 * r) - r / 2; c1 = (c(0) * c(0) + c(1) * c(1) + c(2) * c(2)) / (2 * r) - r / 2;
} }
void Sphere :: GetPrimitiveData (const char *& classname, ARRAY<double> & coeffs) const void Sphere :: GetPrimitiveData (const char *& classname, Array<double> & coeffs) const
{ {
classname = "sphere"; classname = "sphere";
coeffs.SetSize (4); coeffs.SetSize (4);
@ -386,7 +386,7 @@ namespace netgen
coeffs.Elem(4) = r; coeffs.Elem(4) = r;
} }
void Sphere :: SetPrimitiveData (ARRAY<double> & coeffs) void Sphere :: SetPrimitiveData (Array<double> & coeffs)
{ {
c(0) = coeffs.Elem(1); c(0) = coeffs.Elem(1);
c(1) = coeffs.Elem(2); c(1) = coeffs.Elem(2);
@ -734,7 +734,7 @@ namespace netgen
Cylinder :: Cylinder (ARRAY<double> & coeffs) Cylinder :: Cylinder (Array<double> & coeffs)
{ {
SetPrimitiveData(coeffs); SetPrimitiveData(coeffs);
} }
@ -776,7 +776,7 @@ namespace netgen
void Cylinder :: GetPrimitiveData (const char *& classname, ARRAY<double> & coeffs) const void Cylinder :: GetPrimitiveData (const char *& classname, Array<double> & coeffs) const
{ {
classname = "cylinder"; classname = "cylinder";
coeffs.SetSize (7); coeffs.SetSize (7);
@ -789,7 +789,7 @@ namespace netgen
coeffs.Elem(7) = r; coeffs.Elem(7) = r;
} }
void Cylinder :: SetPrimitiveData (ARRAY<double> & coeffs) void Cylinder :: SetPrimitiveData (Array<double> & coeffs)
{ {
a(0) = coeffs.Elem(1); a(0) = coeffs.Elem(1);
a(1) = coeffs.Elem(2); a(1) = coeffs.Elem(2);
@ -1266,7 +1266,7 @@ namespace netgen
void Cone :: GetPrimitiveData (const char *& classname, ARRAY<double> & coeffs) const void Cone :: GetPrimitiveData (const char *& classname, Array<double> & coeffs) const
{ {
classname = "cone"; classname = "cone";
coeffs.SetSize (8); coeffs.SetSize (8);
@ -1280,7 +1280,7 @@ namespace netgen
coeffs.Elem(8) = rb; coeffs.Elem(8) = rb;
} }
void Cone :: SetPrimitiveData (ARRAY<double> & coeffs) void Cone :: SetPrimitiveData (Array<double> & coeffs)
{ {
a(0) = coeffs.Elem(1); a(0) = coeffs.Elem(1);
a(1) = coeffs.Elem(2); a(1) = coeffs.Elem(2);
@ -1469,7 +1469,7 @@ namespace netgen
r = ar; r = ar;
} }
void Torus :: GetPrimitiveData (const char *& classname, ARRAY<double> & coeffs) const void Torus :: GetPrimitiveData (const char *& classname, Array<double> & coeffs) const
{ {
classname = "torus"; classname = "torus";
coeffs.SetSize (8); coeffs.SetSize (8);
@ -1483,7 +1483,7 @@ namespace netgen
coeffs.Elem(8) = r; coeffs.Elem(8) = r;
} }
void Torus :: SetPrimitiveData (ARRAY<double> & coeffs) void Torus :: SetPrimitiveData (Array<double> & coeffs)
{ {
c(0) = coeffs.Elem(1); c(0) = coeffs.Elem(1);
c(1) = coeffs.Elem(2); c(1) = coeffs.Elem(2);

View File

@ -62,8 +62,8 @@ public:
Plane (const Point<3> & ap, Vec<3> an); Plane (const Point<3> & ap, Vec<3> an);
virtual void GetPrimitiveData (const char *& classname, virtual void GetPrimitiveData (const char *& classname,
ARRAY<double> & coeffs) const; Array<double> & coeffs) const;
virtual void SetPrimitiveData (ARRAY<double> & coeffs); virtual void SetPrimitiveData (Array<double> & coeffs);
static Primitive * CreateDefault (); static Primitive * CreateDefault ();
virtual Primitive * Copy () const; virtual Primitive * Copy () const;
@ -124,8 +124,8 @@ public:
Sphere (const Point<3> & ac, double ar); Sphere (const Point<3> & ac, double ar);
virtual void GetPrimitiveData (const char *& classname, virtual void GetPrimitiveData (const char *& classname,
ARRAY<double> & coeffs) const; Array<double> & coeffs) const;
virtual void SetPrimitiveData (ARRAY<double> & coeffs); virtual void SetPrimitiveData (Array<double> & coeffs);
static Primitive * CreateDefault (); static Primitive * CreateDefault ();
virtual Primitive * Copy () const; virtual Primitive * Copy () const;
@ -177,10 +177,10 @@ class Cylinder : public QuadraticSurface
public: public:
Cylinder (const Point<3> & aa, const Point<3> & ab, double ar); Cylinder (const Point<3> & aa, const Point<3> & ab, double ar);
Cylinder (ARRAY<double> & coeffs); Cylinder (Array<double> & coeffs);
virtual void GetPrimitiveData (const char *& classname, ARRAY<double> & coeffs) const; virtual void GetPrimitiveData (const char *& classname, Array<double> & coeffs) const;
virtual void SetPrimitiveData (ARRAY<double> & coeffs); virtual void SetPrimitiveData (Array<double> & coeffs);
static Primitive * CreateDefault (); static Primitive * CreateDefault ();
virtual Primitive * Copy () const; virtual Primitive * Copy () const;
@ -238,8 +238,8 @@ public:
/* /*
static Primitive * CreateDefault (); static Primitive * CreateDefault ();
virtual void GetPrimitiveData (const char *& classname, ARRAY<double> & coeffs) const; virtual void GetPrimitiveData (const char *& classname, Array<double> & coeffs) const;
virtual void SetPrimitiveData (ARRAY<double> & coeffs); virtual void SetPrimitiveData (Array<double> & coeffs);
*/ */
/// ///
virtual INSOLID_TYPE BoxInSolid (const BoxSphere<3> & box) const; virtual INSOLID_TYPE BoxInSolid (const BoxSphere<3> & box) const;
@ -324,8 +324,8 @@ public:
Cone (const Point<3> & aa, const Point<3> & ab, double ara, double arb); Cone (const Point<3> & aa, const Point<3> & ab, double ara, double arb);
/// ///
static Primitive * CreateDefault (); static Primitive * CreateDefault ();
virtual void GetPrimitiveData (const char *& classname, ARRAY<double> & coeffs) const; virtual void GetPrimitiveData (const char *& classname, Array<double> & coeffs) const;
virtual void SetPrimitiveData (ARRAY<double> & coeffs); virtual void SetPrimitiveData (Array<double> & coeffs);
/// ///
virtual INSOLID_TYPE BoxInSolid (const BoxSphere<3> & box) const; virtual INSOLID_TYPE BoxInSolid (const BoxSphere<3> & box) const;
@ -392,9 +392,9 @@ public:
virtual Point<3> GetSurfacePoint () const; virtual Point<3> GetSurfacePoint () const;
/// OK /// OK
virtual void GetPrimitiveData (const char *& classname, virtual void GetPrimitiveData (const char *& classname,
ARRAY<double> & coeffs) const; Array<double> & coeffs) const;
/// OK /// OK
virtual void SetPrimitiveData (ARRAY<double> & coeffs); virtual void SetPrimitiveData (Array<double> & coeffs);
/// OK /// OK
static Primitive * CreateDefault (); static Primitive * CreateDefault ();
/// OK /// OK

View File

@ -343,7 +343,7 @@ INSOLID_TYPE Brick :: VecInSolid4 (const Point<3> & p,
void Brick :: void Brick ::
GetPrimitiveData (const char *& classname, ARRAY<double> & coeffs) const GetPrimitiveData (const char *& classname, Array<double> & coeffs) const
{ {
classname = "brick"; classname = "brick";
coeffs.SetSize(12); coeffs.SetSize(12);
@ -364,7 +364,7 @@ GetPrimitiveData (const char *& classname, ARRAY<double> & coeffs) const
coeffs.Elem(12) = p4(2); coeffs.Elem(12) = p4(2);
} }
void Brick :: SetPrimitiveData (ARRAY<double> & coeffs) void Brick :: SetPrimitiveData (Array<double> & coeffs)
{ {
p1(0) = coeffs.Elem(1); p1(0) = coeffs.Elem(1);
p1(1) = coeffs.Elem(2); p1(1) = coeffs.Elem(2);
@ -414,7 +414,7 @@ void Brick :: CalcData()
{ 1, 5, 3, 7 }, { 1, 5, 3, 7 },
{ 2, 4, 6, 8 } }; { 2, 4, 6, 8 } };
ARRAY<double> data(6); Array<double> data(6);
for (i = 0; i < 6; i++) for (i = 0; i < 6; i++)
{ {
const Point<3> lp1 = pi[lface[i][0]-1]; const Point<3> lp1 = pi[lface[i][0]-1];

View File

@ -51,8 +51,8 @@ class Brick : public Primitive
{ {
Point<3> p1, p2, p3, p4; Point<3> p1, p2, p3, p4;
Vec<3> v12, v13, v14; Vec<3> v12, v13, v14;
// ARRAY<OneSurfacePrimitive*> faces; // Array<OneSurfacePrimitive*> faces;
ARRAY<Plane*> faces; Array<Plane*> faces;
public: public:
Brick (Point<3> ap1, Point<3> ap2, Point<3> ap3, Point<3> ap4); Brick (Point<3> ap1, Point<3> ap2, Point<3> ap3, Point<3> ap4);
@ -95,8 +95,8 @@ public:
{ return *faces[i]; } { return *faces[i]; }
virtual void GetPrimitiveData (const char *& classname, ARRAY<double> & coeffs) const; virtual void GetPrimitiveData (const char *& classname, Array<double> & coeffs) const;
virtual void SetPrimitiveData (ARRAY<double> & coeffs); virtual void SetPrimitiveData (Array<double> & coeffs);
virtual void Reduce (const BoxSphere<3> & box); virtual void Reduce (const BoxSphere<3> & box);
virtual void UnReduce (); virtual void UnReduce ();

View File

@ -73,7 +73,7 @@ namespace netgen
void CSGeometry :: Clean () void CSGeometry :: Clean ()
{ {
ARRAY< Solid* > to_delete; Array< Solid* > to_delete;
for (int i = 0; i < solids.Size(); i++) for (int i = 0; i < solids.Size(); i++)
if(!to_delete.Contains(solids[i]->S1())) if(!to_delete.Contains(solids[i]->S1()))
@ -151,7 +151,7 @@ namespace netgen
if (prim) if (prim)
{ {
const char * classname; const char * classname;
ARRAY<double> coeffs; Array<double> coeffs;
prim -> GetPrimitiveData (classname, coeffs); prim -> GetPrimitiveData (classname, coeffs);
@ -222,7 +222,7 @@ namespace netgen
char key[100], name[100], classname[100], sname[100]; char key[100], name[100], classname[100], sname[100];
int ncoeff, i, j; int ncoeff, i, j;
ARRAY<double> coeff; Array<double> coeff;
while (ist.good()) while (ist.good())
{ {
@ -320,7 +320,7 @@ namespace netgen
ARRAY<double> coeffs; Array<double> coeffs;
const char * classname; const char * classname;
out << "csgsurfaces " << GetNSurf() << "\n"; out << "csgsurfaces " << GetNSurf() << "\n";
@ -361,7 +361,7 @@ namespace netgen
void CSGeometry :: LoadSurfaces (istream & in) void CSGeometry :: LoadSurfaces (istream & in)
{ {
ARRAY<double> coeffs; Array<double> coeffs;
string classname; string classname;
int nsurfaces,size; int nsurfaces,size;
@ -632,7 +632,7 @@ namespace netgen
void CSGeometry :: SetFlags (const char * solidname, const Flags & flags) void CSGeometry :: SetFlags (const char * solidname, const Flags & flags)
{ {
Solid * solid = solids.Elem(solidname); Solid * solid = solids.Elem(solidname);
ARRAY<int> surfind; Array<int> surfind;
int i; int i;
double maxh = flags.GetNumFlag ("maxh", -1); double maxh = flags.GetNumFlag ("maxh", -1);
@ -662,7 +662,7 @@ namespace netgen
if (flags.StringListFlagDefined ("bcname")) if (flags.StringListFlagDefined ("bcname"))
{ {
const ARRAY<char*> & bcname = flags.GetStringListFlag("bcname"); const Array<char*> & bcname = flags.GetStringListFlag("bcname");
Polyhedra * polyh; Polyhedra * polyh;
if(solid->S1()) if(solid->S1())
@ -672,7 +672,7 @@ namespace netgen
if(polyh) if(polyh)
{ {
ARRAY < ARRAY<int> * > polysurfs; Array < Array<int> * > polysurfs;
polyh->GetPolySurfs(polysurfs); polyh->GetPolySurfs(polysurfs);
if(bcname.Size() != polysurfs.Size()) if(bcname.Size() != polysurfs.Size())
cerr << "WARNING: solid \"" << solidname << "\" has " << polysurfs.Size() cerr << "WARNING: solid \"" << solidname << "\" has " << polysurfs.Size()
@ -716,7 +716,7 @@ namespace netgen
if (flags.NumListFlagDefined ("bc")) if (flags.NumListFlagDefined ("bc"))
{ {
const ARRAY<double> & bcnum = flags.GetNumListFlag("bc"); const Array<double> & bcnum = flags.GetNumListFlag("bc");
Polyhedra * polyh; Polyhedra * polyh;
if(solid->S1()) if(solid->S1())
@ -726,7 +726,7 @@ namespace netgen
if(polyh) if(polyh)
{ {
ARRAY < ARRAY<int> * > polysurfs; Array < Array<int> * > polysurfs;
polyh->GetPolySurfs(polysurfs); polyh->GetPolySurfs(polysurfs);
if(bcnum.Size() != polysurfs.Size()) if(bcnum.Size() != polysurfs.Size())
cerr << "WARNING: solid \"" << solidname << "\" has " << polysurfs.Size() cerr << "WARNING: solid \"" << solidname << "\" has " << polysurfs.Size()
@ -797,7 +797,7 @@ namespace netgen
void CSGeometry :: void CSGeometry ::
GetSurfaceIndices (const Solid * sol, GetSurfaceIndices (const Solid * sol,
const BoxSphere<3> & box, const BoxSphere<3> & box,
ARRAY<int> & locsurf) const Array<int> & locsurf) const
{ {
ReducePrimitiveIterator rpi(box); ReducePrimitiveIterator rpi(box);
UnReducePrimitiveIterator urpi; UnReducePrimitiveIterator urpi;
@ -826,7 +826,7 @@ namespace netgen
void CSGeometry :: void CSGeometry ::
GetIndependentSurfaceIndices (const Solid * sol, GetIndependentSurfaceIndices (const Solid * sol,
const BoxSphere<3> & box, const BoxSphere<3> & box,
ARRAY<int> & locsurf) const Array<int> & locsurf) const
{ {
ReducePrimitiveIterator rpi(box); ReducePrimitiveIterator rpi(box);
UnReducePrimitiveIterator urpi; UnReducePrimitiveIterator urpi;
@ -885,7 +885,7 @@ namespace netgen
void CSGeometry :: void CSGeometry ::
GetIndependentSurfaceIndices (const Solid * sol, GetIndependentSurfaceIndices (const Solid * sol,
const Point<3> & p, Vec<3> & v, const Point<3> & p, Vec<3> & v,
ARRAY<int> & locsurf) const Array<int> & locsurf) const
{ {
cout << "very dangerous" << endl; cout << "very dangerous" << endl;
Point<3> p2 = p + 1e-2 * v; Point<3> p2 = p + 1e-2 * v;
@ -897,7 +897,7 @@ namespace netgen
void CSGeometry :: void CSGeometry ::
GetIndependentSurfaceIndices (ARRAY<int> & locsurf) const GetIndependentSurfaceIndices (Array<int> & locsurf) const
{ {
for (int i = 0; i < locsurf.Size(); i++) for (int i = 0; i < locsurf.Size(); i++)
locsurf[i] = isidenticto[locsurf[i]]; locsurf[i] = isidenticto[locsurf[i]];
@ -938,7 +938,7 @@ namespace netgen
delete triapprox[i]; delete triapprox[i];
triapprox.SetSize (ntlo); triapprox.SetSize (ntlo);
ARRAY<int> surfind; Array<int> surfind;
IndexSet iset(GetNSurf()); IndexSet iset(GetNSurf());
for (int i = 0; i < ntlo; i++) for (int i = 0; i < ntlo; i++)
@ -1062,7 +1062,7 @@ namespace netgen
// IndexSet iset(GetNSurf()); // IndexSet iset(GetNSurf());
locsol -> GetSurfaceIndices (iset); locsol -> GetSurfaceIndices (iset);
const ARRAY<int> & lsurfi = iset.Array(); const Array<int> & lsurfi = iset.Array();
locsol -> IterateSolid (urpi); locsol -> IterateSolid (urpi);

View File

@ -93,10 +93,10 @@ private:
public: public:
/// primitive of surface /// primitive of surface
ARRAY<const Primitive*> surf2prim; Array<const Primitive*> surf2prim;
private: private:
ARRAY<Surface*> delete_them; Array<Surface*> delete_them;
/// all named solids /// all named solids
SYMBOLTABLE<Solid*> solids; SYMBOLTABLE<Solid*> solids;
@ -107,16 +107,16 @@ private:
SYMBOLTABLE< SplineGeometry<3>* > splinecurves3d; SYMBOLTABLE< SplineGeometry<3>* > splinecurves3d;
/// all top level objects: solids and surfaces /// all top level objects: solids and surfaces
ARRAY<TopLevelObject*> toplevelobjects; Array<TopLevelObject*> toplevelobjects;
/// additional points specified by user /// additional points specified by user
ARRAY<Point<3> > userpoints; Array<Point<3> > userpoints;
ARRAY<double> userpoints_ref_factor; Array<double> userpoints_ref_factor;
mutable ARRAY<Point<3> > identpoints; mutable Array<Point<3> > identpoints;
/// triangular approximation of top level objects /// triangular approximation of top level objects
ARRAY<TriangleApproximation*> triapprox; Array<TriangleApproximation*> triapprox;
/// increment, if geometry is changed /// increment, if geometry is changed
static int changeval; static int changeval;
@ -129,7 +129,7 @@ private:
/// identic surfaces are stored by pair of indizes, val = inverse /// identic surfaces are stored by pair of indizes, val = inverse
INDEX_2_HASHTABLE<int> identicsurfaces; INDEX_2_HASHTABLE<int> identicsurfaces;
ARRAY<int> isidenticto; Array<int> isidenticto;
/// identification of boundaries (periodic, thin domains, ...) /// identification of boundaries (periodic, thin domains, ...)
double ideps; double ideps;
@ -223,10 +223,10 @@ public:
// quick implementations: // quick implementations:
ARRAY<SingularFace*> singfaces; Array<SingularFace*> singfaces;
ARRAY<SingularEdge*> singedges; Array<SingularEdge*> singedges;
ARRAY<SingularPoint*> singpoints; Array<SingularPoint*> singpoints;
ARRAY<Identification*> identifications; Array<Identification*> identifications;
int GetNIdentifications (void) const { return identifications.Size(); } int GetNIdentifications (void) const { return identifications.Size(); }
void AddIdentification (Identification * ident); void AddIdentification (Identification * ident);
@ -241,17 +241,17 @@ public:
/// ///
void GetSurfaceIndices (const Solid * sol, void GetSurfaceIndices (const Solid * sol,
const BoxSphere<3> & box, const BoxSphere<3> & box,
ARRAY<int> & locsurf) const; Array<int> & locsurf) const;
/// ///
void GetIndependentSurfaceIndices (const Solid * sol, void GetIndependentSurfaceIndices (const Solid * sol,
const BoxSphere<3> & box, const BoxSphere<3> & box,
ARRAY<int> & locsurf) const; Array<int> & locsurf) const;
/// ///
void GetIndependentSurfaceIndices (const Solid * sol, void GetIndependentSurfaceIndices (const Solid * sol,
const Point<3> & p, Vec<3> & v, const Point<3> & p, Vec<3> & v,
ARRAY<int> & locsurf) const; Array<int> & locsurf) const;
/// ///
void GetIndependentSurfaceIndices (ARRAY<int> & locsurf) const; void GetIndependentSurfaceIndices (Array<int> & locsurf) const;
/// ///
int GetSurfaceClassRepresentant (int si) const int GetSurfaceClassRepresentant (int si) const
@ -302,7 +302,7 @@ public:
string * bcname; string * bcname;
}; };
ARRAY<BCModification> bcmodifications; Array<BCModification> bcmodifications;
}; };
#endif #endif

View File

@ -389,7 +389,7 @@ namespace netgen
int inputface = 0; int inputface = 0;
while (1) while (1)
{ {
ARRAY<int> pnums,cleaned_pnums; Array<int> pnums,cleaned_pnums;
for(int i=0; i<3; i++) for(int i=0; i<3; i++)
{ {
pnums.Append((int) (ParseNumber (scan))); pnums.Append((int) (ParseNumber (scan)));
@ -717,7 +717,7 @@ namespace netgen
if(scan.GetToken() == '-' || scan.GetToken() == TOK_NUM) if(scan.GetToken() == '-' || scan.GetToken() == TOK_NUM)
{ {
ARRAY<double> vals; Array<double> vals;
vals.Append (ParseNumber(scan)); vals.Append (ParseNumber(scan));
while (scan.GetToken() == ',') while (scan.GetToken() == ',')
{ {
@ -729,7 +729,7 @@ namespace netgen
} }
else else
{ // string list { // string list
ARRAY<char*> vals; Array<char*> vals;
string val = scan.GetStringValue(); string val = scan.GetStringValue();
vals.Append(new char[val.size()+1]); vals.Append(new char[val.size()+1]);
strcpy(vals.Last(),val.c_str()); strcpy(vals.Last(),val.c_str());
@ -833,7 +833,7 @@ namespace netgen
if (flags.NumListFlagDefined ("col")) if (flags.NumListFlagDefined ("col"))
{ {
const ARRAY<double> & col = const Array<double> & col =
flags.GetNumListFlag ("col"); flags.GetNumListFlag ("col");
tlo->SetRGB (col[0], col[1], col[2]); tlo->SetRGB (col[0], col[1], col[2]);
} }
@ -859,7 +859,7 @@ namespace netgen
ParseChar (scan, ';'); ParseChar (scan, ';');
ARRAY<int> si; Array<int> si;
geom->GetSolid(surfname)->GetSurfaceIndices(si); geom->GetSolid(surfname)->GetSurfaceIndices(si);
int tlonr = int tlonr =
geom->SetTopLevelObject ((Solid*)geom->GetSolid(name), geom->SetTopLevelObject ((Solid*)geom->GetSolid(name),
@ -867,7 +867,7 @@ namespace netgen
TopLevelObject * tlo = geom->GetTopLevelObject (tlonr); TopLevelObject * tlo = geom->GetTopLevelObject (tlonr);
if (flags.NumListFlagDefined ("col")) if (flags.NumListFlagDefined ("col"))
{ {
const ARRAY<double> & col = flags.GetNumListFlag ("col"); const Array<double> & col = flags.GetNumListFlag ("col");
tlo->SetRGB (col.Get(1), col.Get(2), col.Get(3)); tlo->SetRGB (col.Get(1), col.Get(2), col.Get(3));
} }
if (flags.GetDefineFlag ("transparent")) if (flags.GetDefineFlag ("transparent"))
@ -905,7 +905,7 @@ namespace netgen
ParseChar (scan, ';'); ParseChar (scan, ';');
ARRAY<int> si1, si2; Array<int> si1, si2;
geom->GetSolid(name1)->GetSurfaceIndices(si1); geom->GetSolid(name1)->GetSurfaceIndices(si1);
geom->GetSolid(name2)->GetSurfaceIndices(si2); geom->GetSolid(name2)->GetSurfaceIndices(si2);
@ -941,7 +941,7 @@ namespace netgen
ParseChar (scan, ';'); ParseChar (scan, ';');
ARRAY<int> si1, si2; Array<int> si1, si2;
geom->GetSolid(name1)->GetSurfaceIndices(si1); geom->GetSolid(name1)->GetSurfaceIndices(si1);
geom->GetSolid(name2)->GetSurfaceIndices(si2); geom->GetSolid(name2)->GetSurfaceIndices(si2);
@ -1169,7 +1169,7 @@ namespace netgen
CSGeometry::BCModification bcm; CSGeometry::BCModification bcm;
bcm.bcname = NULL; bcm.bcname = NULL;
ARRAY<int> si; Array<int> si;
geom->GetSolid(name1)->GetSurfaceIndices(si); geom->GetSolid(name1)->GetSurfaceIndices(si);
if(si.Size() == 0) if(si.Size() == 0)
@ -1221,7 +1221,7 @@ namespace netgen
bcm.bcname = NULL; bcm.bcname = NULL;
ARRAY<int> si; Array<int> si;
geom->GetSolid(name1)->GetSurfaceIndices(si); geom->GetSolid(name1)->GetSurfaceIndices(si);
if(si.Size() == 0) if(si.Size() == 0)

View File

@ -10,7 +10,7 @@ namespace netgen
EdgeCalculation :: EdgeCalculation ::
EdgeCalculation (const CSGeometry & ageometry, EdgeCalculation (const CSGeometry & ageometry,
ARRAY<SpecialPoint> & aspecpoints) Array<SpecialPoint> & aspecpoints)
: geometry(ageometry), specpoints(aspecpoints) : geometry(ageometry), specpoints(aspecpoints)
{ {
Box<3> bbox = geometry.BoundingBox(); Box<3> bbox = geometry.BoundingBox();
@ -44,7 +44,7 @@ namespace netgen
// add all special points before edge points (important for periodic identification) // add all special points before edge points (important for periodic identification)
// JS, Jan 2007 // JS, Jan 2007
const double di=1e-7*geometry.MaxSize(); const double di=1e-7*geometry.MaxSize();
ARRAY<int> locsearch; Array<int> locsearch;
for (int i = 0; i < specpoints.Size(); i++) for (int i = 0; i < specpoints.Size(); i++)
if (specpoints[i].unconditional) if (specpoints[i].unconditional)
@ -91,9 +91,9 @@ namespace netgen
void EdgeCalculation :: CalcEdges1 (double h, Mesh & mesh) void EdgeCalculation :: CalcEdges1 (double h, Mesh & mesh)
{ {
ARRAY<int> hsp(specpoints.Size()); Array<int> hsp(specpoints.Size());
ARRAY<int> glob2hsp(specpoints.Size()); Array<int> glob2hsp(specpoints.Size());
ARRAY<int> startpoints, endpoints; Array<int> startpoints, endpoints;
int pos, ep; int pos, ep;
@ -102,11 +102,11 @@ namespace netgen
Point<3> p, np; Point<3> p, np;
int pi1, s1, s2, s1_orig, s2_orig; int pi1, s1, s2, s1_orig, s2_orig;
ARRAY<Point<3> > edgepoints; Array<Point<3> > edgepoints;
ARRAY<double> curvelength; Array<double> curvelength;
int copyedge = 0, copyfromedge = -1, copyedgeidentification = -1; int copyedge = 0, copyfromedge = -1, copyedgeidentification = -1;
ARRAY<int> locsurfind, locind; Array<int> locsurfind, locind;
int checkedcopy = 0; int checkedcopy = 0;
@ -401,8 +401,8 @@ namespace netgen
} }
ARRAY<Segment> refedges; Array<Segment> refedges;
ARRAY<bool> refedgesinv; Array<bool> refedgesinv;
AnalyzeEdge (s1_orig, s2_orig, s1, s2, pos, layer, AnalyzeEdge (s1_orig, s2_orig, s1, s2, pos, layer,
@ -505,7 +505,7 @@ namespace netgen
SegmentIndex si; SegmentIndex si;
PointIndex pi; PointIndex pi;
ARRAY<int> osedges(cntedge); Array<int> osedges(cntedge);
INDEX_2_HASHTABLE<int> osedgesht (cntedge+1); INDEX_2_HASHTABLE<int> osedgesht (cntedge+1);
osedges = 2; osedges = 2;
@ -634,17 +634,17 @@ namespace netgen
void EdgeCalculation :: void EdgeCalculation ::
FollowEdge (int pi1, int & ep, int & pos, FollowEdge (int pi1, int & ep, int & pos,
const ARRAY<int> & hsp, const Array<int> & hsp,
double h, const Mesh & mesh, double h, const Mesh & mesh,
ARRAY<Point<3> > & edgepoints, Array<Point<3> > & edgepoints,
ARRAY<double> & curvelength) Array<double> & curvelength)
{ {
int s1, s2, s1_rep, s2_rep; int s1, s2, s1_rep, s2_rep;
double len, steplen, cursteplen, loch; double len, steplen, cursteplen, loch;
Point<3> p, np, pnp; Point<3> p, np, pnp;
Vec<3> a1, a2, t; Vec<3> a1, a2, t;
ARRAY<int> locind; Array<int> locind;
double size = geometry.MaxSize(); double size = geometry.MaxSize();
double epspointdist2 = size * 1e-6; double epspointdist2 = size * 1e-6;
@ -862,9 +862,9 @@ namespace netgen
void EdgeCalculation :: void EdgeCalculation ::
AnalyzeEdge (int s1, int s2, int s1_rep, int s2_rep, int pos, int layer, AnalyzeEdge (int s1, int s2, int s1_rep, int s2_rep, int pos, int layer,
const ARRAY<Point<3> > & edgepoints, const Array<Point<3> > & edgepoints,
ARRAY<Segment> & refedges, Array<Segment> & refedges,
ARRAY<bool> & refedgesinv) Array<bool> & refedgesinv)
{ {
int j, k, l; int j, k, l;
int hi; int hi;
@ -872,9 +872,9 @@ namespace netgen
Vec<3> t, a1, a2, m, n; Vec<3> t, a1, a2, m, n;
Segment seg; Segment seg;
Solid * locsol; Solid * locsol;
ARRAY<int> locsurfind, locsurfind2; Array<int> locsurfind, locsurfind2;
ARRAY<int> edges_priority; Array<int> edges_priority;
double size = geometry.MaxSize(); double size = geometry.MaxSize();
bool debug = 0; bool debug = 0;
@ -1020,7 +1020,7 @@ namespace netgen
//int k; //int k;
double eps = 1e-8*size; double eps = 1e-8*size;
ARRAY<bool> pre_ok(2); Array<bool> pre_ok(2);
do do
{ {
@ -1223,10 +1223,10 @@ namespace netgen
void EdgeCalculation :: void EdgeCalculation ::
StoreEdge (const ARRAY<Segment> & refedges, StoreEdge (const Array<Segment> & refedges,
const ARRAY<bool> & refedgesinv, const Array<bool> & refedgesinv,
const ARRAY<Point<3> > & edgepoints, const Array<Point<3> > & edgepoints,
const ARRAY<double> & curvelength, const Array<double> & curvelength,
int layer, int layer,
Mesh & mesh) Mesh & mesh)
{ {
@ -1272,7 +1272,7 @@ namespace netgen
const double di=1e-7*geometry.MaxSize(); const double di=1e-7*geometry.MaxSize();
ARRAY<int> locsearch; Array<int> locsearch;
meshpoint_tree -> GetIntersecting (p-Vec<3> (di,di,di), meshpoint_tree -> GetIntersecting (p-Vec<3> (di,di,di),
p+Vec<3> (di,di,di), locsearch); p+Vec<3> (di,di,di), locsearch);
if (locsearch.Size()) if (locsearch.Size())
@ -1395,10 +1395,10 @@ namespace netgen
void EdgeCalculation :: void EdgeCalculation ::
StoreShortEdge (const ARRAY<Segment> & refedges, StoreShortEdge (const Array<Segment> & refedges,
const ARRAY<bool> & refedgesinv, const Array<bool> & refedgesinv,
const ARRAY<Point<3> > & edgepoints, const Array<Point<3> > & edgepoints,
const ARRAY<double> & curvelength, const Array<double> & curvelength,
int layer, int layer,
Mesh & mesh) Mesh & mesh)
{ {
@ -1526,8 +1526,8 @@ namespace netgen
void EdgeCalculation :: void EdgeCalculation ::
CopyEdge (const ARRAY<Segment> & refedges, CopyEdge (const Array<Segment> & refedges,
const ARRAY<bool> & refedgesinv, const Array<bool> & refedgesinv,
int copyfromedge, int copyfromedge,
const Point<3> & fromstart, const Point<3> & fromend, const Point<3> & fromstart, const Point<3> & fromend,
const Point<3> & tostart, const Point<3> & toend, const Point<3> & tostart, const Point<3> & toend,
@ -1679,7 +1679,7 @@ namespace netgen
Point<3> p1, p2; Point<3> p1, p2;
Vec<3> nv, tv; Vec<3> nv, tv;
Solid * tansol; Solid * tansol;
ARRAY<int> tansurfind; Array<int> tansurfind;
// const Solid * sol; // const Solid * sol;
double size = geometry.MaxSize(); double size = geometry.MaxSize();

View File

@ -21,7 +21,7 @@
points have to be given. points have to be given.
*/ */
extern void CalcEdges (const CSGeometry & geometry, extern void CalcEdges (const CSGeometry & geometry,
const ARRAY<SpecialPoint> & specpoints, const Array<SpecialPoint> & specpoints,
double h, Mesh & mesh); double h, Mesh & mesh);
@ -31,7 +31,7 @@ extern void CalcEdges (const CSGeometry & geometry,
class EdgeCalculation class EdgeCalculation
{ {
const CSGeometry & geometry; const CSGeometry & geometry;
ARRAY<SpecialPoint> & specpoints; Array<SpecialPoint> & specpoints;
Point3dTree * searchtree; Point3dTree * searchtree;
Point3dTree * meshpoint_tree; Point3dTree * meshpoint_tree;
int cntedge; int cntedge;
@ -40,7 +40,7 @@ class EdgeCalculation
public: public:
EdgeCalculation (const CSGeometry & ageometry, EdgeCalculation (const CSGeometry & ageometry,
ARRAY<SpecialPoint> & aspecpoints); Array<SpecialPoint> & aspecpoints);
~EdgeCalculation(); ~EdgeCalculation();
@ -54,34 +54,34 @@ private:
void FollowEdge (int pi1, int & ep, int & pos, void FollowEdge (int pi1, int & ep, int & pos,
// const ARRAY<SpecialPoint> & hsp, // const Array<SpecialPoint> & hsp,
const ARRAY<int> & hsp, const Array<int> & hsp,
double h, const Mesh & mesh, double h, const Mesh & mesh,
ARRAY<Point<3> > & edgepoints, Array<Point<3> > & edgepoints,
ARRAY<double> & curvelength); Array<double> & curvelength);
void AnalyzeEdge (int s1, int s2, int s1_rep, int s2_rep, int pos, int layer, void AnalyzeEdge (int s1, int s2, int s1_rep, int s2_rep, int pos, int layer,
const ARRAY<Point<3> > & edgepoints, const Array<Point<3> > & edgepoints,
ARRAY<Segment> & refedges, Array<Segment> & refedges,
ARRAY<bool> & refedgesinv); Array<bool> & refedgesinv);
void StoreEdge (const ARRAY<Segment> & refedges, void StoreEdge (const Array<Segment> & refedges,
const ARRAY<bool> & refedgesinv, const Array<bool> & refedgesinv,
const ARRAY<Point<3> > & edgepoints, const Array<Point<3> > & edgepoints,
const ARRAY<double> & curvelength, const Array<double> & curvelength,
int layer, int layer,
Mesh & mesh); Mesh & mesh);
void StoreShortEdge (const ARRAY<Segment> & refedges, void StoreShortEdge (const Array<Segment> & refedges,
const ARRAY<bool> & refedgesinv, const Array<bool> & refedgesinv,
const ARRAY<Point<3> > & edgepoints, const Array<Point<3> > & edgepoints,
const ARRAY<double> & curvelength, const Array<double> & curvelength,
int layer, int layer,
Mesh & mesh); Mesh & mesh);
void CopyEdge (const ARRAY<Segment> & refedges, void CopyEdge (const Array<Segment> & refedges,
const ARRAY<bool> & refedgesinv, const Array<bool> & refedgesinv,
int copyfromedge, int copyfromedge,
const Point<3> & fromstart, const Point<3> & fromend, const Point<3> & fromstart, const Point<3> & fromend,
const Point<3> & tostart, const Point<3> & toend, const Point<3> & tostart, const Point<3> & toend,

View File

@ -66,9 +66,9 @@ public:
class BSplineCurve2d : public ExplicitCurve2d class BSplineCurve2d : public ExplicitCurve2d
{ {
/// ///
ARRAY<Point<2> > points; Array<Point<2> > points;
/// ///
ARRAY<int> intervallused; Array<int> intervallused;
/// ///
int redlevel; int redlevel;

View File

@ -54,13 +54,13 @@ namespace netgen
Init(); Init();
} }
ExtrusionFace :: ExtrusionFace(const ARRAY<double> & raw_data) ExtrusionFace :: ExtrusionFace(const Array<double> & raw_data)
{ {
deletable = true; deletable = true;
int pos=0; int pos=0;
ARRAY< Point<2> > p(3); Array< Point<2> > p(3);
int ptype = int(raw_data[pos]); pos++; int ptype = int(raw_data[pos]); pos++;
@ -147,7 +147,7 @@ namespace netgen
ARRAY<double> mindist(path->GetNSplines()); Array<double> mindist(path->GetNSplines());
for(int i=0; i<path->GetNSplines(); i++) for(int i=0; i<path->GetNSplines(); i++)
{ {
@ -355,12 +355,12 @@ namespace netgen
grad_t *= 1./facA; grad_t *= 1./facA;
ARRAY < Vec<3> > dphi_dX(3); Array < Vec<3> > dphi_dX(3);
for(i=0; i<3; i++) for(i=0; i<3; i++)
dphi_dX[i] = grad_t(i)*phip; dphi_dX[i] = grad_t(i)*phip;
ARRAY < Vec<3> > dy_dir_dX(3); Array < Vec<3> > dy_dir_dX(3);
double lphip = phip.Length(); double lphip = phip.Length();
@ -370,7 +370,7 @@ namespace netgen
for(i=0; i<3; i++) for(i=0; i<3; i++)
dy_dir_dX[i] *= grad_t(i); dy_dir_dX[i] *= grad_t(i);
ARRAY < Vec<3> > dx_dir_dX(3); Array < Vec<3> > dx_dir_dX(3);
for(i=0; i<3; i++) for(i=0; i<3; i++)
dx_dir_dX[i] = Cross(dy_dir_dX[i],z_dir[seg]); dx_dir_dX[i] = Cross(dy_dir_dX[i],z_dir[seg]);
@ -557,7 +557,7 @@ namespace netgen
v2d(1) = v * loc_z_dir[seg]; v2d(1) = v * loc_z_dir[seg];
Vec<2> n(v2d(1),-v2d(0)); Vec<2> n(v2d(1),-v2d(0));
ARRAY < Point<2> > ips; Array < Point<2> > ips;
profile->LineIntersections(v2d(1), profile->LineIntersections(v2d(1),
@ -702,7 +702,7 @@ namespace netgen
} }
void ExtrusionFace :: GetRawData(ARRAY<double> & data) const void ExtrusionFace :: GetRawData(Array<double> & data) const
{ {
data.DeleteAll(); data.DeleteAll();
profile->GetRawData(data); profile->GetRawData(data);
@ -759,7 +759,7 @@ namespace netgen
INSOLID_TYPE Extrusion :: PointInSolid (const Point<3> & p, INSOLID_TYPE Extrusion :: PointInSolid (const Point<3> & p,
const double eps, const double eps,
ARRAY<int> * const facenums) const Array<int> * const facenums) const
{ {
Vec<3> random_vec(-0.4561,0.7382,0.4970247); Vec<3> random_vec(-0.4561,0.7382,0.4970247);
@ -805,7 +805,7 @@ namespace netgen
const Vec<3> & v, const Vec<3> & v,
double eps) const double eps) const
{ {
ARRAY<int> facenums; Array<int> facenums;
INSOLID_TYPE pInSolid = PointInSolid(p,eps,&facenums); INSOLID_TYPE pInSolid = PointInSolid(p,eps,&facenums);
if(pInSolid != DOES_INTERSECT) if(pInSolid != DOES_INTERSECT)

View File

@ -13,11 +13,11 @@ private:
bool deletable; bool deletable;
ARRAY< const SplineSeg3<3> * > spline3_path; Array< const SplineSeg3<3> * > spline3_path;
ARRAY< const LineSeg<3> * > line_path; Array< const LineSeg<3> * > line_path;
mutable ARRAY < Vec<3> > x_dir, y_dir, z_dir, loc_z_dir; mutable Array < Vec<3> > x_dir, y_dir, z_dir, loc_z_dir;
mutable ARRAY < Point<3> > p0; mutable Array < Point<3> > p0;
mutable Vec<3> profile_tangent; mutable Vec<3> profile_tangent;
mutable double profile_par; mutable double profile_par;
@ -46,7 +46,7 @@ public:
const SplineGeometry<3> * path_in, const SplineGeometry<3> * path_in,
const Vec<3> & z_direction); const Vec<3> & z_direction);
ExtrusionFace(const ARRAY<double> & raw_data); ExtrusionFace(const Array<double> & raw_data);
~ExtrusionFace(); ~ExtrusionFace();
@ -91,7 +91,7 @@ public:
const Vec<3> & GetProfileTangent (void) const {return profile_tangent;} const Vec<3> & GetProfileTangent (void) const {return profile_tangent;}
double GetProfilePar(void) const {return profile_par;} double GetProfilePar(void) const {return profile_par;}
void GetRawData(ARRAY<double> & data) const; void GetRawData(Array<double> & data) const;
}; };
@ -104,7 +104,7 @@ private:
const Vec<3> & z_direction; const Vec<3> & z_direction;
ARRAY<ExtrusionFace*> faces; Array<ExtrusionFace*> faces;
mutable int latestfacenum; mutable int latestfacenum;
@ -118,7 +118,7 @@ public:
double eps) const; double eps) const;
INSOLID_TYPE PointInSolid (const Point<3> & p, INSOLID_TYPE PointInSolid (const Point<3> & p,
double eps, double eps,
ARRAY<int> * const facenums) const; Array<int> * const facenums) const;
virtual INSOLID_TYPE VecInSolid (const Point<3> & p, virtual INSOLID_TYPE VecInSolid (const Point<3> & p,
const Vec<3> & v, const Vec<3> & v,
double eps) const; double eps) const;

View File

@ -10,8 +10,8 @@
namespace netgen namespace netgen
{ {
ARRAY<SpecialPoint> specpoints; Array<SpecialPoint> specpoints;
static ARRAY<MeshPoint> spoints; static Array<MeshPoint> spoints;
#define TCL_OK 0 #define TCL_OK 0
#define TCL_ERROR 1 #define TCL_ERROR 1
@ -130,7 +130,7 @@ namespace netgen
} }
} }
ARRAY<int> loc; Array<int> loc;
if (!ec.point_on_edge_problem) if (!ec.point_on_edge_problem)
for (SegmentIndex si = 0; si < mesh.GetNSeg(); si++) for (SegmentIndex si = 0; si < mesh.GetNSeg(); si++)
{ {
@ -224,17 +224,17 @@ namespace netgen
const char * savetask = multithread.task; const char * savetask = multithread.task;
multithread.task = "Surface meshing"; multithread.task = "Surface meshing";
ARRAY<Segment> segments; Array<Segment> segments;
int noldp = mesh.GetNP(); int noldp = mesh.GetNP();
double starttime = GetTime(); double starttime = GetTime();
// find master faces from identified // find master faces from identified
ARRAY<int> masterface(mesh.GetNFD()); Array<int> masterface(mesh.GetNFD());
for (int i = 1; i <= mesh.GetNFD(); i++) for (int i = 1; i <= mesh.GetNFD(); i++)
masterface.Elem(i) = i; masterface.Elem(i) = i;
ARRAY<INDEX_2> fpairs; Array<INDEX_2> fpairs;
bool changed; bool changed;
do do
{ {
@ -373,7 +373,7 @@ namespace netgen
for (int j = 0; j < geom.singfaces.Size(); j++) for (int j = 0; j < geom.singfaces.Size(); j++)
{ {
ARRAY<int> surfs; Array<int> surfs;
geom.GetIndependentSurfaceIndices (geom.singfaces[j]->GetSolid(), geom.GetIndependentSurfaceIndices (geom.singfaces[j]->GetSolid(),
geom.BoundingBox(), surfs); geom.BoundingBox(), surfs);
for (int k = 1; k <= mesh.GetNFD(); k++) for (int k = 1; k <= mesh.GetNFD(); k++)
@ -680,7 +680,7 @@ namespace netgen
mesh->SetGlobalH (mparam.maxh); mesh->SetGlobalH (mparam.maxh);
mesh->SetMinimalH (mparam.minh); mesh->SetMinimalH (mparam.minh);
ARRAY<double> maxhdom(geom.GetNTopLevelObjects()); Array<double> maxhdom(geom.GetNTopLevelObjects());
for (int i = 0; i < maxhdom.Size(); i++) for (int i = 0; i < maxhdom.Size(); i++)
maxhdom[i] = geom.GetTopLevelObject(i)->GetMaxH(); maxhdom[i] = geom.GetTopLevelObject(i)->GetMaxH();

View File

@ -28,7 +28,7 @@ ostream & operator<< (ostream & ost, Identification & ident)
/* /*
void Identification :: IdentifySpecialPoints (ARRAY<class SpecialPoint> & points) void Identification :: IdentifySpecialPoints (Array<class SpecialPoint> & points)
{ {
; ;
} }
@ -84,7 +84,7 @@ void Identification :: IdentifyFaces (class Mesh & mesh)
} }
void Identification :: void Identification ::
BuildSurfaceElements (ARRAY<Segment> & segs, BuildSurfaceElements (Array<Segment> & segs,
Mesh & mesh, const Surface * surf) Mesh & mesh, const Surface * surf)
{ {
cout << "Identification::BuildSurfaceElements called for base-class" << endl; cout << "Identification::BuildSurfaceElements called for base-class" << endl;
@ -93,14 +93,14 @@ BuildSurfaceElements (ARRAY<Segment> & segs,
void Identification :: void Identification ::
BuildVolumeElements (ARRAY<class Element2d> & surfels, BuildVolumeElements (Array<class Element2d> & surfels,
class Mesh & mesh) class Mesh & mesh)
{ {
; ;
} }
void Identification :: void Identification ::
GetIdentifiedFaces (ARRAY<INDEX_2> & idfaces) const GetIdentifiedFaces (Array<INDEX_2> & idfaces) const
{ {
idfaces.SetSize(0); idfaces.SetSize(0);
for (int i = 1; i <= identfaces.GetNBags(); i++) for (int i = 1; i <= identfaces.GetNBags(); i++)
@ -134,7 +134,7 @@ PeriodicIdentification :: ~PeriodicIdentification ()
/* /*
void PeriodicIdentification :: IdentifySpecialPoints void PeriodicIdentification :: IdentifySpecialPoints
(ARRAY<class SpecialPoint> & points) (Array<class SpecialPoint> & points)
{ {
int i, j; int i, j;
int bestj; int bestj;
@ -438,7 +438,7 @@ void PeriodicIdentification :: IdentifyFaces (class Mesh & mesh)
void PeriodicIdentification :: void PeriodicIdentification ::
BuildSurfaceElements (ARRAY<Segment> & segs, BuildSurfaceElements (Array<Segment> & segs,
Mesh & mesh, const Surface * surf) Mesh & mesh, const Surface * surf)
{ {
int found = 0; int found = 0;
@ -450,7 +450,7 @@ BuildSurfaceElements (ARRAY<Segment> & segs,
if (geom.GetSurface(surfnr) == s1 || if (geom.GetSurface(surfnr) == s1 ||
geom.GetSurface(surfnr) == s2) geom.GetSurface(surfnr) == s2)
{ {
ARRAY<int> copy_points; Array<int> copy_points;
for (int i = 1; i <= mesh.GetNSE(); i++) for (int i = 1; i <= mesh.GetNSE(); i++)
{ {
@ -601,7 +601,7 @@ void CloseSurfaceIdentification :: GetData (ostream & ost) const
/* /*
void CloseSurfaceIdentification :: IdentifySpecialPoints void CloseSurfaceIdentification :: IdentifySpecialPoints
(ARRAY<class SpecialPoint> & points) (Array<class SpecialPoint> & points)
{ {
int i, j; int i, j;
int bestj; int bestj;
@ -669,7 +669,7 @@ Identifyable (const SpecialPoint & sp1, const SpecialPoint & sp2,
if (!dom_surf_valid) if (!dom_surf_valid)
{ {
const_cast<bool&> (dom_surf_valid) = 1; const_cast<bool&> (dom_surf_valid) = 1;
ARRAY<int> & hsurf = const_cast<ARRAY<int>&> (domain_surfaces); Array<int> & hsurf = const_cast<Array<int>&> (domain_surfaces);
if (domain) if (domain)
{ {
@ -879,7 +879,7 @@ GetIdentifiedPoint (class Mesh & mesh, int pi)
const Surface * sold, *snew; const Surface * sold, *snew;
const Point<3> & p = mesh.Point (pi); const Point<3> & p = mesh.Point (pi);
ARRAY<int,PointIndex::BASE> identmap(mesh.GetNP()); Array<int,PointIndex::BASE> identmap(mesh.GetNP());
mesh.GetIdentifications().GetMap (nr, identmap); mesh.GetIdentifications().GetMap (nr, identmap);
if (identmap.Get(pi)) if (identmap.Get(pi))
return identmap.Get(pi); return identmap.Get(pi);
@ -950,13 +950,13 @@ void CloseSurfaceIdentification :: IdentifyPoints (Mesh & mesh)
{ {
int np = mesh.GetNP(); int np = mesh.GetNP();
ARRAY<int> points_on_surf2; Array<int> points_on_surf2;
for (int i2 = 1; i2 <= np; i2++) for (int i2 = 1; i2 <= np; i2++)
if (s2->PointOnSurface (mesh.Point(i2))) if (s2->PointOnSurface (mesh.Point(i2)))
points_on_surf2.Append (i2); points_on_surf2.Append (i2);
ARRAY<int> surfs_of_p1; Array<int> surfs_of_p1;
for (int i1 = 1; i1 <= np; i1++) for (int i1 = 1; i1 <= np; i1++)
{ {
@ -1072,7 +1072,7 @@ void CloseSurfaceIdentification :: IdentifyFaces (class Mesh & mesh)
s2rep = geom.GetSurfaceClassRepresentant(i); s2rep = geom.GetSurfaceClassRepresentant(i);
} }
ARRAY<int> segs_on_face1, segs_on_face2; Array<int> segs_on_face1, segs_on_face2;
identfaces.DeleteData(); identfaces.DeleteData();
@ -1201,13 +1201,13 @@ void CloseSurfaceIdentification :: IdentifyFaces (class Mesh & mesh)
void CloseSurfaceIdentification :: void CloseSurfaceIdentification ::
BuildSurfaceElements (ARRAY<Segment> & segs, BuildSurfaceElements (Array<Segment> & segs,
Mesh & mesh, const Surface * surf) Mesh & mesh, const Surface * surf)
{ {
bool found = 0; bool found = 0;
int cntquads = 0; int cntquads = 0;
ARRAY<int,PointIndex::BASE> identmap; Array<int,PointIndex::BASE> identmap;
identmap = 0; identmap = 0;
mesh.GetIdentifications().GetMap (nr, identmap); mesh.GetIdentifications().GetMap (nr, identmap);
@ -1222,7 +1222,7 @@ BuildSurfaceElements (ARRAY<Segment> & segs,
//(*testout) << "segs = " << endl << segs << endl; //(*testout) << "segs = " << endl << segs << endl;
//(*testout) << "identmap = " << endl << identmap << endl; //(*testout) << "identmap = " << endl << identmap << endl;
//ARRAY<bool> foundseg(segs.Size()); //Array<bool> foundseg(segs.Size());
//foundseg = false; //foundseg = false;
// insert quad layer: // insert quad layer:
@ -1275,7 +1275,7 @@ BuildSurfaceElements (ARRAY<Segment> & segs,
{ {
PrintMessage(3, "insert quad layer of ", cntquads, PrintMessage(3, "insert quad layer of ", cntquads,
" elements at face ", segs.Get(1).si); " elements at face ", segs.Get(1).si);
//ARRAY<Segment> aux; //Array<Segment> aux;
//for(int i=0; i<segs.Size();i++) //for(int i=0; i<segs.Size();i++)
// if(!foundseg[i]) // if(!foundseg[i])
// aux.Append(segs[i]); // aux.Append(segs[i]);
@ -1293,7 +1293,7 @@ BuildSurfaceElements (ARRAY<Segment> & segs,
void CloseSurfaceIdentification :: void CloseSurfaceIdentification ::
BuildSurfaceElements2 (ARRAY<Segment> & segs, BuildSurfaceElements2 (Array<Segment> & segs,
Mesh & mesh, const Surface * surf) Mesh & mesh, const Surface * surf)
{ {
// copy mesh // copy mesh
@ -1398,7 +1398,7 @@ BuildSurfaceElements2 (ARRAY<Segment> & segs,
void CloseSurfaceIdentification :: void CloseSurfaceIdentification ::
BuildVolumeElements (ARRAY<class Element2d> & surfels, BuildVolumeElements (Array<class Element2d> & surfels,
class Mesh & mesh) class Mesh & mesh)
{ {
; ;
@ -1459,7 +1459,7 @@ void CloseEdgesIdentification :: GetData (ostream & ost) const
/* /*
void CloseEdgesIdentification :: IdentifySpecialPoints void CloseEdgesIdentification :: IdentifySpecialPoints
(ARRAY<class SpecialPoint> & points) (Array<class SpecialPoint> & points)
{ {
int i, j; int i, j;
int bestj; int bestj;
@ -1614,7 +1614,7 @@ void CloseEdgesIdentification :: IdentifyPoints (Mesh & mesh)
} }
void CloseEdgesIdentification :: void CloseEdgesIdentification ::
BuildSurfaceElements (ARRAY<Segment> & segs, BuildSurfaceElements (Array<Segment> & segs,
Mesh & mesh, const Surface * surf) Mesh & mesh, const Surface * surf)
{ {
int i1, i2; int i1, i2;

View File

@ -30,7 +30,7 @@ public:
virtual void GetData (ostream & ost) const = 0; virtual void GetData (ostream & ost) const = 0;
/// obsolete /// obsolete
// virtual void IdentifySpecialPoints (ARRAY<class SpecialPoint> & points); // virtual void IdentifySpecialPoints (Array<class SpecialPoint> & points);
/// can identify both special points (fixed direction) /// can identify both special points (fixed direction)
/// (identified points, same tangent) /// (identified points, same tangent)
@ -55,16 +55,16 @@ public:
virtual int GetIdentifiedPoint (class Mesh & mesh, int pi1); virtual int GetIdentifiedPoint (class Mesh & mesh, int pi1);
/// copy surfaces, or fill rectangles /// copy surfaces, or fill rectangles
virtual void BuildSurfaceElements (ARRAY<class Segment> & segs, virtual void BuildSurfaceElements (Array<class Segment> & segs,
class Mesh & mesh, class Mesh & mesh,
const Surface * surf); const Surface * surf);
/// insert volume elements in thin layers /// insert volume elements in thin layers
virtual void BuildVolumeElements (ARRAY<class Element2d> & surfels, virtual void BuildVolumeElements (Array<class Element2d> & surfels,
class Mesh & mesh); class Mesh & mesh);
/// get list of identified faces /// get list of identified faces
virtual void GetIdentifiedFaces (ARRAY<INDEX_2> & idfaces) const; virtual void GetIdentifiedFaces (Array<INDEX_2> & idfaces) const;
friend ostream & operator<< (ostream & ost, Identification & ident); friend ostream & operator<< (ostream & ost, Identification & ident);
}; };
@ -84,7 +84,7 @@ public:
virtual void GetData (ostream & ost) const; virtual void GetData (ostream & ost) const;
// virtual void IdentifySpecialPoints (ARRAY<class SpecialPoint> & points); // virtual void IdentifySpecialPoints (Array<class SpecialPoint> & points);
virtual int Identifyable (const SpecialPoint & sp1, const SpecialPoint & sp2, virtual int Identifyable (const SpecialPoint & sp1, const SpecialPoint & sp2,
const TABLE<int> & specpoint2solid, const TABLE<int> & specpoint2solid,
const TABLE<int> & specpoint2surface) const; const TABLE<int> & specpoint2surface) const;
@ -93,7 +93,7 @@ public:
virtual int GetIdentifiedPoint (class Mesh & mesh, int pi1); virtual int GetIdentifiedPoint (class Mesh & mesh, int pi1);
virtual void IdentifyPoints (class Mesh & mesh); virtual void IdentifyPoints (class Mesh & mesh);
virtual void IdentifyFaces (class Mesh & mesh); virtual void IdentifyFaces (class Mesh & mesh);
virtual void BuildSurfaceElements (ARRAY<class Segment> & segs, virtual void BuildSurfaceElements (Array<class Segment> & segs,
class Mesh & mesh, class Mesh & mesh,
const Surface * surf); const Surface * surf);
}; };
@ -116,9 +116,9 @@ class CloseSurfaceIdentification : public Identification
int ref_levels_s2; int ref_levels_s2;
/// ///
double eps_n; double eps_n;
ARRAY<double> slices; Array<double> slices;
/// used only for domain-local identification: /// used only for domain-local identification:
ARRAY<int> domain_surfaces; Array<int> domain_surfaces;
/// ///
bool dom_surf_valid; bool dom_surf_valid;
@ -139,7 +139,7 @@ public:
virtual void GetData (ostream & ost) const; virtual void GetData (ostream & ost) const;
// virtual void IdentifySpecialPoints (ARRAY<class SpecialPoint> & points); // virtual void IdentifySpecialPoints (Array<class SpecialPoint> & points);
virtual int Identifyable (const SpecialPoint & sp1, const SpecialPoint & sp2, virtual int Identifyable (const SpecialPoint & sp1, const SpecialPoint & sp2,
const TABLE<int> & specpoint2solid, const TABLE<int> & specpoint2solid,
const TABLE<int> & specpoint2surface) const; const TABLE<int> & specpoint2surface) const;
@ -147,17 +147,17 @@ public:
virtual int IdentifyableCandidate (const SpecialPoint & sp1) const; virtual int IdentifyableCandidate (const SpecialPoint & sp1) const;
virtual int ShortEdge (const SpecialPoint & sp1, const SpecialPoint & sp2) const; virtual int ShortEdge (const SpecialPoint & sp1, const SpecialPoint & sp2) const;
virtual int GetIdentifiedPoint (class Mesh & mesh, int pi1); virtual int GetIdentifiedPoint (class Mesh & mesh, int pi1);
const ARRAY<double> & GetSlices () const { return slices; } const Array<double> & GetSlices () const { return slices; }
virtual void IdentifyPoints (class Mesh & mesh); virtual void IdentifyPoints (class Mesh & mesh);
virtual void IdentifyFaces (class Mesh & mesh); virtual void IdentifyFaces (class Mesh & mesh);
virtual void BuildSurfaceElements (ARRAY<class Segment> & segs, virtual void BuildSurfaceElements (Array<class Segment> & segs,
class Mesh & mesh, class Mesh & mesh,
const Surface * surf); const Surface * surf);
void BuildSurfaceElements2 (ARRAY<class Segment> & segs, void BuildSurfaceElements2 (Array<class Segment> & segs,
class Mesh & mesh, class Mesh & mesh,
const Surface * surf); const Surface * surf);
virtual void BuildVolumeElements (ARRAY<class Element2d> & surfels, virtual void BuildVolumeElements (Array<class Element2d> & surfels,
class Mesh & mesh); class Mesh & mesh);
int RefLevels () const { return ref_levels; } int RefLevels () const { return ref_levels; }
@ -189,14 +189,14 @@ public:
virtual void Print (ostream & ost) const; virtual void Print (ostream & ost) const;
virtual void GetData (ostream & ost) const; virtual void GetData (ostream & ost) const;
// virtual void IdentifySpecialPoints (ARRAY<class SpecialPoint> & points); // virtual void IdentifySpecialPoints (Array<class SpecialPoint> & points);
virtual int Identifyable (const SpecialPoint & sp1, const SpecialPoint & sp2, virtual int Identifyable (const SpecialPoint & sp1, const SpecialPoint & sp2,
const TABLE<int> & specpoint2solid, const TABLE<int> & specpoint2solid,
const TABLE<int> & specpoint2surface) const; const TABLE<int> & specpoint2surface) const;
virtual void IdentifyPoints (class Mesh & mesh); virtual void IdentifyPoints (class Mesh & mesh);
virtual void BuildSurfaceElements (ARRAY<class Segment> & segs, virtual void BuildSurfaceElements (Array<class Segment> & segs,
class Mesh & mesh, class Mesh & mesh,
const Surface * surf); const Surface * surf);
}; };

View File

@ -7,7 +7,7 @@ namespace netgen
{ {
Polyhedra::Face::Face (int pi1, int pi2, int pi3, Polyhedra::Face::Face (int pi1, int pi2, int pi3,
const ARRAY<Point<3> > & points, const Array<Point<3> > & points,
int ainputnr) int ainputnr)
{ {
inputnr = ainputnr; inputnr = ainputnr;
@ -165,7 +165,7 @@ INSOLID_TYPE Polyhedra :: PointInSolid (const Point<3> & p,
void Polyhedra :: GetTangentialSurfaceIndices (const Point<3> & p, void Polyhedra :: GetTangentialSurfaceIndices (const Point<3> & p,
ARRAY<int> & surfind, double eps) const Array<int> & surfind, double eps) const
{ {
for (int i = 0; i < faces.Size(); i++) for (int i = 0; i < faces.Size(); i++)
{ {
@ -192,7 +192,7 @@ INSOLID_TYPE Polyhedra :: VecInSolid (const Point<3> & p,
const Vec<3> & v, const Vec<3> & v,
double eps) const double eps) const
{ {
ARRAY<int> point_on_faces; Array<int> point_on_faces;
INSOLID_TYPE res(DOES_INTERSECT); INSOLID_TYPE res(DOES_INTERSECT);
Vec<3> vn = v; Vec<3> vn = v;
@ -388,7 +388,7 @@ INSOLID_TYPE Polyhedra :: VecInSolid2 (const Point<3> & p,
void Polyhedra :: GetTangentialVecSurfaceIndices2 (const Point<3> & p, const Vec<3> & v1, const Vec<3> & v2, void Polyhedra :: GetTangentialVecSurfaceIndices2 (const Point<3> & p, const Vec<3> & v1, const Vec<3> & v2,
ARRAY<int> & surfind, double eps) const Array<int> & surfind, double eps) const
{ {
Vec<3> v1n = v1; Vec<3> v1n = v1;
v1n.Normalize(); v1n.Normalize();
@ -447,7 +447,7 @@ void Polyhedra :: GetTangentialVecSurfaceIndices2 (const Point<3> & p, const Vec
void Polyhedra :: GetPrimitiveData (const char *& classname, void Polyhedra :: GetPrimitiveData (const char *& classname,
ARRAY<double> & coeffs) const Array<double> & coeffs) const
{ {
classname = "Polyhedra"; classname = "Polyhedra";
coeffs.SetSize(0); coeffs.SetSize(0);
@ -471,7 +471,7 @@ void Polyhedra :: GetPrimitiveData (const char *& classname,
*/ */
} }
void Polyhedra :: SetPrimitiveData (ARRAY<double> & /* coeffs */) void Polyhedra :: SetPrimitiveData (Array<double> & /* coeffs */)
{ {
; ;
} }
@ -589,7 +589,7 @@ int Polyhedra :: FaceBoxIntersection (int fnr, const BoxSphere<3> & box) const
} }
void Polyhedra :: GetPolySurfs(ARRAY < ARRAY<int> * > & polysurfs) void Polyhedra :: GetPolySurfs(Array < Array<int> * > & polysurfs)
{ {
int maxnum = -1; int maxnum = -1;
@ -601,14 +601,14 @@ void Polyhedra :: GetPolySurfs(ARRAY < ARRAY<int> * > & polysurfs)
polysurfs.SetSize(maxnum+1); polysurfs.SetSize(maxnum+1);
for(int i=0; i<polysurfs.Size(); i++) for(int i=0; i<polysurfs.Size(); i++)
polysurfs[i] = new ARRAY<int>; polysurfs[i] = new Array<int>;
for(int i = 0; i<faces.Size(); i++) for(int i = 0; i<faces.Size(); i++)
polysurfs[faces[i].inputnr]->Append(faces[i].planenr); polysurfs[faces[i].inputnr]->Append(faces[i].planenr);
} }
void Polyhedra::CalcSpecialPoints (ARRAY<Point<3> > & pts) const void Polyhedra::CalcSpecialPoints (Array<Point<3> > & pts) const
{ {
for (int i = 0; i < points.Size(); i++) for (int i = 0; i < points.Size(); i++)
pts.Append (points[i]); pts.Append (points[i]);
@ -616,7 +616,7 @@ void Polyhedra::CalcSpecialPoints (ARRAY<Point<3> > & pts) const
void Polyhedra :: AnalyzeSpecialPoint (const Point<3> & /* pt */, void Polyhedra :: AnalyzeSpecialPoint (const Point<3> & /* pt */,
ARRAY<Point<3> > & /* specpts */) const Array<Point<3> > & /* specpts */) const
{ {
; ;
} }

View File

@ -32,13 +32,13 @@ class Polyhedra : public Primitive
Face () { ; } Face () { ; }
Face (int pi1, int pi2, int pi3, Face (int pi1, int pi2, int pi3,
const ARRAY<Point<3> > & points, const Array<Point<3> > & points,
int ainputnr); int ainputnr);
}; };
ARRAY<Point<3> > points; Array<Point<3> > points;
ARRAY<Face> faces; Array<Face> faces;
ARRAY<Plane*> planes; Array<Plane*> planes;
Box<3> poly_bbox; Box<3> poly_bbox;
double eps_base1; double eps_base1;
@ -62,15 +62,15 @@ public:
double eps) const; double eps) const;
virtual void GetTangentialSurfaceIndices (const Point<3> & p, virtual void GetTangentialSurfaceIndices (const Point<3> & p,
ARRAY<int> & surfind, double eps) const; Array<int> & surfind, double eps) const;
virtual void GetTangentialVecSurfaceIndices2 (const Point<3> & p, const Vec<3> & v1, const Vec<3> & v2, virtual void GetTangentialVecSurfaceIndices2 (const Point<3> & p, const Vec<3> & v1, const Vec<3> & v2,
ARRAY<int> & surfind, double eps) const; Array<int> & surfind, double eps) const;
virtual void CalcSpecialPoints (ARRAY<Point<3> > & pts) const; virtual void CalcSpecialPoints (Array<Point<3> > & pts) const;
virtual void AnalyzeSpecialPoint (const Point<3> & pt, virtual void AnalyzeSpecialPoint (const Point<3> & pt,
ARRAY<Point<3> > & specpts) const; Array<Point<3> > & specpts) const;
virtual Vec<3> SpecialPointTangentialVector (const Point<3> & p, int s1, int s2) const; virtual Vec<3> SpecialPointTangentialVector (const Point<3> & p, int s1, int s2) const;
virtual int GetNSurfaces() const virtual int GetNSurfaces() const
@ -80,8 +80,8 @@ public:
virtual const Surface & GetSurface (int i) const virtual const Surface & GetSurface (int i) const
{ return *planes[i]; } { return *planes[i]; }
virtual void GetPrimitiveData (const char *& classname, ARRAY<double> & coeffs) const; virtual void GetPrimitiveData (const char *& classname, Array<double> & coeffs) const;
virtual void SetPrimitiveData (ARRAY<double> & coeffs); virtual void SetPrimitiveData (Array<double> & coeffs);
virtual void Reduce (const BoxSphere<3> & box); virtual void Reduce (const BoxSphere<3> & box);
virtual void UnReduce (); virtual void UnReduce ();
@ -89,7 +89,7 @@ public:
int AddPoint (const Point<3> & p); int AddPoint (const Point<3> & p);
int AddFace (int pi1, int pi2, int pi3, int inputnum); int AddFace (int pi1, int pi2, int pi3, int inputnum);
void GetPolySurfs(ARRAY < ARRAY<int> * > & polysurfs); void GetPolySurfs(Array < Array<int> * > & polysurfs);
protected: protected:
int FaceBoxIntersection (int fnr, const BoxSphere<3> & box) const; int FaceBoxIntersection (int fnr, const BoxSphere<3> & box) const;

View File

@ -52,13 +52,13 @@ namespace netgen
} }
RevolutionFace :: RevolutionFace(const ARRAY<double> & raw_data) RevolutionFace :: RevolutionFace(const Array<double> & raw_data)
{ {
deletable = true; deletable = true;
int pos = 0; int pos = 0;
ARRAY< Point<2> > p(3); Array< Point<2> > p(3);
int stype = int(raw_data[pos]); pos++; int stype = int(raw_data[pos]); pos++;
@ -293,7 +293,7 @@ namespace netgen
{ {
double retval = spline->MaxCurvature(); double retval = spline->MaxCurvature();
ARRAY < Point<2> > checkpoints; Array < Point<2> > checkpoints;
const SplineSeg3<2> * ss3 = dynamic_cast<const SplineSeg3<2> *>(spline); const SplineSeg3<2> * ss3 = dynamic_cast<const SplineSeg3<2> *>(spline);
const LineSeg<2> * ls = dynamic_cast<const LineSeg<2> *>(spline); const LineSeg<2> * ls = dynamic_cast<const LineSeg<2> *>(spline);
@ -346,7 +346,7 @@ namespace netgen
// find smallest y value of spline: // find smallest y value of spline:
ARRAY<double> testt; Array<double> testt;
if(!isfirst) if(!isfirst)
testt.Append(0); testt.Append(0);
@ -574,7 +574,7 @@ namespace netgen
void RevolutionFace :: GetRawData(ARRAY<double> & data) const void RevolutionFace :: GetRawData(Array<double> & data) const
{ {
data.DeleteAll(); data.DeleteAll();
spline->GetRawData(data); spline->GetRawData(data);
@ -668,7 +668,7 @@ namespace netgen
return DOES_INTERSECT; return DOES_INTERSECT;
else else
{ {
ARRAY < Point<3> > pext(2); Array < Point<3> > pext(2);
Point<3> p; Point<3> p;
pext[0] = box.PMin(); pext[0] = box.PMin();
@ -722,7 +722,7 @@ namespace netgen
const double b = -randomx; const double b = -randomx;
const double c = -a*p2d(0)-b*p2d(1); const double c = -a*p2d(0)-b*p2d(1);
ARRAY < Point<2> > points; Array < Point<2> > points;
//(*testout) << "face intersections at: " << endl; //(*testout) << "face intersections at: " << endl;
for(int i=0; i<faces.Size(); i++) for(int i=0; i<faces.Size(); i++)
@ -764,7 +764,7 @@ namespace netgen
return pInSolid; return pInSolid;
} }
ARRAY<int> intersecting_faces; Array<int> intersecting_faces;
for(int i=0; i<faces.Size(); i++) for(int i=0; i<faces.Size(); i++)
if(faces[i]->PointInFace(p,eps) == DOES_INTERSECT) if(faces[i]->PointInFace(p,eps) == DOES_INTERSECT)

View File

@ -18,9 +18,9 @@ private:
mutable Vector spline_coefficient; mutable Vector spline_coefficient;
ARRAY < Vec<2>* > checklines_vec; Array < Vec<2>* > checklines_vec;
ARRAY < Point<2>* > checklines_start; Array < Point<2>* > checklines_start;
ARRAY < Vec<2>* > checklines_normal; Array < Vec<2>* > checklines_normal;
private: private:
void Init (void); void Init (void);
@ -39,7 +39,7 @@ public:
bool last = false, bool last = false,
const int id_in = 0); const int id_in = 0);
RevolutionFace(const ARRAY<double> & raw_data); RevolutionFace(const Array<double> & raw_data);
~RevolutionFace(); ~RevolutionFace();
@ -73,7 +73,7 @@ public:
INSOLID_TYPE PointInFace (const Point<3> & p, const double eps) const; INSOLID_TYPE PointInFace (const Point<3> & p, const double eps) const;
void GetRawData(ARRAY<double> & data) const; void GetRawData(Array<double> & data) const;
}; };
@ -99,7 +99,7 @@ private:
int type; int type;
ARRAY<RevolutionFace*> faces; Array<RevolutionFace*> faces;
mutable int intersecting_face; mutable int intersecting_face;

View File

@ -41,7 +41,7 @@ void SingularEdge :: FindPointsOnEdge (class Mesh & mesh)
segms.SetSize(0); segms.SetSize(0);
ARRAY<int> si1, si2; Array<int> si1, si2;
sol1->GetSurfaceIndices (si1); sol1->GetSurfaceIndices (si1);
sol2->GetSurfaceIndices (si2); sol2->GetSurfaceIndices (si2);
@ -150,7 +150,7 @@ SingularPoint :: SingularPoint (double abeta,
void SingularPoint :: FindPoints (class Mesh & mesh) void SingularPoint :: FindPoints (class Mesh & mesh)
{ {
points.SetSize(0); points.SetSize(0);
ARRAY<int> surfk, surf; Array<int> surfk, surf;
for (PointIndex pi = PointIndex::BASE; for (PointIndex pi = PointIndex::BASE;

View File

@ -25,8 +25,8 @@ public:
int domnr; int domnr;
const Solid *sol; const Solid *sol;
double factor; double factor;
// ARRAY<Point<3> > points; // Array<Point<3> > points;
// ARRAY<INDEX_2> segms; // Array<INDEX_2> segms;
public: public:
SingularFace (int adomnr, const Solid * asol, double sf) SingularFace (int adomnr, const Solid * asol, double sf)
: domnr(adomnr), sol(asol), factor(sf) { ; } : domnr(adomnr), sol(asol), factor(sf) { ; }
@ -43,8 +43,8 @@ public:
int domnr; int domnr;
const CSGeometry& geom; const CSGeometry& geom;
const Solid *sol1, *sol2; const Solid *sol1, *sol2;
ARRAY<Point<3> > points; Array<Point<3> > points;
ARRAY<INDEX_2> segms; Array<INDEX_2> segms;
double factor; double factor;
double maxhinit; double maxhinit;
@ -64,7 +64,7 @@ class SingularPoint
public: public:
double beta; double beta;
const Solid *sol1, *sol2, *sol3; const Solid *sol1, *sol2, *sol3;
ARRAY<Point<3> > points; Array<Point<3> > points;
double factor; double factor;
public: public:

View File

@ -550,14 +550,14 @@ namespace netgen
void Solid :: Boundaries (const Point<3> & p, ARRAY<int> & bounds) const void Solid :: Boundaries (const Point<3> & p, Array<int> & bounds) const
{ {
int in, strin; int in, strin;
bounds.SetSize (0); bounds.SetSize (0);
RecBoundaries (p, bounds, in, strin); RecBoundaries (p, bounds, in, strin);
} }
void Solid :: RecBoundaries (const Point<3> & p, ARRAY<int> & bounds, void Solid :: RecBoundaries (const Point<3> & p, Array<int> & bounds,
int & in, int & strin) const int & in, int & strin) const
{ {
switch (op) switch (op)
@ -578,7 +578,7 @@ namespace netgen
case SECTION: case SECTION:
{ {
int i, in1, in2, strin1, strin2; int i, in1, in2, strin1, strin2;
ARRAY<int> bounds1, bounds2; Array<int> bounds1, bounds2;
s1 -> RecBoundaries (p, bounds1, in1, strin1); s1 -> RecBoundaries (p, bounds1, in1, strin1);
s2 -> RecBoundaries (p, bounds2, in2, strin2); s2 -> RecBoundaries (p, bounds2, in2, strin2);
@ -597,7 +597,7 @@ namespace netgen
case UNION: case UNION:
{ {
int i, in1, in2, strin1, strin2; int i, in1, in2, strin1, strin2;
ARRAY<int> bounds1, bounds2; Array<int> bounds1, bounds2;
s1 -> RecBoundaries (p, bounds1, in1, strin1); s1 -> RecBoundaries (p, bounds1, in1, strin1);
s2 -> RecBoundaries (p, bounds2, in2, strin2); s2 -> RecBoundaries (p, bounds2, in2, strin2);
@ -631,7 +631,7 @@ namespace netgen
} }
void Solid :: TangentialSolid (const Point<3> & p, Solid *& tansol, ARRAY<int> & surfids, double eps) const void Solid :: TangentialSolid (const Point<3> & p, Solid *& tansol, Array<int> & surfids, double eps) const
{ {
int in, strin; int in, strin;
RecTangentialSolid (p, tansol, surfids, in, strin, eps); RecTangentialSolid (p, tansol, surfids, in, strin, eps);
@ -641,7 +641,7 @@ namespace netgen
} }
void Solid :: RecTangentialSolid (const Point<3> & p, Solid *& tansol, ARRAY<int> & surfids, void Solid :: RecTangentialSolid (const Point<3> & p, Solid *& tansol, Array<int> & surfids,
int & in, int & strin, double eps) const int & in, int & strin, double eps) const
{ {
tansol = NULL; tansol = NULL;
@ -730,7 +730,7 @@ namespace netgen
void Solid :: TangentialSolid2 (const Point<3> & p, void Solid :: TangentialSolid2 (const Point<3> & p,
const Vec<3> & t, const Vec<3> & t,
Solid *& tansol, ARRAY<int> & surfids, double eps) const Solid *& tansol, Array<int> & surfids, double eps) const
{ {
int in, strin; int in, strin;
surfids.SetSize (0); surfids.SetSize (0);
@ -740,7 +740,7 @@ namespace netgen
} }
void Solid :: RecTangentialSolid2 (const Point<3> & p, const Vec<3> & t, void Solid :: RecTangentialSolid2 (const Point<3> & p, const Vec<3> & t,
Solid *& tansol, ARRAY<int> & surfids, Solid *& tansol, Array<int> & surfids,
int & in, int & strin, double eps) const int & in, int & strin, double eps) const
{ {
tansol = NULL; tansol = NULL;
@ -844,7 +844,7 @@ namespace netgen
void Solid :: TangentialSolid3 (const Point<3> & p, void Solid :: TangentialSolid3 (const Point<3> & p,
const Vec<3> & t, const Vec<3> & t2, const Vec<3> & t, const Vec<3> & t2,
Solid *& tansol, ARRAY<int> & surfids, Solid *& tansol, Array<int> & surfids,
double eps) const double eps) const
{ {
int in, strin; int in, strin;
@ -857,7 +857,7 @@ namespace netgen
void Solid :: RecTangentialSolid3 (const Point<3> & p, void Solid :: RecTangentialSolid3 (const Point<3> & p,
const Vec<3> & t, const Vec<3> & t2, const Vec<3> & t, const Vec<3> & t2,
Solid *& tansol, ARRAY<int> & surfids, Solid *& tansol, Array<int> & surfids,
int & in, int & strin, double eps) const int & in, int & strin, double eps) const
{ {
tansol = NULL; tansol = NULL;
@ -959,7 +959,7 @@ namespace netgen
void Solid :: TangentialEdgeSolid (const Point<3> & p, void Solid :: TangentialEdgeSolid (const Point<3> & p,
const Vec<3> & t, const Vec<3> & t2, const Vec<3> & m, const Vec<3> & t, const Vec<3> & t2, const Vec<3> & m,
Solid *& tansol, ARRAY<int> & surfids, Solid *& tansol, Array<int> & surfids,
double eps) const double eps) const
{ {
int in, strin; int in, strin;
@ -974,7 +974,7 @@ namespace netgen
void Solid :: RecTangentialEdgeSolid (const Point<3> & p, void Solid :: RecTangentialEdgeSolid (const Point<3> & p,
const Vec<3> & t, const Vec<3> & t2, const Vec<3> & m, const Vec<3> & t, const Vec<3> & t2, const Vec<3> & m,
Solid *& tansol, ARRAY<int> & surfids, Solid *& tansol, Array<int> & surfids,
int & in, int & strin, double eps) const int & in, int & strin, double eps) const
{ {
tansol = NULL; tansol = NULL;
@ -1361,13 +1361,13 @@ namespace netgen
return 0; return 0;
} }
void Solid :: GetSurfaceIndices (ARRAY<int> & surfind) const void Solid :: GetSurfaceIndices (Array<int> & surfind) const
{ {
surfind.SetSize (0); surfind.SetSize (0);
RecGetSurfaceIndices (surfind); RecGetSurfaceIndices (surfind);
} }
void Solid :: RecGetSurfaceIndices (ARRAY<int> & surfind) const void Solid :: RecGetSurfaceIndices (Array<int> & surfind) const
{ {
switch (op) switch (op)
{ {
@ -1415,13 +1415,13 @@ namespace netgen
void Solid :: GetTangentialSurfaceIndices (const Point<3> & p, ARRAY<int> & surfind, double eps) const void Solid :: GetTangentialSurfaceIndices (const Point<3> & p, Array<int> & surfind, double eps) const
{ {
surfind.SetSize (0); surfind.SetSize (0);
RecGetTangentialSurfaceIndices (p, surfind, eps); RecGetTangentialSurfaceIndices (p, surfind, eps);
} }
void Solid :: RecGetTangentialSurfaceIndices (const Point<3> & p, ARRAY<int> & surfind, double eps) const void Solid :: RecGetTangentialSurfaceIndices (const Point<3> & p, Array<int> & surfind, double eps) const
{ {
switch (op) switch (op)
{ {
@ -1458,14 +1458,14 @@ namespace netgen
void Solid :: GetTangentialSurfaceIndices2 (const Point<3> & p, const Vec<3> & v, void Solid :: GetTangentialSurfaceIndices2 (const Point<3> & p, const Vec<3> & v,
ARRAY<int> & surfind, double eps) const Array<int> & surfind, double eps) const
{ {
surfind.SetSize (0); surfind.SetSize (0);
RecGetTangentialSurfaceIndices2 (p, v, surfind, eps); RecGetTangentialSurfaceIndices2 (p, v, surfind, eps);
} }
void Solid :: RecGetTangentialSurfaceIndices2 (const Point<3> & p, const Vec<3> & v, void Solid :: RecGetTangentialSurfaceIndices2 (const Point<3> & p, const Vec<3> & v,
ARRAY<int> & surfind, double eps) const Array<int> & surfind, double eps) const
{ {
switch (op) switch (op)
{ {
@ -1510,14 +1510,14 @@ namespace netgen
void Solid :: GetTangentialSurfaceIndices3 (const Point<3> & p, const Vec<3> & v, const Vec<3> & v2, void Solid :: GetTangentialSurfaceIndices3 (const Point<3> & p, const Vec<3> & v, const Vec<3> & v2,
ARRAY<int> & surfind, double eps) const Array<int> & surfind, double eps) const
{ {
surfind.SetSize (0); surfind.SetSize (0);
RecGetTangentialSurfaceIndices3 (p, v, v2, surfind, eps); RecGetTangentialSurfaceIndices3 (p, v, v2, surfind, eps);
} }
void Solid :: RecGetTangentialSurfaceIndices3 (const Point<3> & p, const Vec<3> & v, const Vec<3> & v2, void Solid :: RecGetTangentialSurfaceIndices3 (const Point<3> & p, const Vec<3> & v, const Vec<3> & v2,
ARRAY<int> & surfind, double eps) const Array<int> & surfind, double eps) const
{ {
switch (op) switch (op)
{ {
@ -1567,7 +1567,7 @@ namespace netgen
void Solid :: RecGetTangentialEdgeSurfaceIndices (const Point<3> & p, const Vec<3> & v, const Vec<3> & v2, const Vec<3> & m, void Solid :: RecGetTangentialEdgeSurfaceIndices (const Point<3> & p, const Vec<3> & v, const Vec<3> & v2, const Vec<3> & m,
ARRAY<int> & surfind, double eps) const Array<int> & surfind, double eps) const
{ {
switch (op) switch (op)
{ {
@ -1671,7 +1671,7 @@ namespace netgen
} }
void Solid :: CalcOnePrimitiveSpecialPoints (const Box<3> & box, ARRAY<Point<3> > & pts) const void Solid :: CalcOnePrimitiveSpecialPoints (const Box<3> & box, Array<Point<3> > & pts) const
{ {
double eps = 1e-8 * box.Diam (); double eps = 1e-8 * box.Diam ();
@ -1684,7 +1684,7 @@ namespace netgen
} }
} }
void Solid :: RecCalcOnePrimitiveSpecialPoints (ARRAY<Point<3> > & pts) const void Solid :: RecCalcOnePrimitiveSpecialPoints (Array<Point<3> > & pts) const
{ {
switch (op) switch (op)
{ {

View File

@ -60,14 +60,14 @@ public:
void IterateSolid (SolidIterator & it, bool only_once = 0); void IterateSolid (SolidIterator & it, bool only_once = 0);
void Boundaries (const Point<3> & p, ARRAY<int> & bounds) const; void Boundaries (const Point<3> & p, Array<int> & bounds) const;
int NumPrimitives () const; int NumPrimitives () const;
void GetSurfaceIndices (ARRAY<int> & surfind) const; void GetSurfaceIndices (Array<int> & surfind) const;
void GetSurfaceIndices (IndexSet & iset) const; void GetSurfaceIndices (IndexSet & iset) const;
void GetTangentialSurfaceIndices (const Point<3> & p, ARRAY<int> & surfids, double eps) const; void GetTangentialSurfaceIndices (const Point<3> & p, Array<int> & surfids, double eps) const;
void GetTangentialSurfaceIndices2 (const Point<3> & p, const Vec<3> & v, ARRAY<int> & surfids, double eps) const; void GetTangentialSurfaceIndices2 (const Point<3> & p, const Vec<3> & v, Array<int> & surfids, double eps) const;
void GetTangentialSurfaceIndices3 (const Point<3> & p, const Vec<3> & v, const Vec<3> & v2, ARRAY<int> & surfids, double eps) const; void GetTangentialSurfaceIndices3 (const Point<3> & p, const Vec<3> & v, const Vec<3> & v2, Array<int> & surfids, double eps) const;
Primitive * GetPrimitive () Primitive * GetPrimitive ()
@ -92,16 +92,16 @@ public:
/// compute localization in point p /// compute localization in point p
void TangentialSolid (const Point<3> & p, Solid *& tansol, ARRAY<int> & surfids, double eps) const; void TangentialSolid (const Point<3> & p, Solid *& tansol, Array<int> & surfids, double eps) const;
/// compute localization in point p tangential to vector t /// compute localization in point p tangential to vector t
void TangentialSolid2 (const Point<3> & p, const Vec<3> & t, void TangentialSolid2 (const Point<3> & p, const Vec<3> & t,
Solid *& tansol, ARRAY<int> & surfids, double eps) const; Solid *& tansol, Array<int> & surfids, double eps) const;
/** compute localization in point p, with second order approximation to edge /** compute localization in point p, with second order approximation to edge
p + s t + s*s/2 t2 **/ p + s t + s*s/2 t2 **/
void TangentialSolid3 (const Point<3> & p, const Vec<3> & t, const Vec<3> & t2, void TangentialSolid3 (const Point<3> & p, const Vec<3> & t, const Vec<3> & t2,
Solid *& tansol, ARRAY<int> & surfids, double eps) const; Solid *& tansol, Array<int> & surfids, double eps) const;
@ -113,10 +113,10 @@ public:
**/ **/
void TangentialEdgeSolid (const Point<3> & p, const Vec<3> & t, const Vec<3> & t2, void TangentialEdgeSolid (const Point<3> & p, const Vec<3> & t, const Vec<3> & t2,
const Vec<3> & m, const Vec<3> & m,
Solid *& tansol, ARRAY<int> & surfids, double eps) const; Solid *& tansol, Array<int> & surfids, double eps) const;
void CalcOnePrimitiveSpecialPoints (const Box<3> & box, ARRAY<Point<3> > & pts) const; void CalcOnePrimitiveSpecialPoints (const Box<3> & box, Array<Point<3> > & pts) const;
/// ///
int Edge (const Point<3> & p, const Vec<3> & v, double eps) const; int Edge (const Point<3> & p, const Vec<3> & v, double eps) const;
@ -154,23 +154,23 @@ public:
protected: protected:
/// ///
void RecBoundaries (const Point<3> & p, ARRAY<int> & bounds, void RecBoundaries (const Point<3> & p, Array<int> & bounds,
int & in, int & strin) const; int & in, int & strin) const;
/// ///
void RecTangentialSolid (const Point<3> & p, Solid *& tansol, ARRAY<int> & surfids, void RecTangentialSolid (const Point<3> & p, Solid *& tansol, Array<int> & surfids,
int & in, int & strin, double eps) const; int & in, int & strin, double eps) const;
void RecTangentialSolid2 (const Point<3> & p, const Vec<3> & vec, void RecTangentialSolid2 (const Point<3> & p, const Vec<3> & vec,
Solid *& tansol, ARRAY<int> & surfids, Solid *& tansol, Array<int> & surfids,
int & in, int & strin, double eps) const; int & in, int & strin, double eps) const;
/// ///
void RecTangentialSolid3 (const Point<3> & p, const Vec<3> & vec,const Vec<3> & vec2, void RecTangentialSolid3 (const Point<3> & p, const Vec<3> & vec,const Vec<3> & vec2,
Solid *& tansol, ARRAY<int> & surfids, Solid *& tansol, Array<int> & surfids,
int & in, int & strin, double eps) const; int & in, int & strin, double eps) const;
/// ///
void RecTangentialEdgeSolid (const Point<3> & p, const Vec<3> & t, const Vec<3> & t2, void RecTangentialEdgeSolid (const Point<3> & p, const Vec<3> & t, const Vec<3> & t2,
const Vec<3> & m, const Vec<3> & m,
Solid *& tansol, ARRAY<int> & surfids, Solid *& tansol, Array<int> & surfids,
int & in, int & strin, double eps) const; int & in, int & strin, double eps) const;
/// ///
@ -181,16 +181,16 @@ protected:
/// ///
Solid * RecGetReducedSolid (const BoxSphere<3> & box, INSOLID_TYPE & in) const; Solid * RecGetReducedSolid (const BoxSphere<3> & box, INSOLID_TYPE & in) const;
/// ///
void RecGetSurfaceIndices (ARRAY<int> & surfind) const; void RecGetSurfaceIndices (Array<int> & surfind) const;
void RecGetTangentialSurfaceIndices (const Point<3> & p, ARRAY<int> & surfids, double eps) const; void RecGetTangentialSurfaceIndices (const Point<3> & p, Array<int> & surfids, double eps) const;
void RecGetTangentialSurfaceIndices2 (const Point<3> & p, const Vec<3> & v, ARRAY<int> & surfids, double eps) const; void RecGetTangentialSurfaceIndices2 (const Point<3> & p, const Vec<3> & v, Array<int> & surfids, double eps) const;
void RecGetTangentialSurfaceIndices3 (const Point<3> & p, const Vec<3> & v, const Vec<3> & v2, void RecGetTangentialSurfaceIndices3 (const Point<3> & p, const Vec<3> & v, const Vec<3> & v2,
ARRAY<int> & surfids, double eps) const; Array<int> & surfids, double eps) const;
void RecGetTangentialEdgeSurfaceIndices (const Point<3> & p, const Vec<3> & v, const Vec<3> & v2, const Vec<3> & m, void RecGetTangentialEdgeSurfaceIndices (const Point<3> & p, const Vec<3> & v, const Vec<3> & v2, const Vec<3> & m,
ARRAY<int> & surfids, double eps) const; Array<int> & surfids, double eps) const;
void RecGetSurfaceIndices (IndexSet & iset) const; void RecGetSurfaceIndices (IndexSet & iset) const;
void RecCalcOnePrimitiveSpecialPoints (ARRAY<Point<3> > & pts) const; void RecCalcOnePrimitiveSpecialPoints (Array<Point<3> > & pts) const;
friend class SolidIterator; friend class SolidIterator;
friend class ClearVisitedIt; friend class ClearVisitedIt;

View File

@ -22,7 +22,7 @@
namespace netgen namespace netgen
{ {
ARRAY<Box<3> > boxes; Array<Box<3> > boxes;
void ProjectToEdge (const Surface * f1, const Surface * f2, Point<3> & hp); void ProjectToEdge (const Surface * f1, const Surface * f2, Point<3> & hp);
@ -65,7 +65,7 @@ namespace netgen
} }
static ARRAY<int> numprim_hist; static Array<int> numprim_hist;
SpecialPointCalculation :: SpecialPointCalculation () SpecialPointCalculation :: SpecialPointCalculation ()
{ {
@ -74,7 +74,7 @@ namespace netgen
void SpecialPointCalculation :: void SpecialPointCalculation ::
CalcSpecialPoints (const CSGeometry & ageometry, CalcSpecialPoints (const CSGeometry & ageometry,
ARRAY<MeshPoint> & apoints) Array<MeshPoint> & apoints)
{ {
geometry = &ageometry; geometry = &ageometry;
points = &apoints; points = &apoints;
@ -109,7 +109,7 @@ namespace netgen
if (tlo->GetSolid()) if (tlo->GetSolid())
{ {
ARRAY<Point<3> > hpts; Array<Point<3> > hpts;
tlo->GetSolid()->CalcOnePrimitiveSpecialPoints (box, hpts); tlo->GetSolid()->CalcOnePrimitiveSpecialPoints (box, hpts);
// if (hpts.Size()) // if (hpts.Size())
// cout << "oneprimitivespecialpoints = " << hpts << endl; // cout << "oneprimitivespecialpoints = " << hpts << endl;
@ -201,7 +201,7 @@ namespace netgen
bool possiblecrossp, possibleexp; // possible cross or extremalpoint bool possiblecrossp, possibleexp; // possible cross or extremalpoint
bool surecrossp = 0, sureexp = 0; // sure ... bool surecrossp = 0, sureexp = 0; // sure ...
static ARRAY<int> locsurf; // attention: array is static static Array<int> locsurf; // attention: array is static
static int cntbox = 0; static int cntbox = 0;
cntbox++; cntbox++;
@ -260,8 +260,8 @@ namespace netgen
if (nquad == numprim && nplane >= numprim-1) if (nquad == numprim && nplane >= numprim-1)
{ {
ARRAY<Point<3> > pts; Array<Point<3> > pts;
ARRAY<int> surfids; Array<int> surfids;
for (int k1 = 0; k1 < numprim - 2; k1++) for (int k1 = 0; k1 < numprim - 2; k1++)
for (int k2 = k1 + 1; k2 < numprim - 1; k2++) for (int k2 = k1 + 1; k2 < numprim - 1; k2++)
@ -447,7 +447,7 @@ namespace netgen
BoxSphere<3> boxp (pp, pp); BoxSphere<3> boxp (pp, pp);
boxp.Increase (1e-3*size); boxp.Increase (1e-3*size);
boxp.CalcDiamCenter(); boxp.CalcDiamCenter();
ARRAY<int> locsurf2; Array<int> locsurf2;
geometry -> GetIndependentSurfaceIndices (sol, boxp, locsurf2); geometry -> GetIndependentSurfaceIndices (sol, boxp, locsurf2);
@ -1035,7 +1035,7 @@ namespace netgen
ComputeCrossPoints (const Plane * plane1, ComputeCrossPoints (const Plane * plane1,
const Plane * plane2, const Plane * plane2,
const Plane * plane3, const Plane * plane3,
ARRAY<Point<3> > & pts) Array<Point<3> > & pts)
{ {
Mat<3> mat; Mat<3> mat;
Vec<3> rhs, sol; Vec<3> rhs, sol;
@ -1077,7 +1077,7 @@ namespace netgen
ComputeCrossPoints (const Plane * plane1, ComputeCrossPoints (const Plane * plane1,
const Plane * plane2, const Plane * plane2,
const QuadraticSurface * quadric, const QuadraticSurface * quadric,
ARRAY<Point<3> > & pts) Array<Point<3> > & pts)
{ {
Mat<2,3> mat; Mat<2,3> mat;
Mat<3,2> inv; Mat<3,2> inv;
@ -1153,7 +1153,7 @@ namespace netgen
void SpecialPointCalculation :: void SpecialPointCalculation ::
ComputeExtremalPoints (const Plane * plane, ComputeExtremalPoints (const Plane * plane,
const QuadraticSurface * quadric, const QuadraticSurface * quadric,
ARRAY<Point<3> > & pts) Array<Point<3> > & pts)
{ {
// 3 equations: // 3 equations:
// surf1 = 0 <===> plane_a + plane_b x = 0; // surf1 = 0 <===> plane_a + plane_b x = 0;
@ -1362,15 +1362,15 @@ namespace netgen
void SpecialPointCalculation :: void SpecialPointCalculation ::
AnalyzeSpecialPoints (const CSGeometry & ageometry, AnalyzeSpecialPoints (const CSGeometry & ageometry,
ARRAY<MeshPoint> & apoints, Array<MeshPoint> & apoints,
ARRAY<SpecialPoint> & specpoints) Array<SpecialPoint> & specpoints)
{ {
ARRAY<int> surfind, rep_surfind, surfind2, rep_surfind2, surfind3; Array<int> surfind, rep_surfind, surfind2, rep_surfind2, surfind3;
ARRAY<Vec<3> > normalvecs; Array<Vec<3> > normalvecs;
Vec<3> nsurf; Vec<3> nsurf;
ARRAY<int> specpoint2point; Array<int> specpoint2point;
specpoints.SetSize (0); specpoints.SetSize (0);
geometry = &ageometry; geometry = &ageometry;
@ -1406,7 +1406,7 @@ namespace netgen
(*testout) << "points = " << apoints << endl; (*testout) << "points = " << apoints << endl;
Point3dTree searchtree (bbox.PMin(), bbox.PMax()); Point3dTree searchtree (bbox.PMin(), bbox.PMax());
ARRAY<int> locsearch; Array<int> locsearch;
for (int si = 0; si < ageometry.GetNTopLevelObjects(); si++) for (int si = 0; si < ageometry.GetNTopLevelObjects(); si++)
{ {
@ -1570,7 +1570,7 @@ namespace netgen
#ifdef DEVELOP #ifdef DEVELOP
(*testout) << "surfind2 = " << endl << surfind2 << endl; (*testout) << "surfind2 = " << endl << surfind2 << endl;
#endif #endif
ARRAY<int> surfind2_aux(surfind2); Array<int> surfind2_aux(surfind2);
ageometry.GetIndependentSurfaceIndices (surfind2_aux); ageometry.GetIndependentSurfaceIndices (surfind2_aux);
#ifdef DEVELOP #ifdef DEVELOP
(*testout) << "surfind2,rep = " << endl << surfind2_aux << endl; (*testout) << "surfind2,rep = " << endl << surfind2_aux << endl;
@ -1754,7 +1754,7 @@ namespace netgen
if(testuncond.Test(i)) if(testuncond.Test(i))
continue; continue;
ARRAY<int> same; Array<int> same;
same.Append(i); same.Append(i);
for(int j = i+1; j<specpoints.Size(); j++) for(int j = i+1; j<specpoints.Size(); j++)

View File

@ -74,9 +74,9 @@ private:
/// ///
const CSGeometry * geometry; const CSGeometry * geometry;
/// ///
ARRAY<MeshPoint> * points; Array<MeshPoint> * points;
/// ///
ARRAY<long int> boxesinlevel; Array<long int> boxesinlevel;
/// ///
double size; double size;
@ -97,11 +97,11 @@ public:
/// ///
void CalcSpecialPoints (const CSGeometry & ageometry, void CalcSpecialPoints (const CSGeometry & ageometry,
ARRAY<MeshPoint> & points); Array<MeshPoint> & points);
/// ///
void AnalyzeSpecialPoints (const CSGeometry & geometry, void AnalyzeSpecialPoints (const CSGeometry & geometry,
ARRAY<MeshPoint> & points, Array<MeshPoint> & points,
ARRAY<SpecialPoint> & specpoints); Array<SpecialPoint> & specpoints);
protected: protected:
/// ///
@ -156,17 +156,17 @@ protected:
void ComputeExtremalPoints (const Plane * plane, void ComputeExtremalPoints (const Plane * plane,
const QuadraticSurface * quadric, const QuadraticSurface * quadric,
ARRAY<Point<3> > & pts); Array<Point<3> > & pts);
void ComputeCrossPoints (const Plane * plane1, void ComputeCrossPoints (const Plane * plane1,
const Plane * plane2, const Plane * plane2,
const Plane * plane3, const Plane * plane3,
ARRAY<Point<3> > & pts); Array<Point<3> > & pts);
void ComputeCrossPoints (const Plane * plane1, void ComputeCrossPoints (const Plane * plane1,
const Plane * plane2, const Plane * plane2,
const QuadraticSurface * quadratic, const QuadraticSurface * quadratic,
ARRAY<Point<3> > & pts); Array<Point<3> > & pts);
}; };
#endif #endif

View File

@ -24,7 +24,7 @@ class splinesegment3d
class spline3d class spline3d
{ {
/// ///
ARRAY<splinesegment3d *> segments; Array<splinesegment3d *> segments;
public: public:
/// ///

View File

@ -229,13 +229,13 @@ void Primitive :: SetSurfaceId (int i, int id)
void Primitive :: GetPrimitiveData (const char *& classname, void Primitive :: GetPrimitiveData (const char *& classname,
ARRAY<double> & coeffs) const Array<double> & coeffs) const
{ {
classname = "undef"; classname = "undef";
coeffs.SetSize (0); coeffs.SetSize (0);
} }
void Primitive :: SetPrimitiveData (ARRAY<double> & coeffs) void Primitive :: SetPrimitiveData (Array<double> & coeffs)
{ {
; ;
} }
@ -276,7 +276,7 @@ void Primitive :: Transform (Transformation<3> & trans)
} }
void Primitive :: GetTangentialSurfaceIndices (const Point<3> & p, void Primitive :: GetTangentialSurfaceIndices (const Point<3> & p,
ARRAY<int> & surfind, double eps) const Array<int> & surfind, double eps) const
{ {
for (int j = 0; j < GetNSurfaces(); j++) for (int j = 0; j < GetNSurfaces(); j++)
if (fabs (GetSurface(j).CalcFunctionValue (p)) < eps) if (fabs (GetSurface(j).CalcFunctionValue (p)) < eps)
@ -287,7 +287,7 @@ void Primitive :: GetTangentialSurfaceIndices (const Point<3> & p,
void Primitive :: void Primitive ::
GetTangentialVecSurfaceIndices (const Point<3> & p, const Vec<3> & v, GetTangentialVecSurfaceIndices (const Point<3> & p, const Vec<3> & v,
ARRAY<int> & surfind, double eps) const Array<int> & surfind, double eps) const
{ {
cout << "get tangvecsurfind not implemented" << endl; cout << "get tangvecsurfind not implemented" << endl;
surfind.SetSize (0); surfind.SetSize (0);
@ -295,7 +295,7 @@ GetTangentialVecSurfaceIndices (const Point<3> & p, const Vec<3> & v,
void Primitive :: void Primitive ::
GetTangentialVecSurfaceIndices2 (const Point<3> & p, const Vec<3> & v1, const Vec<3> & v2, GetTangentialVecSurfaceIndices2 (const Point<3> & p, const Vec<3> & v1, const Vec<3> & v2,
ARRAY<int> & surfind, double eps) const Array<int> & surfind, double eps) const
{ {
for (int j = 0; j < GetNSurfaces(); j++) for (int j = 0; j < GetNSurfaces(); j++)
{ {

View File

@ -237,7 +237,7 @@ public:
double eps) const = 0; double eps) const = 0;
virtual void GetTangentialSurfaceIndices (const Point<3> & p, virtual void GetTangentialSurfaceIndices (const Point<3> & p,
ARRAY<int> & surfind, double eps) const; Array<int> & surfind, double eps) const;
virtual INSOLID_TYPE VecInSolid (const Point<3> & p, virtual INSOLID_TYPE VecInSolid (const Point<3> & p,
const Vec<3> & v, const Vec<3> & v,
@ -263,15 +263,15 @@ public:
double eps) const; double eps) const;
virtual void GetTangentialVecSurfaceIndices (const Point<3> & p, const Vec<3> & v, virtual void GetTangentialVecSurfaceIndices (const Point<3> & p, const Vec<3> & v,
ARRAY<int> & surfind, double eps) const; Array<int> & surfind, double eps) const;
virtual void GetTangentialVecSurfaceIndices2 (const Point<3> & p, const Vec<3> & v1, const Vec<3> & v2, virtual void GetTangentialVecSurfaceIndices2 (const Point<3> & p, const Vec<3> & v1, const Vec<3> & v2,
ARRAY<int> & surfind, double eps) const; Array<int> & surfind, double eps) const;
virtual void CalcSpecialPoints (ARRAY<Point<3> > & /* pts */) const { ; } virtual void CalcSpecialPoints (Array<Point<3> > & /* pts */) const { ; }
virtual void AnalyzeSpecialPoint (const Point<3> & /* pt */, virtual void AnalyzeSpecialPoint (const Point<3> & /* pt */,
ARRAY<Point<3> > & /* specpts */) const { ; } Array<Point<3> > & /* specpts */) const { ; }
virtual Vec<3> SpecialPointTangentialVector (const Point<3> & /* p */, virtual Vec<3> SpecialPointTangentialVector (const Point<3> & /* p */,
int /* s1 */, int /* s2 */) const int /* s1 */, int /* s2 */) const
{ return Vec<3> (0,0,0); } { return Vec<3> (0,0,0); }
@ -281,8 +281,8 @@ public:
virtual Surface & GetSurface (int i = 0) = 0; virtual Surface & GetSurface (int i = 0) = 0;
virtual const Surface & GetSurface (int i = 0) const = 0; virtual const Surface & GetSurface (int i = 0) const = 0;
ARRAY<int> surfaceids; Array<int> surfaceids;
ARRAY<int> surfaceactive; Array<int> surfaceactive;
int GetSurfaceId (int i = 0) const; int GetSurfaceId (int i = 0) const;
void SetSurfaceId (int i, int id); void SetSurfaceId (int i, int id);
@ -290,8 +290,8 @@ public:
virtual int SurfaceInverted (int /* i */ = 0) const { return 0; } virtual int SurfaceInverted (int /* i */ = 0) const { return 0; }
virtual void GetPrimitiveData (const char *& classname, virtual void GetPrimitiveData (const char *& classname,
ARRAY<double> & coeffs) const; Array<double> & coeffs) const;
virtual void SetPrimitiveData (ARRAY<double> & coeffs); virtual void SetPrimitiveData (Array<double> & coeffs);
static Primitive * CreatePrimitive (const char * classname); static Primitive * CreatePrimitive (const char * classname);

View File

@ -29,7 +29,7 @@ namespace netgen
void TriangleApproximation :: RemoveUnusedPoints () void TriangleApproximation :: RemoveUnusedPoints ()
{ {
BitArray used(GetNP()); BitArray used(GetNP());
ARRAY<int> map (GetNP()); Array<int> map (GetNP());
int i, j; int i, j;
int cnt = 0; int cnt = 0;

View File

@ -32,9 +32,9 @@ public:
class TriangleApproximation class TriangleApproximation
{ {
ARRAY<Point<3> > points; Array<Point<3> > points;
ARRAY<Vec<3> > normals; Array<Vec<3> > normals;
ARRAY<TATriangle> trigs; Array<TATriangle> trigs;
public: public:
TriangleApproximation(); TriangleApproximation();

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.10.1 from Makefile.am. # Makefile.in generated by automake 1.10 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. # 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -53,7 +53,7 @@ am_libgeneral_la_OBJECTS = array.lo bitarray.lo dynamicmem.lo flags.lo \
optmem.lo parthreads.lo profiler.lo seti.lo sort.lo \ optmem.lo parthreads.lo profiler.lo seti.lo sort.lo \
spbita2d.lo symbolta.lo table.lo spbita2d.lo symbolta.lo table.lo
libgeneral_la_OBJECTS = $(am_libgeneral_la_OBJECTS) libgeneral_la_OBJECTS = $(am_libgeneral_la_OBJECTS)
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@
depcomp = $(SHELL) $(top_srcdir)/depcomp depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles am__depfiles_maybe = depfiles
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
@ -361,8 +361,8 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
mkid -fID $$unique mkid -fID $$unique
tags: TAGS tags: TAGS
@ -374,8 +374,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \ test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
@ -385,12 +385,13 @@ ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP) $(TAGS_FILES) $(LISP)
tags=; \ tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \ test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique $$tags $$unique

View File

@ -1,5 +1,5 @@
#ifndef FILE_NGSTD_ARRAYCPP #ifndef FILE_NGSTD_ArrayCPP
#define FILE_NGSTD_ARRAYCPP #define FILE_NGSTD_ArrayCPP
// necessary for SGI ???? // necessary for SGI ????
/**************************************************************************/ /**************************************************************************/
@ -9,7 +9,7 @@
/**************************************************************************/ /**************************************************************************/
/* /*
Abstract data type ARRAY Abstract data type Array
*/ */
#include <mystdlib.h> #include <mystdlib.h>
@ -22,7 +22,7 @@ namespace netgen
//using namespace netgen; //using namespace netgen;
#ifdef NONE #ifdef NONE
void BASE_ARRAY :: ReSize (int minsize, int elementsize) void BASE_Array :: ReSize (int minsize, int elementsize)
{ {
cout << "resize, minsize = " << minsize << endl; cout << "resize, minsize = " << minsize << endl;
@ -55,13 +55,13 @@ namespace netgen
void BASE_ARRAY :: RangeCheck (int i) const void BASE_Array :: RangeCheck (int i) const
{ {
if (i < 0 || i >= actsize) if (i < 0 || i >= actsize)
throw ArrayRangeException (); throw ArrayRangeException ();
} }
void BASE_ARRAY :: CheckNonEmpty () const void BASE_Array :: CheckNonEmpty () const
{ {
if (!actsize) if (!actsize)
{ {

View File

@ -1,5 +1,5 @@
#ifndef FILE_ARRAY #ifndef FILE_Array
#define FILE_ARRAY #define FILE_Array
/**************************************************************************/ /**************************************************************************/
/* File: array.hpp */ /* File: array.hpp */
@ -77,7 +77,7 @@ public:
{ {
#ifdef DEBUG #ifdef DEBUG
if (i < 1 || i > size) if (i < 1 || i > size)
cout << "ARRAY<" << typeid(T).name() cout << "Array<" << typeid(T).name()
<< ">::Elem out of range, i = " << i << ">::Elem out of range, i = " << i
<< ", s = " << size << endl; << ", s = " << size << endl;
#endif #endif
@ -90,7 +90,7 @@ public:
{ {
#ifdef DEBUG #ifdef DEBUG
if (i < 1 || i > size) if (i < 1 || i > size)
cout << "ARRAY<" << typeid(T).name() << ">::Get out of range, i = " << i cout << "Array<" << typeid(T).name() << ">::Get out of range, i = " << i
<< ", s = " << size << endl; << ", s = " << size << endl;
#endif #endif
@ -102,7 +102,7 @@ public:
{ {
#ifdef DEBUG #ifdef DEBUG
if (i < 1 || i > size) if (i < 1 || i > size)
cout << "ARRAY<" << typeid(T).name() << ">::Set out of range, i = " << i cout << "Array<" << typeid(T).name() << ">::Set out of range, i = " << i
<< ", s = " << size << endl; << ", s = " << size << endl;
#endif #endif
@ -170,13 +170,13 @@ inline ostream & operator<< (ostream & s, const FlatArray<T,BASE> & a)
/** /**
Dynamic array container. Dynamic array container.
ARRAY<T> is an automatically increasing array container. Array<T> is an automatically increasing array container.
The allocated memory doubles on overflow. The allocated memory doubles on overflow.
Either the container takes care of memory allocation and deallocation, Either the container takes care of memory allocation and deallocation,
or the user provides one block of data. or the user provides one block of data.
*/ */
template <class T, int BASE = 0> template <class T, int BASE = 0>
class ARRAY : public FlatArray<T, BASE> class Array : public FlatArray<T, BASE>
{ {
protected: protected:
/// physical size of array /// physical size of array
@ -187,7 +187,7 @@ protected:
public: public:
/// Generate array of logical and physical size asize /// Generate array of logical and physical size asize
explicit ARRAY(int asize = 0) explicit Array(int asize = 0)
: FlatArray<T, BASE> (asize, asize ? new T[asize] : 0) : FlatArray<T, BASE> (asize, asize ? new T[asize] : 0)
{ {
allocsize = asize; allocsize = asize;
@ -195,7 +195,7 @@ public:
} }
/// Generate array in user data /// Generate array in user data
ARRAY(int asize, T* adata) Array(int asize, T* adata)
: FlatArray<T, BASE> (asize, adata) : FlatArray<T, BASE> (asize, adata)
{ {
allocsize = asize; allocsize = asize;
@ -203,7 +203,7 @@ public:
} }
/// array copy /// array copy
explicit ARRAY (const ARRAY<T> & a2) explicit Array (const Array<T> & a2)
: FlatArray<T, BASE> (a2.Size(), a2.Size() ? new T[a2.Size()] : 0) : FlatArray<T, BASE> (a2.Size(), a2.Size() ? new T[a2.Size()] : 0)
{ {
allocsize = this->size; allocsize = this->size;
@ -215,7 +215,7 @@ public:
/// if responsible, deletes memory /// if responsible, deletes memory
~ARRAY() ~Array()
{ {
if (ownmem) if (ownmem)
delete [] this->data; delete [] this->data;
@ -273,7 +273,7 @@ public:
/// Delete element i (0-based). Move last element to position i. /// Delete element i (0-based). Move last element to position i.
void Delete (int i) void Delete (int i)
{ {
#ifdef CHECK_ARRAY_RANGE #ifdef CHECK_Array_RANGE
RangeCheck (i+1); RangeCheck (i+1);
#endif #endif
@ -286,7 +286,7 @@ public:
/// Delete element i (1-based). Move last element to position i. /// Delete element i (1-based). Move last element to position i.
void DeleteElement (int i) void DeleteElement (int i)
{ {
#ifdef CHECK_ARRAY_RANGE #ifdef CHECK_Array_RANGE
RangeCheck (i); RangeCheck (i);
#endif #endif
@ -310,14 +310,14 @@ public:
} }
/// Fill array with val /// Fill array with val
ARRAY & operator= (const T & val) Array & operator= (const T & val)
{ {
FlatArray<T, BASE>::operator= (val); FlatArray<T, BASE>::operator= (val);
return *this; return *this;
} }
/// array copy /// array copy
ARRAY & operator= (const ARRAY & a2) Array & operator= (const Array & a2)
{ {
SetSize (a2.Size()); SetSize (a2.Size());
for (int i = BASE; i < this->size+BASE; i++) for (int i = BASE; i < this->size+BASE; i++)
@ -326,7 +326,7 @@ public:
} }
/// array copy /// array copy
ARRAY & operator= (const FlatArray<T> & a2) Array & operator= (const FlatArray<T> & a2)
{ {
SetSize (a2.Size()); SetSize (a2.Size());
for (int i = BASE; i < this->size+BASE; i++) for (int i = BASE; i < this->size+BASE; i++)
@ -368,7 +368,7 @@ private:
template <class T, int S> template <class T, int S>
class ArrayMem : public ARRAY<T> class ArrayMem : public Array<T>
{ {
// T mem[S]; // Intel C++ calls dummy constructor // T mem[S]; // Intel C++ calls dummy constructor
// char mem[S*sizeof(T)]; // char mem[S*sizeof(T)];
@ -376,7 +376,7 @@ class ArrayMem : public ARRAY<T>
public: public:
/// Generate array of logical and physical size asize /// Generate array of logical and physical size asize
explicit ArrayMem(int asize = 0) explicit ArrayMem(int asize = 0)
: ARRAY<T> (S, static_cast<T*> (static_cast<void*>(&mem[0]))) : Array<T> (S, static_cast<T*> (static_cast<void*>(&mem[0])))
{ {
this->size = asize; this->size = asize;
if (asize > S) if (asize > S)
@ -389,7 +389,7 @@ public:
ArrayMem & operator= (const T & val) ArrayMem & operator= (const T & val)
{ {
ARRAY<T>::operator= (val); Array<T>::operator= (val);
return *this; return *this;
} }
}; };
@ -614,7 +614,7 @@ inline void BubbleSort (FlatArray<T> & data, FlatArray<S> & slave)
template <class T> template <class T>
void Intersection (const FlatArray<T> & in1, const FlatArray<T> & in2, void Intersection (const FlatArray<T> & in1, const FlatArray<T> & in2,
ARRAY<T> & out) Array<T> & out)
{ {
out.SetSize(0); out.SetSize(0);
for(int i=0; i<in1.Size(); i++) for(int i=0; i<in1.Size(); i++)
@ -623,7 +623,7 @@ void Intersection (const FlatArray<T> & in1, const FlatArray<T> & in2,
} }
template <class T> template <class T>
void Intersection (const FlatArray<T> & in1, const FlatArray<T> & in2, const FlatArray<T> & in3, void Intersection (const FlatArray<T> & in1, const FlatArray<T> & in2, const FlatArray<T> & in3,
ARRAY<T> & out) Array<T> & out)
{ {
out.SetSize(0); out.SetSize(0);
for(int i=0; i<in1.Size(); i++) for(int i=0; i<in1.Size(); i++)

View File

@ -155,7 +155,7 @@ template <int BASE = 1>
class BitArrayChar class BitArrayChar
{ {
/// ///
ARRAY<char,BASE> data; Array<char,BASE> data;
public: public:
/// ///

View File

@ -56,9 +56,9 @@ namespace netgen
} }
void Flags :: SetFlag (const char * name, const ARRAY<char*> & val) void Flags :: SetFlag (const char * name, const Array<char*> & val)
{ {
ARRAY<char*> * strarray = new ARRAY<char*>; Array<char*> * strarray = new Array<char*>;
for (int i = 1; i <= val.Size(); i++) for (int i = 1; i <= val.Size(); i++)
{ {
strarray->Append (new char[strlen(val.Get(i))+1]); strarray->Append (new char[strlen(val.Get(i))+1]);
@ -67,9 +67,9 @@ namespace netgen
strlistflags.Set (name, strarray); strlistflags.Set (name, strarray);
} }
void Flags :: SetFlag (const char * name, const ARRAY<double> & val) void Flags :: SetFlag (const char * name, const Array<double> & val)
{ {
ARRAY<double> * numarray = new ARRAY<double>; Array<double> * numarray = new Array<double>;
for (int i = 1; i <= val.Size(); i++) for (int i = 1; i <= val.Size(); i++)
numarray->Append (val.Get(i)); numarray->Append (val.Get(i));
numlistflags.Set (name, numarray); numlistflags.Set (name, numarray);
@ -118,26 +118,26 @@ namespace netgen
} }
const ARRAY<char*> & const Array<char*> &
Flags :: GetStringListFlag (const char * name) const Flags :: GetStringListFlag (const char * name) const
{ {
if (strlistflags.Used (name)) if (strlistflags.Used (name))
return *strlistflags.Get(name); return *strlistflags.Get(name);
else else
{ {
static ARRAY<char*> hstra(0); static Array<char*> hstra(0);
return hstra; return hstra;
} }
} }
const ARRAY<double> & const Array<double> &
Flags ::GetNumListFlag (const char * name) const Flags ::GetNumListFlag (const char * name) const
{ {
if (numlistflags.Used (name)) if (numlistflags.Used (name))
return *numlistflags.Get(name); return *numlistflags.Get(name);
else else
{ {
static ARRAY<double> hnuma(0); static Array<double> hnuma(0);
return hnuma; return hnuma;
} }
} }

View File

@ -22,9 +22,9 @@ class Flags
/// ///
SYMBOLTABLE<int> defflags; SYMBOLTABLE<int> defflags;
/// ///
SYMBOLTABLE<ARRAY<char*>*> strlistflags; SYMBOLTABLE<Array<char*>*> strlistflags;
/// ///
SYMBOLTABLE<ARRAY<double>*> numlistflags; SYMBOLTABLE<Array<double>*> numlistflags;
public: public:
/// ///
Flags (); Flags ();
@ -40,9 +40,9 @@ public:
/// Sets boolean flag /// Sets boolean flag
void SetFlag (const char * name); void SetFlag (const char * name);
/// Sets string arary falg /// Sets string arary falg
void SetFlag (const char * name, const ARRAY<char*> & val); void SetFlag (const char * name, const Array<char*> & val);
/// Sets double array flag /// Sets double array flag
void SetFlag (const char * name, const ARRAY<double> & val); void SetFlag (const char * name, const Array<double> & val);
/// Save flags to file /// Save flags to file
void SaveFlags (const char * filename) const; void SaveFlags (const char * filename) const;
@ -64,9 +64,9 @@ public:
/// Returns boolean flag /// Returns boolean flag
bool GetDefineFlag (const char * name) const; bool GetDefineFlag (const char * name) const;
/// Returns string list flag, empty array if not exist /// Returns string list flag, empty array if not exist
const ARRAY<char*> & GetStringListFlag (const char * name) const; const Array<char*> & GetStringListFlag (const char * name) const;
/// Returns num list flag, empty array if not exist /// Returns num list flag, empty array if not exist
const ARRAY<double> & GetNumListFlag (const char * name) const; const Array<double> & GetNumListFlag (const char * name) const;
/// Test, if string flag is defined /// Test, if string flag is defined

View File

@ -5,7 +5,7 @@
/**************************************************************************/ /**************************************************************************/
/* /*
Abstract data type ARRAY Abstract data type Array
*/ */

View File

@ -19,7 +19,7 @@ private:
/// ///
void * freelist; void * freelist;
/// ///
ARRAY<char*> bablocks; Array<char*> bablocks;
public: public:
/// ///
BlockAllocator (unsigned asize, unsigned ablocks = 100); BlockAllocator (unsigned asize, unsigned ablocks = 100);

View File

@ -13,7 +13,7 @@
*/ */
class IndexSet class IndexSet
{ {
ARRAY<int> set; Array<int> set;
BitArray flags; BitArray flags;
public: public:
IndexSet (int maxind); IndexSet (int maxind);
@ -38,7 +38,7 @@ public:
void Del (int ind); void Del (int ind);
void Clear (); void Clear ();
const ARRAY<int> & Array() { return set; } const Array<int> & Array() { return set; }
}; };
#endif #endif

View File

@ -16,8 +16,8 @@
namespace netgen namespace netgen
{ {
void Sort (const ARRAY<double> & values, void Sort (const Array<double> & values,
ARRAY<int> & order) Array<int> & order)
{ {
int n = values.Size(); int n = values.Size();
int i, j; int i, j;
@ -35,8 +35,8 @@ void Sort (const ARRAY<double> & values,
} }
void QickSortRec (const ARRAY<double> & values, void QickSortRec (const Array<double> & values,
ARRAY<int> & order, Array<int> & order,
int left, int right) int left, int right)
{ {
int i, j; int i, j;
@ -62,8 +62,8 @@ void QickSortRec (const ARRAY<double> & values,
if (i < right) QickSortRec (values, order, i, right); if (i < right) QickSortRec (values, order, i, right);
} }
void QickSort (const ARRAY<double> & values, void QickSort (const Array<double> & values,
ARRAY<int> & order) Array<int> & order)
{ {
int i, n = values.Size(); int i, n = values.Size();
order.SetSize (n); order.SetSize (n);

View File

@ -9,11 +9,11 @@
// order(i) is sorted index of element i // order(i) is sorted index of element i
extern void Sort (const ARRAY<double> & values, extern void Sort (const Array<double> & values,
ARRAY<int> & order); Array<int> & order);
extern void QickSort (const ARRAY<double> & values, extern void QickSort (const Array<double> & values,
ARRAY<int> & order); Array<int> & order);
@ -33,7 +33,7 @@ inline void BubbleSort (int size, T * data)
} }
template <class T> template <class T>
inline void BubbleSort (ARRAY<T> & data) inline void BubbleSort (Array<T> & data)
{ {
if(data.Size() > 0) if(data.Size() > 0)
BubbleSort (data.Size(), &data[data.Begin()]); BubbleSort (data.Size(), &data[data.Begin()]);

View File

@ -16,20 +16,20 @@ namespace netgen
{ {
//using namespace netgen; //using namespace netgen;
SPARSE_BIT_ARRAY_2D :: SPARSE_BIT_ARRAY_2D (int ah, int aw) SPARSE_BIT_Array_2D :: SPARSE_BIT_Array_2D (int ah, int aw)
{ {
lines = NULL; lines = NULL;
SetSize (ah, aw); SetSize (ah, aw);
} }
SPARSE_BIT_ARRAY_2D :: ~SPARSE_BIT_ARRAY_2D () SPARSE_BIT_Array_2D :: ~SPARSE_BIT_Array_2D ()
{ {
DeleteElements (); DeleteElements ();
delete lines; delete lines;
} }
void SPARSE_BIT_ARRAY_2D :: SetSize (int ah, int aw) void SPARSE_BIT_Array_2D :: SetSize (int ah, int aw)
{ {
DeleteElements(); DeleteElements();
if (lines) if (lines)
@ -58,13 +58,13 @@ namespace netgen
else else
{ {
height = width = 0; height = width = 0;
MyError ("SPARSE_ARRAY::SetSize: Out of memory"); MyError ("SPARSE_Array::SetSize: Out of memory");
} }
} }
void SPARSE_BIT_ARRAY_2D :: DeleteElements () void SPARSE_BIT_Array_2D :: DeleteElements ()
{ {
if (lines) if (lines)
{ {
@ -82,7 +82,7 @@ namespace netgen
} }
int SPARSE_BIT_ARRAY_2D :: Test (int i, int j) const int SPARSE_BIT_Array_2D :: Test (int i, int j) const
{ {
int k, max, *col; int k, max, *col;
@ -100,7 +100,7 @@ namespace netgen
void SPARSE_BIT_ARRAY_2D :: Set(int i, int j) void SPARSE_BIT_Array_2D :: Set(int i, int j)
{ {
int k, max, *col; int k, max, *col;
@ -126,7 +126,7 @@ namespace netgen
} }
else else
{ {
MyError ("SPARSE_BIT_ARRAY::Set: Out of mem 1"); MyError ("SPARSE_BIT_Array::Set: Out of mem 1");
return; return;
} }
} }
@ -149,7 +149,7 @@ namespace netgen
} }
else else
{ {
MyError ("SPARSE_ARRAY::Set: Out of memory 2"); MyError ("SPARSE_Array::Set: Out of memory 2");
} }
} }
else else

View File

@ -12,7 +12,7 @@
*/ */
class SPARSE_BIT_ARRAY_2D class SPARSE_BIT_Array_2D
{ {
class linestruct { public: INDEX size; INDEX maxsize; INDEX * col; }; class linestruct { public: INDEX size; INDEX maxsize; INDEX * col; };
@ -24,9 +24,9 @@ class SPARSE_BIT_ARRAY_2D
public: public:
/// ///
SPARSE_BIT_ARRAY_2D (INDEX ah = 0, INDEX aw = 0); SPARSE_BIT_Array_2D (INDEX ah = 0, INDEX aw = 0);
/// ///
~SPARSE_BIT_ARRAY_2D (); ~SPARSE_BIT_Array_2D ();
/// ///
void SetSize (INDEX ah, INDEX aw = 0); void SetSize (INDEX ah, INDEX aw = 0);

View File

@ -39,7 +39,7 @@ public:
private: private:
/// ///
ARRAY<T> elems; Array<T> elems;
/// ///
INDEX size; INDEX size;
}; };

View File

@ -16,7 +16,7 @@ class BASE_SYMBOLTABLE
{ {
protected: protected:
/// identifiers /// identifiers
ARRAY <char*> names; Array <char*> names;
public: public:
/// Constructor /// Constructor
@ -41,7 +41,7 @@ class SYMBOLTABLE : public BASE_SYMBOLTABLE
{ {
private: private:
/// Associated data /// Associated data
ARRAY <T> data; Array <T> data;
public: public:
/// Creates a symboltable /// Creates a symboltable

View File

@ -25,7 +25,7 @@ protected:
}; };
/// ///
ARRAY<linestruct> data; Array<linestruct> data;
char * oneblock; char * oneblock;
public: public:

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.10.1 from Makefile.am. # Makefile.in generated by automake 1.10 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. # 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -51,7 +51,7 @@ libgeom2d_la_LIBADD =
am_libgeom2d_la_OBJECTS = genmesh2d.lo geom2dmesh.lo spline.lo \ am_libgeom2d_la_OBJECTS = genmesh2d.lo geom2dmesh.lo spline.lo \
splinegeometry.lo splinegeometry.lo
libgeom2d_la_OBJECTS = $(am_libgeom2d_la_OBJECTS) libgeom2d_la_OBJECTS = $(am_libgeom2d_la_OBJECTS)
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@
depcomp = $(SHELL) $(top_srcdir)/depcomp depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles am__depfiles_maybe = depfiles
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
@ -320,8 +320,8 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
mkid -fID $$unique mkid -fID $$unique
tags: TAGS tags: TAGS
@ -333,8 +333,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \ test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
@ -344,12 +344,13 @@ ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP) $(TAGS_FILES) $(LISP)
tags=; \ tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \ test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique $$tags $$unique

View File

@ -6,8 +6,8 @@
namespace netgen namespace netgen
{ {
// static ARRAY<Point<2> > points2; // static Array<Point<2> > points2;
// static ARRAY<int> lp1, lp2; // static Array<int> lp1, lp2;
extern void Optimize2d (Mesh & mesh, MeshingParameters & mp); extern void Optimize2d (Mesh & mesh, MeshingParameters & mp);
@ -69,7 +69,7 @@ namespace netgen
for (int i = 1; i <= maxdomnr; i++) for (int i = 1; i <= maxdomnr; i++)
mesh->AddFaceDescriptor (FaceDescriptor (i, 0, 0, i)); mesh->AddFaceDescriptor (FaceDescriptor (i, 0, 0, i));
// set ARRAY<string*> bcnames... // set Array<string*> bcnames...
// number of bcnames // number of bcnames
int maxsegmentindex = 0; int maxsegmentindex = 0;
for (SegmentIndex si = 0; si < mesh->GetNSeg(); si++) for (SegmentIndex si = 0; si < mesh->GetNSeg(); si++)
@ -105,8 +105,8 @@ namespace netgen
if (geometry.GetDomainTensorMeshing (domnr)) if (geometry.GetDomainTensorMeshing (domnr))
{ // tensor product mesh { // tensor product mesh
ARRAY<PointIndex, PointIndex::BASE> nextpi(bnp); Array<PointIndex, PointIndex::BASE> nextpi(bnp);
ARRAY<int, PointIndex::BASE> si1(bnp), si2(bnp); Array<int, PointIndex::BASE> si1(bnp), si2(bnp);
PointIndex firstpi; PointIndex firstpi;
nextpi = -1; nextpi = -1;
@ -145,7 +145,7 @@ namespace netgen
ARRAY<PointIndex> pts ( (nex+1) * (ney+1) ); // x ... inner loop Array<PointIndex> pts ( (nex+1) * (ney+1) ); // x ... inner loop
pts = -1; pts = -1;
for (PointIndex pi = c1, i = 0; pi != c2; pi = nextpi[pi], i++) for (PointIndex pi = c1, i = 0; pi != c2; pi = nextpi[pi], i++)

View File

@ -282,7 +282,7 @@ namespace netgen
*/ */
void CalcPartition (double l, double h, double r1, double r2, void CalcPartition (double l, double h, double r1, double r2,
double ra, double elto0, ARRAY<double> & points) double ra, double elto0, Array<double> & points)
{ {
int i, j, n, nel; int i, j, n, nel;
double sum, t, dt, fun, fperel, oldf, f; double sum, t, dt, fun, fperel, oldf, f;

View File

@ -9,7 +9,7 @@
void CalcPartition (double l, double h, double r1, double r2, void CalcPartition (double l, double h, double r1, double r2,
double ra, double elto0, ARRAY<double> & points); double ra, double elto0, Array<double> & points);
/* /*
Spline curves for 2D mesh generation Spline curves for 2D mesh generation
@ -84,13 +84,13 @@ public:
virtual void GetCoeff (Vector & coeffs) const = 0; virtual void GetCoeff (Vector & coeffs) const = 0;
virtual void GetPoints (int n, ARRAY<Point<D> > & points); virtual void GetPoints (int n, Array<Point<D> > & points);
/** calculates (2D) lineintersections: /** calculates (2D) lineintersections:
for lines $$ a x + b y + c = 0 $$ the interecting points are calculated for lines $$ a x + b y + c = 0 $$ the interecting points are calculated
and stored in points */ and stored in points */
virtual void LineIntersections (const double a, const double b, const double c, virtual void LineIntersections (const double a, const double b, const double c,
ARRAY < Point<D> > & points, const double eps) const Array < Point<D> > & points, const double eps) const
{points.SetSize(0);} {points.SetSize(0);}
virtual double MaxCurvature(void) const = 0; virtual double MaxCurvature(void) const = 0;
@ -100,7 +100,7 @@ public:
virtual void Project (const Point<D> point, Point<D> & point_on_curve, double & t) const virtual void Project (const Point<D> point, Point<D> & point_on_curve, double & t) const
{ cerr << "Project not implemented for spline base-class" << endl;} { cerr << "Project not implemented for spline base-class" << endl;}
virtual void GetRawData (ARRAY<double> & data) const virtual void GetRawData (Array<double> & data) const
{ cerr << "GetRawData not implemented for spline base-class" << endl;} { cerr << "GetRawData not implemented for spline base-class" << endl;}
}; };
@ -138,13 +138,13 @@ public:
virtual string GetType(void) const {return "line";} virtual string GetType(void) const {return "line";}
virtual void LineIntersections (const double a, const double b, const double c, virtual void LineIntersections (const double a, const double b, const double c,
ARRAY < Point<D> > & points, const double eps) const; Array < Point<D> > & points, const double eps) const;
virtual double MaxCurvature(void) const {return 0;} virtual double MaxCurvature(void) const {return 0;}
virtual void Project (const Point<D> point, Point<D> & point_on_curve, double & t) const; virtual void Project (const Point<D> point, Point<D> & point_on_curve, double & t) const;
virtual void GetRawData (ARRAY<double> & data) const; virtual void GetRawData (Array<double> & data) const;
}; };
@ -184,13 +184,13 @@ public:
const GeomPoint<D> & TangentPoint (void) const { return p2; } const GeomPoint<D> & TangentPoint (void) const { return p2; }
virtual void LineIntersections (const double a, const double b, const double c, virtual void LineIntersections (const double a, const double b, const double c,
ARRAY < Point<D> > & points, const double eps) const; Array < Point<D> > & points, const double eps) const;
virtual double MaxCurvature(void) const; virtual double MaxCurvature(void) const;
virtual void Project (const Point<D> point, Point<D> & point_on_curve, double & t) const; virtual void Project (const Point<D> point, Point<D> & point_on_curve, double & t) const;
virtual void GetRawData (ARRAY<double> & data) const; virtual void GetRawData (Array<double> & data) const;
}; };
@ -230,7 +230,7 @@ public:
virtual string GetType(void) const {return "circle";} virtual string GetType(void) const {return "circle";}
virtual void LineIntersections (const double a, const double b, const double c, virtual void LineIntersections (const double a, const double b, const double c,
ARRAY < Point<D> > & points, const double eps) const; Array < Point<D> > & points, const double eps) const;
virtual double MaxCurvature(void) const {return 1./radius;} virtual double MaxCurvature(void) const {return 1./radius;}
}; };
@ -244,11 +244,11 @@ public:
template<int D> template<int D>
class DiscretePointsSeg : public SplineSeg<D> class DiscretePointsSeg : public SplineSeg<D>
{ {
ARRAY<Point<D> > pts; Array<Point<D> > pts;
GeomPoint<D> p1, p2; GeomPoint<D> p1, p2;
public: public:
/// ///
DiscretePointsSeg (const ARRAY<Point<D> > & apts); DiscretePointsSeg (const Array<Point<D> > & apts);
/// ///
virtual ~DiscretePointsSeg (); virtual ~DiscretePointsSeg ();
/// ///
@ -302,7 +302,7 @@ void SplineSeg<D> :: Partition (double h, double elto0,
double lold, dt, frac; double lold, dt, frac;
int n = 100; int n = 100;
Point<D> p, pold, mark, oldmark; Point<D> p, pold, mark, oldmark;
ARRAY<double> curvepoints; Array<double> curvepoints;
double edgelength, edgelengthold; double edgelength, edgelengthold;
l = Length(); l = Length();
@ -323,7 +323,7 @@ void SplineSeg<D> :: Partition (double h, double elto0,
lold = 0; lold = 0;
oldmark = pold; oldmark = pold;
edgelengthold = 0; edgelengthold = 0;
ARRAY<int> locsearch; Array<int> locsearch;
for (i = 1; i <= n; i++) for (i = 1; i <= n; i++)
{ {
@ -401,7 +401,7 @@ void SplineSeg<D> :: Partition (double h, double elto0,
template<int D> template<int D>
void SplineSeg<D> :: GetPoints (int n, ARRAY<Point<D> > & points) void SplineSeg<D> :: GetPoints (int n, Array<Point<D> > & points)
{ {
points.SetSize (n); points.SetSize (n);
if (n >= 2) if (n >= 2)
@ -486,7 +486,7 @@ void LineSeg<D> :: GetCoeff (Vector & coeffs) const
template<int D> template<int D>
void LineSeg<D> :: LineIntersections (const double a, const double b, const double c, void LineSeg<D> :: LineIntersections (const double a, const double b, const double c,
ARRAY < Point<D> > & points, const double eps) const Array < Point<D> > & points, const double eps) const
{ {
points.SetSize(0); points.SetSize(0);
@ -519,7 +519,7 @@ void LineSeg<D> :: Project (const Point<D> point, Point<D> & point_on_curve, dou
template<int D> template<int D>
void LineSeg<D> :: GetRawData (ARRAY<double> & data) const void LineSeg<D> :: GetRawData (Array<double> & data) const
{ {
data.Append(2); data.Append(2);
for(int i=0; i<D; i++) for(int i=0; i<D; i++)
@ -825,7 +825,7 @@ double SplineSeg3<D> :: MaxCurvature(void) const
template<int D> template<int D>
void SplineSeg3<D> :: LineIntersections (const double a, const double b, const double c, void SplineSeg3<D> :: LineIntersections (const double a, const double b, const double c,
ARRAY < Point<D> > & points, const double eps) const Array < Point<D> > & points, const double eps) const
{ {
points.SetSize(0); points.SetSize(0);
@ -872,7 +872,7 @@ void SplineSeg3<D> :: LineIntersections (const double a, const double b, const d
template < int D > template < int D >
void SplineSeg3<D> :: GetRawData (ARRAY<double> & data) const void SplineSeg3<D> :: GetRawData (Array<double> & data) const
{ {
data.Append(3); data.Append(3);
for(int i=0; i<D; i++) for(int i=0; i<D; i++)
@ -951,7 +951,7 @@ void CircleSeg<D> :: GetCoeff (Vector & coeff) const
template<int D> template<int D>
void CircleSeg<D> :: LineIntersections (const double a, const double b, const double c, void CircleSeg<D> :: LineIntersections (const double a, const double b, const double c,
ARRAY < Point<D> > & points, const double eps) const Array < Point<D> > & points, const double eps) const
{ {
points.SetSize(0); points.SetSize(0);
@ -971,7 +971,7 @@ void CircleSeg<D> :: LineIntersections (const double a, const double b, const do
if(discr < 0) if(discr < 0)
return; return;
ARRAY<double> t; Array<double> t;
if(fabs(discr) < 1e-20) if(fabs(discr) < 1e-20)
t.Append(-0.5*c2/c1); t.Append(-0.5*c2/c1);
@ -996,7 +996,7 @@ void CircleSeg<D> :: LineIntersections (const double a, const double b, const do
template<int D> template<int D>
DiscretePointsSeg<D> :: DiscretePointsSeg (const ARRAY<Point<D> > & apts) DiscretePointsSeg<D> :: DiscretePointsSeg (const Array<Point<D> > & apts)
: pts (apts) : pts (apts)
{ {
for(int i=0; i<D; i++) for(int i=0; i<D; i++)

View File

@ -85,13 +85,13 @@ public:
virtual void GetCoeff (Vector & coeffs) const = 0; virtual void GetCoeff (Vector & coeffs) const = 0;
virtual void GetPoints (int n, ARRAY<Point<2> > & points); virtual void GetPoints (int n, Array<Point<2> > & points);
/** calculates lineintersections: /** calculates lineintersections:
for lines $$ a x + b y + c = 0 $$ the interecting points are calculated for lines $$ a x + b y + c = 0 $$ the interecting points are calculated
and stored in points */ and stored in points */
virtual void LineIntersections (const double a, const double b, const double c, virtual void LineIntersections (const double a, const double b, const double c,
ARRAY < Point<2> > & points, const double eps) const Array < Point<2> > & points, const double eps) const
{points.SetSize(0);} {points.SetSize(0);}
virtual double MaxCurvature(void) const = 0; virtual double MaxCurvature(void) const = 0;
@ -123,7 +123,7 @@ public:
virtual string GetType(void) const {return "line";} virtual string GetType(void) const {return "line";}
virtual void LineIntersections (const double a, const double b, const double c, virtual void LineIntersections (const double a, const double b, const double c,
ARRAY < Point<2> > & points, const double eps) const; Array < Point<2> > & points, const double eps) const;
virtual double MaxCurvature(void) const {return 0;} virtual double MaxCurvature(void) const {return 0;}
}; };
@ -154,7 +154,7 @@ public:
const GeomPoint2d & TangentPoint (void) const { return p2; } const GeomPoint2d & TangentPoint (void) const { return p2; }
virtual void LineIntersections (const double a, const double b, const double c, virtual void LineIntersections (const double a, const double b, const double c,
ARRAY < Point<2> > & points, const double eps) const; Array < Point<2> > & points, const double eps) const;
virtual double MaxCurvature(void) const; virtual double MaxCurvature(void) const;
}; };
@ -195,7 +195,7 @@ public:
virtual string GetType(void) const {return "circle";} virtual string GetType(void) const {return "circle";}
virtual void LineIntersections (const double a, const double b, const double c, virtual void LineIntersections (const double a, const double b, const double c,
ARRAY < Point<2> > & points, const double eps) const; Array < Point<2> > & points, const double eps) const;
virtual double MaxCurvature(void) const {return 1./radius;} virtual double MaxCurvature(void) const {return 1./radius;}
}; };
@ -208,11 +208,11 @@ public:
/// ///
class DiscretePointsSegment : public SplineSegment class DiscretePointsSegment : public SplineSegment
{ {
ARRAY<Point<2> > pts; Array<Point<2> > pts;
GeomPoint2d p1, p2; GeomPoint2d p1, p2;
public: public:
/// ///
DiscretePointsSegment (const ARRAY<Point<2> > & apts); DiscretePointsSegment (const Array<Point<2> > & apts);
/// ///
virtual ~DiscretePointsSegment (); virtual ~DiscretePointsSegment ();
/// ///

View File

@ -28,8 +28,8 @@ void SplineGeometry<D> :: LoadDataV2 ( ifstream & infile )
string keyword; string keyword;
ARRAY < GeomPoint<D> > infilepoints (0); Array < GeomPoint<D> > infilepoints (0);
ARRAY <int> pointnrs (0); Array <int> pointnrs (0);
nump = 0; nump = 0;
int numdomains = 0; int numdomains = 0;
@ -193,7 +193,7 @@ void SplineGeometry<D> :: LoadDataV2 ( ifstream & infile )
{ {
int npts; int npts;
infile >> npts; infile >> npts;
ARRAY< Point<D> > pts(npts); Array< Point<D> > pts(npts);
for (int j = 0; j < npts; j++) for (int j = 0; j < npts; j++)
for(int k=0; k<D; k++) for(int k=0; k<D; k++)
infile >> pts[j](k); infile >> pts[j](k);
@ -428,7 +428,7 @@ SplineGeometry<D> :: ~SplineGeometry()
template<int D> template<int D>
int SplineGeometry<D> :: Load (const ARRAY<double> & raw_data, const int startpos) int SplineGeometry<D> :: Load (const Array<double> & raw_data, const int startpos)
{ {
int pos = startpos; int pos = startpos;
if(raw_data[pos] != D) if(raw_data[pos] != D)
@ -441,7 +441,7 @@ int SplineGeometry<D> :: Load (const ARRAY<double> & raw_data, const int startpo
splines.SetSize(int(raw_data[pos])); splines.SetSize(int(raw_data[pos]));
pos++; pos++;
ARRAY< Point<D> > pts(3); Array< Point<D> > pts(3);
for(int i=0; i<splines.Size(); i++) for(int i=0; i<splines.Size(); i++)
{ {
@ -479,7 +479,7 @@ int SplineGeometry<D> :: Load (const ARRAY<double> & raw_data, const int startpo
} }
template<int D> template<int D>
void SplineGeometry<D> :: GetRawData (ARRAY<double> & raw_data) const void SplineGeometry<D> :: GetRawData (Array<double> & raw_data) const
{ {
raw_data.Append(D); raw_data.Append(D);
raw_data.Append(elto0); raw_data.Append(elto0);
@ -714,7 +714,7 @@ void SplineGeometry<D> :: LoadDataNew ( ifstream & infile )
{ {
int npts; int npts;
infile >> npts; infile >> npts;
ARRAY< Point<D> > pts(npts); Array< Point<D> > pts(npts);
for (int j = 0; j < npts; j++) for (int j = 0; j < npts; j++)
for(int k=0; k<D; k++) for(int k=0; k<D; k++)
infile >> pts[j](k); infile >> pts[j](k);
@ -922,7 +922,7 @@ void SplineGeometry<D> :: LoadData ( ifstream & infile )
{ {
int npts; int npts;
infile >> npts; infile >> npts;
ARRAY< Point<D> > pts(npts); Array< Point<D> > pts(npts);
for (int j = 0; j < npts; j++) for (int j = 0; j < npts; j++)
for(int k=0; k<D; k++) for(int k=0; k<D; k++)
infile >> pts[j](k); infile >> pts[j](k);
@ -1018,8 +1018,8 @@ void SplineGeometry<D> :: CopyEdgeMesh (int from, int to, Mesh & mesh, Point3dTr
{ {
int i; int i;
ARRAY<int, PointIndex::BASE> mappoints (mesh.GetNP()); Array<int, PointIndex::BASE> mappoints (mesh.GetNP());
ARRAY<double, PointIndex::BASE> param (mesh.GetNP()); Array<double, PointIndex::BASE> param (mesh.GetNP());
mappoints = -1; mappoints = -1;
param = 0; param = 0;
@ -1112,7 +1112,7 @@ void SplineGeometry<D> :: GetBoundingBox (Box<D> & box) const
return; return;
} }
ARRAY<Point<D> > points; Array<Point<D> > points;
for (int i = 0; i < splines.Size(); i++) for (int i = 0; i < splines.Size(); i++)
{ {
splines[i]->GetPoints (20, points); splines[i]->GetPoints (20, points);
@ -1192,7 +1192,7 @@ void SplineGeometry<D> :: AppendCircleSegment (const int n1, const int n2, const
} }
template<int D> template<int D>
void SplineGeometry<D> :: AppendDiscretePointsSegment (const ARRAY< Point<D> > & points, const int leftdomain, const int rightdomain, void SplineGeometry<D> :: AppendDiscretePointsSegment (const Array< Point<D> > & points, const int leftdomain, const int rightdomain,
const int bc, const int bc,
const double reffac, const bool hprefleft, const bool hprefright, const double reffac, const bool hprefleft, const bool hprefright,
const int copyfrom) const int copyfrom)

View File

@ -21,11 +21,11 @@ in geom2d only 2D - Geometry classes (with material properties etc.)
/// ///
extern void LoadBoundarySplines (const char * filename, extern void LoadBoundarySplines (const char * filename,
ARRAY < GeomPoint<2> > & geompoints, Array < GeomPoint<2> > & geompoints,
ARRAY < SplineSeg<2>* > & splines, Array < SplineSeg<2>* > & splines,
double & elto0); double & elto0);
/// ///
extern void PartitionBoundary (const ARRAY < SplineSeg<2>* > & splines, extern void PartitionBoundary (const Array < SplineSeg<2>* > & splines,
double h, double elto0, double h, double elto0,
Mesh & mesh2d); Mesh & mesh2d);
@ -36,14 +36,14 @@ extern int printmessage_importance;
template < int D > template < int D >
class SplineGeometry class SplineGeometry
{ {
ARRAY < GeomPoint<D> > geompoints; Array < GeomPoint<D> > geompoints;
ARRAY < SplineSeg<D>* > splines; Array < SplineSeg<D>* > splines;
double elto0; double elto0;
ARRAY<char*> materials; Array<char*> materials;
ARRAY<string*> bcnames; Array<string*> bcnames;
ARRAY<double> maxh; Array<double> maxh;
ARRAY<bool> quadmeshing; Array<bool> quadmeshing;
ARRAY<bool> tensormeshing; Array<bool> tensormeshing;
private: private:
void AppendSegment(SplineSeg<D> * spline, const int leftdomain, const int rightdomain, void AppendSegment(SplineSeg<D> * spline, const int leftdomain, const int rightdomain,
@ -54,7 +54,7 @@ private:
public: public:
~SplineGeometry(); ~SplineGeometry();
int Load (const ARRAY<double> & raw_data, const int startpos = 0); int Load (const Array<double> & raw_data, const int startpos = 0);
void Load (const char * filename); void Load (const char * filename);
void CSGLoad (CSGScanner & scan); void CSGLoad (CSGScanner & scan);
@ -64,11 +64,11 @@ public:
void PartitionBoundary (double h, Mesh & mesh2d); void PartitionBoundary (double h, Mesh & mesh2d);
void GetRawData (ARRAY<double> & raw_data) const; void GetRawData (Array<double> & raw_data) const;
void CopyEdgeMesh (int from, int to, Mesh & mesh2d, Point3dTree & searchtree); void CopyEdgeMesh (int from, int to, Mesh & mesh2d, Point3dTree & searchtree);
const ARRAY<SplineSeg<D>*> & GetSplines () const const Array<SplineSeg<D>*> & GetSplines () const
{ return splines; } { return splines; }
int GetNSplines (void) const { return splines.Size(); } int GetNSplines (void) const { return splines.Size(); }
@ -102,7 +102,7 @@ public:
const double reffac = 1., const double reffac = 1.,
const bool hprefleft = false, const bool hprefright = false, const bool hprefleft = false, const bool hprefright = false,
const int copyfrom = -1); const int copyfrom = -1);
void AppendDiscretePointsSegment (const ARRAY< Point<D> > & points, void AppendDiscretePointsSegment (const Array< Point<D> > & points,
const int leftdomain, const int rightdomain, const int bc = -1, const int leftdomain, const int rightdomain, const int bc = -1,
const double reffac = 1., const double reffac = 1.,
const bool hprefleft = false, const bool hprefright = false, const bool hprefleft = false, const bool hprefright = false,

View File

@ -21,11 +21,11 @@ OLD IMPLEMENTATION, NOT USED ANYMORE!
/// ///
extern void LoadBoundarySplines (const char * filename, extern void LoadBoundarySplines (const char * filename,
ARRAY<GeomPoint2d> & geompoints, Array<GeomPoint2d> & geompoints,
ARRAY<SplineSegment*> & splines, Array<SplineSegment*> & splines,
double & elto0); double & elto0);
/// ///
extern void PartitionBoundary (const ARRAY<SplineSegment*> & splines, extern void PartitionBoundary (const Array<SplineSegment*> & splines,
double h, double elto0, double h, double elto0,
Mesh & mesh2d); Mesh & mesh2d);
@ -34,8 +34,8 @@ class CSGScanner;
class SplineGeometry2d class SplineGeometry2d
{ {
ARRAY<GeomPoint2d> geompoints; Array<GeomPoint2d> geompoints;
ARRAY<SplineSegment*> splines; Array<SplineSegment*> splines;
double elto0; double elto0;
@ -54,7 +54,7 @@ public:
void CopyEdgeMesh (int from, int to, Mesh & mesh2d, Point3dTree & searchtree); void CopyEdgeMesh (int from, int to, Mesh & mesh2d, Point3dTree & searchtree);
const ARRAY<SplineSegment*> & GetSplines () const const Array<SplineSegment*> & GetSplines () const
{ return splines; } { return splines; }
int GetNSplines (void) const { return splines.Size(); } int GetNSplines (void) const { return splines.Size(); }
@ -85,7 +85,7 @@ public:
const double reffac = 1., const double reffac = 1.,
const bool hprefleft = false, const bool hprefright = false, const bool hprefleft = false, const bool hprefright = false,
const int copyfrom = -1); const int copyfrom = -1);
void AppendDiscretePointsSegment (const ARRAY< Point<2> > & points, void AppendDiscretePointsSegment (const Array< Point<2> > & points,
const int leftdomain, const int rightdomain, const int bc = -1, const int leftdomain, const int rightdomain, const int bc = -1,
const double reffac = 1., const double reffac = 1.,
const bool hprefleft = false, const bool hprefright = false, const bool hprefleft = false, const bool hprefright = false,

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.10.1 from Makefile.am. # Makefile.in generated by automake 1.10 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. # 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -51,7 +51,7 @@ libgprim_la_LIBADD =
am_libgprim_la_OBJECTS = adtree.lo geom2d.lo geom3d.lo geomfuncs.lo \ am_libgprim_la_OBJECTS = adtree.lo geom2d.lo geom3d.lo geomfuncs.lo \
geomtest3d.lo transform3d.lo geomtest3d.lo transform3d.lo
libgprim_la_OBJECTS = $(am_libgprim_la_OBJECTS) libgprim_la_OBJECTS = $(am_libgprim_la_OBJECTS)
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@
depcomp = $(SHELL) $(top_srcdir)/depcomp depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles am__depfiles_maybe = depfiles
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
@ -322,8 +322,8 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
mkid -fID $$unique mkid -fID $$unique
tags: TAGS tags: TAGS
@ -335,8 +335,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \ test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
@ -346,12 +346,13 @@ ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP) $(TAGS_FILES) $(LISP)
tags=; \ tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \ test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique $$tags $$unique

View File

@ -206,7 +206,7 @@ namespace netgen
} }
void ADTree :: GetMatch (ARRAY <int> & matches) void ADTree :: GetMatch (Array <int> & matches)
{ {
int nodenr; int nodenr;
@ -398,10 +398,10 @@ namespace netgen
void ADTree3 :: GetIntersecting (const float * bmin, void ADTree3 :: GetIntersecting (const float * bmin,
const float * bmax, const float * bmax,
ARRAY<int> & pis) const Array<int> & pis) const
{ {
static ARRAY<ADTreeNode3*> stack(1000); static Array<ADTreeNode3*> stack(1000);
static ARRAY<int> stackdir(1000); static Array<int> stackdir(1000);
ADTreeNode3 * node; ADTreeNode3 * node;
int dir, stacks; int dir, stacks;
@ -658,10 +658,10 @@ namespace netgen
void ADTree3Div :: GetIntersecting (const float * bmin, void ADTree3Div :: GetIntersecting (const float * bmin,
const float * bmax, const float * bmax,
ARRAY<int> & pis) const Array<int> & pis) const
{ {
static ARRAY<ADTreeNode3Div*> stack(1000); static Array<ADTreeNode3Div*> stack(1000);
static ARRAY<int> stackdir(1000); static Array<int> stackdir(1000);
ADTreeNode3Div * node; ADTreeNode3Div * node;
int dir, i, stacks; int dir, i, stacks;
@ -917,10 +917,10 @@ namespace netgen
void ADTree3M :: GetIntersecting (const float * bmin, void ADTree3M :: GetIntersecting (const float * bmin,
const float * bmax, const float * bmax,
ARRAY<int> & pis) const Array<int> & pis) const
{ {
static ARRAY<ADTreeNode3M*> stack(1000); static Array<ADTreeNode3M*> stack(1000);
static ARRAY<int> stackdir(1000); static Array<int> stackdir(1000);
ADTreeNode3M * node; ADTreeNode3M * node;
int dir, i, stacks; int dir, i, stacks;
@ -1163,9 +1163,9 @@ namespace netgen
void ADTree3F :: GetIntersecting (const float * bmin, void ADTree3F :: GetIntersecting (const float * bmin,
const float * bmax, const float * bmax,
ARRAY<int> & pis) const Array<int> & pis) const
{ {
static ARRAY<ADTreeNode3F*> stack(1000); static Array<ADTreeNode3F*> stack(1000);
ADTreeNode3F * node; ADTreeNode3F * node;
int dir, i, stacks; int dir, i, stacks;
@ -1427,9 +1427,9 @@ namespace netgen
void ADTree3FM :: GetIntersecting (const float * bmin, void ADTree3FM :: GetIntersecting (const float * bmin,
const float * bmax, const float * bmax,
ARRAY<int> & pis) const Array<int> & pis) const
{ {
static ARRAY<ADTreeNode3FM*> stack(1000); static Array<ADTreeNode3FM*> stack(1000);
ADTreeNode3FM * node; ADTreeNode3FM * node;
int dir, i, stacks; int dir, i, stacks;
@ -1700,9 +1700,9 @@ namespace netgen
void ADTree6 :: GetIntersecting (const float * bmin, void ADTree6 :: GetIntersecting (const float * bmin,
const float * bmax, const float * bmax,
ARRAY<int> & pis) const Array<int> & pis) const
{ {
static ARRAY<inttn6> stack(10000); static Array<inttn6> stack(10000);
stack.SetSize (10000); stack.SetSize (10000);
pis.SetSize(0); pis.SetSize(0);
@ -1959,9 +1959,9 @@ namespace netgen
void ADTree6F :: GetIntersecting (const float * bmin, void ADTree6F :: GetIntersecting (const float * bmin,
const float * bmax, const float * bmax,
ARRAY<int> & pis) const Array<int> & pis) const
{ {
static ARRAY<ADTreeNode6F*> stack(1000); static Array<ADTreeNode6F*> stack(1000);
ADTreeNode6F * node; ADTreeNode6F * node;
int dir, i, stacks; int dir, i, stacks;
@ -2093,7 +2093,7 @@ namespace netgen
} }
void Point3dTree :: GetIntersecting (const Point3d & pmin, const Point3d & pmax, void Point3dTree :: GetIntersecting (const Point3d & pmin, const Point3d & pmax,
ARRAY<int> & pis) const Array<int> & pis) const
{ {
float pmi[3], pma[3]; float pmi[3], pma[3];
for (int i = 0; i < 3; i++) for (int i = 0; i < 3; i++)
@ -2145,7 +2145,7 @@ namespace netgen
} }
void Box3dTree ::GetIntersecting (const Point3d & pmin, const Point3d & pmax, void Box3dTree ::GetIntersecting (const Point3d & pmin, const Point3d & pmax,
ARRAY<int> & pis) const Array<int> & pis) const
{ {
float tpmin[6]; float tpmin[6];
float tpmax[6]; float tpmax[6];

View File

@ -49,11 +49,11 @@ class ADTree
int dim; int dim;
ADTreeNode * root; ADTreeNode * root;
float *cmin, *cmax; float *cmin, *cmax;
ARRAY<ADTreeNode*> ela; Array<ADTreeNode*> ela;
const ADTreeCriterion * criterion; const ADTreeCriterion * criterion;
ARRAY<ADTreeNode*> stack; Array<ADTreeNode*> stack;
ARRAY<int> stackdir; Array<int> stackdir;
int stackindex; int stackindex;
public: public:
@ -63,11 +63,11 @@ public:
void Insert (const float * p, int pi); void Insert (const float * p, int pi);
// void GetIntersecting (const float * bmin, const float * bmax, // void GetIntersecting (const float * bmin, const float * bmax,
// ARRAY<int> & pis) const; // Array<int> & pis) const;
void SetCriterion (ADTreeCriterion & acriterion); void SetCriterion (ADTreeCriterion & acriterion);
void Reset (); void Reset ();
int Next (); int Next ();
void GetMatch (ARRAY<int> & matches); void GetMatch (Array<int> & matches);
void DeleteElement (int pi); void DeleteElement (int pi);
@ -103,7 +103,7 @@ class ADTree3
{ {
ADTreeNode3 * root; ADTreeNode3 * root;
float cmin[3], cmax[3]; float cmin[3], cmax[3];
ARRAY<ADTreeNode3*> ela; Array<ADTreeNode3*> ela;
public: public:
ADTree3 (const float * acmin, ADTree3 (const float * acmin,
@ -112,7 +112,7 @@ public:
void Insert (const float * p, int pi); void Insert (const float * p, int pi);
void GetIntersecting (const float * bmin, const float * bmax, void GetIntersecting (const float * bmin, const float * bmax,
ARRAY<int> & pis) const; Array<int> & pis) const;
void DeleteElement (int pi); void DeleteElement (int pi);
@ -153,7 +153,7 @@ class ADTree3Div
{ {
ADTreeNode3Div * root; ADTreeNode3Div * root;
float cmin[3], cmax[3]; float cmin[3], cmax[3];
ARRAY<ADTreeNode3Div*> ela; Array<ADTreeNode3Div*> ela;
public: public:
ADTree3Div (const float * acmin, ADTree3Div (const float * acmin,
@ -162,7 +162,7 @@ public:
void Insert (const float * p, int pi); void Insert (const float * p, int pi);
void GetIntersecting (const float * bmin, const float * bmax, void GetIntersecting (const float * bmin, const float * bmax,
ARRAY<int> & pis) const; Array<int> & pis) const;
void DeleteElement (int pi); void DeleteElement (int pi);
@ -202,7 +202,7 @@ class ADTree3M
{ {
ADTreeNode3M * root; ADTreeNode3M * root;
float cmin[3], cmax[3]; float cmin[3], cmax[3];
ARRAY<ADTreeNode3M*> ela; Array<ADTreeNode3M*> ela;
public: public:
ADTree3M (const float * acmin, ADTree3M (const float * acmin,
@ -211,7 +211,7 @@ public:
void Insert (const float * p, int pi); void Insert (const float * p, int pi);
void GetIntersecting (const float * bmin, const float * bmax, void GetIntersecting (const float * bmin, const float * bmax,
ARRAY<int> & pis) const; Array<int> & pis) const;
void DeleteElement (int pi); void DeleteElement (int pi);
@ -251,7 +251,7 @@ class ADTree3F
{ {
ADTreeNode3F * root; ADTreeNode3F * root;
float cmin[3], cmax[3]; float cmin[3], cmax[3];
ARRAY<ADTreeNode3F*> ela; Array<ADTreeNode3F*> ela;
public: public:
ADTree3F (const float * acmin, ADTree3F (const float * acmin,
@ -260,7 +260,7 @@ public:
void Insert (const float * p, int pi); void Insert (const float * p, int pi);
void GetIntersecting (const float * bmin, const float * bmax, void GetIntersecting (const float * bmin, const float * bmax,
ARRAY<int> & pis) const; Array<int> & pis) const;
void DeleteElement (int pi); void DeleteElement (int pi);
@ -298,7 +298,7 @@ class ADTree3FM
{ {
ADTreeNode3FM * root; ADTreeNode3FM * root;
float cmin[3], cmax[3]; float cmin[3], cmax[3];
ARRAY<ADTreeNode3FM*> ela; Array<ADTreeNode3FM*> ela;
public: public:
ADTree3FM (const float * acmin, ADTree3FM (const float * acmin,
@ -307,7 +307,7 @@ public:
void Insert (const float * p, int pi); void Insert (const float * p, int pi);
void GetIntersecting (const float * bmin, const float * bmax, void GetIntersecting (const float * bmin, const float * bmax,
ARRAY<int> & pis) const; Array<int> & pis) const;
void DeleteElement (int pi); void DeleteElement (int pi);
@ -349,7 +349,7 @@ class ADTree6
{ {
ADTreeNode6 * root; ADTreeNode6 * root;
float cmin[6], cmax[6]; float cmin[6], cmax[6];
ARRAY<ADTreeNode6*> ela; Array<ADTreeNode6*> ela;
public: public:
ADTree6 (const float * acmin, ADTree6 (const float * acmin,
@ -358,7 +358,7 @@ public:
void Insert (const float * p, int pi); void Insert (const float * p, int pi);
void GetIntersecting (const float * bmin, const float * bmax, void GetIntersecting (const float * bmin, const float * bmax,
ARRAY<int> & pis) const; Array<int> & pis) const;
void DeleteElement (int pi); void DeleteElement (int pi);
@ -407,7 +407,7 @@ class ADTree6F
{ {
ADTreeNode6F * root; ADTreeNode6F * root;
float cmin[6], cmax[6]; float cmin[6], cmax[6];
ARRAY<ADTreeNode6F*> ela; Array<ADTreeNode6F*> ela;
public: public:
ADTree6F (const float * acmin, ADTree6F (const float * acmin,
@ -416,7 +416,7 @@ public:
void Insert (const float * p, int pi); void Insert (const float * p, int pi);
void GetIntersecting (const float * bmin, const float * bmax, void GetIntersecting (const float * bmin, const float * bmax,
ARRAY<int> & pis) const; Array<int> & pis) const;
void DeleteElement (int pi); void DeleteElement (int pi);
@ -453,7 +453,7 @@ public:
void DeleteElement (int pi) void DeleteElement (int pi)
{ tree->DeleteElement(pi); } { tree->DeleteElement(pi); }
void GetIntersecting (const Point3d & pmin, const Point3d & pmax, void GetIntersecting (const Point3d & pmin, const Point3d & pmax,
ARRAY<int> & pis) const; Array<int> & pis) const;
const ADTree3 & Tree() const { return *tree; }; const ADTree3 & Tree() const { return *tree; };
}; };
@ -474,7 +474,7 @@ public:
void DeleteElement (int pi) void DeleteElement (int pi)
{ tree->DeleteElement(pi); } { tree->DeleteElement(pi); }
void GetIntersecting (const Point3d & pmin, const Point3d & pmax, void GetIntersecting (const Point3d & pmin, const Point3d & pmax,
ARRAY<int> & pis) const; Array<int> & pis) const;
const ADTree6 & Tree() const { return *tree; }; const ADTree6 & Tree() const { return *tree; };
}; };

View File

@ -612,7 +612,7 @@ public:
class Polygon2d class Polygon2d
{ {
protected: protected:
ARRAY<Point2d> points; Array<Point2d> points;
public: public:
Polygon2d (); Polygon2d ();

View File

@ -698,8 +698,8 @@ void referencetransform :: ToPlain (const Point3d & p, Point3d & pp) const
pp.Z() = (ez_h * v); pp.Z() = (ez_h * v);
} }
void referencetransform :: ToPlain (const ARRAY<Point3d> & p, void referencetransform :: ToPlain (const Array<Point3d> & p,
ARRAY<Point3d> & pp) const Array<Point3d> & pp) const
{ {
Vec3d v; Vec3d v;
int i; int i;

View File

@ -723,7 +723,7 @@ public:
/// ///
void ToPlain (const Point3d & p, Point3d & pp) const; void ToPlain (const Point3d & p, Point3d & pp) const;
/// ///
void ToPlain (const ARRAY<Point3d> & p, ARRAY<Point3d> & pp) const; void ToPlain (const Array<Point3d> & p, Array<Point3d> & pp) const;
/// ///
void FromPlain (const Point3d & pp, Point3d & p) const; void FromPlain (const Point3d & pp, Point3d & p) const;
}; };

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.10.1 from Makefile.am. # Makefile.in generated by automake 1.10 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. # 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -284,8 +284,8 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
mkid -fID $$unique mkid -fID $$unique
tags: TAGS tags: TAGS
@ -297,8 +297,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \ test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
@ -308,12 +308,13 @@ ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP) $(TAGS_FILES) $(LISP)
tags=; \ tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \ test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique $$tags $$unique

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.10.1 from Makefile.am. # Makefile.in generated by automake 1.10 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. # 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -54,7 +54,7 @@ am_libinterface_la_OBJECTS = read_fnf_mesh.lo readtetmesh.lo \
writejcm.lo writepermas.lo writetecplot.lo writetet.lo \ writejcm.lo writepermas.lo writetecplot.lo writetet.lo \
writetochnog.lo writeuser.lo wuchemnitz.lo writetochnog.lo writeuser.lo wuchemnitz.lo
libinterface_la_OBJECTS = $(am_libinterface_la_OBJECTS) libinterface_la_OBJECTS = $(am_libinterface_la_OBJECTS)
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@
depcomp = $(SHELL) $(top_srcdir)/depcomp depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles am__depfiles_maybe = depfiles
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
@ -340,8 +340,8 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
mkid -fID $$unique mkid -fID $$unique
tags: TAGS tags: TAGS
@ -353,8 +353,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \ test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
@ -364,12 +364,13 @@ ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP) $(TAGS_FILES) $(LISP)
tags=; \ tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \ test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique $$tags $$unique

View File

@ -53,7 +53,7 @@ namespace netgen
string name; string name;
string placement; string placement;
string valuetype; string valuetype;
ARRAY<double> places; Array<double> places;
}; };
@ -173,7 +173,7 @@ namespace netgen
else if (token == "MATERIALS") else if (token == "MATERIALS")
{ {
ARRAY<double> young_modulus, poisson_ratio, mass_density; Array<double> young_modulus, poisson_ratio, mass_density;
while (1) while (1)
{ {
@ -246,7 +246,7 @@ namespace netgen
string propid; string propid;
sbuf >> elnr >> def >> ch; sbuf >> elnr >> def >> ch;
sbuf >> typid >> matid >> propid; sbuf >> typid >> matid >> propid;
ARRAY<int> pnums; Array<int> pnums;
while (1) while (1)
{ {
int pn; int pn;
@ -287,7 +287,7 @@ namespace netgen
sbuf >> nr >> kw >> ch; sbuf >> nr >> kw >> ch;
if (kw == "NODES") if (kw == "NODES")
{ {
ARRAY<int> enums; Array<int> enums;
while (1) while (1)
{ {
int en; int en;
@ -311,7 +311,7 @@ namespace netgen
sbuf >> nr >> kw >> ch; sbuf >> nr >> kw >> ch;
if (kw == "FACES") if (kw == "FACES")
{ {
ARRAY<int> fnums; Array<int> fnums;
while (1) while (1)
{ {
int fn; int fn;
@ -354,7 +354,7 @@ namespace netgen
else if (token == "LOADS") else if (token == "LOADS")
{ {
ARRAY<LoadType*> loadtypes; Array<LoadType*> loadtypes;
while (1) while (1)
{ {

View File

@ -49,17 +49,17 @@ namespace netgen
Point3d p; Point3d p;
int numObj3D,numObj2D,numObj1D,numObj0D; int numObj3D,numObj2D,numObj1D,numObj0D;
bool nullstarted; bool nullstarted;
ARRAY<int> eldom; Array<int> eldom;
int minId3D,minId2D; int minId3D,minId2D;
int maxId3D(-1), maxId2D(-1), maxId1D(-1), maxId0D(-1); int maxId3D(-1), maxId2D(-1), maxId1D(-1), maxId0D(-1);
ARRAY<ARRAY<int> *> segmentdata; Array<Array<int> *> segmentdata;
ARRAY<Element2d* > tris; Array<Element2d* > tris;
ARRAY<int> userdata_int; // just save data for 1:1 output Array<int> userdata_int; // just save data for 1:1 output
ARRAY<double> userdata_double; Array<double> userdata_double;
ARRAY<int> point_pids; Array<int> point_pids;
ARRAY<int> tetfacedata; Array<int> tetfacedata;
ARRAY<int> uid_to_group_3D, uid_to_group_2D, uid_to_group_1D, uid_to_group_0D; Array<int> uid_to_group_3D, uid_to_group_2D, uid_to_group_1D, uid_to_group_0D;
while(!done) while(!done)
{ {
@ -226,7 +226,7 @@ namespace netgen
segmentdata.SetSize(nedges); segmentdata.SetSize(nedges);
for(int i=0; i<nedges; i++) for(int i=0; i<nedges; i++)
{ {
segmentdata[i] = new ARRAY<int>(7); segmentdata[i] = new Array<int>(7);
*segmentdata[i] = -1; *segmentdata[i] = -1;
in >> dummyint; in >> dummyint;
in >> (*segmentdata[i])[0] >> (*segmentdata[i])[1]; in >> (*segmentdata[i])[0] >> (*segmentdata[i])[1];
@ -350,8 +350,8 @@ namespace netgen
for(int i=0; i<nperiodicmasterfaces; i++) for(int i=0; i<nperiodicmasterfaces; i++)
{ {
int tri1,tri2,transl; int tri1,tri2,transl;
ARRAY<PointIndex> nodes1(3),nodes2(3); Array<PointIndex> nodes1(3),nodes2(3);
ARRAY<double> sortval1(3),sortval2(3); Array<double> sortval1(3),sortval2(3);
in >> tri1 >> tri2 >> transl; in >> tri1 >> tri2 >> transl;
if(transl > maxtransl) if(transl > maxtransl)
@ -455,7 +455,7 @@ namespace netgen
cout << endl; cout << endl;
// ARRAY<int> indextodescriptor(maxId2D+1); // Array<int> indextodescriptor(maxId2D+1);
// for(int i=1; i<=mesh.GetNFD(); i++) // for(int i=1; i<=mesh.GetNFD(); i++)
// indextodescriptor[mesh.GetFaceDescriptor(i).SurfNr()] = i; // indextodescriptor[mesh.GetFaceDescriptor(i).SurfNr()] = i;
@ -538,7 +538,7 @@ namespace netgen
case 27: case 27:
// Object2D GroupID, #Faces <immediately followed by> FaceID List // Object2D GroupID, #Faces <immediately followed by> FaceID List
{ {
ARRAY<int> ports; Array<int> ports;
//int totnum = 0; //int totnum = 0;
uid_to_group_2D.SetSize(maxId2D+1); uid_to_group_2D.SetSize(maxId2D+1);
uid_to_group_2D = -1; uid_to_group_2D = -1;
@ -665,7 +665,7 @@ namespace netgen
mesh.SetUserData("TETmesh:uid_to_group_0D",uid_to_group_0D); mesh.SetUserData("TETmesh:uid_to_group_0D",uid_to_group_0D);
ARRAY<SurfaceElementIndex> surfindices(tris.Size()); Array<SurfaceElementIndex> surfindices(tris.Size());
surfindices = -1; surfindices = -1;
for(int i=0; i<tris.Size(); i++) for(int i=0; i<tris.Size(); i++)
@ -740,7 +740,7 @@ namespace netgen
} }
// ARRAY<int> indextodescriptor(maxId2D+1); // Array<int> indextodescriptor(maxId2D+1);
// for(int i=1; i<=mesh.GetNFD(); i++) // for(int i=1; i<=mesh.GetNFD(); i++)
// indextodescriptor[mesh.GetFaceDescriptor(i).SurfNr()] = i; // indextodescriptor[mesh.GetFaceDescriptor(i).SurfNr()] = i;

View File

@ -305,7 +305,7 @@ namespace netgen
int num, bcprop; int num, bcprop;
ifstream inpkt (pktfile.c_str()); ifstream inpkt (pktfile.c_str());
inpkt >> np; inpkt >> np;
ARRAY<double> values(np); Array<double> values(np);
for (i = 1; i <= np; i++) for (i = 1; i <= np; i++)
{ {
Point3d p(0,0,0); Point3d p(0,0,0);

View File

@ -139,7 +139,7 @@ void WriteAbaqusFormat (const Mesh & mesh,
int masternode(0); int masternode(0);
ARRAY<INDEX_2> pairs; Array<INDEX_2> pairs;
BitArray master(np), help(np); BitArray master(np), help(np);
master.Set(); master.Set();
for (i = 1; i <= 3; i++) for (i = 1; i <= 3; i++)
@ -158,7 +158,7 @@ void WriteAbaqusFormat (const Mesh & mesh,
cout << "masternode = " << masternode << " = " cout << "masternode = " << masternode << " = "
<< mesh.Point(masternode) << endl; << mesh.Point(masternode) << endl;
ARRAY<int> slaves(3); Array<int> slaves(3);
for (i = 1; i <= 3; i++) for (i = 1; i <= 3; i++)
{ {
mesh.GetIdentifications().GetPairs (i, pairs); mesh.GetIdentifications().GetPairs (i, pairs);

View File

@ -37,8 +37,8 @@ void WriteDiffPackFormat (const Mesh & mesh,
int np = mesh.GetNP(); int np = mesh.GetNP();
int ne = mesh.GetNE(); int ne = mesh.GetNE();
int nse = mesh.GetNSE(); int nse = mesh.GetNSE();
ARRAY <int> BIname; Array <int> BIname;
ARRAY <int> BCsinpoint; Array <int> BCsinpoint;
int i, j, k, l; int i, j, k, l;
@ -186,8 +186,8 @@ void WriteDiffPackFormat (const Mesh & mesh,
int np = mesh.GetNP(); int np = mesh.GetNP();
//int ne = mesh.GetNE(); //int ne = mesh.GetNE();
int nse = mesh.GetNSE(); int nse = mesh.GetNSE();
ARRAY <int> BIname; Array <int> BIname;
ARRAY <int> BCsinpoint; Array <int> BCsinpoint;
int i, j, k, l; int i, j, k, l;

View File

@ -65,9 +65,9 @@ void WriteFluentFormat (const Mesh & mesh,
Element2d face, face2; Element2d face, face2;
int i2, j2; int i2, j2;
ARRAY<INDEX_3> surfaceelp; Array<INDEX_3> surfaceelp;
ARRAY<int> surfaceeli; Array<int> surfaceeli;
ARRAY<int> locels; Array<int> locels;
//no cells=no tets //no cells=no tets
//no faces=2*tets //no faces=2*tets

View File

@ -33,7 +33,7 @@ void WriteJCMFormat (const Mesh & mesh,
int np = mesh.GetNP(); int np = mesh.GetNP();
// Identic points // Identic points
ARRAY<int,1> identmap1, identmap2, identmap3; Array<int,1> identmap1, identmap2, identmap3;
mesh.GetIdentifications().GetMap(1, identmap1); mesh.GetIdentifications().GetMap(1, identmap1);
mesh.GetIdentifications().GetMap(2, identmap2); mesh.GetIdentifications().GetMap(2, identmap2);
mesh.GetIdentifications().GetMap(3, identmap3); mesh.GetIdentifications().GetMap(3, identmap3);
@ -95,7 +95,7 @@ void WriteJCMFormat (const Mesh & mesh,
int nbquad = 0; int nbquad = 0;
// array with 1 if point on any tetra, 0 else // array with 1 if point on any tetra, 0 else
// this is needed in order to arrange the prism points in the right order // this is needed in order to arrange the prism points in the right order
ARRAY<int,1> pointsOnTetras; Array<int,1> pointsOnTetras;
pointsOnTetras.SetSize (mesh.GetNP()); pointsOnTetras.SetSize (mesh.GetNP());
pointsOnTetras = 0; pointsOnTetras = 0;
for (i = 1; i <= ne; i++) for (i = 1; i <= ne; i++)

View File

@ -27,7 +27,7 @@ void WriteTecPlotFormat (const Mesh & mesh,
INDEX ne = mesh.GetNE(); INDEX ne = mesh.GetNE();
INDEX nse = mesh.GetNSE(); INDEX nse = mesh.GetNSE();
ARRAY<int> sn(np); Array<int> sn(np);
ofstream outfile(filename.c_str()); ofstream outfile(filename.c_str());
outfile << "TITLE=\" " << filename << "\"" << endl; outfile << "TITLE=\" " << filename << "\"" << endl;

View File

@ -23,16 +23,16 @@ namespace netgen
cout << "starting .tet export to file " << filename << endl; cout << "starting .tet export to file " << filename << endl;
ARRAY<int> point_ids,edge_ids,face_ids; Array<int> point_ids,edge_ids,face_ids;
ARRAY<int> elnum(mesh.GetNE()); Array<int> elnum(mesh.GetNE());
elnum = -1; elnum = -1;
ARRAY<int> userdata_int; Array<int> userdata_int;
ARRAY<double> userdata_double; Array<double> userdata_double;
ARRAY<int> ports; Array<int> ports;
ARRAY<int> uid_to_group_3D, uid_to_group_2D, uid_to_group_1D, uid_to_group_0D; Array<int> uid_to_group_3D, uid_to_group_2D, uid_to_group_1D, uid_to_group_0D;
int pos_int = 0; int pos_int = 0;
int pos_double = 0; int pos_double = 0;
@ -98,9 +98,9 @@ namespace netgen
INDEX_2_CLOSED_HASHTABLE<int> edgenumbers(6*mesh.GetNE()+3*mesh.GetNSE());; INDEX_2_CLOSED_HASHTABLE<int> edgenumbers(6*mesh.GetNE()+3*mesh.GetNSE());;
INDEX_3_CLOSED_HASHTABLE<int> facenumbers(4*mesh.GetNE()+mesh.GetNSE()); INDEX_3_CLOSED_HASHTABLE<int> facenumbers(4*mesh.GetNE()+mesh.GetNSE());
ARRAY<INDEX_2> edge2node; Array<INDEX_2> edge2node;
ARRAY<INDEX_3> face2edge; Array<INDEX_3> face2edge;
ARRAY<INDEX_4> element2face; Array<INDEX_4> element2face;
int numelems(0),numfaces(0),numedges(0),numnodes(0); int numelems(0),numfaces(0),numedges(0),numnodes(0);
@ -285,7 +285,7 @@ namespace netgen
int numObj0D,numObj1D,numObj2D,numObj3D; int numObj0D,numObj1D,numObj2D,numObj3D;
int numports = ports.Size(); int numports = ports.Size();
ARRAY<int> nodenum(point_ids.Size()+1); Array<int> nodenum(point_ids.Size()+1);
nodenum = -1; nodenum = -1;
@ -367,18 +367,18 @@ namespace netgen
uidpid = "UID"; uidpid = "UID";
ARRAY< ARRAY<int,PointIndex::BASE>* > idmaps; Array< Array<int,PointIndex::BASE>* > idmaps;
for(int i=1; i<=mesh.GetIdentifications().GetMaxNr(); i++) for(int i=1; i<=mesh.GetIdentifications().GetMaxNr(); i++)
{ {
if(mesh.GetIdentifications().GetType(i) == Identifications::PERIODIC) if(mesh.GetIdentifications().GetType(i) == Identifications::PERIODIC)
{ {
idmaps.Append(new ARRAY<int,PointIndex::BASE>); idmaps.Append(new Array<int,PointIndex::BASE>);
mesh.GetIdentifications().GetMap(i,*idmaps.Last(),true); mesh.GetIdentifications().GetMap(i,*idmaps.Last(),true);
} }
} }
ARRAY<int> id_num,id_type; Array<int> id_num,id_type;
ARRAY< ARRAY<int> *> id_groups; Array< Array<int> *> id_groups;
// sst 2008-03-12: Write problem class... // sst 2008-03-12: Write problem class...
@ -449,7 +449,7 @@ namespace netgen
if(nodenum[i] == -1) if(nodenum[i] == -1)
continue; continue;
ARRAY<int> group; Array<int> group;
group.Append(i); group.Append(i);
for(int j=0; j<idmaps.Size(); j++) for(int j=0; j<idmaps.Size(); j++)
{ {
@ -466,7 +466,7 @@ namespace netgen
} }
if(group.Size() > 1) if(group.Size() > 1)
{ {
id_groups.Append(new ARRAY<int>(group)); id_groups.Append(new Array<int>(group));
if(group.Size() == 2) if(group.Size() == 2)
{ {
id_type[i] = 1; id_type[i] = 1;
@ -590,18 +590,18 @@ namespace netgen
ARRAY< ARRAY<int>* > vertex_to_edge(mesh.GetNP()+1); Array< Array<int>* > vertex_to_edge(mesh.GetNP()+1);
for(int i=0; i<=mesh.GetNP(); i++) for(int i=0; i<=mesh.GetNP(); i++)
vertex_to_edge[i] = new ARRAY<int>; vertex_to_edge[i] = new Array<int>;
ARRAY< ARRAY<int,PointIndex::BASE>* > idmaps_edge(idmaps.Size()); Array< Array<int,PointIndex::BASE>* > idmaps_edge(idmaps.Size());
for(int i=0; i<idmaps_edge.Size(); i++) for(int i=0; i<idmaps_edge.Size(); i++)
{ {
idmaps_edge[i] = new ARRAY<int,PointIndex::BASE>(numedges); idmaps_edge[i] = new Array<int,PointIndex::BASE>(numedges);
(*idmaps_edge[i]) = 0; (*idmaps_edge[i]) = 0;
} }
ARRAY<int> possible; Array<int> possible;
for(int i=0; i<edge2node.Size(); i++) for(int i=0; i<edge2node.Size(); i++)
{ {
const INDEX_2 & v = edge2node[i]; const INDEX_2 & v = edge2node[i];
@ -649,7 +649,7 @@ namespace netgen
continue; continue;
ARRAY<int> group; Array<int> group;
group.Append(i); group.Append(i);
for(int j=0; j<idmaps_edge.Size(); j++) for(int j=0; j<idmaps_edge.Size(); j++)
{ {
@ -667,7 +667,7 @@ namespace netgen
if(group.Size() > 1) if(group.Size() > 1)
{ {
id_num[i] = 1; id_num[i] = 1;
id_groups.Append(new ARRAY<int>(group)); id_groups.Append(new Array<int>(group));
if(group.Size() == 2) if(group.Size() == 2)
{ {
id_type[i] = 1; id_type[i] = 1;
@ -701,7 +701,7 @@ namespace netgen
continue; continue;
ARRAY<int> group; Array<int> group;
group.Append(i); group.Append(i);
for(int j=0; j<idmaps_edge.Size(); j++) for(int j=0; j<idmaps_edge.Size(); j++)
{ {
@ -719,7 +719,7 @@ namespace netgen
if(group.Size() > 1) if(group.Size() > 1)
{ {
id_num[i] = 1; id_num[i] = 1;
id_groups.Append(new ARRAY<int>(group)); id_groups.Append(new Array<int>(group));
if(group.Size() == 2) if(group.Size() == 2)
{ {
id_type[i] = 1; id_type[i] = 1;
@ -805,9 +805,9 @@ namespace netgen
ARRAY< ARRAY<int>* > edge_to_face(numedges+1); Array< Array<int>* > edge_to_face(numedges+1);
for(int i=0; i<edge_to_face.Size(); i++) for(int i=0; i<edge_to_face.Size(); i++)
edge_to_face[i] = new ARRAY<int>; edge_to_face[i] = new Array<int>;
for(int i=0; i<idmaps.Size(); i++) for(int i=0; i<idmaps.Size(); i++)
@ -864,7 +864,7 @@ namespace netgen
if(id_num[i] != 0) if(id_num[i] != 0)
continue; continue;
ARRAY<int> group; Array<int> group;
group.Append(i); group.Append(i);
for(int j=0; j<idmaps.Size(); j++) for(int j=0; j<idmaps.Size(); j++)
{ {
@ -882,7 +882,7 @@ namespace netgen
if(group.Size() > 1) if(group.Size() > 1)
{ {
id_num[i] = -1; id_num[i] = -1;
id_groups.Append(new ARRAY<int>(group)); id_groups.Append(new Array<int>(group));
if(group.Size() == 2) if(group.Size() == 2)
n2++; n2++;
else else
@ -981,7 +981,7 @@ namespace netgen
<< endl; << endl;
ARRAY< ARRAY<int> * > groups; Array< Array<int> * > groups;
int maxg = -1; int maxg = -1;
for(int i = 0; i<uid_to_group_3D.Size(); i++) for(int i = 0; i<uid_to_group_3D.Size(); i++)
@ -999,7 +999,7 @@ namespace netgen
groups.SetSize(maxg+1); groups.SetSize(maxg+1);
for(int i=0; i<groups.Size(); i++) for(int i=0; i<groups.Size(); i++)
groups[i] = new ARRAY<int>; groups[i] = new Array<int>;
for(ElementIndex i=0; i<mesh.GetNE(); i++) for(ElementIndex i=0; i<mesh.GetNE(); i++)
if(uid_to_group_3D[mesh[i].GetIndex()] >= 0) if(uid_to_group_3D[mesh[i].GetIndex()] >= 0)

View File

@ -15,7 +15,7 @@ namespace netgen
#include "writeuser.hpp" #include "writeuser.hpp"
void RegisterUserFormats (ARRAY<const char*> & names) void RegisterUserFormats (Array<const char*> & names)
{ {
const char *types[] = const char *types[] =
{ {
@ -631,7 +631,7 @@ void WriteEdgeElementFormat (const Mesh & mesh,
int inverttets = mparam.inverttets; int inverttets = mparam.inverttets;
int invertsurf = mparam.inverttrigs; int invertsurf = mparam.inverttrigs;
ARRAY<int> edges; Array<int> edges;
ofstream outfile (filename.c_str()); ofstream outfile (filename.c_str());
@ -788,7 +788,7 @@ void WriteFile (int typ,
INDEX_2_HASHTABLE<int> edgeht(mesh.GetNP()); INDEX_2_HASHTABLE<int> edgeht(mesh.GetNP());
// list of edges // list of edges
ARRAY<INDEX_2> edgelist; Array<INDEX_2> edgelist;
// edge (point) on boundary ? // edge (point) on boundary ?
BitArray bedge, bpoint(mesh.GetNP()); BitArray bedge, bpoint(mesh.GetNP());

View File

@ -127,7 +127,7 @@ void WriteDolfinFormat (const Mesh & mesh,
const string & filename); const string & filename);
extern void RegisterUserFormats (ARRAY<const char*> & names); extern void RegisterUserFormats (Array<const char*> & names);
extern bool WriteUserFormat (const string & format, extern bool WriteUserFormat (const string & format,
const Mesh & mesh, const Mesh & mesh,

View File

@ -50,12 +50,12 @@ class EDGE
int p1, p2; int p1, p2;
}; };
static ARRAY<POINT3D> points; static Array<POINT3D> points;
static ARRAY<VOLELEMENT> volelements; static Array<VOLELEMENT> volelements;
static ARRAY<SURFELEMENT> surfelements; static Array<SURFELEMENT> surfelements;
static ARRAY<FACE> faces; static Array<FACE> faces;
static ARRAY<EDGE> edges; static Array<EDGE> edges;
void ReadFile (char * filename) void ReadFile (char * filename)

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.10.1 from Makefile.am. # Makefile.in generated by automake 1.10 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. # 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -53,7 +53,7 @@ libla_la_OBJECTS = $(am_libla_la_OBJECTS)
libla_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \ libla_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
$(CXXFLAGS) $(libla_la_LDFLAGS) $(LDFLAGS) -o $@ $(CXXFLAGS) $(libla_la_LDFLAGS) $(LDFLAGS) -o $@
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@
depcomp = $(SHELL) $(top_srcdir)/depcomp depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles am__depfiles_maybe = depfiles
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
@ -320,8 +320,8 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
mkid -fID $$unique mkid -fID $$unique
tags: TAGS tags: TAGS
@ -333,8 +333,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \ test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
@ -344,12 +344,13 @@ ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP) $(TAGS_FILES) $(LISP)
tags=; \ tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \ test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique $$tags $$unique

View File

@ -456,7 +456,7 @@ void CalcInverse (const DenseMatrix & m1, DenseMatrix & m2)
double max, hr; double max, hr;
ARRAY<int> p(n); // pivot-permutation Array<int> p(n); // pivot-permutation
Vector hv(n); Vector hv(n);
@ -1213,7 +1213,7 @@ double DenseMatrix :: EvaluateBilinearform (const Vector & hx) const
} }
void DenseMatrix :: MultElementMatrix (const ARRAY<int> & pnum, void DenseMatrix :: MultElementMatrix (const Array<int> & pnum,
const Vector & hx, Vector & hy) const Vector & hx, Vector & hy)
{ {
int i, j; int i, j;
@ -1239,7 +1239,7 @@ void DenseMatrix :: MultElementMatrix (const ARRAY<int> & pnum,
} }
void DenseMatrix :: MultTransElementMatrix (const ARRAY<int> & pnum, void DenseMatrix :: MultTransElementMatrix (const Array<int> & pnum,
const Vector & hx, Vector & hy) const Vector & hx, Vector & hy)
{ {
int i, j; int i, j;

View File

@ -81,7 +81,7 @@ BaseVector :: Copy () const
void BaseVector :: GetElementVector (const ARRAY<INDEX> & pnum, void BaseVector :: GetElementVector (const Array<INDEX> & pnum,
BaseVector & elvec) const BaseVector & elvec) const
{ {
int i; int i;
@ -89,7 +89,7 @@ void BaseVector :: GetElementVector (const ARRAY<INDEX> & pnum,
elvec(i) = (*this)(pnum.Get(i)); elvec(i) = (*this)(pnum.Get(i));
} }
void BaseVector :: SetElementVector (const ARRAY<INDEX> & pnum, void BaseVector :: SetElementVector (const Array<INDEX> & pnum,
const BaseVector & elvec) const BaseVector & elvec)
{ {
int i; int i;
@ -98,7 +98,7 @@ void BaseVector :: SetElementVector (const ARRAY<INDEX> & pnum,
} }
void BaseVector :: AddElementVector (const ARRAY<INDEX> & pnum, void BaseVector :: AddElementVector (const Array<INDEX> & pnum,
const BaseVector & elvec) const BaseVector & elvec)
{ {
int i; int i;
@ -176,8 +176,8 @@ double Vector :: shit = 0;
class clVecpool class clVecpool
{ {
public: public:
ARRAY<double *> vecs; Array<double *> vecs;
ARRAY<INDEX> veclens; Array<INDEX> veclens;
~clVecpool(); ~clVecpool();
}; };
@ -755,7 +755,7 @@ void Vector :: Swap (BaseVector & v2)
void Vector :: GetElementVector (const ARRAY<INDEX> & pnum, void Vector :: GetElementVector (const Array<INDEX> & pnum,
BaseVector & elvec) const BaseVector & elvec) const
{ {
int i; int i;
@ -764,7 +764,7 @@ void Vector :: GetElementVector (const ARRAY<INDEX> & pnum,
helvec.Elem(i) = Get(pnum.Get(i)); helvec.Elem(i) = Get(pnum.Get(i));
} }
void Vector :: SetElementVector (const ARRAY<INDEX> & pnum, void Vector :: SetElementVector (const Array<INDEX> & pnum,
const BaseVector & elvec) const BaseVector & elvec)
{ {
int i; int i;
@ -774,7 +774,7 @@ void Vector :: SetElementVector (const ARRAY<INDEX> & pnum,
} }
void Vector :: AddElementVector (const ARRAY<INDEX> & pnum, void Vector :: AddElementVector (const Array<INDEX> & pnum,
const BaseVector & elvec) const BaseVector & elvec)
{ {
int i; int i;

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.10.1 from Makefile.am. # Makefile.in generated by automake 1.10 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. # 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -59,7 +59,7 @@ am_libmesh_la_OBJECTS = adfront2.lo adfront3.lo bisect.lo \
smoothing2.lo smoothing3.lo specials.lo tetrarls.lo \ smoothing2.lo smoothing3.lo specials.lo tetrarls.lo \
topology.lo triarls.lo validate.lo zrefine.lo topology.lo triarls.lo validate.lo zrefine.lo
libmesh_la_OBJECTS = $(am_libmesh_la_OBJECTS) libmesh_la_OBJECTS = $(am_libmesh_la_OBJECTS)
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@
depcomp = $(SHELL) $(top_srcdir)/depcomp depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles am__depfiles_maybe = depfiles
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
@ -383,8 +383,8 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
mkid -fID $$unique mkid -fID $$unique
tags: TAGS tags: TAGS
@ -396,8 +396,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \ test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
@ -407,12 +407,13 @@ ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP) $(TAGS_FILES) $(LISP)
tags=; \ tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \ unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \ done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \ $(AWK) ' { files[$$0] = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \ END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \ test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique $$tags $$unique

View File

@ -62,7 +62,7 @@ namespace netgen
} }
/* /*
void AdFront2 :: GetPoints (ARRAY<Point<3> > & apoints) const void AdFront2 :: GetPoints (Array<Point<3> > & apoints) const
{ {
apoints.Append (points); apoints.Append (points);
// for (int i = 0; i < points.Size(); i++) // for (int i = 0; i < points.Size(); i++)
@ -280,11 +280,11 @@ namespace netgen
int AdFront2 :: GetLocals (int baselineindex, int AdFront2 :: GetLocals (int baselineindex,
ARRAY<Point3d> & locpoints, Array<Point3d> & locpoints,
ARRAY<MultiPointGeomInfo> & pgeominfo, Array<MultiPointGeomInfo> & pgeominfo,
ARRAY<INDEX_2> & loclines, // local index Array<INDEX_2> & loclines, // local index
ARRAY<INDEX> & pindex, Array<INDEX> & pindex,
ARRAY<INDEX> & lindex, Array<INDEX> & lindex,
double xh) double xh)
{ {
// baselineindex += 1-lines.Begin(); // baselineindex += 1-lines.Begin();
@ -298,9 +298,9 @@ namespace netgen
loclines.Append(lines[baselineindex].L()); loclines.Append(lines[baselineindex].L());
lindex.Append(baselineindex); // +1-lines.Begin()); lindex.Append(baselineindex); // +1-lines.Begin());
static ARRAY<int> nearlines; static Array<int> nearlines;
nearlines.SetSize(0); nearlines.SetSize(0);
static ARRAY<int> nearpoints; static Array<int> nearpoints;
nearpoints.SetSize(0); nearpoints.SetSize(0);
linesearchtree.GetIntersecting (p0 - Vec3d(xh, xh, xh), linesearchtree.GetIntersecting (p0 - Vec3d(xh, xh, xh),
@ -322,7 +322,7 @@ namespace netgen
} }
} }
static ARRAY<int> invpindex; static Array<int> invpindex;
invpindex.SetSize (points.Size()); invpindex.SetSize (points.Size());
// invpindex = -1; // invpindex = -1;
for (int i = 0; i < nearpoints.Size(); i++) for (int i = 0; i < nearpoints.Size(); i++)

View File

@ -165,16 +165,16 @@ class AdFront2
/// ///
ARRAY<FrontPoint2> points; /// front points Array<FrontPoint2> points; /// front points
ARRAY<FrontLine> lines; /// front lines Array<FrontLine> lines; /// front lines
Box3d boundingbox; Box3d boundingbox;
Box3dTree linesearchtree; /// search tree for lines Box3dTree linesearchtree; /// search tree for lines
Point3dTree pointsearchtree; /// search tree for points Point3dTree pointsearchtree; /// search tree for points
Point3dTree cpointsearchtree; /// search tree for cone points (not used ???) Point3dTree cpointsearchtree; /// search tree for cone points (not used ???)
ARRAY<int> delpointl; /// list of deleted front points Array<int> delpointl; /// list of deleted front points
ARRAY<int> dellinel; /// list of deleted front lines Array<int> dellinel; /// list of deleted front lines
int nfl; /// number of front lines; int nfl; /// number of front lines;
INDEX_2_HASHTABLE<int> * allflines; /// all front lines ever have been INDEX_2_HASHTABLE<int> * allflines; /// all front lines ever have been
@ -191,7 +191,7 @@ public:
~AdFront2 (); ~AdFront2 ();
/// ///
// void GetPoints (ARRAY<Point<3> > & apoints) const; // void GetPoints (Array<Point<3> > & apoints) const;
/// ///
void Print (ostream & ost) const; void Print (ostream & ost) const;
@ -210,11 +210,11 @@ public:
/// ///
int GetLocals (int baseline, int GetLocals (int baseline,
ARRAY<Point3d> & locpoints, Array<Point3d> & locpoints,
ARRAY<MultiPointGeomInfo> & pgeominfo, Array<MultiPointGeomInfo> & pgeominfo,
ARRAY<INDEX_2> & loclines, // local index Array<INDEX_2> & loclines, // local index
ARRAY<int> & pindex, Array<int> & pindex,
ARRAY<int> & lindex, Array<int> & lindex,
double xh); double xh);
/// ///

View File

@ -84,7 +84,7 @@ AdFront3 :: ~AdFront3 ()
delete connectedpairs; delete connectedpairs;
} }
void AdFront3 :: GetPoints (ARRAY<Point<3> > & apoints) const void AdFront3 :: GetPoints (Array<Point<3> > & apoints) const
{ {
for (PointIndex pi = PointIndex::BASE; for (PointIndex pi = PointIndex::BASE;
pi < points.Size()+PointIndex::BASE; pi++) pi < points.Size()+PointIndex::BASE; pi++)
@ -266,7 +266,7 @@ void AdFront3 :: CreateTrees ()
void AdFront3 :: GetIntersectingFaces (const Point<3> & pmin, const Point<3> & pmax, void AdFront3 :: GetIntersectingFaces (const Point<3> & pmin, const Point<3> & pmax,
ARRAY<int> & ifaces) const Array<int> & ifaces) const
{ {
facetree -> GetIntersecting (pmin, pmax, ifaces); facetree -> GetIntersecting (pmin, pmax, ifaces);
} }
@ -357,7 +357,7 @@ void AdFront3 :: RebuildInternalTables ()
if (usecl.Test(i)) if (usecl.Test(i))
cntcl++; cntcl++;
ARRAY<double, PointIndex::BASE> clvol (np); Array<double, PointIndex::BASE> clvol (np);
clvol = 0.0; clvol = 0.0;
for (int i = 1; i <= faces.Size(); i++) for (int i = 1; i <= faces.Size(); i++)
@ -486,10 +486,10 @@ int AdFront3 :: SelectBaseElement ()
int AdFront3 :: GetLocals (int fstind, int AdFront3 :: GetLocals (int fstind,
ARRAY<Point3d > & locpoints, Array<Point3d > & locpoints,
ARRAY<MiniElement2d> & locfaces, // local index Array<MiniElement2d> & locfaces, // local index
ARRAY<PointIndex> & pindex, Array<PointIndex> & pindex,
ARRAY<INDEX> & findex, Array<INDEX> & findex,
INDEX_2_HASHTABLE<int> & getconnectedpairs, INDEX_2_HASHTABLE<int> & getconnectedpairs,
float xh, float xh,
float relh, float relh,
@ -511,11 +511,11 @@ int AdFront3 :: GetLocals (int fstind,
INDEX pi; INDEX pi;
Point3d midp, p0; Point3d midp, p0;
static ARRAY<int, PointIndex::BASE> invpindex; static Array<int, PointIndex::BASE> invpindex;
static ARRAY<MiniElement2d> locfaces2; //all local faces in radius xh static Array<MiniElement2d> locfaces2; //all local faces in radius xh
static ARRAY<int> locfaces3; // all faces in outer radius relh static Array<int> locfaces3; // all faces in outer radius relh
static ARRAY<INDEX> findex2; static Array<INDEX> findex2;
locfaces2.SetSize(0); locfaces2.SetSize(0);
locfaces3.SetSize(0); locfaces3.SetSize(0);
@ -658,12 +658,12 @@ int AdFront3 :: GetLocals (int fstind,
// returns all points connected with fi // returns all points connected with fi
void AdFront3 :: GetGroup (int fi, void AdFront3 :: GetGroup (int fi,
ARRAY<MeshPoint> & grouppoints, Array<MeshPoint> & grouppoints,
ARRAY<MiniElement2d> & groupelements, Array<MiniElement2d> & groupelements,
ARRAY<PointIndex> & pindex, Array<PointIndex> & pindex,
ARRAY<INDEX> & findex) const Array<INDEX> & findex) const
{ {
static ARRAY<char> pingroup; static Array<char> pingroup;
int i, j, changed; int i, j, changed;
pingroup.SetSize(points.Size()); pingroup.SetSize(points.Size());
@ -699,7 +699,7 @@ void AdFront3 :: GetGroup (int fi,
while (changed); while (changed);
static ARRAY<int> invpindex; static Array<int> invpindex;
invpindex.SetSize (points.Size()); invpindex.SetSize (points.Size());
@ -825,7 +825,7 @@ bool AdFront3 :: Inside (const Point<3> & p) const
int AdFront3 :: SameSide (const Point<3> & lp1, const Point<3> & lp2, int AdFront3 :: SameSide (const Point<3> & lp1, const Point<3> & lp2,
const ARRAY<int> * testfaces) const const Array<int> * testfaces) const
{ {
int i, ii, cnt; int i, ii, cnt;
@ -841,7 +841,7 @@ int AdFront3 :: SameSide (const Point<3> & lp1, const Point<3> & lp2,
pmin.SetToMin (lp2); pmin.SetToMin (lp2);
pmax.SetToMax (lp2); pmax.SetToMax (lp2);
static ARRAY<int> aprif; static Array<int> aprif;
aprif.SetSize(0); aprif.SetSize(0);
if (!testfaces) if (!testfaces)

View File

@ -176,11 +176,11 @@ public:
class AdFront3 class AdFront3
{ {
/// ///
ARRAY<FrontPoint3, PointIndex::BASE> points; Array<FrontPoint3, PointIndex::BASE> points;
/// ///
ARRAY<FrontFace> faces; Array<FrontFace> faces;
/// ///
ARRAY<PointIndex> delpointl; Array<PointIndex> delpointl;
/// which points are connected to pi ? /// which points are connected to pi ?
TABLE<int, PointIndex::BASE> * connectedpairs; TABLE<int, PointIndex::BASE> * connectedpairs;
@ -218,7 +218,7 @@ public:
/// ///
~AdFront3 (); ~AdFront3 ();
/// ///
void GetPoints (ARRAY<Point<3> > & apoints) const; void GetPoints (Array<Point<3> > & apoints) const;
/// ///
int GetNP() const int GetNP() const
{ return points.Size(); } { return points.Size(); }
@ -251,17 +251,17 @@ public:
/// ///
void GetIntersectingFaces (const Point<3> & pmin, const Point<3> & pmax, void GetIntersectingFaces (const Point<3> & pmin, const Point<3> & pmax,
ARRAY<int> & ifaces) const; Array<int> & ifaces) const;
/// ///
void GetFaceBoundingBox (int i, Box3d & box) const; void GetFaceBoundingBox (int i, Box3d & box) const;
/// ///
int GetLocals (int baseelement, int GetLocals (int baseelement,
ARRAY<Point3d > & locpoints, Array<Point3d > & locpoints,
ARRAY<MiniElement2d> & locfaces, // local index Array<MiniElement2d> & locfaces, // local index
ARRAY<PointIndex> & pindex, Array<PointIndex> & pindex,
ARRAY<INDEX> & findex, Array<INDEX> & findex,
INDEX_2_HASHTABLE<int> & connectedpairs, INDEX_2_HASHTABLE<int> & connectedpairs,
float xh, float xh,
float relh, float relh,
@ -269,10 +269,10 @@ public:
/// ///
void GetGroup (int fi, void GetGroup (int fi,
ARRAY<MeshPoint> & grouppoints, Array<MeshPoint> & grouppoints,
ARRAY<MiniElement2d> & groupelements, Array<MiniElement2d> & groupelements,
ARRAY<PointIndex> & pindex, Array<PointIndex> & pindex,
ARRAY<INDEX> & findex Array<INDEX> & findex
) const; ) const;
/// ///
@ -298,7 +298,7 @@ public:
bool Inside (const Point<3> & p) const; bool Inside (const Point<3> & p) const;
/// both points on same side ? /// both points on same side ?
int SameSide (const Point<3> & lp1, const Point<3> & lp2, int SameSide (const Point<3> & lp1, const Point<3> & lp2,
const ARRAY<int> * testfaces = NULL) const; const Array<int> * testfaces = NULL) const;
/// ///

View File

@ -291,7 +291,7 @@ namespace netgen
int BTSortEdges (const Mesh & mesh, int BTSortEdges (const Mesh & mesh,
const ARRAY< ARRAY<int,PointIndex::BASE>* > & idmaps, const Array< Array<int,PointIndex::BASE>* > & idmaps,
INDEX_2_CLOSED_HASHTABLE<int> & edgenumber) INDEX_2_CLOSED_HASHTABLE<int> & edgenumber)
{ {
PrintMessage(4,"sorting ... "); PrintMessage(4,"sorting ... ");
@ -301,8 +301,8 @@ namespace netgen
{ {
// new, fast version // new, fast version
ARRAY<INDEX_2> edges; Array<INDEX_2> edges;
ARRAY<int> eclasses; Array<int> eclasses;
int i, j, k; int i, j, k;
int cntedges = 0; int cntedges = 0;
@ -569,7 +569,7 @@ namespace netgen
// } // }
// compute classlength: // compute classlength:
ARRAY<double> edgelength(cntedges); Array<double> edgelength(cntedges);
/* /*
for (i = 1; i <= cntedges; i++) for (i = 1; i <= cntedges; i++)
@ -660,7 +660,7 @@ namespace netgen
// sort edges: // sort edges:
ARRAY<int> sorted(cntedges); Array<int> sorted(cntedges);
QickSort (edgelength, sorted); QickSort (edgelength, sorted);
@ -957,7 +957,7 @@ namespace netgen
bool BTDefineMarkedId(const Element2d & el, bool BTDefineMarkedId(const Element2d & el,
INDEX_2_CLOSED_HASHTABLE<int> & edgenumber, INDEX_2_CLOSED_HASHTABLE<int> & edgenumber,
const ARRAY<int,PointIndex::BASE> & idmap, const Array<int,PointIndex::BASE> & idmap,
MarkedIdentification & mi) MarkedIdentification & mi)
{ {
@ -1385,7 +1385,7 @@ namespace netgen
void BTBisectIdentification (const MarkedIdentification & oldid, void BTBisectIdentification (const MarkedIdentification & oldid,
ARRAY<int> & newp, Array<int> & newp,
MarkedIdentification & newid1, MarkedIdentification & newid1,
MarkedIdentification & newid2) MarkedIdentification & newid2)
{ {
@ -1619,10 +1619,10 @@ namespace netgen
{ {
int i,j,k; int i,j,k;
ARRAY< ARRAY<int,PointIndex::BASE>* > idmaps; Array< Array<int,PointIndex::BASE>* > idmaps;
for(i=1; i<=mesh.GetIdentifications().GetMaxNr(); i++) for(i=1; i<=mesh.GetIdentifications().GetMaxNr(); i++)
{ {
idmaps.Append(new ARRAY<int,PointIndex::BASE>); idmaps.Append(new Array<int,PointIndex::BASE>);
mesh.GetIdentifications().GetMap(i,*idmaps.Last()); mesh.GetIdentifications().GetMap(i,*idmaps.Last());
} }
@ -1827,7 +1827,7 @@ namespace netgen
void ConnectToNodeRec (int node, int tonode, void ConnectToNodeRec (int node, int tonode,
const TABLE<int> & conto, ARRAY<int> & connecttonode) const TABLE<int> & conto, Array<int> & connecttonode)
{ {
int i, n2; int i, n2;
// (*testout) << "connect " << node << " to " << tonode << endl; // (*testout) << "connect " << node << " to " << tonode << endl;
@ -1936,7 +1936,7 @@ namespace netgen
void BisectTetsCopyMesh (Mesh & mesh, const class CSGeometry *, void BisectTetsCopyMesh (Mesh & mesh, const class CSGeometry *,
BisectionOptions & opt, BisectionOptions & opt,
const ARRAY< ARRAY<int,PointIndex::BASE>* > & idmaps, const Array< Array<int,PointIndex::BASE>* > & idmaps,
const string & refinfofile) const string & refinfofile)
{ {
mtets.SetName ("bisection, tets"); mtets.SetName ("bisection, tets");
@ -2151,24 +2151,24 @@ namespace netgen
/* /*
void UpdateEdgeMarks2(Mesh & mesh, void UpdateEdgeMarks2(Mesh & mesh,
const ARRAY< ARRAY<int,PointIndex::BASE>* > & idmaps) const Array< Array<int,PointIndex::BASE>* > & idmaps)
{ {
ARRAY< ARRAY<MarkedTet>*,PointIndex::BASE > mtets_old(mesh.GetNP()); Array< Array<MarkedTet>*,PointIndex::BASE > mtets_old(mesh.GetNP());
ARRAY< ARRAY<MarkedPrism>*,PointIndex::BASE > mprisms_old(mesh.GetNP()); Array< Array<MarkedPrism>*,PointIndex::BASE > mprisms_old(mesh.GetNP());
ARRAY< ARRAY<MarkedIdentification>*,PointIndex::BASE > mids_old(mesh.GetNP()); Array< Array<MarkedIdentification>*,PointIndex::BASE > mids_old(mesh.GetNP());
ARRAY< ARRAY<MarkedTri>*,PointIndex::BASE > mtris_old(mesh.GetNP()); Array< Array<MarkedTri>*,PointIndex::BASE > mtris_old(mesh.GetNP());
ARRAY< ARRAY<MarkedQuad>*,PointIndex::BASE > mquads_old(mesh.GetNP()); Array< Array<MarkedQuad>*,PointIndex::BASE > mquads_old(mesh.GetNP());
for(int i=PointIndex::BASE; i<mesh.GetNP()+PointIndex::BASE; i++) for(int i=PointIndex::BASE; i<mesh.GetNP()+PointIndex::BASE; i++)
mtets_old[i] = new ARRAY<MarkedTet>; mtets_old[i] = new Array<MarkedTet>;
for(int i=PointIndex::BASE; i<mesh.GetNP()+PointIndex::BASE; i++) for(int i=PointIndex::BASE; i<mesh.GetNP()+PointIndex::BASE; i++)
mprisms_old[i] = new ARRAY<MarkedPrism>; mprisms_old[i] = new Array<MarkedPrism>;
for(int i=PointIndex::BASE; i<mesh.GetNP()+PointIndex::BASE; i++) for(int i=PointIndex::BASE; i<mesh.GetNP()+PointIndex::BASE; i++)
mids_old[i] = new ARRAY<MarkedIdentification>; mids_old[i] = new Array<MarkedIdentification>;
for(int i=PointIndex::BASE; i<mesh.GetNP()+PointIndex::BASE; i++) for(int i=PointIndex::BASE; i<mesh.GetNP()+PointIndex::BASE; i++)
mtris_old[i] = new ARRAY<MarkedTri>; mtris_old[i] = new Array<MarkedTri>;
for(int i=PointIndex::BASE; i<mesh.GetNP()+PointIndex::BASE; i++) for(int i=PointIndex::BASE; i<mesh.GetNP()+PointIndex::BASE; i++)
mquads_old[i] = new ARRAY<MarkedQuad>; mquads_old[i] = new Array<MarkedQuad>;
for(int i=0; i<mtets.Size(); i++) for(int i=0; i<mtets.Size(); i++)
mtets_old[mtets[i].pnums[0]]->Append(mtets[i]); mtets_old[mtets[i].pnums[0]]->Append(mtets[i]);
@ -2404,11 +2404,11 @@ namespace netgen
void UpdateEdgeMarks (Mesh & mesh, void UpdateEdgeMarks (Mesh & mesh,
const ARRAY< ARRAY<int,PointIndex::BASE>* > & idmaps) const Array< Array<int,PointIndex::BASE>* > & idmaps)
//const ARRAY < ARRAY<Element>* > & elements_before, //const Array < Array<Element>* > & elements_before,
//const ARRAY < ARRAY<int>* > & markedelts_num, //const Array < Array<int>* > & markedelts_num,
// const ARRAY < ARRAY<Element2d>* > & surfelements_before, // const Array < Array<Element2d>* > & surfelements_before,
// const ARRAY < ARRAY<int>* > & markedsurfelts_num) // const Array < Array<int>* > & markedsurfelts_num)
{ {
T_MTETS mtets_old; mtets_old.Copy(mtets); T_MTETS mtets_old; mtets_old.Copy(mtets);
T_MPRISMS mprisms_old; mprisms_old.Copy(mprisms); T_MPRISMS mprisms_old; mprisms_old.Copy(mprisms);
@ -2627,7 +2627,7 @@ namespace netgen
void Refinement :: Bisect (Mesh & mesh, void Refinement :: Bisect (Mesh & mesh,
BisectionOptions & opt, BisectionOptions & opt,
ARRAY<double> * quality_loss) Array<double> * quality_loss)
{ {
PrintMessage(1,"Mesh bisection"); PrintMessage(1,"Mesh bisection");
PushStatus("Mesh bisection"); PushStatus("Mesh bisection");
@ -2638,12 +2638,12 @@ namespace netgen
LocalizeEdgePoints(mesh); LocalizeEdgePoints(mesh);
delete loct; delete loct;
ARRAY< ARRAY<int,PointIndex::BASE>* > idmaps; Array< Array<int,PointIndex::BASE>* > idmaps;
for(int i=1; i<=mesh.GetIdentifications().GetMaxNr(); i++) for(int i=1; i<=mesh.GetIdentifications().GetMaxNr(); i++)
{ {
if(mesh.GetIdentifications().GetType(i) == Identifications::PERIODIC) if(mesh.GetIdentifications().GetType(i) == Identifications::PERIODIC)
{ {
idmaps.Append(new ARRAY<int,PointIndex::BASE>); idmaps.Append(new Array<int,PointIndex::BASE>);
mesh.GetIdentifications().GetMap(i,*idmaps.Last(),true); mesh.GetIdentifications().GetMap(i,*idmaps.Last(),true);
} }
} }
@ -2727,7 +2727,7 @@ namespace netgen
/* /*
#ifndef SABINE //Nachbarelemente mit ordx,ordy,ordz #ifndef SABINE //Nachbarelemente mit ordx,ordy,ordz
ARRAY<int,PointIndex::BASE> v_order (mesh.GetNP()); Array<int,PointIndex::BASE> v_order (mesh.GetNP());
v_order = 0; v_order = 0;
for (ElementIndex ei = 0; ei < ne; ei++) for (ElementIndex ei = 0; ei < ne; ei++)
@ -3103,7 +3103,7 @@ namespace netgen
else else
{ {
// vertices with 2 different bnds // vertices with 2 different bnds
ARRAY<int> bndind(np); Array<int> bndind(np);
bndind = 0; bndind = 0;
for (i = 1; i <= mesh.GetNSeg(); i++) for (i = 1; i <= mesh.GetNSeg(); i++)
{ {
@ -3275,11 +3275,11 @@ namespace netgen
if (mids.Elem(i).marked) if (mids.Elem(i).marked)
{ {
MarkedIdentification oldid,newid1,newid2; MarkedIdentification oldid,newid1,newid2;
ARRAY<int> newp; Array<int> newp;
oldid = mids.Get(i); oldid = mids.Get(i);
ARRAY<INDEX_2> edges; Array<INDEX_2> edges;
edges.Append(INDEX_2(oldid.pnums[oldid.markededge], edges.Append(INDEX_2(oldid.pnums[oldid.markededge],
oldid.pnums[(oldid.markededge+1)%oldid.np])); oldid.pnums[(oldid.markededge+1)%oldid.np]));
edges.Append(INDEX_2(oldid.pnums[oldid.markededge + oldid.np], edges.Append(INDEX_2(oldid.pnums[oldid.markededge + oldid.np],
@ -3535,7 +3535,7 @@ namespace netgen
if (opt.refine_hp) if (opt.refine_hp)
{ {
// //
ARRAY<int> v_order (mesh.GetNP()); Array<int> v_order (mesh.GetNP());
v_order = 0; v_order = 0;
if (mesh.GetDimension() == 3) if (mesh.GetDimension() == 3)
{ {
@ -3781,7 +3781,7 @@ namespace netgen
// update identification tables // update identification tables
for (i = 1; i <= mesh.GetIdentifications().GetMaxNr(); i++) for (i = 1; i <= mesh.GetIdentifications().GetMaxNr(); i++)
{ {
ARRAY<int,PointIndex::BASE> identmap; Array<int,PointIndex::BASE> identmap;
mesh.GetIdentifications().GetMap (i, identmap); mesh.GetIdentifications().GetMap (i, identmap);
@ -3859,8 +3859,8 @@ namespace netgen
NgProfiler::RegionTimer * regt(NULL); NgProfiler::RegionTimer * regt(NULL);
regt = new NgProfiler::RegionTimer(reptimer); regt = new NgProfiler::RegionTimer(reptimer);
ARRAY<ElementIndex> bad_elts; Array<ElementIndex> bad_elts;
ARRAY<double> pure_badness; Array<double> pure_badness;
if(do_repair || quality_loss != NULL) if(do_repair || quality_loss != NULL)
{ {

View File

@ -47,7 +47,7 @@ public:
virtual ~Refinement (); virtual ~Refinement ();
void Refine (Mesh & mesh); void Refine (Mesh & mesh);
void Bisect (Mesh & mesh, class BisectionOptions & opt, ARRAY<double> * quality_loss = NULL); void Bisect (Mesh & mesh, class BisectionOptions & opt, Array<double> * quality_loss = NULL);
void MakeSecondOrder (Mesh & mesh); void MakeSecondOrder (Mesh & mesh);
virtual void PointBetween (const Point<3> & p1, const Point<3> & p2, double secpoint, virtual void PointBetween (const Point<3> & p1, const Point<3> & p2, double secpoint,
@ -81,7 +81,7 @@ public:
void ValidateSecondOrder (Mesh & mesh); void ValidateSecondOrder (Mesh & mesh);
void ValidateRefinedMesh (Mesh & mesh, void ValidateRefinedMesh (Mesh & mesh,
ARRAY<INDEX_2> & parents); Array<INDEX_2> & parents);
MeshOptimize2d * Get2dOptimizer(void) MeshOptimize2d * Get2dOptimizer(void)
{ {

View File

@ -20,7 +20,7 @@ void InsertVirtualBoundaryLayer (Mesh & mesh)
cout << "Trigs: " << mesh.GetNSE() << endl; cout << "Trigs: " << mesh.GetNSE() << endl;
BitArray bndnodes(np); BitArray bndnodes(np);
ARRAY<int> mapto(np); Array<int> mapto(np);
bndnodes.Clear(); bndnodes.Clear();
for (i = 1; i <= mesh.GetNSeg(); i++) for (i = 1; i <= mesh.GetNSeg(); i++)

View File

@ -1,6 +1,6 @@
HPREF_ELEMENT_TYPE ClassifyTet(HPRefElement & el, INDEX_2_HASHTABLE<int> & edges, INDEX_2_HASHTABLE<int> & edgepoint_dom, HPREF_ELEMENT_TYPE ClassifyTet(HPRefElement & el, INDEX_2_HASHTABLE<int> & edges, INDEX_2_HASHTABLE<int> & edgepoint_dom,
BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE<int> & faces, INDEX_2_HASHTABLE<int> & face_edges, BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE<int> & faces, INDEX_2_HASHTABLE<int> & face_edges,
INDEX_2_HASHTABLE<int> & surf_edges, ARRAY<int, PointIndex::BASE> & facepoint) INDEX_2_HASHTABLE<int> & surf_edges, Array<int, PointIndex::BASE> & facepoint)
{ {
int ep1(0), ep2(0), ep3(0), ep4(0), cp1(0), cp2(0), cp3(0), cp4(0), fp1, fp2, fp3, fp4; int ep1(0), ep2(0), ep3(0), ep4(0), cp1(0), cp2(0), cp3(0), cp4(0), fp1, fp2, fp3, fp4;
int isedge1(0), isedge2(0), isedge3(0), isedge4(0), isedge5(0), isedge6(0); int isedge1(0), isedge2(0), isedge3(0), isedge4(0), isedge5(0), isedge6(0);
@ -424,7 +424,7 @@ HPREF_ELEMENT_TYPE ClassifyTet(HPRefElement & el, INDEX_2_HASHTABLE<int> & edges
HPREF_ELEMENT_TYPE ClassifyPrism(HPRefElement & el, INDEX_2_HASHTABLE<int> & edges, INDEX_2_HASHTABLE<int> & edgepoint_dom, HPREF_ELEMENT_TYPE ClassifyPrism(HPRefElement & el, INDEX_2_HASHTABLE<int> & edges, INDEX_2_HASHTABLE<int> & edgepoint_dom,
BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE<int> & faces, INDEX_2_HASHTABLE<int> & face_edges, BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE<int> & faces, INDEX_2_HASHTABLE<int> & face_edges,
INDEX_2_HASHTABLE<int> & surf_edges, ARRAY<int, PointIndex::BASE> & facepoint) INDEX_2_HASHTABLE<int> & surf_edges, Array<int, PointIndex::BASE> & facepoint)
{ {
HPREF_ELEMENT_TYPE type = HP_NONE; HPREF_ELEMENT_TYPE type = HP_NONE;
@ -659,7 +659,7 @@ HPREF_ELEMENT_TYPE ClassifyPrism(HPRefElement & el, INDEX_2_HASHTABLE<int> & edg
// #ifdef SABINE // #ifdef SABINE
HPREF_ELEMENT_TYPE ClassifyTrig(HPRefElement & el, INDEX_2_HASHTABLE<int> & edges, INDEX_2_HASHTABLE<int> & edgepoint_dom, HPREF_ELEMENT_TYPE ClassifyTrig(HPRefElement & el, INDEX_2_HASHTABLE<int> & edges, INDEX_2_HASHTABLE<int> & edgepoint_dom,
BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE<int> & faces, INDEX_2_HASHTABLE<int> & face_edges, BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE<int> & faces, INDEX_2_HASHTABLE<int> & face_edges,
INDEX_2_HASHTABLE<int> & surf_edges, ARRAY<int, PointIndex::BASE> & facepoint, int dim, const FaceDescriptor & fd) INDEX_2_HASHTABLE<int> & surf_edges, Array<int, PointIndex::BASE> & facepoint, int dim, const FaceDescriptor & fd)
{ {
HPREF_ELEMENT_TYPE type = HP_NONE; HPREF_ELEMENT_TYPE type = HP_NONE;
@ -868,7 +868,7 @@ HPREF_ELEMENT_TYPE ClassifyTrig(HPRefElement & el, INDEX_2_HASHTABLE<int> & edge
#ifdef HPREF_OLD #ifdef HPREF_OLD
HPREF_ELEMENT_TYPE ClassifyTrig(HPRefElement & el, INDEX_2_HASHTABLE<int> & edges, INDEX_2_HASHTABLE<int> & edgepoint_dom, HPREF_ELEMENT_TYPE ClassifyTrig(HPRefElement & el, INDEX_2_HASHTABLE<int> & edges, INDEX_2_HASHTABLE<int> & edgepoint_dom,
BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE<int> & faces, INDEX_2_HASHTABLE<int> & face_edges, BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE<int> & faces, INDEX_2_HASHTABLE<int> & face_edges,
INDEX_2_HASHTABLE<int> & surf_edges, ARRAY<int, PointIndex::BASE> & facepoint, int dim, const FaceDescriptor & fd) INDEX_2_HASHTABLE<int> & surf_edges, Array<int, PointIndex::BASE> & facepoint, int dim, const FaceDescriptor & fd)
{ {
HPREF_ELEMENT_TYPE type = HP_NONE; HPREF_ELEMENT_TYPE type = HP_NONE;
@ -1129,7 +1129,7 @@ HPREF_ELEMENT_TYPE ClassifyTrig(HPRefElement & el, INDEX_2_HASHTABLE<int> & edge
#endif #endif
HPREF_ELEMENT_TYPE ClassifyQuad(HPRefElement & el, INDEX_2_HASHTABLE<int> & edges, INDEX_2_HASHTABLE<int> & edgepoint_dom, HPREF_ELEMENT_TYPE ClassifyQuad(HPRefElement & el, INDEX_2_HASHTABLE<int> & edges, INDEX_2_HASHTABLE<int> & edgepoint_dom,
BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE<int> & faces, INDEX_2_HASHTABLE<int> & face_edges, BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE<int> & faces, INDEX_2_HASHTABLE<int> & face_edges,
INDEX_2_HASHTABLE<int> & surf_edges, ARRAY<int, PointIndex::BASE> & facepoint, int dim, const FaceDescriptor & fd) INDEX_2_HASHTABLE<int> & surf_edges, Array<int, PointIndex::BASE> & facepoint, int dim, const FaceDescriptor & fd)
{ {
HPREF_ELEMENT_TYPE type = HP_NONE; HPREF_ELEMENT_TYPE type = HP_NONE;
@ -1472,7 +1472,7 @@ HPREF_ELEMENT_TYPE ClassifyQuad(HPRefElement & el, INDEX_2_HASHTABLE<int> & edge
HPREF_ELEMENT_TYPE ClassifyHex(HPRefElement & el, INDEX_2_HASHTABLE<int> & edges, INDEX_2_HASHTABLE<int> & edgepoint_dom, HPREF_ELEMENT_TYPE ClassifyHex(HPRefElement & el, INDEX_2_HASHTABLE<int> & edges, INDEX_2_HASHTABLE<int> & edgepoint_dom,
BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE<int> & faces, INDEX_2_HASHTABLE<int> & face_edges, BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE<int> & faces, INDEX_2_HASHTABLE<int> & face_edges,
INDEX_2_HASHTABLE<int> & surf_edges, ARRAY<int, PointIndex::BASE> & facepoint) INDEX_2_HASHTABLE<int> & surf_edges, Array<int, PointIndex::BASE> & facepoint)
{ {
HPREF_ELEMENT_TYPE type = HP_NONE; HPREF_ELEMENT_TYPE type = HP_NONE;
@ -1572,7 +1572,7 @@ HPREF_ELEMENT_TYPE ClassifyHex(HPRefElement & el, INDEX_2_HASHTABLE<int> & edges
HPREF_ELEMENT_TYPE ClassifySegm(HPRefElement & hpel, INDEX_2_HASHTABLE<int> & edges, INDEX_2_HASHTABLE<int> & edgepoint_dom, HPREF_ELEMENT_TYPE ClassifySegm(HPRefElement & hpel, INDEX_2_HASHTABLE<int> & edges, INDEX_2_HASHTABLE<int> & edgepoint_dom,
BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE<int> & faces, INDEX_2_HASHTABLE<int> & face_edges, BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE<int> & faces, INDEX_2_HASHTABLE<int> & face_edges,
INDEX_2_HASHTABLE<int> & surf_edges, ARRAY<int, PointIndex::BASE> & facepoint) INDEX_2_HASHTABLE<int> & surf_edges, Array<int, PointIndex::BASE> & facepoint)
{ {
int cp1 = cornerpoint.Test (hpel[0]); int cp1 = cornerpoint.Test (hpel[0]);
@ -1615,7 +1615,7 @@ HPREF_ELEMENT_TYPE ClassifySegm(HPRefElement & hpel, INDEX_2_HASHTABLE<int> & ed
HPREF_ELEMENT_TYPE ClassifyPyramid(HPRefElement & el, INDEX_2_HASHTABLE<int> & edges, INDEX_2_HASHTABLE<int> & edgepoint_dom, HPREF_ELEMENT_TYPE ClassifyPyramid(HPRefElement & el, INDEX_2_HASHTABLE<int> & edges, INDEX_2_HASHTABLE<int> & edgepoint_dom,
BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE<int> & faces, INDEX_2_HASHTABLE<int> & face_edges, BitArray & cornerpoint, BitArray & edgepoint, INDEX_3_HASHTABLE<int> & faces, INDEX_2_HASHTABLE<int> & face_edges,
INDEX_2_HASHTABLE<int> & surf_edges, ARRAY<int, PointIndex::BASE> & facepoint) INDEX_2_HASHTABLE<int> & surf_edges, Array<int, PointIndex::BASE> & facepoint)
{ {
HPREF_ELEMENT_TYPE type = HP_NONE; HPREF_ELEMENT_TYPE type = HP_NONE;

View File

@ -38,7 +38,7 @@ void AnisotropicClusters :: Update()
cluster_reps.SetSize (nv+ned+nfa+ne); cluster_reps.SetSize (nv+ned+nfa+ne);
ARRAY<int> nnums, ednums, fanums; Array<int> nnums, ednums, fanums;
int changed; int changed;
for (i = 1; i <= cluster_reps.Size(); i++) for (i = 1; i <= cluster_reps.Size(); i++)

View File

@ -21,7 +21,7 @@ class AnisotropicClusters
int nv, ned, nfa, ne; int nv, ned, nfa, ne;
// connected nodes, nodes = vertices, edges, faces, elements // connected nodes, nodes = vertices, edges, faces, elements
ARRAY<int> cluster_reps; Array<int> cluster_reps;
public: public:
AnisotropicClusters (const Mesh & amesh); AnisotropicClusters (const Mesh & amesh);

View File

@ -12,7 +12,7 @@ namespace netgen
static void ComputeGaussRule (int n, ARRAY<double> & xi, ARRAY<double> & wi) static void ComputeGaussRule (int n, Array<double> & xi, Array<double> & wi)
{ {
xi.SetSize (n); xi.SetSize (n);
wi.SetSize (n); wi.SetSize (n);
@ -451,7 +451,7 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta,
rational = arational; rational = arational;
ARRAY<int> edgenrs; Array<int> edgenrs;
edgeorder.SetSize (top.GetNEdges()); edgeorder.SetSize (top.GetNEdges());
faceorder.SetSize (top.GetNFaces()); faceorder.SetSize (top.GetNFaces());
@ -531,7 +531,7 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta,
return; return;
} }
ARRAY<double> xi, weight; Array<double> xi, weight;
ComputeGaussRule (aorder+4, xi, weight); // on (0,1) ComputeGaussRule (aorder+4, xi, weight); // on (0,1)
@ -1025,7 +1025,7 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta,
Vector shapes, dshapes; Vector shapes, dshapes;
ARRAY<Vec<3> > coefs; Array<Vec<3> > coefs;
SegmentInfo info; SegmentInfo info;
info.elnr = elnr; info.elnr = elnr;
@ -1145,7 +1145,7 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta,
} }
void CurvedElements :: void CurvedElements ::
GetCoefficients (SegmentInfo & info, ARRAY<Vec<3> > & coefs) const GetCoefficients (SegmentInfo & info, Array<Vec<3> > & coefs) const
{ {
const Segment & el = mesh[info.elnr]; const Segment & el = mesh[info.elnr];
@ -1270,7 +1270,7 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta,
Vector shapes; Vector shapes;
DenseMatrix dshapes; DenseMatrix dshapes;
ARRAY<Vec<3> > coefs; Array<Vec<3> > coefs;
const Element2d & el = mesh[elnr]; const Element2d & el = mesh[elnr];
ELEMENT_TYPE type = el.GetType(); ELEMENT_TYPE type = el.GetType();
@ -1752,7 +1752,7 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta,
void CurvedElements :: void CurvedElements ::
GetCoefficients (SurfaceElementInfo & info, ARRAY<Vec<3> > & coefs) const GetCoefficients (SurfaceElementInfo & info, Array<Vec<3> > & coefs) const
{ {
const Element2d & el = mesh[info.elnr]; const Element2d & el = mesh[info.elnr];
coefs.SetSize (info.ndof); coefs.SetSize (info.ndof);
@ -2716,17 +2716,17 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta,
void CurvedElements :: void CurvedElements ::
CalcMultiPointSegmentTransformation (ARRAY<double> * xi, SegmentIndex segnr, CalcMultiPointSegmentTransformation (Array<double> * xi, SegmentIndex segnr,
ARRAY<Point<3> > * x, Array<Point<3> > * x,
ARRAY<Vec<3> > * dxdxi) Array<Vec<3> > * dxdxi)
{ {
; ;
} }
void CurvedElements :: void CurvedElements ::
CalcMultiPointSurfaceTransformation (ARRAY< Point<2> > * xi, SurfaceElementIndex elnr, CalcMultiPointSurfaceTransformation (Array< Point<2> > * xi, SurfaceElementIndex elnr,
ARRAY< Point<3> > * x, Array< Point<3> > * x,
ARRAY< Mat<3,2> > * dxdxi) Array< Mat<3,2> > * dxdxi)
{ {
if (mesh.coarsemesh) if (mesh.coarsemesh)
{ {
@ -2787,7 +2787,7 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta,
Vector shapes; Vector shapes;
DenseMatrix dshapes; DenseMatrix dshapes;
ARRAY<Vec<3> > coefs; Array<Vec<3> > coefs;
const Element2d & el = mesh[elnr]; const Element2d & el = mesh[elnr];
@ -2859,9 +2859,9 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta,
} }
void CurvedElements :: void CurvedElements ::
CalcMultiPointElementTransformation (ARRAY< Point<3> > * xi, ElementIndex elnr, CalcMultiPointElementTransformation (Array< Point<3> > * xi, ElementIndex elnr,
ARRAY< Point<3> > * x, Array< Point<3> > * x,
ARRAY< Mat<3,3> > * dxdxi) Array< Mat<3,3> > * dxdxi)
{ {
if (mesh.coarsemesh) if (mesh.coarsemesh)
{ {
@ -2953,7 +2953,7 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta,
// info.ndof += facecoeffsindex[info.facenr+1] - facecoeffsindex[info.facenr]; // info.ndof += facecoeffsindex[info.facenr+1] - facecoeffsindex[info.facenr];
} }
ARRAY<Vec<3> > coefs(info.ndof); Array<Vec<3> > coefs(info.ndof);
GetCoefficients (info, &coefs[0]); GetCoefficients (info, &coefs[0]);
if (x) if (x)
{ {
@ -3110,7 +3110,7 @@ inline void ScaledJacobiPolynomial (int n, S x, St t, double alpha, double beta,
// info.ndof += facecoeffsindex[info.facenr+1] - facecoeffsindex[info.facenr]; // info.ndof += facecoeffsindex[info.facenr+1] - facecoeffsindex[info.facenr];
} }
ARRAY<Vec<3> > coefs(info.ndof); Array<Vec<3> > coefs(info.ndof);
GetCoefficients (info, &coefs[0]); GetCoefficients (info, &coefs[0]);
if (x) if (x)
{ {

View File

@ -18,16 +18,16 @@ class CurvedElements
{ {
const Mesh & mesh; const Mesh & mesh;
ARRAY<int> edgeorder; Array<int> edgeorder;
ARRAY<int> faceorder; Array<int> faceorder;
ARRAY<int> edgecoeffsindex; Array<int> edgecoeffsindex;
ARRAY<int> facecoeffsindex; Array<int> facecoeffsindex;
ARRAY< Vec<3> > edgecoeffs; Array< Vec<3> > edgecoeffs;
ARRAY< Vec<3> > facecoeffs; Array< Vec<3> > facecoeffs;
ARRAY< double > edgeweight; // for rational 2nd order splines Array< double > edgeweight; // for rational 2nd order splines
int order; int order;
bool rational; bool rational;
@ -115,17 +115,17 @@ public:
void CalcMultiPointSegmentTransformation (ARRAY<double> * xi, SegmentIndex segnr, void CalcMultiPointSegmentTransformation (Array<double> * xi, SegmentIndex segnr,
ARRAY<Point<3> > * x, Array<Point<3> > * x,
ARRAY<Vec<3> > * dxdxi); Array<Vec<3> > * dxdxi);
void CalcMultiPointSurfaceTransformation (ARRAY< Point<2> > * xi, SurfaceElementIndex elnr, void CalcMultiPointSurfaceTransformation (Array< Point<2> > * xi, SurfaceElementIndex elnr,
ARRAY< Point<3> > * x, Array< Point<3> > * x,
ARRAY< Mat<3,2> > * dxdxi); Array< Mat<3,2> > * dxdxi);
void CalcMultiPointElementTransformation (ARRAY< Point<3> > * xi, ElementIndex elnr, void CalcMultiPointElementTransformation (Array< Point<3> > * xi, ElementIndex elnr,
ARRAY< Point<3> > * x, Array< Point<3> > * x,
ARRAY< Mat<3,3> > * dxdxi); Array< Mat<3,3> > * dxdxi);
void CalcMultiPointElementTransformation (ElementIndex elnr, int n, void CalcMultiPointElementTransformation (ElementIndex elnr, int n,
const double * xi, int sxi, const double * xi, int sxi,
@ -163,7 +163,7 @@ private:
}; };
void CalcElementShapes (SegmentInfo & elnr, double xi, Vector & shapes) const; void CalcElementShapes (SegmentInfo & elnr, double xi, Vector & shapes) const;
void GetCoefficients (SegmentInfo & elnr, ARRAY<Vec<3> > & coefs) const; void GetCoefficients (SegmentInfo & elnr, Array<Vec<3> > & coefs) const;
void CalcElementDShapes (SegmentInfo & elnr, double xi, Vector & dshapes) const; void CalcElementDShapes (SegmentInfo & elnr, double xi, Vector & dshapes) const;
@ -200,7 +200,7 @@ private:
}; };
void CalcElementShapes (SurfaceElementInfo & elinfo, const Point<2> & xi, Vector & shapes) const; void CalcElementShapes (SurfaceElementInfo & elinfo, const Point<2> & xi, Vector & shapes) const;
void GetCoefficients (SurfaceElementInfo & elinfo, ARRAY<Vec<3> > & coefs) const; void GetCoefficients (SurfaceElementInfo & elinfo, Array<Vec<3> > & coefs) const;
void CalcElementDShapes (SurfaceElementInfo & elinfo, const Point<2> & xi, DenseMatrix & dshapes) const; void CalcElementDShapes (SurfaceElementInfo & elinfo, const Point<2> & xi, DenseMatrix & dshapes) const;
}; };

View File

@ -112,12 +112,12 @@ namespace netgen
INDEX_3_CLOSED_HASHTABLE<int> faces; INDEX_3_CLOSED_HASHTABLE<int> faces;
// //
ARRAY<DelaunayTet> & tets; Array<DelaunayTet> & tets;
public: public:
// estimated number of points // estimated number of points
MeshNB (ARRAY<DelaunayTet> & atets, int np) MeshNB (Array<DelaunayTet> & atets, int np)
: faces(200), tets(atets) : faces(200), tets(atets)
{ ; } { ; }
@ -187,7 +187,7 @@ namespace netgen
*/ */
class SphereList class SphereList
{ {
ARRAY<int> links; Array<int> links;
public: public:
SphereList () SphereList ()
{ ; } { ; }
@ -210,11 +210,11 @@ namespace netgen
links.Elem (toi) = eli; links.Elem (toi) = eli;
} }
void GetList (int eli, ARRAY<int> & linked) const; void GetList (int eli, Array<int> & linked) const;
}; };
void SphereList :: GetList (int eli, ARRAY<int> & linked) const void SphereList :: GetList (int eli, Array<int> & linked) const
{ {
linked.SetSize (0); linked.SetSize (0);
int pi = eli; int pi = eli;
@ -244,13 +244,13 @@ namespace netgen
void AddDelaunayPoint (PointIndex newpi, const Point3d & newp, void AddDelaunayPoint (PointIndex newpi, const Point3d & newp,
ARRAY<DelaunayTet> & tempels, Array<DelaunayTet> & tempels,
Mesh & mesh, Mesh & mesh,
Box3dTree & tettree, Box3dTree & tettree,
MeshNB & meshnb, MeshNB & meshnb,
ARRAY<Point<3> > & centers, ARRAY<double> & radi2, Array<Point<3> > & centers, Array<double> & radi2,
ARRAY<int> & connected, ARRAY<int> & treesearch, Array<int> & connected, Array<int> & treesearch,
ARRAY<int> & freelist, SphereList & list, Array<int> & freelist, SphereList & list,
IndexSet & insphere, IndexSet & closesphere) IndexSet & insphere, IndexSet & closesphere)
{ {
/* /*
@ -446,7 +446,7 @@ namespace netgen
} // while (changed) } // while (changed)
// (*testout) << "newels: " << endl; // (*testout) << "newels: " << endl;
ARRAY<Element> newels; Array<Element> newels;
Element2d face(TRIG); Element2d face(TRIG);
@ -602,14 +602,14 @@ namespace netgen
void Delaunay1 (Mesh & mesh, const MeshingParameters & mp, AdFront3 * adfront, void Delaunay1 (Mesh & mesh, const MeshingParameters & mp, AdFront3 * adfront,
ARRAY<DelaunayTet> & tempels, Array<DelaunayTet> & tempels,
int oldnp, DelaunayTet & startel, Point3d & pmin, Point3d & pmax) int oldnp, DelaunayTet & startel, Point3d & pmin, Point3d & pmax)
{ {
int i, j, k; int i, j, k;
const Point<3> * pp[4]; const Point<3> * pp[4];
ARRAY<Point<3> > centers; Array<Point<3> > centers;
ARRAY<double> radi2; Array<double> radi2;
Point3d tpmin, tpmax; Point3d tpmin, tpmax;
@ -676,7 +676,7 @@ namespace netgen
usep.Set (mesh.LockedPoints()[i]); usep.Set (mesh.LockedPoints()[i]);
ARRAY<int> freelist; Array<int> freelist;
int cntp = 0; int cntp = 0;
@ -693,7 +693,7 @@ namespace netgen
tempels.Append (startel); tempels.Append (startel);
meshnb.Add (1); meshnb.Add (1);
list.AddElement (1); list.AddElement (1);
ARRAY<int> connected, treesearch; Array<int> connected, treesearch;
tpmin = tpmax = mesh.Point(startel[0]); tpmin = tpmax = mesh.Point(startel[0]);
@ -726,7 +726,7 @@ namespace netgen
// "random" reordering of points (speeds a factor 3 - 5 !!!) // "random" reordering of points (speeds a factor 3 - 5 !!!)
ARRAY<int> mixed(np); Array<int> mixed(np);
int prims[] = { 11, 13, 17, 19, 23, 29, 31, 37 }; int prims[] = { 11, 13, 17, 19, 23, 29, 31, 37 };
int prim; int prim;
@ -799,7 +799,7 @@ namespace netgen
PushStatus ("Delaunay meshing"); PushStatus ("Delaunay meshing");
ARRAY<DelaunayTet> tempels; Array<DelaunayTet> tempels;
Point3d pmin, pmax; Point3d pmin, pmax;
DelaunayTet startel; DelaunayTet startel;
@ -959,7 +959,7 @@ namespace netgen
// find surface triangles which are no face of any tet // find surface triangles which are no face of any tet
INDEX_3_HASHTABLE<int> openeltab(mesh.GetNOpenElements()+3); INDEX_3_HASHTABLE<int> openeltab(mesh.GetNOpenElements()+3);
ARRAY<int> openels; Array<int> openels;
for (int i = 1; i <= mesh.GetNOpenElements(); i++) for (int i = 1; i <= mesh.GetNOpenElements(); i++)
{ {
const Element2d & tri = mesh.OpenElement(i); const Element2d & tri = mesh.OpenElement(i);
@ -1147,7 +1147,7 @@ namespace netgen
} }
} }
ARRAY<int> neartrias; Array<int> neartrias;
for (int i = 1; i <= tempels.Size(); i++) for (int i = 1; i <= tempels.Size(); i++)
{ {
const Point<3> *pp[4]; const Point<3> *pp[4];
@ -1407,7 +1407,7 @@ namespace netgen
BitArray inner(ne), outer(ne); BitArray inner(ne), outer(ne);
inner.Clear(); inner.Clear();
outer.Clear(); outer.Clear();
ARRAY<int> elstack; Array<int> elstack;
/* /*
int starti = 0; int starti = 0;

View File

@ -2,8 +2,8 @@
inline void Minimize (const ARRAY<Vec3d> & a, inline void Minimize (const Array<Vec3d> & a,
const ARRAY<double> & c, const Array<double> & c,
int * act, int * act,
Vec<3> & x, double & f, Vec<3> & x, double & f,
int * sol) int * sol)
@ -67,16 +67,16 @@ inline void Minimize (const ARRAY<Vec3d> & a,
template <typename POINTARRAY, typename FACEARRAY> template <typename POINTArray, typename FACEArray>
inline int FindInnerPoint (POINTARRAY & points, inline int FindInnerPoint (POINTArray & points,
FACEARRAY & faces, FACEArray & faces,
Point3d & p) Point3d & p)
{ {
static int timer = NgProfiler::CreateTimer ("FindInnerPoint"); static int timer = NgProfiler::CreateTimer ("FindInnerPoint");
NgProfiler::RegionTimer reg (timer); NgProfiler::RegionTimer reg (timer);
ARRAY<Vec3d> a; Array<Vec3d> a;
ARRAY<double> c; Array<double> c;
Mat<3> m, inv; Mat<3> m, inv;
Vec<3> rs, x, center; Vec<3> rs, x, center;
double f; double f;

View File

@ -1,15 +1,15 @@
// find inner point // find inner point
template <typename POINTARRAY, typename FACEARRAY> template <typename POINTArray, typename FACEArray>
inline int FindInnerPoint2 (POINTARRAY & points, inline int FindInnerPoint2 (POINTArray & points,
FACEARRAY & faces, FACEArray & faces,
Point3d & p) Point3d & p)
{ {
static int timer = NgProfiler::CreateTimer ("FindInnerPoint2"); static int timer = NgProfiler::CreateTimer ("FindInnerPoint2");
NgProfiler::RegionTimer reg (timer); NgProfiler::RegionTimer reg (timer);
ARRAY<Vec3d> a; Array<Vec3d> a;
ARRAY<double> c; Array<double> c;
Mat<3> m, inv; Mat<3> m, inv;
Vec<3> rs, x, pmin; Vec<3> rs, x, pmin;

View File

@ -19,7 +19,7 @@ namespace netgen
} }
} }
void GeomSearch3d :: Init (ARRAY <FrontPoint3,PointIndex::BASE> *pointsi, ARRAY <FrontFace> *facesi) void GeomSearch3d :: Init (Array <FrontPoint3,PointIndex::BASE> *pointsi, Array <FrontFace> *facesi)
{ {
points = pointsi; points = pointsi;
faces = facesi; faces = facesi;
@ -120,7 +120,7 @@ namespace netgen
for (k = 1; k <= size.i3; k++) for (k = 1; k <= size.i3; k++)
{ {
INDEX ind=i+(j-1)*size.i1+(k-1)*size.i2*size.i1; INDEX ind=i+(j-1)*size.i1+(k-1)*size.i2*size.i1;
hashtable.Elem(ind) = new ARRAY <int> (); hashtable.Elem(ind) = new Array <int> ();
} }
} }
} }
@ -175,7 +175,7 @@ namespace netgen
} }
} }
void GeomSearch3d :: GetLocals(ARRAY<MiniElement2d> & locfaces, ARRAY<INDEX> & findex, void GeomSearch3d :: GetLocals(Array<MiniElement2d> & locfaces, Array<INDEX> & findex,
INDEX fstind, const Point3d& p0, double xh) INDEX fstind, const Point3d& p0, double xh)
{ {
hashcount++; hashcount++;
@ -212,7 +212,7 @@ namespace netgen
INDEX ind=ix+(iy-1)*size.i1+(iz-1)*size.i2*size.i1; INDEX ind=ix+(iy-1)*size.i1+(iz-1)*size.i2*size.i1;
//go through all elements in one hash area //go through all elements in one hash area
const ARRAY <int> & area = *hashtable.Elem(ind); const Array <int> & area = *hashtable.Elem(ind);
for (k = 1; k <= area.Size(); k++) for (k = 1; k <= area.Size(); k++)
{ {
cnt2++; cnt2++;

View File

@ -22,7 +22,7 @@ public:
virtual ~GeomSearch3d(); virtual ~GeomSearch3d();
/// ///
void Init (ARRAY <FrontPoint3,PointIndex::BASE> *pointsi, ARRAY <FrontFace> *facesi); void Init (Array <FrontPoint3,PointIndex::BASE> *pointsi, Array <FrontFace> *facesi);
///get elements max extension ///get elements max extension
void ElemMaxExt(Point3d& minp, Point3d& maxp, const MiniElement2d& elem); void ElemMaxExt(Point3d& minp, Point3d& maxp, const MiniElement2d& elem);
@ -41,15 +41,15 @@ public:
void AddElem(const MiniElement2d& elem, INDEX elemnum); void AddElem(const MiniElement2d& elem, INDEX elemnum);
///GetLocal faces in sphere with radius xh and middlepoint p ///GetLocal faces in sphere with radius xh and middlepoint p
void GetLocals(ARRAY<MiniElement2d> & locfaces, ARRAY<INDEX> & findex, void GetLocals(Array<MiniElement2d> & locfaces, Array<INDEX> & findex,
INDEX fstind, const Point3d& p0, double xh); INDEX fstind, const Point3d& p0, double xh);
private: private:
ARRAY <FrontFace> *faces; // Pointers to Arrays in Adfront Array <FrontFace> *faces; // Pointers to Arrays in Adfront
ARRAY <FrontPoint3,PointIndex::BASE> *points; Array <FrontPoint3,PointIndex::BASE> *points;
ARRAY <ARRAY <int>*> hashtable; Array <Array <int>*> hashtable;
Point3d minext; //extension of Hashdomain Point3d minext; //extension of Hashdomain
Point3d maxext; Point3d maxext;

Some files were not shown because too many files have changed in this diff Show More