Reference documentation for deal.II version Git 6ddc0a3 2014-11-22 14:23:19 -0600
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
GridOut Class Reference

#include <deal.II/grid/grid_out.h>

Public Types

enum  OutputFormat {
  none, dx, gnuplot, eps,
  ucd, xfig, msh, svg,
  mathgl, vtk, vtu
}
 

Public Member Functions

 GridOut ()
 
template<int dim, int spacedim>
void write_dx (const Triangulation< dim, spacedim > &tria, std::ostream &out) const
 
template<int dim, int spacedim>
void write_gnuplot (const Triangulation< dim, spacedim > &tria, std::ostream &out, const Mapping< dim, spacedim > *mapping=0) const
 
template<int dim, int spacedim>
void write_msh (const Triangulation< dim, spacedim > &tria, std::ostream &out) const
 
template<int dim, int spacedim>
void write_ucd (const Triangulation< dim, spacedim > &tria, std::ostream &out) const
 
template<int dim, int spacedim>
void write_eps (const Triangulation< dim, spacedim > &tria, std::ostream &out, const Mapping< dim, spacedim > *mapping=0) const
 
template<int dim, int spacedim>
void write_xfig (const Triangulation< dim, spacedim > &tria, std::ostream &out, const Mapping< dim, spacedim > *mapping=0) const
 
void write_svg (const Triangulation< 2, 2 > &tria, std::ostream &out) const
 
template<int dim, int spacedim>
void write_svg (const Triangulation< dim, spacedim > &tria, std::ostream &out) const
 
template<int dim, int spacedim>
void write_mathgl (const Triangulation< dim, spacedim > &tria, std::ostream &out) const
 
template<int dim, int spacedim>
void write_vtk (const Triangulation< dim, spacedim > &tria, std::ostream &out) const
 
template<int dim, int spacedim>
void write_vtu (const Triangulation< dim, spacedim > &tria, std::ostream &out) const
 
template<int dim, int spacedim>
void write (const Triangulation< dim, spacedim > &tria, std::ostream &out, const OutputFormat output_format, const Mapping< dim, spacedim > *mapping=0) const
 
template<int dim, int spacedim>
void write (const Triangulation< dim, spacedim > &tria, std::ostream &out, const Mapping< dim, spacedim > *mapping=0) const
 
void set_flags (const GridOutFlags::DX &flags)
 
void set_flags (const GridOutFlags::Msh &flags)
 
void set_flags (const GridOutFlags::Ucd &flags)
 
void set_flags (const GridOutFlags::Gnuplot &flags)
 
void set_flags (const GridOutFlags::Eps< 1 > &flags)
 
void set_flags (const GridOutFlags::Eps< 2 > &flags)
 
void set_flags (const GridOutFlags::Eps< 3 > &flags)
 
void set_flags (const GridOutFlags::XFig &flags)
 
void set_flags (const GridOutFlags::Svg &flags)
 
void set_flags (const GridOutFlags::MathGL &flags)
 
void set_flags (const GridOutFlags::Vtk &flags)
 
void set_flags (const GridOutFlags::Vtu &flags)
 
std::string default_suffix () const
 
void parse_parameters (ParameterHandler &param)
 
std::size_t memory_consumption () const
 
 DeclException0 (ExcInvalidState)
 

Static Public Member Functions

static std::string default_suffix (const OutputFormat output_format)
 
static OutputFormat parse_output_format (const std::string &format_name)
 
static std::string get_output_format_names ()
 
static void declare_parameters (ParameterHandler &param)
 

Private Member Functions

template<int dim, int spacedim>
void write_msh_faces (const Triangulation< dim, spacedim > &tria, const unsigned int starting_index, std::ostream &out) const
 
void write_msh_faces (const Triangulation< 1, 1 > &tria, const unsigned int starting_index, std::ostream &out) const
 
void write_msh_faces (const Triangulation< 1, 2 > &tria, const unsigned int starting_index, std::ostream &out) const
 
void write_msh_faces (const Triangulation< 1, 3 > &tria, const unsigned int starting_index, std::ostream &out) const
 
template<int dim, int spacedim>
void write_msh_lines (const Triangulation< dim, spacedim > &tria, const unsigned int starting_index, std::ostream &out) const
 
void write_msh_lines (const Triangulation< 1, 1 > &tria, const unsigned int starting_index, std::ostream &out) const
 
void write_msh_lines (const Triangulation< 1, 2 > &tria, const unsigned int starting_index, std::ostream &out) const
 
void write_msh_lines (const Triangulation< 1, 3 > &tria, const unsigned int starting_index, std::ostream &out) const
 
void write_msh_lines (const Triangulation< 2, 2 > &tria, const unsigned int starting_index, std::ostream &out) const
 
void write_msh_lines (const Triangulation< 2, 3 > &tria, const unsigned int starting_index, std::ostream &out) const
 
template<int dim, int spacedim>
void write_ucd_faces (const Triangulation< dim, spacedim > &tria, const unsigned int starting_index, std::ostream &out) const
 
void write_ucd_faces (const Triangulation< 1, 1 > &tria, const unsigned int starting_index, std::ostream &out) const
 
void write_ucd_faces (const Triangulation< 1, 2 > &tria, const unsigned int starting_index, std::ostream &out) const
 
void write_ucd_faces (const Triangulation< 1, 3 > &tria, const unsigned int starting_index, std::ostream &out) const
 
template<int dim, int spacedim>
void write_ucd_lines (const Triangulation< dim, spacedim > &tria, const unsigned int starting_index, std::ostream &out) const
 
void write_ucd_lines (const Triangulation< 1, 1 > &tria, const unsigned int starting_index, std::ostream &out) const
 
void write_ucd_lines (const Triangulation< 1, 2 > &tria, const unsigned int starting_index, std::ostream &out) const
 
void write_ucd_lines (const Triangulation< 1, 3 > &tria, const unsigned int starting_index, std::ostream &out) const
 
void write_ucd_lines (const Triangulation< 2, 2 > &tria, const unsigned int starting_index, std::ostream &out) const
 
void write_ucd_lines (const Triangulation< 2, 3 > &tria, const unsigned int starting_index, std::ostream &out) const
 
template<int dim, int spacedim>
unsigned int n_boundary_faces (const Triangulation< dim, spacedim > &tria) const
 
unsigned int n_boundary_faces (const Triangulation< 1, 1 > &tria) const
 
unsigned int n_boundary_faces (const Triangulation< 1, 2 > &tria) const
 
unsigned int n_boundary_faces (const Triangulation< 1, 3 > &tria) const
 
template<int dim, int spacedim>
unsigned int n_boundary_lines (const Triangulation< dim, spacedim > &tria) const
 
unsigned int n_boundary_lines (const Triangulation< 1, 1 > &tria) const
 
unsigned int n_boundary_lines (const Triangulation< 1, 2 > &tria) const
 
unsigned int n_boundary_lines (const Triangulation< 1, 3 > &tria) const
 
unsigned int n_boundary_lines (const Triangulation< 2, 2 > &tria) const
 
unsigned int n_boundary_lines (const Triangulation< 2, 3 > &tria) const
 

Static Private Member Functions

static Point< 2 > svg_project_point (Point< 3 > point, Point< 3 > camera_position, Point< 3 > camera_direction, Point< 3 > camera_horizontal, float camera_focus)
 

Private Attributes

OutputFormat default_format
 
GridOutFlags::DX dx_flags
 
GridOutFlags::Msh msh_flags
 
GridOutFlags::Ucd ucd_flags
 
GridOutFlags::Gnuplot gnuplot_flags
 
GridOutFlags::Eps< 1 > eps_flags_1
 
GridOutFlags::Eps< 2 > eps_flags_2
 
GridOutFlags::Eps< 3 > eps_flags_3
 
GridOutFlags::XFig xfig_flags
 
GridOutFlags::Svg svg_flags
 
GridOutFlags::MathGL mathgl_flags
 
GridOutFlags::Vtk vtk_flags
 
GridOutFlags::Vtu vtu_flags
 

Detailed Description

This class provides a means to output a triangulation to a file in different formats. See the enum GridOut::OutputFormat for a list of formats and the corresponding output function names.

Usage is simple: either you use the direct form

ofstream output_file("some_filename");
GridOut().write_gnuplot (tria, output_file);

if you know which format you want to have, or if you want the format to be a runtime parameter, you can write

GridOut::OutputFormat grid_format =
GridOut::parse_output_format(get_format_name_from_somewhere());
ofstream output_file("some_filename" + GridOut::default_suffix(output_format));
GridOut().write (tria, output_file, output_format);

The function get_output_format_names() provides a list of possible names of output formats in a string that is understandable by the ParameterHandler class.

Note that here, we have created an unnamed object of type GridOut and called one of its write_* functions. This looks like as if the respective function could really be made static. This was not done in order to allow for parameters to be passed to the different output functions in a way compatible with the scheme of allowing the right output format to be selected at run-time through the generic write function.

In order to explain this, consider each function had one or more additional parameters giving the details of output, for example position of the spectator for 3d meshed, line thicknesses, etc. While this would allow each output function any flexibility it needs, it would not allow us to use the generic function write which is given a parameter determining the output format, since it is impractical to give it a list of parameters for each and every output format supported which it may then pass on to the respective output function.

Rather, we have chosen to let each object of this class GridOut have a set of parameters for each supported output format. These are collected in structures GridOutFlags::Eps(), GridOutFlags::Gnuplot(), etc declared in the GridOutFlags namespace, and you can set your preferred flags like this:

GridOut grid_out;
... // set some fields in ucd_flags
grid_out.set_flags (ucd_flags);
...
... // write some file with data_out

The respective output function then use the so-set flags. By default, they are set to reasonable values as described above and in the documentation of the different flags structures. Resetting the flags can be done by calling grid_out.set_flags (GridOutFlags::Ucd());, since the default constructor of each of the flags structures sets the parameters to their initial values.

The advantage of this approach is that it is possible to change the flags of one or more output formats according to your needs and later use the generic write function; the actual output function then called will use the flags as set before.

Note that some of the structures describing the flags of the different output formats are empty since the respective format does not support any flags. The structure and the set_flags function are provided anyway. Note also that some of the structures may differ between the dimensions supported by this class; they then have a template parameter, as usual.

Author
Wolfgang Bangerth, Guido Kanschat, Luca Heltai, Stefan Nauber, Christian W├╝lker
Date
1999 - 2013

Definition at line 843 of file grid_out.h.

Member Enumeration Documentation

Declaration of a name for each of the different output formats. These are used by the generic output function write() to determine the actual output format.

Enumerator
none 

Do nothing in write()

dx 

write() calls write_dx()

gnuplot 

write() calls write_gnuplot()

eps 

write() calls write_eps()

ucd 

write() calls write_ucd()

xfig 

write() calls write_xfig()

msh 

write() calls write_msh()

svg 

write() calls write_svg()

mathgl 

write() calls write_mathgl()

vtk 

write() calls write_vtk()

vtu 

write() calls write_vtu()

Definition at line 854 of file grid_out.h.

Constructor & Destructor Documentation

GridOut::GridOut ( )

Constructor.

Member Function Documentation

template<int dim, int spacedim>
void GridOut::write_dx ( const Triangulation< dim, spacedim > &  tria,
std::ostream &  out 
) const

Write triangulation in OpenDX format.

Cells or faces are written together with their level and their material id or boundary indicator, resp.

Not implemented for the codimension one case.

template<int dim, int spacedim>
void GridOut::write_gnuplot ( const Triangulation< dim, spacedim > &  tria,
std::ostream &  out,
const Mapping< dim, spacedim > *  mapping = 0 
) const

Write the triangulation in the gnuplot format.

In GNUPLOT format, each cell is written as a sequence of its confining lines. Apart from the coordinates of the line's end points, the level and the material of the cell are appended to each line of output. Therefore, if you let GNUPLOT draw a 2d grid as a 3d plot, you will see more refined cells being raised against cells with less refinement. Also, if you draw a cut through a 3d grid, you can extrude the refinement level in the direction orthogonal to the cut plane. The same can be done with the material id, which is plotted after the level.

A more useful application of this feature is the following: if you use the GNUPLOT command (for a 2d grid here)

* splot [:][:][2.5:3.5] "grid_file.gnuplot" *
* 

then the whole x- and y-range will be plotted, i.e. the whole grid, but only those lines with a z-value between 2.5 and 3.5. Since the z-values were chosen to be the level to which a cell belongs, this results in a plot of those cells only that belong to level 3 in this example. This way, it is easy to produce plots of the different levels of grid.

mapping is a pointer to a mapping used for the transformation of cells at the boundary. If zero, then use standard Q1 mapping.

Names and values of additional flags controlling the output can be found in the documentation of the GridOutFlags::Gnuplot() class.

Not implemented for the codimension one case.

template<int dim, int spacedim>
void GridOut::write_msh ( const Triangulation< dim, spacedim > &  tria,
std::ostream &  out 
) const

Write the triangulation in the msh format.

Msh is the format used by Gmsh and it is described in the gmsh user's guide. Besides the usual output of the grid only, you can decide through additional flags (see below, and the documentation of the GridOutFlags::Msh() class) whether boundary faces with non-zero boundary indicator shall be written to the file explicitly. This is useful, if you want to re-read the grid later on, since deal.II sets the boundary indicator to zero by default; therefore, to obtain the same triangulation as before, you have to specify faces with differing boundary indicators explicitly, which is done by this flag.

Names and values of further flags controlling the output can be found in the documentation of the GridOut::Msh() class.

Works also in the codimension one case.

template<int dim, int spacedim>
void GridOut::write_ucd ( const Triangulation< dim, spacedim > &  tria,
std::ostream &  out 
) const

Write the triangulation in the ucd format.

UCD (unstructured cell data) is the format used by AVS and some other programs. It is described in the AVS developer's guide. Besides the usual output of the grid only, you can decide through additional flags (see below, and the documentation of the GridOutFlags::Ucd() class) whether boundary faces with non-zero boundary indicator shall be written to the file explicitly. This is useful, if you want to re-read the grid later on, since deal.II sets the boundary indicator to zero by default; therefore, to obtain the same triangulation as before, you have to specify faces with differing boundary indicators explicitly, which is done by this flag.

Names and values of further flags controlling the output can be found in the documentation of the GridOut::Ucd() class.

Works also for the codimension one case.

template<int dim, int spacedim>
void GridOut::write_eps ( const Triangulation< dim, spacedim > &  tria,
std::ostream &  out,
const Mapping< dim, spacedim > *  mapping = 0 
) const

Write the triangulation in the encapsulated postscript format.

In this format, each line of the triangulation is written separately. We scale the picture such that either x-values or y-values range between zero and a fixed size. The other axis is scaled by the same factor. Which axis is taken to compute the scale and the size of the box it shall fit into is determined by the output flags (see below, and the documentation of the GridOutFlags::Eps() class).

The bounding box is close to the triangulation on all four sides, without an extra frame. The line width is chosen to be 0.5 by default, but can be changed. The line width is to be compared with the extension of the picture, of which the default is 300.

The flag color_lines_on_user_flag allows to draw lines with the user_flag set to be drawn in red. The colors black and red are defined as b and r in the preamble of the output file and can be changed there according to need.

mapping is a pointer to a mapping used for the transformation of cells at the boundary. If zero, then use standard Q1 mapping.

Names and values of additional flags controlling the output can be found in the documentation of the GridOutFlags::Eps() class. Especially the viewpoint for three dimensional grids is of importance here.

Not implemented for the codimension one case.

template<int dim, int spacedim>
void GridOut::write_xfig ( const Triangulation< dim, spacedim > &  tria,
std::ostream &  out,
const Mapping< dim, spacedim > *  mapping = 0 
) const

Write two-dimensional XFig-file.

This function writes all grid cells as polygons and optionally boundary lines. Several parameters can be adjusted by the XFigFlags control object.

If levels are coded to depth, the complete grid hierarchy is plotted with fine cells before their parents. This way, levels can be switched on and off in xfig by selecting levels.

