zenilib: zenilib/jni/external/lib3ds/src/lib3ds.h File Reference

zenilib 0.5.3.0

- Main Page
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Classes | Macros | Typedefs | Enumerations | Functions
lib3ds.h File Reference
`#include <stddef.h>`

Go to the source code of this file.

## Classes

struct | Lib3dsAmbientColorNode
struct | Lib3dsAtmosphere
struct | Lib3dsBackground
struct | Lib3dsCamera
struct | Lib3dsCameraNode
struct | Lib3dsFace
struct | Lib3dsFile
struct | Lib3dsIo
struct | Lib3dsKey
struct | Lib3dsLight
struct | Lib3dsMaterial
struct | Lib3dsMesh
struct | Lib3dsMeshInstanceNode
struct | Lib3dsNode
struct | Lib3dsOmnilightNode
struct | Lib3dsShadow
struct | Lib3dsSpotlightNode
struct | Lib3dsTargetNode
struct | Lib3dsTextureMap
struct | Lib3dsTrack
struct | Lib3dsView
struct | Lib3dsViewport

## Macros

#define | LIB3DS_LAYOUT_MAX_VIEWS 32
#define | LIB3DSAPI

## Typedefs

typedef struct Lib3dsAmbientColorNode | Lib3dsAmbientColorNode
typedef struct Lib3dsAtmosphere | Lib3dsAtmosphere
typedef enum Lib3dsAutoReflMapFlags | Lib3dsAutoReflMapFlags
typedef struct Lib3dsBackground | Lib3dsBackground
typedef struct Lib3dsCamera | Lib3dsCamera
typedef struct Lib3dsCameraNode | Lib3dsCameraNode
typedef struct Lib3dsFace | Lib3dsFace
typedef enum Lib3dsFaceFlags | Lib3dsFaceFlags
typedef struct Lib3dsFile | Lib3dsFile
typedef struct Lib3dsIo | Lib3dsIo
typedef enum Lib3dsIoSeek | Lib3dsIoSeek
typedef struct Lib3dsKey | Lib3dsKey
typedef enum Lib3dsKeyFlags | Lib3dsKeyFlags
typedef enum Lib3dsLayoutStyle | Lib3dsLayoutStyle
typedef struct Lib3dsLight | Lib3dsLight
typedef enum Lib3dsLogLevel | Lib3dsLogLevel
typedef struct Lib3dsMaterial | Lib3dsMaterial
typedef struct Lib3dsMesh | Lib3dsMesh
typedef struct Lib3dsMeshInstanceNode | Lib3dsMeshInstanceNode
typedef struct Lib3dsNode | Lib3dsNode
typedef enum Lib3dsNodeFlags | Lib3dsNodeFlags
typedef enum Lib3dsNodeType | Lib3dsNodeType
typedef enum Lib3dsObjectFlags | Lib3dsObjectFlags
typedef struct Lib3dsOmnilightNode | Lib3dsOmnilightNode
typedef enum Lib3dsShading | Lib3dsShading
typedef struct Lib3dsShadow | Lib3dsShadow
typedef struct Lib3dsSpotlightNode | Lib3dsSpotlightNode
typedef struct Lib3dsTargetNode | Lib3dsTargetNode
typedef struct Lib3dsTextureMap | Lib3dsTextureMap
typedef enum Lib3dsTextureMapFlags | Lib3dsTextureMapFlags
typedef struct Lib3dsTrack | Lib3dsTrack
typedef enum Lib3dsTrackType | Lib3dsTrackType
typedef struct Lib3dsView | Lib3dsView
typedef struct Lib3dsViewport | Lib3dsViewport
typedef enum Lib3dsViewType | Lib3dsViewType

## Enumerations

enum | Lib3dsAutoReflMapFlags { LIB3DS_AUTOREFL_USE = 0x0001, LIB3DS_AUTOREFL_READ_FIRST_FRAME_ONLY = 0x0004, LIB3DS_AUTOREFL_FLAT_MIRROR = 0x0008 }
enum | Lib3dsFaceFlags { LIB3DS_FACE_VIS_AC = 0x01, LIB3DS_FACE_VIS_BC = 0x02, LIB3DS_FACE_VIS_AB = 0x04, LIB3DS_FACE_WRAP_U = 0x08, LIB3DS_FACE_WRAP_V = 0x10, LIB3DS_FACE_SELECT_3 = (1<<13), LIB3DS_FACE_SELECT_2 = (1<<14), LIB3DS_FACE_SELECT_1 = (1<<15) }
enum | Lib3dsIoSeek { LIB3DS_SEEK_SET = 0, LIB3DS_SEEK_CUR = 1, LIB3DS_SEEK_END = 2 }
enum | Lib3dsKeyFlags { LIB3DS_KEY_USE_TENS = 0x01, LIB3DS_KEY_USE_CONT = 0x02, LIB3DS_KEY_USE_BIAS = 0x04, LIB3DS_KEY_USE_EASE_TO = 0x08, LIB3DS_KEY_USE_EASE_FROM = 0x10 }

