29#ifndef OPTICAL_LIGHT_H
30#define OPTICAL_LIGHT_H
47#define LPT_MAGIC 0x327649
48#define SOME_LIGHT_SAMPLES 128
76#define LIGHT_NULL ((struct light_specific *)0)
77#define RT_CK_LIGHT(_p) BU_CKMAG((_p), LIGHT_MAGIC, "light_specific")
Header file for the BRL-CAD common definitions.
int light_init(struct application *ap)
void light_obs(struct application *ap, struct shadework *swp, int have)
struct light_specific LightHead
void light_maker(int num, mat_t v2m)
fastf_t vect_t[ELEMENTS_PER_VECT]
3-tuple vector
double fastf_t
fastest 64-bit (or larger) floating point type
fastf_t mat_t[ELEMENTS_PER_MAT]
4x4 matrix
fastf_t point_t[ELEMENTS_PER_POINT]
3-tuple point
Global registry of recognized magic numbers.
vect_t lt_pos
location in space of light
fastf_t lt_intensity
Intensity Lumens (cd*sr): total output.
vect_t lt_aim
Unit vector - light beam direction.
fastf_t lt_angle
beam dispersion angle (degrees) 0..180
struct light_pt * lt_sample_pts
dynamically allocated list of light sample points
fastf_t lt_cosangle
cos of lt_angle
fastf_t lt_obscure
percentage obscuration of light
int lt_infinite
!0 if infinitely distant
fastf_t lt_fraction
fraction of total light
fastf_t lt_radius
approximate radius of spherical light
int lt_shadows
!0 if this light casts shadows, # of rays
vect_t lt_color
RGB, as 0..1.
int lt_visible
0 if implicitly modeled or invisible
struct region * lt_rp
our region of origin
struct bu_list l
doubly linked list
vect_t lt_target
explicit coordinate aim point
int lt_exaim
!0 if explicit aim in lt_target
int lt_invisible
0 if implicitly modeled or invisible
vect_t lt_vec
Unit vector from origin to light.
int lt_pt_count
count of how many lt_sample_pts have been set
char * lt_name
identifying string