| V_Sim API - Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | ||||
int pot2surf_direct (const gchar *surf_file_to_write,const gchar *pot_file_to_read,int nsurfs_to_build,const float *surf_value,const gchar **surf_name); gboolean pot2surfCreate (Surfaces **surf,ScalarField *field,double isoValue,int id,const gchar *name); gboolean pot2surfParse_XMLFile (const gchar *filename,Surfaces **surfaces,ScalarField *field,GError **error); gboolean pot2surfSave_XMLFile (const gchar *filename,float *values,VisuSurfacesResources **res,int n,GError **error);
Originally written by Luc Billard for his program VISUALISE. It has been since transformed to a single function and integrated in V_Sim. .pot file are text files which specification are the following :
1st line: full pathname of the potential file to read
2nd line: full pathname of the surface file to build
3rd line: an integer giving the nbr n of isosurfaces to build
Each of the n following lines must match the pattern [value name] where value is a real number for the isovalue and name is the name given for the corresponding isosurface to build. Each surface should be named surface_*.
The function will fail if it finds no isosurface corresponding to some of the given isovalues. The panelSurfacesTools contains a frontend to build valid .instruc files. This panel is originally integrated in V_Sim. You can access it through the Convert tab in the Isosurfaces panel.
int pot2surf_direct (const gchar *surf_file_to_write,const gchar *pot_file_to_read,int nsurfs_to_build,const float *surf_value,const gchar **surf_name);
Read the given pot file and produce an associated surf file. WARNING, it may be removed later.
|
target surf file |
|
source pot file |
|
number of surfaces to build |
|
an array with iso-values |
|
an array with iso-surface names. |
Returns : |
0 in case of success, n!=0 otherwise. |
gboolean pot2surfCreate (Surfaces **surf,ScalarField *field,double isoValue,int id,const gchar *name);
Call pot2surfCreate_uniform_mesh or pot2surfCreate_nonuniform_mesh
depending on the meshflag meshtype of the scalar field.
Then create on the fly a surface from the scalar field field. If name is given, the surface
is created with it, if not, "Isosurface id + 1" is used. surf can already
contains several surfaces, in that case, the new surface is added. If surf is
NULL, then a new Surfaces object is created and returned.
|
a location on a Surfaces pointer ; |
|
the scalar field to create the surface from ; |
|
the value of the isosurface ; |
|
an integer identifying the surface ; |
|
the name of the surface to use (can be NULL). |
Returns : |
TRUE if the surface is created. |
gboolean pot2surfParse_XMLFile (const gchar *filename,Surfaces **surfaces,ScalarField *field,GError **error);
Parse the given XML file, looking for the <surfaces> tag and create the given surfaces.
|
a path to a file. |
|
a location on a Surfaces pointer. |
|
the scalar field to create the surface from. |
|
a location to store a possible error. |
Returns : |
FALSE if a error occured. |
gboolean pot2surfSave_XMLFile (const gchar *filename,float *values,VisuSurfacesResources **res,int n,GError **error);
Export the surface resources into an XML file.
|
a path to a file. |
|
an array of n values.
|
|
an array of n VisuSurfacesResources.
|
|
number of surface resources to export. |
|
a location to store a possible error. |
Returns : |
FALSE if a error occured. |