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

new "Background Mesh" command
parent 21a28d32
No related branches found
No related tags found
No related merge requests found
Source diff could not be displayed: it is too large. Options to address this: view the blob.
%{
// $Id: Gmsh.y,v 1.217 2006-01-28 21:13:35 geuzaine Exp $
// $Id: Gmsh.y,v 1.218 2006-01-28 21:44:22 geuzaine Exp $
//
// Copyright (C) 1997-2006 C. Geuzaine, J.-F. Remacle
//
......@@ -1799,6 +1799,17 @@ Command :
}
Free($1); Free($2); Free($6);
}
| tSTRING tSTRING tSTRING '[' FExpr ']' tEND
{
if(!strcmp($1, "Background") && !strcmp($2, "Mesh") && !strcmp($3, "View")){
Post_View **vv = (Post_View **)List_Pointer_Test(CTX.post.list, (int)$5);
if(vv) BGMWithView(*vv);
}
else{
yymsg(GERROR, "Unknown command '%s'", $1);
}
Free($1); Free($2); Free($3);
}
| tSTRING FExpr tEND
{
if(!strcmp($1, "Sleep")){
......
......@@ -2,7 +2,7 @@
/* A lexical scanner generated by flex */
/* Scanner skeleton version:
* $Header: /cvsroot/gmsh/Parser/Gmsh.yy.cpp,v 1.250 2006-01-28 21:16:36 geuzaine Exp $
* $Header: /cvsroot/gmsh/Parser/Gmsh.yy.cpp,v 1.251 2006-01-28 21:44:22 geuzaine Exp $
*/
#define FLEX_SCANNER
......@@ -725,7 +725,7 @@ char *yytext;
#line 1 "Gmsh.l"
#define INITIAL 0
#line 2 "Gmsh.l"
// $Id: Gmsh.yy.cpp,v 1.250 2006-01-28 21:16:36 geuzaine Exp $
// $Id: Gmsh.yy.cpp,v 1.251 2006-01-28 21:44:22 geuzaine Exp $
//
// Copyright (C) 1997-2006 C. Geuzaine, J.-F. Remacle
//
......
\input texinfo.tex @c -*-texinfo-*-
@c $Id: gmsh.texi,v 1.197 2006-01-28 21:16:36 geuzaine Exp $
@c $Id: gmsh.texi,v 1.198 2006-01-28 21:44:23 geuzaine Exp $
@c
@c Copyright (C) 1997-2006 C. Geuzaine, J.-F. Remacle
@c
......@@ -1942,15 +1942,16 @@ Attractors only work with the 2D anisotropic algorithm (see the
You can give Gmsh an explicit background mesh in the form of a scalar
post-processing view (see @ref{Post-processing commands}, and @ref{File
formats}) in which the nodal values are the target element sizes. This
method is very general but it requires a first (usually rough) mesh and a
way to compute the target sizes on this mesh (usually through an error
estimation procedure, in an iterative process of mesh adaptation). Note that
the target element sizes can be constrained by the characteristic lengths
defined in the geometrical model if the
@code{Mesh.ConstrainedBackgroundMesh} option is set. To load a background
mesh, use the @code{-bgm} command-line option (@pxref{Command-line options})
or select `Apply as background mesh' in the post-processing view option
menu.
method is very general but it requires a first (usually rough) mesh and
a way to compute the target sizes on this mesh (usually through an error
estimation procedure, in an iterative process of mesh adaptation). Note
that the target element sizes can be constrained by the characteristic
lengths defined in the geometrical model if the
@code{Mesh.ConstrainedBackgroundMesh} option is set. To load a
background mesh, you can use the @code{-bgm} command-line option
(@pxref{Command-line options}), select `Apply as background mesh' in the
post-processing view option menu, or use the @code{Background Mesh}
command in a script (@pxref{Post-processing commands}).
Background meshes are supported by all algorithms except the algorithms
based on Netgen.
......@@ -2353,6 +2354,10 @@ post-processing view numbers start at 0.
@item Delete Empty Views;
Deletes (removes) all the empty post-processing views.
@item Background Mesh View[@var{expression}];
Applies the @var{expression}-th post-processing view as the current
background mesh. Note that post-processing view numbers start at 0.
@item Plugin (@var{string}) . Run;
Executes the plugin @var{string}. The list of default plugins is given in
@ref{Post-processing plugins}.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment