#ifndef isolines_H #define isolines_H #include #include #define MAX_INT 0x7ffffff typedef struct iso_coords { double axis[DIM]; }iso_coords; typedef struct iso_triangle { iso_coords P; iso_coords Q; iso_coords R; }iso_triangle; typedef struct iso_triangle_list { struct iso_triangle* triangle; struct iso_triangle_list* next; }iso_triangle_list; iso_triangle_list* iso_split_cell_in_triangles(dyg_node* node, dyg_dimensions* dim); void iso_plot_zeros_in_triangle ( FILE* f, double Px, double Py, double Pf, double Qx, double Qy, double Qf, double Rx, double Ry, double Rf ); void iso_isolines ( FILE* f, dyg_header* header, int param, double fStep, double fStart, bool isLinear ); void iso_process_triangle ( FILE* f, double fStart, double fStep, bool isLinear, iso_triangle* T ); double iso_avail ( dyg_node* node,dyg_node_list* list, iso_coords* q, int param,dyg_dimensions* inicial_dim, int inicial_axis, bool virtual ); bool iso_split_criterion(dyg_dimensions* dim); int iso_dummy_data_adjust(dyg_node* node); int iso_virtual_data_adjust(dyg_node* node); double iso_interpole(double* val, dyg_dimensions* dim, iso_coords* p); dyg_node_list* iso_find_leafs ( dyg_node* root, dyg_dimensions* dim, int naxis, int deep, int max_deep, bool virtual_cells ); #endif // isolines_H