F5surface.h

00001 /*
00002  *
00003  *  $Id: F5surface.h,v 1.16 2008/02/26 23:27:14 werner Exp $
00004  *
00005  */
00006 
00007 #ifndef __F5surface_H
00008 #define __F5surface_H
00009 
00010 #include <F5/F5types.h>
00011 #include <F5/F5coordinates.h>
00012 #include "F5F.h"
00013 
00014 #include "F5WinDLLApi.h"
00015 
00016 #ifdef  __cplusplus
00017 extern "C"
00018 {
00019 #endif
00020 
00043 F5_API F5Path*F5write_triangular_surface(hid_t file_id, double time,
00044                                          const char*name,
00045                                          const F5_vec3_point_t*Coords, int nCoords,
00046                                          const F5_triangle32_t*Triangles, int nTriangles);
00047 
00048 
00049 
00055 F5_API F5Path*F5Cwrite_triangular_surface(hid_t file_id, double time,
00056                                           const char*name,
00057                                           const F5_vec3_point_t*Coords, int nCoords,
00058                                           const F5_triangle32_t*Triangles, int nTriangles,
00059                                           const char*coordinate_system);
00060 
00061         
00079 F5_API F5Path*F5Flink_triangular_surface(F5Path*target, double time,
00080                                          const char*gridname,
00081                                          const F5_vec3_point_t*Coords, int nCoords,
00082                                          const F5_triangle_t*Triangles, int nTriangles,
00083                                          const char*coordinate_system
00084 #ifdef __cplusplus
00085                                          = FIBER_HDF5_DEFAULT_CHART
00086 #endif
00087         );
00088 
00089 
00090 
00091         
00095 F5_API void F5write_triangular_surface_vertex_vectors(hid_t file_id, double time,
00096                                                const char*name,
00097                                                const F5_vec3_point_t*Coords, int nCoords,
00098                                                const F5_triangle_t*Triangles, int nTriangles,
00099                                                const char*fieldname,
00100                                                const F5_vec3_float_t*VertexNormals);
00101         
00105 F5_API void F5write_triangular_surface_cell_vectors(hid_t file_id, double time,
00106                                              const char*name,
00107                                              const F5_vec3_point_t*Coords, int nCoords,
00108                                              const F5_triangle_t*Triangles, int nTriangles,
00109                                              const char*fieldname,
00110                                              const F5_vec3_float_t*CellNormals);
00111 
00112         
00125 F5_API void F5write_regular_surface(hid_t file_id, double time,
00126                              const char*name,
00127                              const F5_vec3_point_t*Coords,
00128                              int Xdims, int Ydims);
00129 
00134 F5_API void F5write_regular_surface_vertex_field_dbl(hid_t file_id, double time,
00135                                               const char*name,
00136                                               const F5_vec3_point_t*Coords,
00137                                               int Xdims, int Ydims,
00138                                               const char*fieldname,
00139                                               double*data);
00140 
00146 F5_API void F5write_regular_surface_cell_field_dbl(hid_t file_id, double time,
00147                                             const char*name,
00148                                             const F5_vec3_point_t*Coords,
00149                                             int Xdims, int Ydims,
00150                                             const char*fieldname,
00151                                             double*data);
00152 
00157 F5_API void F5write_regular_surface_vertex_field_rgb(hid_t file_id, double time,
00158                                               const char*name,
00159                                               const F5_vec3_point_t*Coords,
00160                                               int Xdims, int Ydims,
00161                                               const char*fieldname,
00162                                               F5_rgb_t*data);
00163 
00169 F5_API void F5Cwrite_regular_surface(hid_t file_id, double time,
00170                               const char*name,
00171                               const F5_vec3_point_t*Coords, int Xdims, int Ydims,
00172                               const char*coordinate_system);
00173 
00177 F5_API void F5write_quad_surface(hid_t file_id, double time,
00178                           const char*name,
00179                           const F5_vec3_point_t*Coords, int nCoords,
00180                           const F5_quad_t*Quads, int nQuads);
00181                           
00182                 
00183 
00188 F5_API void F5Cwrite_quad_surface(hid_t file_id, double time,
00189                           const char*name,
00190                           const F5_vec3_point_t*Coords, int nCoords,
00191                           const F5_quad_t*Quads, int nQuads,
00192                           const char*coordinate_system);
00193                           
00194                           
00195 
00199 F5_API void F5write_irregular_surface(hid_t file_id, double time,
00200                                const char*name,
00201                                const F5_vec3_point_t*Coords,
00202                                int nCells,
00203                                const int*CellSizes,
00204                                const int**CellVertices);
00205 
00206 #ifdef  __cplusplus
00207 }    /* extern "C" */
00208 #endif
00209 
00210 #endif  /* __F5surface_H */
00211