Polygons are either at depth 900-level or at 900+material_id, depending on the flag level_depth. Accordingly, boundary edges are at depth 800-level or at 800+boundary_id. Therefore, boundary edges are alway in front of cells.

Not implemented for the codimension one case.

void GridOut::write_svg ( const Triangulation< 2, 2 > &  tria,
std::ostream &  out 
) const

Write the triangulation in the SVG format.

SVG (Scalable Vector Graphics) is an XML-based vector image format developed and maintained by the World Wide Web Consortium (W3C). This function conforms to the latest specification SVG 1.1, released on August 16, 2011.

The cells of the triangulation are written as polygons with additional lines at the boundary of the triangulation. A coloring of the cells is further possible in order to visualize a certain property of the cells such as their level or material id. A colorbar can be drawn to encode the chosen coloring. Moreover, a cell label can be added, showing level index, etc.

Note
This function is currently only implemented for two-dimensional grids in two space dimensions.
template<int dim, int spacedim>
void GridOut::write_svg ( const Triangulation< dim, spacedim > &  tria,
std::ostream &  out 
) const

Declaration of the same function as above for all other dimensions and space dimensions. This function is not currently implemented and is only declared to exist to support dimension independent programming.

template<int dim, int spacedim>
void GridOut::write_mathgl ( const Triangulation< dim, spacedim > &  tria,
std::ostream &  out 
) const

Write triangulation in MathGL script format. To interpret this file a version of MathGL>=2.0.0 is required.

To get a handle on the resultant MathGL script within a graphical environment an interpreter is needed. A suggestion to start with is mglview, which is bundled with MathGL. mglview can interpret and display small-to-medium MathGL scripts in a graphical window and enables conversion to other formats such as EPS, PNG, JPG, SVG, as well as view/display animations. Some minor editing, such as modifying the lighting or alpha channels, can also be done.

Note
Not implemented for the codimension one case.
template<int dim, int spacedim>
void GridOut::write_vtk ( const Triangulation< dim, spacedim > &  tria,
std::ostream &  out 
) const

Write triangulation in VTK format.

template<int dim, int spacedim>
void GridOut::write_vtu ( const Triangulation< dim, spacedim > &  tria,
std::ostream &  out 
) const

Write triangulation in VTU format.

template<int dim, int spacedim>
void GridOut::write ( const Triangulation< dim, spacedim > &  tria,
std::ostream &  out,
const OutputFormat  output_format,
const Mapping< dim, spacedim > *  mapping = 0 
) const

Write grid to out according to the given data format. This function simply calls the appropriate write_* function.

template<int dim, int spacedim>
void GridOut::write ( const Triangulation< dim, spacedim > &  tria,
std::ostream &  out,
const Mapping< dim, spacedim > *  mapping = 0 
) const

Write mesh in default format set by ParameterHandler.

void GridOut::set_flags ( const GridOutFlags::DX flags)

Set flags for DX output

void GridOut::set_flags ( const GridOutFlags::Msh flags)

Set flags for GMSH output

void GridOut::set_flags ( const GridOutFlags::Ucd flags)

Set flags for UCD output

void GridOut::set_flags ( const GridOutFlags::Gnuplot flags)

Set flags for GNUPLOT output

void GridOut::set_flags ( const GridOutFlags::Eps< 1 > &  flags)

Set flags for EPS output of a one-dimensional triangulation

void GridOut::set_flags ( const GridOutFlags::Eps< 2 > &  flags)

Set flags for EPS output of a two-dimensional triangulation

void GridOut::set_flags ( const GridOutFlags::Eps< 3 > &  flags)

Set flags for EPS output of a three-dimensional triangulation

void GridOut::set_flags ( const GridOutFlags::XFig flags)

Set flags for EPS output of a three-dimensional triangulation

void GridOut::set_flags ( const GridOutFlags::Svg flags)

Set flags for SVG output

void GridOut::set_flags ( const GridOutFlags::MathGL flags)

Set flags for MathGL output

void GridOut::set_flags ( const GridOutFlags::Vtk flags)