enum

Lib3dsLayoutStyle {
LIB3DS_LAYOUT_SINGLE = 0, LIB3DS_LAYOUT_TWO_PANE_VERT_SPLIT = 1, LIB3DS_LAYOUT_TWO_PANE_HORIZ_SPLIT = 2, LIB3DS_LAYOUT_FOUR_PANE = 3,
LIB3DS_LAYOUT_THREE_PANE_LEFT_SPLIT = 4, LIB3DS_LAYOUT_THREE_PANE_BOTTOM_SPLIT = 5, LIB3DS_LAYOUT_THREE_PANE_RIGHT_SPLIT = 6, LIB3DS_LAYOUT_THREE_PANE_TOP_SPLIT = 7,
LIB3DS_LAYOUT_THREE_PANE_VERT_SPLIT = 8, LIB3DS_LAYOUT_THREE_PANE_HORIZ_SPLIT = 9, LIB3DS_LAYOUT_FOUR_PANE_LEFT_SPLIT = 10, LIB3DS_LAYOUT_FOUR_PANE_RIGHT_SPLIT = 11
}

enum | Lib3dsLogLevel { LIB3DS_LOG_ERROR = 0, LIB3DS_LOG_WARN = 1, LIB3DS_LOG_INFO = 2, LIB3DS_LOG_DEBUG = 3 }
enum | Lib3dsMapType { LIB3DS_MAP_NONE = -1, LIB3DS_MAP_PLANAR = 0, LIB3DS_MAP_CYLINDRICAL = 1, LIB3DS_MAP_SPHERICAL = 2 }
enum | Lib3dsNodeFlags { LIB3DS_NODE_HIDDEN = 0x000800, LIB3DS_NODE_SHOW_PATH = 0x010000, LIB3DS_NODE_SMOOTHING = 0x020000, LIB3DS_NODE_MOTION_BLUR = 0x100000, LIB3DS_NODE_MORPH_MATERIALS = 0x400000 }
enum | Lib3dsNodeType { LIB3DS_NODE_AMBIENT_COLOR = 0, LIB3DS_NODE_MESH_INSTANCE = 1, LIB3DS_NODE_CAMERA = 2, LIB3DS_NODE_CAMERA_TARGET = 3, LIB3DS_NODE_OMNILIGHT = 4, LIB3DS_NODE_SPOTLIGHT = 5, LIB3DS_NODE_SPOTLIGHT_TARGET = 6 }
enum | Lib3dsObjectFlags { LIB3DS_OBJECT_HIDDEN = 0x01, LIB3DS_OBJECT_VIS_LOFTER = 0x02, LIB3DS_OBJECT_DOESNT_CAST = 0x04, LIB3DS_OBJECT_MATTE = 0x08, LIB3DS_OBJECT_DONT_RCVSHADOW = 0x10, LIB3DS_OBJECT_FAST = 0x20, LIB3DS_OBJECT_FROZEN = 0x40 }
enum | Lib3dsShading { LIB3DS_SHADING_WIRE_FRAME = 0, LIB3DS_SHADING_FLAT = 1, LIB3DS_SHADING_GOURAUD = 2, LIB3DS_SHADING_PHONG = 3, LIB3DS_SHADING_METAL = 4 }

enum

Lib3dsTextureMapFlags {
LIB3DS_TEXTURE_DECALE = 0x0001, LIB3DS_TEXTURE_MIRROR = 0x0002, LIB3DS_TEXTURE_NEGATE = 0x0008, LIB3DS_TEXTURE_NO_TILE = 0x0010,
LIB3DS_TEXTURE_SUMMED_AREA = 0x0020, LIB3DS_TEXTURE_ALPHA_SOURCE = 0x0040, LIB3DS_TEXTURE_TINT = 0x0080, LIB3DS_TEXTURE_IGNORE_ALPHA = 0x0100,
LIB3DS_TEXTURE_RGB_TINT = 0x0200
}

enum

Lib3dsTrackFlags {
LIB3DS_TRACK_REPEAT = 0x0001, LIB3DS_TRACK_SMOOTH = 0x0002, LIB3DS_TRACK_LOCK_X = 0x0008, LIB3DS_TRACK_LOCK_Y = 0x0010,
LIB3DS_TRACK_LOCK_Z = 0x0020, LIB3DS_TRACK_UNLINK_X = 0x0100, LIB3DS_TRACK_UNLINK_Y = 0x0200, LIB3DS_TRACK_UNLINK_Z = 0x0400
}

enum | Lib3dsTrackType { LIB3DS_TRACK_BOOL = 0, LIB3DS_TRACK_FLOAT = 1, LIB3DS_TRACK_VECTOR = 3, LIB3DS_TRACK_QUAT = 4 }
enum | Lib3dsViewType { LIB3DS_VIEW_NOT_USED = 0, LIB3DS_VIEW_TOP = 1, LIB3DS_VIEW_BOTTOM = 2, LIB3DS_VIEW_LEFT = 3, LIB3DS_VIEW_RIGHT = 4, LIB3DS_VIEW_FRONT = 5, LIB3DS_VIEW_BACK = 6, LIB3DS_VIEW_USER = 7, LIB3DS_VIEW_SPOTLIGHT = 18, LIB3DS_VIEW_CAMERA = 65535 }

## Functions

LIB3DSAPI void | lib3ds_camera_free (Lib3dsCamera *mesh)
LIB3DSAPI Lib3dsCamera * | lib3ds_camera_new (const char *name)
LIB3DSAPI void | lib3ds_file_append_node (Lib3dsFile *file, Lib3dsNode *node, Lib3dsNode *parent)
LIB3DSAPI void | lib3ds_file_bounding_box_of_nodes (Lib3dsFile *file, int include_meshes, int include_cameras, int include_lights, float bmin[3], float bmax[3], float matrix[4][4])
LIB3DSAPI void | lib3ds_file_bounding_box_of_objects (Lib3dsFile *file, int include_meshes, int include_cameras, int include_lights, float bmin[3], float bmax[3])
LIB3DSAPI int | lib3ds_file_camera_by_name (Lib3dsFile *file, const char *name)
LIB3DSAPI void | lib3ds_file_create_nodes_for_meshes (Lib3dsFile *file)
LIB3DSAPI void | lib3ds_file_eval (Lib3dsFile *file, float t)
LIB3DSAPI void | lib3ds_file_free (Lib3dsFile *file)
LIB3DSAPI void | lib3ds_file_insert_camera (Lib3dsFile *file, Lib3dsCamera *camera, int index)
LIB3DSAPI void | lib3ds_file_insert_light (Lib3dsFile *file, Lib3dsLight *light, int index)
LIB3DSAPI void | lib3ds_file_insert_material (Lib3dsFile *file, Lib3dsMaterial *material, int index)
LIB3DSAPI void | lib3ds_file_insert_mesh (Lib3dsFile *file, Lib3dsMesh *mesh, int index)
LIB3DSAPI void | lib3ds_file_insert_node (Lib3dsFile *file, Lib3dsNode *node, Lib3dsNode *at)
LIB3DSAPI int | lib3ds_file_light_by_name (Lib3dsFile *file, const char *name)
LIB3DSAPI int | lib3ds_file_material_by_name (Lib3dsFile *file, const char *name)
LIB3DSAPI int | lib3ds_file_mesh_by_name (Lib3dsFile *file, const char *name)
LIB3DSAPI Lib3dsMesh * | lib3ds_file_mesh_for_node (Lib3dsFile *file, Lib3dsNode *node)
LIB3DSAPI void | lib3ds_file_minmax_node_id (Lib3dsFile *file, unsigned short *min_id, unsigned short *max_id)
LIB3DSAPI Lib3dsFile * | lib3ds_file_new ()
LIB3DSAPI Lib3dsNode * | lib3ds_file_node_by_id (Lib3dsFile *file, unsigned short node_id)
LIB3DSAPI Lib3dsNode * | lib3ds_file_node_by_name (Lib3dsFile *file, const char *name, Lib3dsNodeType type)
LIB3DSAPI Lib3dsFile * | lib3ds_file_open (const char *filename)
LIB3DSAPI int | lib3ds_file_read (Lib3dsFile *file, Lib3dsIo *io)
LIB3DSAPI void | lib3ds_file_remove_camera (Lib3dsFile *file, int index)
LIB3DSAPI void | lib3ds_file_remove_light (Lib3dsFile *file, int index)
LIB3DSAPI void | lib3ds_file_remove_material (Lib3dsFile *file, int index)
LIB3DSAPI void | lib3ds_file_remove_mesh (Lib3dsFile *file, int index)
LIB3DSAPI void | lib3ds_file_remove_node (Lib3dsFile *file, Lib3dsNode *node)
LIB3DSAPI void | lib3ds_file_reserve_cameras (Lib3dsFile *file, int size, int force)
LIB3DSAPI void | lib3ds_file_reserve_lights (Lib3dsFile *file, int size, int force)
LIB3DSAPI void | lib3ds_file_reserve_materials (Lib3dsFile *file, int size, int force)
LIB3DSAPI void | lib3ds_file_reserve_meshes (Lib3dsFile *file, int size, int force)
LIB3DSAPI int | lib3ds_file_save (Lib3dsFile *file, const char *filename)
LIB3DSAPI int | lib3ds_file_write (Lib3dsFile *file, Lib3dsIo *io)
LIB3DSAPI void | lib3ds_light_free (Lib3dsLight *mesh)
LIB3DSAPI Lib3dsLight * | lib3ds_light_new (const char *name)
LIB3DSAPI void | lib3ds_material_free (Lib3dsMaterial *material)
LIB3DSAPI Lib3dsMaterial * | lib3ds_material_new (const char *name)
LIB3DSAPI void | lib3ds_math_cubic_interp (float *v, float *a, float *p, float *q, float *b, int n, float t)
LIB3DSAPI float | lib3ds_math_ease (float fp, float fc, float fn, float ease_from, float ease_to)
LIB3DSAPI void | lib3ds_matrix_add (float m[4][4], float a[4][4], float b[4][4])
LIB3DSAPI void | lib3ds_matrix_camera (float m[4][4], float pos[3], float tgt[3], float roll)
LIB3DSAPI void | lib3ds_matrix_copy (float dest[4][4], float src[4][4])
LIB3DSAPI float | lib3ds_matrix_det (float m[4][4])
LIB3DSAPI void | lib3ds_matrix_identity (float m[4][4])
LIB3DSAPI int | lib3ds_matrix_inv (float m[4][4])
LIB3DSAPI void | lib3ds_matrix_mult (float m[4][4], float a[4][4], float b[4][4])
LIB3DSAPI void | lib3ds_matrix_neg (float m[4][4])
LIB3DSAPI void | lib3ds_matrix_rotate (float m[4][4], float angle, float ax, float ay, float az)
LIB3DSAPI void | lib3ds_matrix_rotate_quat (float m[4][4], float q[4])
LIB3DSAPI void | lib3ds_matrix_scalar (float m[4][4], float k)
LIB3DSAPI void | lib3ds_matrix_scale (float m[4][4], float x, float y, float z)
LIB3DSAPI void | lib3ds_matrix_sub (float m[4][4], float a[4][4], float b[4][4])
LIB3DSAPI void | lib3ds_matrix_translate (float m[4][4], float x, float y, float z)
LIB3DSAPI void | lib3ds_matrix_transpose (float m[4][4])
LIB3DSAPI void | lib3ds_matrix_zero (float m[4][4])
LIB3DSAPI void | lib3ds_mesh_bounding_box (Lib3dsMesh *mesh, float bmin[3], float bmax[3])
LIB3DSAPI void | lib3ds_mesh_calculate_face_normals (Lib3dsMesh *mesh, float(*face_normals)[3])
LIB3DSAPI void | lib3ds_mesh_calculate_vertex_normals (Lib3dsMesh *mesh, float(*normals)[3])
LIB3DSAPI void | lib3ds_mesh_free (Lib3dsMesh *mesh)
LIB3DSAPI Lib3dsMesh * | lib3ds_mesh_new (const char *name)
LIB3DSAPI void | lib3ds_mesh_resize_faces (Lib3dsMesh *mesh, int nfaces)
LIB3DSAPI void | lib3ds_mesh_resize_vertices (Lib3dsMesh *mesh, int nvertices, int use_texcos, int use_flags)
LIB3DSAPI Lib3dsNode * | lib3ds_node_by_id (Lib3dsNode *node, unsigned short node_id)
LIB3DSAPI Lib3dsNode * | lib3ds_node_by_name (Lib3dsNode *node, const char *name, Lib3dsNodeType type)
LIB3DSAPI void | lib3ds_node_eval (Lib3dsNode *node, float t)
LIB3DSAPI void | lib3ds_node_free (Lib3dsNode *node)
LIB3DSAPI Lib3dsNode * | lib3ds_node_new (Lib3dsNodeType type)
LIB3DSAPI Lib3dsAmbientColorNode * | lib3ds_node_new_ambient_color (float color0[3])
LIB3DSAPI Lib3dsCameraNode * | lib3ds_node_new_camera (Lib3dsCamera *camera)
LIB3DSAPI Lib3dsTargetNode * | lib3ds_node_new_camera_target (Lib3dsCamera *camera)
LIB3DSAPI Lib3dsMeshInstanceNode * | lib3ds_node_new_mesh_instance (Lib3dsMesh *mesh, const char *instance_name, float pos0[3], float scl0[3], float rot0[4])
LIB3DSAPI Lib3dsOmnilightNode * | lib3ds_node_new_omnilight (Lib3dsLight *light)
LIB3DSAPI Lib3dsSpotlightNode * | lib3ds_node_new_spotlight (Lib3dsLight *light)
LIB3DSAPI Lib3dsTargetNode * | lib3ds_node_new_spotlight_target (Lib3dsLight *light)
LIB3DSAPI void | lib3ds_quat_axis_angle (float c[4], float axis[3], float angle)
LIB3DSAPI void | lib3ds_quat_cnj (float c[4])
LIB3DSAPI void | lib3ds_quat_copy (float dest[4], float src[4])
LIB3DSAPI float | lib3ds_quat_dot (float a[4], float b[4])
LIB3DSAPI void | lib3ds_quat_exp (float c[4])
LIB3DSAPI void | lib3ds_quat_identity (float c[4])
LIB3DSAPI void | lib3ds_quat_inv (float c[4])
LIB3DSAPI void | lib3ds_quat_ln (float c[4])
LIB3DSAPI void | lib3ds_quat_ln_dif (float c[4], float a[4], float b[4])
LIB3DSAPI void | lib3ds_quat_mul (float c[4], float a[4], float b[4])
LIB3DSAPI void | lib3ds_quat_neg (float c[4])
LIB3DSAPI float | lib3ds_quat_norm (float c[4])
LIB3DSAPI void | lib3ds_quat_normalize (float c[4])
LIB3DSAPI void | lib3ds_quat_scalar (float c[4], float k)
LIB3DSAPI void | lib3ds_quat_slerp (float c[4], float a[4], float b[4], float t)
LIB3DSAPI void | lib3ds_quat_squad (float c[4], float a[4], float p[4], float q[4], float b[4], float t)
LIB3DSAPI void | lib3ds_quat_tangent (float c[4], float p[4], float q[4], float n[4])
LIB3DSAPI void | lib3ds_track_eval_bool (Lib3dsTrack *track, int *b, float t)
LIB3DSAPI void | lib3ds_track_eval_float (Lib3dsTrack *track, float *f, float t)
LIB3DSAPI void | lib3ds_track_eval_quat (Lib3dsTrack *track, float q[4], float t)
LIB3DSAPI void | lib3ds_track_eval_vector (Lib3dsTrack *track, float v[3], float t)
LIB3DSAPI void | lib3ds_track_free (Lib3dsTrack *track)
LIB3DSAPI Lib3dsTrack * | lib3ds_track_new (Lib3dsTrackType type, int nkeys)
LIB3DSAPI void | lib3ds_track_resize (Lib3dsTrack *track, int nkeys)
LIB3DSAPI void | lib3ds_vector_add (float c[3], float a[3], float b[3])
LIB3DSAPI void | lib3ds_vector_copy (float dst[3], float src[3])
LIB3DSAPI void | lib3ds_vector_cross (float c[3], float a[3], float b[3])
LIB3DSAPI float | lib3ds_vector_dot (float a[3], float b[3])
LIB3DSAPI float | lib3ds_vector_length (float c[3])
LIB3DSAPI void | lib3ds_vector_make (float c[3], float x, float y, float z)
LIB3DSAPI void | lib3ds_vector_max (float c[3], float a[3])
LIB3DSAPI void | lib3ds_vector_min (float c[3], float a[3])
LIB3DSAPI void | lib3ds_vector_neg (float c[3])
LIB3DSAPI void | lib3ds_vector_normal (float n[3], float a[3], float b[3], float c[3])
LIB3DSAPI void | lib3ds_vector_normalize (float c[3])
LIB3DSAPI void | lib3ds_vector_scalar_mul (float c[3], float a[3], float k)
LIB3DSAPI void | lib3ds_vector_sub (float c[3], float a[3], float b[3])
LIB3DSAPI void | lib3ds_vector_transform (float c[3], float m[4][4], float a[3])
LIB3DSAPI void | lib3ds_vector_zero (float c[3])

## Macro Definition Documentation

#define LIB3DSAPI

Definition at line 32 of file lib3ds.h.