#include <SDL/SDL.h>
#include <SDL/SDL_thread.h>
#include <math.h>
#include <string.h>
#include <stdlib.h>
#include <gtk/gtk.h>
#include "cursor.h"
Data Structures | |
| struct | _rendersurf |
| struct | _vec3f |
| struct | _vec4f |
| struct | _vec7f_t |
| struct | _flow_data_t |
| struct | _sl_t |
Defines | |
| #define | PI |
| #define | phABS(x) |
| #define | EPS |
| #define | PALLEN |
| #define | HULL |
| #define | ADAPT_SCAN_STEP |
| #define | ADAPT_SCAN_SH |
| #define | HEIGHT_ADD |
| #define | NO_MAPWRAP |
| #define | FP_SHIFT |
| #define | FP_MUL |
| #define | FP_DIV |
| #define | NEAR_RT |
| #define | SKYZBUF |
| #define | MIN_IHEI |
| #define | MAX_IHEI |
| #define | VELOCITY |
| #define | PRESSURE |
| #define | VORTICITY |
| #define | EULER |
| #define | RK2 |
| #define | SP_MANUAL |
| #define | SP_GRID |
| #define | SP_EVENLY |
| #define | SLTEX_NONE |
| #define | SLTEX_CONT |
| #define | SLTEX_DISC |
| #define | SLTEX_BLUR |
| #define | SKY |
| #define | _normalize_lensto(v1, len) |
| #define | _normalize_FAST(v1) |
| #define | _normalize(v1) |
| #define | _normalize2D(v1) |
| #define | _dotprod(v1, v2, dot) |
| #define | _crossprod(v1, v2, vcross) |
| #define | _draw_cross(x, y, screen_to_blit, col) |
| #define | GTK_COLORSET(parentWindow, widgetName, color_to_set) |
| #define | GTK_COLORGET(colorbutton, return_var_for_color) |
| #define | LINEAR_FLOAT_IPOL_i01(fact, val1, val2, fipoled) |
| #define | LINEAR_FLOAT_IPOL(fact, val1, val2, fipoled) |
| #define | BILIN_FLOAT_IPOL_i01(fact1, fact2, f11, f12, f21, f22, fipoled) |
| #define | BILIN_FLOAT_IPOL(fact1, fact2, f11, f12, f21, f22, fipoled) |
| #define | lineDDA(x0, y0, xEnd, yEnd, color, dst, dst_w, dst_h) |
| #define | FAST_CLEAR_KERNEL(start_exp, dw_cnt_exp, val32) |
| #define | FAST_CLEAR(start_exp, dw_cnt_exp, val32) |
| #define | FAST_BLIT(src_exp, dst_exp, dw_cnt_exp) |
| #define | BILINEAR_IPOL(fact1, fact2, c11, c12, c21, c22, filtered_val) |
| #define | MAX_SLICE_DIST |
| #define | VIEW_2D |
| #define | VIEW_3D |
| #define | TRILIN |
| #define | BILIN |
Typedefs | |
| typedef unsigned int | uint32_t |
| typedef unsigned short int | uint16_t |
| typedef _rendersurf | rendersurf |
| typedef _vec3f | vec3f |
| typedef _vec4f | vec4f |
| typedef _vec7f_t | vec7f_t |
| typedef _flow_data_t | flow_data_t |
| typedef _sl_t | sl_t |
Functions | |
| void | getinput (void) |
| Input-handler. | |
| void | build_hmap_cmap (int data_selector, uint32_t **hmap, uint32_t **cmap, uint32_t **cmap_3d) |
| Build the "height- and colormap" from the given data. Also allocates the needed space in memory. | |
| void | genland (uint32_t *hdata, uint32_t *colormap, int max_x, int max_y) |
| void | rotozoom (rendersurf *rtsurf, uint32_t *cdata, float *ipos, float *, float *, float *) |
| void | fhrc (rendersurf *rtsurf, uint32_t *low_mip, uint32_t *hdata, uint32_t *cdata, float *ipos, float *ifor, float *iup, float *istr) |
| void | draw_arrows (uint32_t *dst, int dst_w, int dst_h, vec4f *dir_data, float *len_data, int add_data_idx, float arrowcnt_x, float arrowcnt_y, float arrow_width) |
| Draw Arrows. | |
| void | map_screenpixel_to_datapos (float *in, float *out) |
| void | draw_single_streamline (uint32_t *dst, int dst_w, int dst_h, vec4f *dir_data, float line_width, float *seed_point, uint32_t line_color) |
| Draw single streamline. No additional logic, just a simple streamline evaluator and plotter. | |
| void | draw_streamlines_gridseed (uint32_t *dst, int dst_w, int dst_h, vec4f *dir_data, float line_width, float linecnt_x, float linecnt_y, uint32_t line_color) |
| Draw streamlines (grid). Draw streamlines with seepoints placed on grid. | |
| void | draw_streamlines_evenly_spaced (uint32_t *dst, int dst_w, int dst_h, vec4f *dir_data, float line_width, float dsep, float dtest, uint32_t line_color) |
| Draw streamlines (evenly spaced). | |
| void | dirblur_tex (uint32_t *src, uint32_t *dst, int dst_w, int dst_h, vec4f *dir_data, float blur_amount) |
| void | generate_clouds (uint32_t *dst, int dst_w, int dst_h) |
| void | draw_pencil_sketch (uint32_t *dst, int dst_w, int dst_h, vec4f *dir_data, float *len_data, int add_data_idx) |
| Pencil-sketch Rendering. Use the current value (length, magnitude, ...) to select an appropriate sketch-texture. | |
Variables | |
| uint32_t | pcolors [PALLEN] |
| Uint32 * | low_haddress |
| vec4f * | vdata_grad |
| int | curr_bg_value |
| vec3f * | tmp_data |
| unsigned char | diffborder |
| int | depth_blur |
| int | rendermode_arrows |
| unsigned char | arrows_enabled |
| unsigned char | streamlines_enabled |
| unsigned char | clouds_enabled |
| unsigned char | diff_method |
| unsigned char | pick_streamline_seedpoint |
| float | diff_stepsize |
| float | dsep |
| float | dtest |
| float | dtest_factor |
| float | grid_count_x |
| float | grid_count_y |
| float | grid_count_arrows_x |
| float | grid_count_arrows_y |
| float | arrow_w |
| float | arrow_scale_general |
| int | sp_placement |
| int | sl_tex |
| float | sl_tex_period |
| float | sl_blur_amount |
| float | sl_width |
| int | sl_tapering |
| int | sl_triangle_glyphs |
| float | sl_triangle_glyphs_scale |
| uint32_t | sl_stopafter |
| int | show_bg |
| uint32_t | sl_color |
| uint32_t | arrow_color |
| flow_data_t | fdo |
| uint32_t * | tmp_hdata |
| SDL_Surface * | sky |
| uint32_t * | sdata |
| int | WATERLEVEL |
| int | last_tab_idx |
| int | blur_arrows_streamlines |
| int | val_cmod |
| float | clouds_blur_amount |
| float | clouds_roughness |
| float | val_blur_amount |
| uint32_t * | sketch_tex [5] |
| uint32_t | sketch_w_m1 |
| uint32_t | sketch_h_m1 |
| uint32_t | curr_sc_x |
| uint32_t | curr_sc_y |
| uint32_t | sketch_sc_x_off |
| uint32_t | sketch_sc_y_off |
| unsigned char | pencil_sketch |
| float | ipos [] |
| SDL_Surface * | screen |
| uint32_t * | filter_screen |
| uint32_t * | fake_screen |
| int | taking_screenshot |
| rendersurf | rtsurf |
| uint32_t * | voxel |
| uint32_t | sc_x |
| uint32_t | sc_y |
| uint32_t | view_dist |
| int | sh_w |
| int | next_sh_w |
| int | draw_cross |
| static __inline long long | c1 |
| GtkWidget * | fs |
| GMainLoop * | ml |
| int | GUIdone |
| int | GUIactive |
| char | last_fname [FILENAME_MAX] |
| fsc_y | |
| ratio_kipp | |
| float | fsc_ratio |
| float | recip_fsc_ratio |
| float | hrecip_fsc_ratio |
| float | recip_fscx_ratio |
| float | recip_fscy |
| int | slice_center |
| float | slice_cam [4] |
| float | slice_cam_str [4] |
| float | slice_cam_up [4] |
| float | slice_cam_for [4] |
| float | slice_dist |
| int | slice_filter |
| int | rendermode |
| int | faceshade |
| unsigned char | diffborder |
| int | curr_w |
| int | curr_h |
| int | curr_w_m1 |
| int | curr_h_m1 |
| int | refresh |
| uint32_t | lightcolor |
| float | light_pos [4] |
| float | light_for [4] |
| float | light_up [4] |
| float | light_str [4] |
| float | phong_exponent |
| float | Iamb |
| float | Idiff |
| float | Ispec |
| float | Isum |
| float | HdotN |
| float | Iamb_factor |
| float | Idiff_factor |
| float | Ispec_factor |
| float | ipol_normal [4] |
| float | halfvec [4] |
| float | view [4] |
| int | use_occlusion_data |
|
||||||||||||||||||||
|
Build the "height- and colormap" from the given data. Also allocates the needed space in memory.
|
|
||||||||||||||||||||||||||||||||||||||||
|
Draw Arrows.
|
|
||||||||||||||||||||||||||||
|
Pencil-sketch Rendering. Use the current value (length, magnitude, ...) to select an appropriate sketch-texture.
|
|
||||||||||||||||||||||||||||||||
|
Draw single streamline. No additional logic, just a simple streamline evaluator and plotter.
|
|
||||||||||||||||||||||||||||||||||||
|
Draw streamlines (evenly spaced).
|
|
||||||||||||||||||||||||||||||||||||
|
Draw streamlines (grid). Draw streamlines with seepoints placed on grid.
|
|
|
Input-handler. Polls the input-devices. Keyboard, Mouse and Window-manager-events are handled here. |
1.4.6