Set flags for VTK output

void GridOut::set_flags ( const GridOutFlags::Vtu flags)

Set flags for VTU output

static std::string GridOut::default_suffix ( const OutputFormat  output_format)
static

Provide a function that can tell us which suffix a given output format usually has. For example, it defines the following mappings:

  • OpenDX: .dx
  • gnuplot: .gnuplot
  • ucd: .inp
  • eps: .eps.

Similar mappings are provided for all implemented formats.

Since this function does not need data from this object, it is static and can thus be called without creating an object of this class.

std::string GridOut::default_suffix ( ) const

Default suffix for the default output format selected throuw ParameterHandler.

static OutputFormat GridOut::parse_output_format ( const std::string &  format_name)
static

Return the OutputFormat value corresponding to the given string. If the string does not match any known format, an exception is thrown.

Since this function does not need data from this object, it is static and can thus be called without creating an object of this class. Its main purpose is to allow a program to use any implemented output format without the need to extend the program's parser each time a new format is implemented.

To get a list of presently available format names, e.g. to give it to the ParameterHandler class, use the function get_output_format_names().

static std::string GridOut::get_output_format_names ( )
static

Return a list of implemented output formats. The different names are separated by vertical bar signs (`|') as used by the ParameterHandler classes.

static void GridOut::declare_parameters ( ParameterHandler param)
static

Declare parameters in ParameterHandler.

void GridOut::parse_parameters ( ParameterHandler param)

Parse parameters of ParameterHandler.

std::size_t GridOut::memory_consumption ( ) const

Determine an estimate for the memory consumption (in bytes) of this object.

GridOut::DeclException0 ( ExcInvalidState  )

Exception

template<int dim, int spacedim>
void GridOut::write_msh_faces ( const Triangulation< dim, spacedim > &  tria,
const unsigned int  starting_index,
std::ostream &  out 
) const
private

Write the grid information about faces to out. Only those faces are printed which are on the boundary and which have a boundary indicator not equal to zero, since the latter is the default for boundary faces.

Since cells and faces are continuously numbered, the starting_index for the numbering of the faces is passed also.

This function unfortunately can not be included in the regular write_msh function, since it needs special treatment for the case dim==1, in which case the face iterators are void*'s and lack the member functions which are called. We would not actually call these functions, but the compiler would complain anyway when compiling the function for dim==1. Bad luck.

void GridOut::write_msh_faces ( const Triangulation< 1, 1 > &  tria,
const unsigned int  starting_index,
std::ostream &  out 
) const
private

Declaration of the specialization of above function for 1d. Does nothing.

void GridOut::write_msh_faces ( const Triangulation< 1, 2 > &  tria,
const unsigned int  starting_index,
std::ostream &  out 
) const
private

Declaration of the specialization of above function for 1d, 2sd. Does nothing.

template<int dim, int spacedim>
void GridOut::write_msh_lines ( const Triangulation< dim, spacedim > &  tria,
const unsigned int  starting_index,
std::ostream &  out 
) const
private

Write the grid information about lines to out. Only those lines are printed which are on the boundary and which have a boundary indicator not equal to zero, since the latter is the default for boundary faces.

Since cells and faces are continuously numbered, the starting_index for the numbering of the lines is passed also.

This function unfortunately can not be included in the regular write_msh function, since it needs special treatment for the case dim==1 and dim==2, in which case the edge iterators are void*'s and lack the member functions which are called. We would not actually call these functions, but the compiler would complain anyway when compiling the function for dim==1/2. Bad luck.

void GridOut::write_msh_lines ( const Triangulation< 1, 1 > &  tria,
const unsigned int  starting_index,
std::ostream &  out 
) const
private

Declaration of the specialization of above function for 1d. Does nothing.

void GridOut::write_msh_lines ( const Triangulation< 1, 2 > &  tria,
const unsigned int  starting_index,
std::ostream &  out 
) const
private

Declaration of the specialization of above function for 1d, 2sd. Does nothing.

void GridOut::write_msh_lines ( const Triangulation< 2, 2 > &  tria,
const unsigned int  starting_index,
std::ostream &  out 
) const
private

Declaration of the specialization of above function for 2d. Does nothing.

void GridOut::write_msh_lines ( const Triangulation< 2, 3 > &  tria,
const unsigned int  starting_index,
std::ostream &  out 
) const
private

Declaration of the specialization of above function for 2d, 3sd. Does nothing.

template<int dim, int spacedim>
void GridOut::write_ucd_faces ( const Triangulation< dim, spacedim > &  tria,
const unsigned int  starting_index,
std::ostream &  out 
) const
private

Write the grid information about faces to out. Only those faces are printed which are on the boundary and which have a boundary indicator not equal to zero, since the latter is the default for boundary faces.

Since cells and faces are continuously numbered, the starting_index for the numbering of the faces is passed also.

This function unfortunately can not be included in the regular write_ucd function, since it needs special treatment for the case dim==1, in which case the face iterators are void*'s and lack the member functions which are called. We would not actually call these functions, but the compiler would complain anyway when compiling the function for dim==1. Bad luck.

void GridOut::write_ucd_faces ( const Triangulation< 1, 1 > &  tria,
const unsigned int  starting_index,
std::ostream &  out 
) const
private

Declaration of the specialization of above function for 1d. Does nothing.

void GridOut::write_ucd_faces ( const Triangulation< 1, 2 > &  tria,
const unsigned int  starting_index,
std::ostream &  out 
) const
private

Declaration of the specialization of above function for 1d, 2sd. Does nothing.

template<int dim, int spacedim>
void GridOut::write_ucd_lines ( const Triangulation< dim, spacedim > &  tria,
const unsigned int  starting_index,
std::ostream &  out 
) const
private

Write the grid information about lines to out. Only those lines are printed which are on the boundary and which have a boundary indicator not equal to zero, since the latter is the default for boundary lines.

Since cells, faces and lines are continuously numbered, the starting_index for the numbering of the faces is passed also.

This function unfortunately can not be included in the regular write_ucd function, since it needs special treatment for the case dim==1/2, in which case the edge iterators are void*'s and lack the member functions which are called. We would not actually call these functions, but the compiler would complain anyway when compiling the function for dim==1/2. Bad luck.

void GridOut::write_ucd_lines ( const Triangulation< 1, 1 > &  tria,
const unsigned int  starting_index,
std::ostream &  out 
) const
private

Declaration of the specialization of above function for 1d. Does nothing.

void GridOut::write_ucd_lines ( const Triangulation< 1, 2 > &  tria,
const unsigned int  starting_index,
std::ostream &  out 
) const
private

Declaration of the specialization of above function for 1d, 2sd. Does nothing.

void GridOut::write_ucd_lines ( const Triangulation< 2, 2 > &  tria,
const unsigned int  starting_index,
std::ostream &  out 
) const
private

Declaration of the specialization of above function for 2d. Does nothing.

void GridOut::write_ucd_lines ( const Triangulation< 2, 3 > &  tria,
const unsigned int  starting_index,
std::ostream &  out 
) const
private

Declaration of the specialization of above function for 2d, 3sd. Does nothing.

static Point<2> GridOut::svg_project_point ( Point< 3 >  point,
Point< 3 >  camera_position,
Point< 3 >  camera_direction,
Point< 3 >  camera_horizontal,
float  camera_focus 
)
staticprivate

This function projects a three-dimensional point (Point<3> point) onto a two-dimensional image plane, specified by the position of the camera viewing system (Point<3> camera_position), camera direction (Point<3> camera_position), camera horizontal (Point<3> camera_horizontal, necessary for the correct alignment of the later images), and the focus of the camera (float camera_focus).

For SVG output of grids.

template<int dim, int spacedim>
unsigned int GridOut::n_boundary_faces ( const Triangulation< dim, spacedim > &  tria) const
private

Return the number of faces in the triangulation which have a boundary indicator not equal to zero. Only these faces are explicitly printed in the write_* functions; all faces with indicator numbers::internal_face_boundary_id are interior ones and an indicator with value zero for faces at the boundary

are considered default.

This function always returns an empty list in one dimension.

The reason for this function is the same as for write_ucd_faces(). See there for more information.

unsigned int GridOut::n_boundary_faces ( const Triangulation< 1, 1 > &  tria) const
private

Declaration of the specialization of above function for 1d. Simply returns zero.

unsigned int GridOut::n_boundary_faces ( const Triangulation< 1, 2 > &  tria) const
private

Declaration of the specialization of above function for 1d, 2sd. Simply returns zero.

template<int dim, int spacedim>
unsigned int GridOut::n_boundary_lines ( const Triangulation< dim, spacedim > &  tria) const
private

Return the number of lines in the triangulation which have a boundary indicator not equal to zero. Only these lines are explicitly printed in the write_* functions; all lines with indicator numbers::internal_face_boundary_id are interior ones and an indicator with value zero for faces at the boundary are considered default.

This function always returns an empty list in one and two dimensions.

The reason for this function is the same as for write_ucd_faces(). See there for more information.

unsigned int GridOut::n_boundary_lines ( const Triangulation< 1, 1 > &  tria) const
private

Declaration of the specialization of above function for 1d. Simply returns zero.

unsigned int GridOut::n_boundary_lines ( const Triangulation< 1, 2 > &  tria) const
private

Declaration of the specialization of above function for 1d, 2sd. Simply returns zero.

unsigned int GridOut::n_boundary_lines ( const Triangulation< 2, 2 > &  tria) const
private

Declaration of the specialization of above function for 2d. Simply returns zero.

unsigned int GridOut::n_boundary_lines ( const Triangulation< 2, 3 > &  tria) const
private

Declaration of the specialization of above function for 2d, 3sd. Simply returns zero.

Member Data Documentation

OutputFormat GridOut::default_format
private

The default output format, set by a ParameterHandler.

Definition at line 1295 of file grid_out.h.

GridOutFlags::DX GridOut::dx_flags
private

Flags for OpenDX output.

Definition at line 1300 of file grid_out.h.

GridOutFlags::Msh GridOut::msh_flags
private

Flags for GMSH output. Can be changed by using the set_flags(const GridOutFlags::Msh&) function.

Definition at line 1306 of file grid_out.h.

GridOutFlags::Ucd GridOut::ucd_flags
private

Flags for UCD output. Can be changed by using the set_flags(const GridOutFlags::Ucd&) function.

Definition at line 1312 of file grid_out.h.

GridOutFlags::Gnuplot GridOut::gnuplot_flags
private

Flags to be used upon output of GNUPLOT data. Can be changed by using the set_flags(const GridOutFlags::Gnuplot&) function.

Definition at line 1318 of file grid_out.h.

GridOutFlags::Eps<1> GridOut::eps_flags_1
private

Flags to be used upon output of EPS data in one space dimension. Can be changed by using the set_flags(const GridOutFlags::Eps<1>&) function.

Definition at line 1326 of file grid_out.h.

GridOutFlags::Eps<2> GridOut::eps_flags_2
private

Flags to be used upon output of EPS data in two space dimensions. Can be changed by using the set_flags function.

Definition at line 1334 of file grid_out.h.

GridOutFlags::Eps<3> GridOut::eps_flags_3
private

Flags to be used upon output of EPS data in three space dimensions. Can be changed by using the set_flags function.

Definition at line 1342 of file grid_out.h.

GridOutFlags::XFig GridOut::xfig_flags
private

Flags used for XFig output.

Definition at line 1347 of file grid_out.h.

GridOutFlags::Svg GridOut::svg_flags
private

Flags used for Svg output.

Definition at line 1352 of file grid_out.h.

GridOutFlags::MathGL GridOut::mathgl_flags
private

Flags for MathGL output.

Definition at line 1357 of file grid_out.h.

GridOutFlags::Vtk GridOut::vtk_flags
private

Flags for VTK output.

Definition at line 1362 of file grid_out.h.

GridOutFlags::Vtu GridOut::vtu_flags
private

Flags for VTU output.

Definition at line 1367 of file grid_out.h.


The documentation for this class was generated from the following file: