#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. |