libmoldeo (Moldeo 1.0 Core)  1.0
libmoldeo is the group of objects and functions that executes the basic operations of Moldeo 1.0 Platform.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
moTypes.h File Reference
#include <math.h>
#include <limits.h>
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <float.h>
#include <time.h>
#include <vector>
#include <fstream>
#include "moText.h"

Go to the source code of this file.

Classes

struct  moTexParam
 Parámetros internos de una textura. More...
 

Macros

#define _CRT_SECURE_NO_DEPRECATE   1
 
#define _CRT_NONSTDC_NO_DEPRECATE   1
 
#define NDEBUG   1
 
#define USE_GL_EXTENSIONS
 
#define USE_FREEIMAGE
 
#define USE_MOTEXT0
 
#define LIBMOLDEO_API
 
#define MO_PI   3.1415926535897932384626433832795f
 
#define MO_ON   1
 
#define MO_OFF   -1
 
#define MO_ACTIVATED   1
 
#define MO_DEACTIVATED   -1
 
#define MO_FALSE   0
 
#define MO_TRUE   1
 
#define MO_PRESSED   1
 
#define MO_PULSED   1
 
#define MO_RELEASED   0
 
#define MO_SUCCESS   0
 
#define MO_NOERROR   0
 
#define MO_ERROR   65535
 
#define MO_FAIL   65535
 
#define MO_UNDEFINED   -1
 
#define MO_MAX_DEBUG   4096
 
#define MO_MAX_TEXTURAS   512
 
#define MO_MAX_MODELOS   256
 
#define MOboolean   unsigned int
 
#define MOswitch   signed char
 
#define MOuint   unsigned int
 
#define MOint   int
 
#define MOint64   moint64
 
#define MOuint64   unsigned moint64
 
#define MOlong   long
 
#define MOulong   unsigned long
 
#define MOlonglong   moint64
 
#define MOulonglong   unsigned moint64
 
#define MOword   moWord
 
#define MOdword   moDWord
 
#define MOchar   char
 
#define MOuchar   unsigned char
 
#define MOubyte   unsigned char
 
#define MObyte   char
 
#define MOshort   short
 
#define MOushort   unsigned short
 
#define MOfloat   float
 
#define MOdouble   double
 
#define MOtexture   unsigned int
 
#define MOefectoid   unsigned int
 
#define MOpointer   void*
 
#define MOaccion   int
 
#define MOdevcode   int
 
#define MO_DEF_SCREEN_WIDTH   800
 
#define MO_DEF_SCREEN_HEIGHT   600
 
#define MO_DEF_RENDER_WIDTH   800
 
#define MO_DEF_RENDER_HEIGHT   600
 
#define MO_DEF_SCREEN_DEPTH   32
 
#define MO_RENDER_TEX   0
 
#define MO_SCREEN_TEX   1
 
#define MO_EFFECTS_TEX   2
 
#define MO_FINAL_TEX   3
 
#define MO_LEFT_TEX   4
 
#define MO_RIGHT_TEX   5
 
#define MO_MAX_PRESETS   9
 
#define MO_DEBUG
 
#define OLD_CONFIG   0
 
#define MO_RED   0
 
#define MO_GREEN   1
 
#define MO_BLUE   2
 
#define MO_ALPHA   3
 

Enumerations

enum  moBlendingModes {
  MO_BLENDING_TRANSPARENCY = 0, MO_BLENDING_ADDITIVEALPHA = 1, MO_BLENDING_MIXING = 2, MO_BLENDING_MULTIPLY = 3,
  MO_BLENDING_EXCLUSION = 4, MO_BLENDING_ADDITIVE = 5, MO_BLENDING_OVERLAY = 6, MO_BLENDING_SUBSTRACTIVE = 7,
  MO_BLENDING_SATURATE = 8, MO_BLENDINGS = 9, MO_BLENDING_TRANSPARENCY = 0, MO_BLENDING_ADDITIVEALPHA = 1,
  MO_BLENDING_MIXING = 2, MO_BLENDING_MULTIPLY = 3, MO_BLENDING_EXCLUSION = 4, MO_BLENDING_ADDITIVE = 5,
  MO_BLENDING_OVERLAY = 6, MO_BLENDING_SUBSTRACTIVE = 7, MO_BLENDING_SATURATE = 8, MO_BLENDINGS = 9
}
 Modos de combinación More...
 
enum  moPolygonModes {
  MO_POLYGONMODE_FILL = 0, MO_POLYGONMODE_LINE = 1, MO_POLYGONMODE_POINT = 2, MO_POLYGONMODES = 3,
  MO_POLYGONMODE_FILL = 0, MO_POLYGONMODE_LINE = 1, MO_POLYGONMODE_POINT = 2, MO_POLYGONMODES = 3
}
 Modos de dibujado de polígonos. More...
 
enum  moStereoSides {
  MO_STEREO_NONE = 0, MO_STEREO_LEFT = 1, MO_STEREO_RIGHT = 2, MO_STEREO_NONE = 0,
  MO_STEREO_LEFT = 1, MO_STEREO_RIGHT = 2
}
 Modo estereoscópico. More...
 
enum  moMoldeoObjectType {
  MO_OBJECT_UNDEFINED = -1, MO_OBJECT_EFFECT = 0, MO_OBJECT_PREEFFECT = 1, MO_OBJECT_POSTEFFECT = 2,
  MO_OBJECT_MASTEREFFECT = 3, MO_OBJECT_IODEVICE = 4, MO_OBJECT_RESOURCE = 5, MO_OBJECT_CONSOLE = 6,
  MO_OBJECT_TYPES = 7, MO_OBJECT_UNDEFINED = -1, MO_OBJECT_EFFECT = 0, MO_OBJECT_PREEFFECT = 1,
  MO_OBJECT_POSTEFFECT = 2, MO_OBJECT_MASTEREFFECT = 3, MO_OBJECT_IODEVICE = 4, MO_OBJECT_RESOURCE = 5,
  MO_OBJECT_CONSOLE = 6, MO_OBJECT_TYPES = 7
}
 Tipos de objetos en Moldeo. More...
 

Functions

LIBMOLDEO_API MOfloat morand ()
 
LIBMOLDEO_API MOint moRand (MOint)
 
LIBMOLDEO_API void HSVtoRGB (short, short, short, float *, float *, float *)
 
LIBMOLDEO_API void moColor4f (float r, float g, float b, float a)
 
LIBMOLDEO_API void moNormal3f (float x, float y, float z)
 
LIBMOLDEO_API void moColor3f (float r, float g, float b)
 
LIBMOLDEO_API moText moGetVersionStr ()
 Devuelve la versión de libmoldeo. More...
 

Variables

const moTexParam MODefTex2DParams
 Parámetros internos predeterminados de una textura. More...
 
const moTexParam MOUndefinedTex
 Parámetros internos predeterminados de una textura no identificados. More...
 

Macro Definition Documentation

#define _CRT_NONSTDC_NO_DEPRECATE   1

Definition at line 37 of file moTypes.h.

#define _CRT_SECURE_NO_DEPRECATE   1

Definition at line 36 of file moTypes.h.

#define LIBMOLDEO_API

Definition at line 180 of file moTypes.h.

#define MO_ACTIVATED   1

Definition at line 367 of file moTypes.h.

#define MO_ALPHA   3

Definition at line 444 of file moTypes.h.

#define MO_BLUE   2

Definition at line 443 of file moTypes.h.

#define MO_DEACTIVATED   -1

Definition at line 368 of file moTypes.h.

#define MO_DEBUG

Definition at line 431 of file moTypes.h.

#define MO_DEF_RENDER_HEIGHT   600

Definition at line 417 of file moTypes.h.

#define MO_DEF_RENDER_WIDTH   800

Definition at line 416 of file moTypes.h.

#define MO_DEF_SCREEN_DEPTH   32

Definition at line 418 of file moTypes.h.

#define MO_DEF_SCREEN_HEIGHT   600

Definition at line 415 of file moTypes.h.

#define MO_DEF_SCREEN_WIDTH   800

Definition at line 414 of file moTypes.h.

#define MO_EFFECTS_TEX   2

Definition at line 422 of file moTypes.h.

#define MO_ERROR   65535

Definition at line 377 of file moTypes.h.

#define MO_FAIL   65535

Definition at line 378 of file moTypes.h.

#define MO_FALSE   0

Definition at line 369 of file moTypes.h.

#define MO_FINAL_TEX   3

Definition at line 423 of file moTypes.h.

#define MO_GREEN   1

Definition at line 442 of file moTypes.h.

#define MO_LEFT_TEX   4

Definition at line 426 of file moTypes.h.

#define MO_MAX_DEBUG   4096

Definition at line 381 of file moTypes.h.

#define MO_MAX_MODELOS   256

Definition at line 383 of file moTypes.h.

#define MO_MAX_PRESETS   9

Definition at line 430 of file moTypes.h.

#define MO_MAX_TEXTURAS   512

Definition at line 382 of file moTypes.h.

#define MO_NOERROR   0

Definition at line 376 of file moTypes.h.

#define MO_OFF   -1

Definition at line 366 of file moTypes.h.

#define MO_ON   1

Definition at line 365 of file moTypes.h.

#define MO_PI   3.1415926535897932384626433832795f

Definition at line 364 of file moTypes.h.

#define MO_PRESSED   1

Definition at line 371 of file moTypes.h.

#define MO_PULSED   1

Definition at line 372 of file moTypes.h.

#define MO_RED   0

Definition at line 441 of file moTypes.h.

#define MO_RELEASED   0

Definition at line 373 of file moTypes.h.

#define MO_RENDER_TEX   0

Definition at line 420 of file moTypes.h.

#define MO_RIGHT_TEX   5

Definition at line 427 of file moTypes.h.

#define MO_SCREEN_TEX   1

Definition at line 421 of file moTypes.h.

#define MO_SUCCESS   0

Definition at line 375 of file moTypes.h.

#define MO_TRUE   1

Definition at line 370 of file moTypes.h.

#define MO_UNDEFINED   -1

Definition at line 379 of file moTypes.h.

#define MOaccion   int

Definition at line 411 of file moTypes.h.

#define MOboolean   unsigned int

Definition at line 385 of file moTypes.h.

#define MObyte   char

Definition at line 400 of file moTypes.h.

#define MOchar   char

Definition at line 397 of file moTypes.h.

#define MOdevcode   int

Definition at line 412 of file moTypes.h.

#define MOdouble   double

Definition at line 404 of file moTypes.h.

#define MOdword   moDWord

Definition at line 396 of file moTypes.h.

#define MOefectoid   unsigned int

Definition at line 406 of file moTypes.h.

#define MOfloat   float

Definition at line 403 of file moTypes.h.

#define MOint   int

Definition at line 388 of file moTypes.h.

#define MOint64   moint64

Definition at line 389 of file moTypes.h.

#define MOlong   long

Definition at line 391 of file moTypes.h.

#define MOlonglong   moint64

Definition at line 393 of file moTypes.h.

#define MOpointer   void*

Definition at line 409 of file moTypes.h.

#define MOshort   short

Definition at line 401 of file moTypes.h.

#define MOswitch   signed char

Definition at line 386 of file moTypes.h.

#define MOtexture   unsigned int

Definition at line 405 of file moTypes.h.

#define MOubyte   unsigned char

Definition at line 399 of file moTypes.h.

#define MOuchar   unsigned char

Definition at line 398 of file moTypes.h.

#define MOuint   unsigned int

Definition at line 387 of file moTypes.h.

#define MOuint64   unsigned moint64

Definition at line 390 of file moTypes.h.

#define MOulong   unsigned long

Definition at line 392 of file moTypes.h.

#define MOulonglong   unsigned moint64

Definition at line 394 of file moTypes.h.

#define MOushort   unsigned short

Definition at line 402 of file moTypes.h.

#define MOword   moWord

Definition at line 395 of file moTypes.h.

#define NDEBUG   1

Definition at line 73 of file moTypes.h.

#define OLD_CONFIG   0

Definition at line 433 of file moTypes.h.

#define USE_FREEIMAGE

Definition at line 168 of file moTypes.h.

#define USE_GL_EXTENSIONS

Definition at line 94 of file moTypes.h.

#define USE_MOTEXT0

Definition at line 169 of file moTypes.h.

Enumeration Type Documentation

Modos de combinación

Modos de combinación predeterminados Estos valores son referencias para los modos de combinación de colores que suelen usarse y están ya implementados bajo OpenGL a través de la función glBlend()

Enumerator
MO_BLENDING_TRANSPARENCY 
MO_BLENDING_ADDITIVEALPHA 

transparencia

MO_BLENDING_MIXING 

aditivo según transparencia

MO_BLENDING_MULTIPLY 

mezcla

MO_BLENDING_EXCLUSION 

multipliación

MO_BLENDING_ADDITIVE 

exclusión

MO_BLENDING_OVERLAY 

aditivo por color

MO_BLENDING_SUBSTRACTIVE 

sobrecarga

MO_BLENDING_SATURATE 

sustracción

MO_BLENDINGS 

saturación

MO_BLENDING_TRANSPARENCY 
MO_BLENDING_ADDITIVEALPHA 

transparencia

MO_BLENDING_MIXING 

aditivo según transparencia

MO_BLENDING_MULTIPLY 

mezcla

MO_BLENDING_EXCLUSION 

multipliación

MO_BLENDING_ADDITIVE 

exclusión

MO_BLENDING_OVERLAY 

aditivo por color

MO_BLENDING_SUBSTRACTIVE 

sobrecarga

MO_BLENDING_SATURATE 

sustracción

MO_BLENDINGS 

saturación

Definition at line 453 of file moTypes.h.

Tipos de objetos en Moldeo.

Definición y enumeración de tipos de objetos en Moldeo

Enumerator
MO_OBJECT_UNDEFINED 
MO_OBJECT_EFFECT 

Objeto indefinido.

MO_OBJECT_PREEFFECT 

Objeto dibujable, efecto ( efectos en el orden de dibujado )

MO_OBJECT_POSTEFFECT 

Objeto dibujable, pre-efecto ( primeros efectos en el orden de dibujado )

MO_OBJECT_MASTEREFFECT 

Objeto dibujable, post-efecto ( últímos efectos en el orden de dibujado )

MO_OBJECT_IODEVICE 

Objeto dibujable, efecto-maestro ( puede controlar otros efectos )

MO_OBJECT_RESOURCE 

Dispositivo de entrada/salida, típicamente, interfaces humanas de IO y datos ( teclado, mouse, tableta, tcp, udp, serial )

MO_OBJECT_CONSOLE 

Recursos de datos, objetos, imágenes, videos y funcionalidades múltiples.

MO_OBJECT_TYPES 

Objeto principal de administración y dibujado de objetos de Moldeo.

MO_OBJECT_UNDEFINED 
MO_OBJECT_EFFECT 

Objeto indefinido.

MO_OBJECT_PREEFFECT 

Objeto dibujable, efecto ( efectos en el orden de dibujado )

MO_OBJECT_POSTEFFECT 

Objeto dibujable, pre-efecto ( primeros efectos en el orden de dibujado )

MO_OBJECT_MASTEREFFECT 

Objeto dibujable, post-efecto ( últímos efectos en el orden de dibujado )

MO_OBJECT_IODEVICE 

Objeto dibujable, efecto-maestro ( puede controlar otros efectos )

MO_OBJECT_RESOURCE 

Dispositivo de entrada/salida, típicamente, interfaces humanas de IO y datos ( teclado, mouse, tableta, tcp, udp, serial )

MO_OBJECT_CONSOLE 

Recursos de datos, objetos, imágenes, videos y funcionalidades múltiples.

MO_OBJECT_TYPES 

Objeto principal de administración y dibujado de objetos de Moldeo.

Definition at line 525 of file moTypes.h.

Modos de dibujado de polígonos.

Modos de dibujado de polígonos Estos modos son aquellos predeterminados bajo OpenGL

Enumerator
MO_POLYGONMODE_FILL 
MO_POLYGONMODE_LINE 

relleno

MO_POLYGONMODE_POINT 

sólo líneas

MO_POLYGONMODES 

sólo puntos

MO_POLYGONMODE_FILL 
MO_POLYGONMODE_LINE 

relleno

MO_POLYGONMODE_POINT 

sólo líneas

MO_POLYGONMODES 

sólo puntos

Definition at line 472 of file moTypes.h.

Modo estereoscópico.

Modo estereoscópico Para la estereoscopía se fijan estos modos

Enumerator
MO_STEREO_NONE 
MO_STEREO_LEFT 
MO_STEREO_RIGHT 
MO_STEREO_NONE 
MO_STEREO_LEFT 
MO_STEREO_RIGHT 

Definition at line 484 of file moTypes.h.

Function Documentation

LIBMOLDEO_API void HSVtoRGB ( short  ,
short  ,
short  ,
float *  ,
float *  ,
float *   
)

Definition at line 51 of file moTypes.cpp.

LIBMOLDEO_API void moColor3f ( float  r,
float  g,
float  b 
)

Definition at line 173 of file moTypes.cpp.

LIBMOLDEO_API void moColor4f ( float  r,
float  g,
float  b,
float  a 
)

Definition at line 165 of file moTypes.cpp.

LIBMOLDEO_API moText moGetVersionStr ( )

Devuelve la versión de libmoldeo.

Función global que devuelve en formato texto la versión utilizada de libmoldeo, el ´núcleo de Moldeo.

RGB are from 0..1, H is from 0..360, SV from 0..1 double maxC = b; if (maxC < g) maxC = g; if (maxC < r) maxC = r; double minC = b; if (minC > g) minC = g; if (minC > r) minC = r;

double delta = maxC - minC;

double V = maxC; double S = 0; double H = 0;

if (delta == 0) { H = 0; S = 0; } else { S = delta / maxC; double dR = 60*(maxC - r)/delta + 180; double dG = 60*(maxC - g)/delta + 180; double dB = 60*(maxC - b)/delta + 180; if (r == maxC) H = dB - dG; else if (g == maxC) H = 120 + dR - dB; else H = 240 + dG - dR; }

if (H<0) H+=360; if (H>=360) H-=360;

Definition at line 159 of file moTypes.cpp.

LIBMOLDEO_API void moNormal3f ( float  x,
float  y,
float  z 
)

Definition at line 169 of file moTypes.cpp.

LIBMOLDEO_API MOfloat morand ( )

devuelve un valor con distribucion uniforme 0..1 value entre 0 y 1

Definition at line 36 of file moTypes.cpp.

LIBMOLDEO_API MOint moRand ( MOint  )

Definition at line 41 of file moTypes.cpp.

Variable Documentation

const moTexParam MODefTex2DParams
Initial value:
=
{
GL_TEXTURE_2D,
GL_RGBA,
GL_LINEAR,
GL_LINEAR,
GL_REPEAT,
GL_REPEAT
}

Parámetros internos predeterminados de una textura.

MODefTex2DParams Parámetros internos predeterminados de una textura

Definition at line 562 of file moTypes.h.

const moTexParam MOUndefinedTex
Initial value:
=
{
0,
MO_UNDEFINED
}
#define MO_UNDEFINED
Definition: moTypes.h:379

Parámetros internos predeterminados de una textura no identificados.

MOUndefinedTex Parámetros internos predeterminados de una textura no identificados

Definition at line 580 of file moTypes.h.