Programación de aplicaciones RV

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Programación de aplicaciones RV"

Transcripción

1 Bibliografía Programación de aplicaciones RV TÉCNICAS Y DISPOSITIVOS DE REALIDAD VIRTUAL MASTER EN INFORMÁTICA GRÁFICA, JUEGOS Y REALIDAD VIRTUAL Marcos García Marcos.garcía@urjc.es Virtual Reality Technology Ed. Wiley-Interscience (Second Edition). Grigore C. Burdea & Philippe Coiffet. The Inventor Mentor : Programming Object-Oriented 3D Graphics with Open Inventor, Release 2 Ed. Wesley. Josie Wernecke. The Inventor Toolmaker : Extending Open Inventor, Release 2 Ed. Wesley. Josie Wernecke. Open Inventor C++ Reference Manual Ed. Wesley. Josie Wernecke or/pro/html/inventor_base.htm Índice Estructura de un sistema RV Introducción OpenInventor EonStudio

2 Estructura software de un sistema RV Estructura software de un sistema RV Usuario Dispositivos Entrada Software Entrada Motor Software Dispositivos Salida Software Salida Sw Modelo de mundo virtual Geometría Dotar de comportamiento a los objetos del modelo Introducir el modelo de forma organizada en nuestra aplicación Comportamiento Crear módulos que gestionen los dispositivos I/O Render Gráfico OpenGl DirectX Render Háptico Drivers de los dispositivos Toolkits Estado Mundo Virtual Base de Datos VR Toolkits Características adicionales Soportan algunos dispositivos I/O Permiten generar código portable Permiten importar (y exportar) modelos en formatos usados por herramientas CAD (.3ds,.max,.dwg,.dxf). Detección de colisiones Simulación física Animación de personajes. Modelos de texturas, iluminación y sombreado Soporte de modelos multirresolución (LOD) Funciones de red para interacciones multiusuario Clasificación Programación gráfica o de texto Lenguaje de programación que usan Dispositivos soportados (I/O) Rendering soportado Propósito especifico o propósito general Propietarias o públicas

3 Clasificación Nombre Open Inventor (SGI,COIN3D,TGS) EON Studio (Eon Reality) Área de aplicación Propósito general Propósito general Librerías propietarias Si/No Si Lenguaje de la librería C/C++ 3DVIA Virtools Propósito general Si Scripting Java3D (Sun Microsystems) GHOST (SensAble Technologies) Propósito general/render Gráfico Renderizado Háptico No Si Programación gráfica SDK C++ (Extender e integrar) Java C++ Actualmente Toolkits de Render y Motores Completos Crytek Ogre Unity3D Unreal Engine Sofa (aplicaciones quirurjicas) Toolkits de sonido DirectSound OpenAl Toolkits de Simulación Física Havok Physics Engine PhysX Bullet Ode Toolkits de Inteligencia Artificial Kynapse 4.0 (PS3) PeopleShop (Boston Dynamics) Militar/Civil Si C/C++ Scene Graphs Scene Graphs Las toolkits organizan la información en grafos llamados scene graphs Organizan el mundo de forma jerárquica Estructura de árbol Nodo raíz Internos Hoja La forma de leer el árbol es propia de cada toolkit No son estructuras fijas Ejemplos: B D Nodo root A C E Nodo Interno J Nodo Hoja F G H I

4 Scene Graphs Ejemplos: Escena Open Inventor Palma Bola Índice Introducción Arquitectura de OI Base de Datos (primitivas) Componentes de alto nivel Grafo de escena Jerarquía de objetos Implementaciones de Open Inventor Introducción Toolkit 3D C/C++ Orientada a objetos Extensible Aprovecha toda la potencia Hw. Código portable Tiene su propio formato de intercambio de datos *.iv = *.wrl Permite el intercambio de datos entre aplicaciones

5 Introducción Características adicionales (Coin) Soporte sonido 3D Detección de colisiones Soporte threads Orientada a objetos Soporte: 3DS Visualización de volúmenes (Sim Voleon) Otros módulos Introducción Clases básicas Primitivas Nodos de propiedad, forma, grupo Manipuladores Node Kits Engines (Motores) Sensores Acciones Componentes de alto nivel Arquitectura de Inventor Arquitectura de Inventor Open Inventor Component Library Node kit Manipulator Database Scene Open Inventor 3D Toolkit Open Inventor 3D Interchange File format Open Inventor 3D Interchange File format OpenGL SSOO

6 Base de datos Librería de componentes Contiene Nodos Agrupados en Scenegraphs Motores Sensores Permite Acciones Renderizado Búsquedas Cálculo de Bounding Box (caja contenedora) Escritura y lectura de un archivo Librería de componentes Dependiente del gestor de ventanas Contiene Áreas de Renderizado Visualizadores Editores Realiza la inicialización (Base de datos y sistema de ventanas) Trata eventos Los captura Los trata directamente Los transforma para OI Scene Graph Nodos del grafo de la escena La unidad básica de OI son los nodos Los nodos se estructuran en grafos Tienen una estructura muy parecida a los árboles Nodo raíz (nodo de agrupación) Nodos intermedios (nodo de agrupación) Nodos hojas (propiedades, formas, manipuladores..) Un nodo hijo pude tener dos padres El grafo debe ser acíclico

7 Ejemplo de DB Lectura del grafo Escena 1 Escena 2 Aplicar acción Arriba a bajo De izquierda a derecha Traversal state (estado trasversal) Acumulación de transformaciones Material Luces Ejemplo de DB Objetos OI Escena 1 Escena 2 Convención de nombres Objetos Comienzan por S mayúscula y el comienzo de cada palabra irá también en mayúscula Objetos básicos Sb (scene basic)» SbVec3f Resto de objetos So (scene objet)» SoGroup Objeto de la librería de componentes So[Gestor de ventanas]» SoWinRenderArea, SoQtRenderArea, SoXtRenderArea Métodos y atributos Primera letra con minúscula, y el comienzo de cada palabra en mayúscula addchild() Tipos enumerados Todo en Mayúscula FILLED, FIRST

8 Jerarquía de objetos Base de datos Objetos Básicos (Sb) Campos (Fields) Mono-valuados (Single-field SoSF) Multi-valuados (Multi-field SoMF) Objetos heredados de la clase base SoBase Contenedores de Campos SoFieldContainer Motores SoEngine Nodos SoNode Forma Propiedad Grupo Kits Iluminación Cámaras Rutas SoPath Sensores SoSensor Tiempo SoTimerQueueSensor Otros SoDelayQueueSensor Acciones SoAction Errores SoError Eventos SoEvent Base de Datos SoBD Estado SoState (SoElement) Librería de componentes SoXt, SoWin SoWinObject Componentes (Ventanas) Dispositivos Contiene los grafos de escena (nodos), los motores y los sensores. Tiene un modelo de eventos independiente del gestor de ventanas Es un objeto único SoDB Ha de ser inicializado Directamente SoBD::init() Inicializando la librería de componentes: SoWin::init() Permite utilizar el formato de intercambio de datos SoSeparator *readall(soinput *fichero) Ejemplo Objetos básicos SoSeparator *readfile(const char *filename) SoInput * datafich = new SoInput(); SoSeparator *sep; if (!datafich->openfile (filename)) fprintf (stderr,"error: Abriendo generando la base de datos\n" " ->No se encuentra el fichero %s\n",filename); exit (-1); //Comprobamos que es un fichero válido if (!datafich->isvalidfile ()) fprintf (stderr,"error: Abriendo generando la base de datos\n" " ->Fichero %s no valido\n",filename); exit (-1); Objetos Básicos (Sb) Tipos básicos, no tienen ningún objeto padre en la jerarquía. Usados por otros objetos OI Ejemplos SbLine, SbName, SbVect3f, SbRotation, SbMatrix, SbViewportRegion, SbMutex sep=sodb::readall (datafich); delete datafich; return sep;

9 Campos (Fields) SoType Contenedores (Fields) Contienen tipos básicos Básicamente se usan para detectar cambios en los campos de la base de datos. Campos mono-valuados (Single-field SoSF) SoSFFloat (float), SoSFRotation (SbRotation) Campos multi-valuados (Multi-field SoMF) SoMFFloat (float), SoMFRotation (SbRotation) Asignación de valores y consulta de valores Mono-valuados Asignación normal: SoSFFloatVar = 3.0f; Uso de los métodos setvalue y getvalue Multi-valuados Como si se tratase de un vector: SoSFFloatVar [1]= 3.0f; Uso de los metodos: getvalue, set1value, setvalues, insertvalues, deletevalues Indica el número de valores que posee: getnum Se pueden conectar: connectfrom() Se pueden ignorar: setignore Clase de chequeo de tipos SoBase, acciones, eventos, errores SoType permite Obtener el nombre del tipo getname() Crear instancias createinstance() Conocer el clase padre getparent() Conocer el tipo de un nodo por su nombre fromname() Utilidad: saber si un objeto pertenece a una determinada clase o jerarquía Objeto->getTypeId.isDerivedFrom(SoXXXX::getClassTypeID) Objeto->isTypeOf(SoXXXX::getClassTypeID) Objeto->getTypeId==SoXXXX::getClassTypeID Permite realizar búsquedas de un determinado tipo (SoSearchAction) Equivalentes Ejemplo Objetos heredados de la clase base SoBase SoSearchAction mysearchaction; // Look for first existing light derived from class SoLight mysearchaction.settype(solight::getclasstypeid()); mysearchaction.setinterest(sosearchaction::first); mysearchaction.apply(root); if (mysearchaction.getpath() == NULL) // No lights found // Add a default directional light to the scene SoDirectionalLight *mylight = new SoDirectionalLight; root->insertchild(mylight, 0); Contenedores de Campos Nodos Forma Propiedad Transformaciones» Manipuladores Apariencia Métricos Grupo Kits Iluminación Cámaras Motores Rutas

10 Creación de nodos Borrado de nodos Los nodos deben crearse como punteros Deben ser referenciados en la base de datos Directamente ref() Añadiéndolo a un padre addchild(), insertchild() Añadiéndolo a un path o ruta SoPath Añadiéndolo a una lista de nodos SoNodeList Añadiéndolo a un campo o field SoSFNodo SoMFNode Conectándolo de un engine No usar delete DECREMENTAR a 0 su contador de referencias (cada operación decrementa en 1 este contador) De forma directa unref() Borrándolo de un nodo padre deletenode() Sacándolo de un path o ruta SoPath Borrándolo de una lista de nodos SoNodeList Cambiando el puntero de campo o field a NULL o con otro valor SoSFNodo SoMFNode Desconectándolo de un engine Quitar referencias sin borrar Nombrado de nodos y motores Se utiliza unrefnodelete() Ejemplo Incorrecto Creas un nodo: new SoCone() Le aplicas una acción (ref/unref) : SoBoundingBoxAction Lo añades a un grupo: addchild() Correcto Creas un nodo new SoCone() Lo referencias: ref Le aplicas una acción: SoBoundingBoxAction Usas unrefnodelete() Lo añades a un grupo: addchild() Descendientes de la clase SoBase Obtener nombre getname() Poner nombre setname() Buscar nodo por nombre SoNode::getByName ()

11 Ejemplo Tipos de nodos SoSeparator *root = new SoSeparator; root->ref(); //Importante referenciar el nodo raíz root->setname("root"); SoCube *mycube = new SoCube; root->addchild(mycube); mycube->setname("mycube"); SoSphere *mysphere = new SoSphere; root->addchild(mysphere); mysphere->setname("mysphere"); RemoveCube(); void RemoveCube() //Busca en toda la base de datos, no sólo en una escena SoSeparator *myroot; myroot = (SoSeparator *)SoNode::getByName("Root"); SoCube *mycube; mycube = (SoCube *)SoNode::getByName("MyCube"); myroot->removechild(mycube); Forma Propiedad Transformaciones Manipuladores Apariencia Métricos Grupo Iluminación Cámaras Nodos de forma Nodos de propiedad SoShape Formas básicas SoSphere, SoCylinder, SoCone Curvas y superficies (Nurbs) Indexadas SoIndexedNurbsCurve, SoIndexedNurbsSurface No Indexadas SoNurbsCurve, SoNurbsSurface Textos 3D y 2D SoText2, SoText3 Formas compuestas por vértices Indexadas SoIndexedFaceSet, SoIndexedLineSet, SoIndexedTriangleStripSet, No Indexadas SoFaceSet, SoPointSet, SoLineSet, SoQuadMesh, SoPointSet, SoMarkerSet VRML Nodos de transformación (SoTransformation) SoTranslation, SoRotation, SoScale SoTransform SoTransformManip (Manipuladores) Nodos métricos Nodos métricos SoNormal, SoCoordinate3

12 Nodos de apariencia Color SoMaterial SoBaseColor Textura SoTexture2 Tipo de letra SoFont Nodos de grupo Son contenedores que agrupan nodos de la escena Su clase base es SoGroup. Métodos básicos addchild insertchild removechild (Índice o nodo) Subclases: SoSeparator SoSwitch (whichchild) SoTransformSeparator Nodos de iluminación y nodos cámara Iluminación: iluminan la escena SoGLLightIdElement::getMaxGLSources(); //nº máx luces SoLight Ambiental Puntual (Point) Direccional (Directional) Focal (Spot) Cámara: Muestran parte de la escena SoCamera Proyección en perspectiva Proyección ortográfica Frusturm Modelo de Eventos Derivan de la clase SoEvent Son enviados por la librería de alto nivel Eventos de teclado, ratón Se recorre el árbol de escena buscando qué nodos pueden tratar el evento sethandled Nodos que tratan eventos Manipuladores SoSelection SoEventCallback

13 Manipuladores Callbacks Draggers y manipulators. Son nodos que capturan eventos y tienen determinadas respuestas ante ellos. Funcionamiento Capturan el evento Cambian de forma Los manipuladores además son nodos de propiedad Cambian el traversal state Luces Transformaciones Planos de corte Se pueden sustituir por transformaciones o luces replacenode (SoPath *p) replacemanip (SoPath *p, SoTransform *t) Son funciones a las que se llama cuando un objeto detecta un evento Nodos (SoCallback, Draggers, SoEvenCallback, SoSelection ) Sensores Motores Es una forma de dotar de comportamiento a la escena Ejemplo: SoSelection *grupo= new SoSelection(); grupo->addselectioncallback(seleccioncallback, data); void seleccioncallback(void *userdata, SoPath * path); Ejemplo Ejemplo // An event callback node so we can receive key press events SoEventCallback *myeventcb = new SoEventCallback; myeventcb ->addeventcallback(sokeyboardevent::getclasstypeid(), mykeypresscb, selectionroot); selectionroot ->addchild(myeventcb); // userdata is the selectionroot from main(). Void mykeypresscb(void *userdata, SoEventCallback *eventcb) SoSelection *selection = (SoSelection *) userdata; const SoEvent *event = eventcb->getevent(); If (SO_KEY_PRESS_EVENT(event, UP_ARROW)) myscaleselection(selection, 1.1); eventcb->sethandled(); else if (SO_KEY_PRESS_EVENT(event, DOWN_ARROW)) myscaleselection(selection, 1.0/1.1); eventcb->sethandled(); SoEventCallback * ecb = new SoEventCallback; ecb->addeventcallback(soevent::getclasstypeid(), mouse_cb, NULL); root->addchild(ecb); void mouse_cb(void * closure, SoEventCallback * eventcb) const SoEvent * event = eventcb->getevent(); if (event->isoftype(solocation2event::getclasstypeid())) const SbVec2s position = event->getposition(); printf("mouse moved: <%i %i>\n", position[0], position[1]);

14 Ejemplo CDS SoEventCallback * mouseevent = new SoEventCallback; mouseevent-> addeventcallback(somousebuttonevent::getclasstypeid(), mousecallback,null); root->addchild (mouseevent); SoEventCallback * keyevent = new SoEventCallback; keyevent -> addeventcallback(sokeyboardevent::getclasstypeid(), keycallback,null); root->addchild (keyevent); void mousecallback (void *, SoEventCallback *mouseevent) const SoEvent *event = mouseevent->getevent (); if (SO_MOUSE_PRESS_EVENT(event, BUTTON1)) //OTRAS MACROS. //SO_KEY_PRESS_EVENT (event, PAD_ADD), //SO_KEY_RELEASE_EVENT (event, Q) Motores o engines Motores o engines Son objetos que conectan campos (fields) Principalmente se usan para animar la escena Entradas: campos (SoField) Salidas: objeto especial (SoEngineOutput) Tipos Aritméticos SoCalculator (lento) Animación Eventos temporales SoTimeCounter Entrada 1 Eventos no temporales Entrada 2 SoCounter Salida 1 Usado para manipular arrays SoSelectOne Entrada n Se pueden concatenar motores a otros motores Los campos pueden ir directamente conectados sin motores connectfrom (otro campo o un salida de un motor)

15 Ejemplo Rutas SoCalculator *calc=new SoCalculator; SoTranslation *t1=new SoTranslation; SoTranslation *t2=new SoTranslation; //Conectamos dos traslaciones. A una de ellas le //anulamos la coordenada y calc->a.connectfrom(&t1-> translation); t2->translation.connectfrom(&calc->oa); calc->expression.set1value(0,sbstring("oa[0]=a[0]")); calc->expression.set1value(1,sbstring("oa[1]=0")); calc->expression.set1value(2,sbstring("oa[2]=a[2]")); Objeto SoPath Indican caminos dentro del grafo de escena Es una cadena de nodos donde cada eslabón es hijo del anterior Utilidad Almacenan subgrafos de la escena Todas las acciones que se aplican a un nodo pueden aplicarse a un Path Acciones Ejemplo Clase padre SoAction Son operaciones que se realizan sobre una escena, nodo o ruta. Ejemplos Renderizado SoGlRenderAction Escritura en un fichero SoWriteAction Cálculo de Bounding Boxes SoGetBoundingBoxAction Búsquedas de nodos SoSearchAction Cálculo de la matriz de transformación SoGetMatrixAction SoSeparator * root = new SoSeparator; root->ref(); SoPerspectiveCamera * pcam = new SoPerspectiveCamera; root->addchild(pcam); SoEventCallback * ecb = new SoEventCallback; ecb->addeventcallback(somousebuttonevent::getclasstypeid(), event_cb, viewer); root->addchild(ecb); //Componente de alto nivel utilizado para pintar viewer->setscenegraph( root ); pcam->viewall( root, viewer->getviewportregion() ); // attempting raypick in the event_cb() callback method SoRayPickAction rp( viewer->getviewportregion() ); rp.setpoint(mouseevent->getposition()); rp.apply(viewer->getscenegraph()); rp. getpickedpoint().getpath(); //SoPickedPoint

16 Ejemplo Sensores SbMatrix gettrans(sonode *node, SoGroup *root) SoSearchAction *sa=new SoSearchAction; sa->setnode(node); sa->apply(root); path=searchaction->getpath(); assert(path); Derivan de la clase SoSensor Son mecanismos de OI para planificar tareas Existen dos colas de tareas Delay queue: las tareas de esta cola se activan cuando la CPU tiene tiempo libre Timer queue: las tareas de esta cola se activan por un evento temporal Las tareas se activan mediante callbacks SoGetMatrixAction * gma =new SoGetMatrixAction (SbViewportRegion()); gma->apply(path); return gma->getmatrix() Ejemplo Ejemplo viewer->setautoredraw(false); SoIdleSensor* rendertimer = new SoIdleSensor(render,0L); rendertimer->setinterval(render_step); rendertimer->schedule(); void render (void *, SoSensor *) viewer->render(); viewer->setautoredraw(false); SoTimerSensor* rendertimer = new SoTimerSensor(render,NULL); rendertimer->setinterval(render_step); rendertimer->schedule(); void render (void *, SoSensor *) viewer->render();

17 Componentes de alto nivel Componentes de alto nivel Es propia del gestor de ventanas que utilizamos: SoWin, SoXt, SoGtk, SoQt Nos ofrecen Funciones de inicialización y gestión de ventanas Tratamiento de eventos Áreas para renderizar escenas Componentes para cambiar la escena (editores de materiales ) Capturan los eventos del gestor de ventanas So???::mainLoop() Los utilizan ellos mismos Los pasan a la base de datos Inicialización del gestor de ventanas y la base de datos So???::init Tipos de objetos Componentes Áreas de renderizado SoWinRenderArea Visualizadores SoWinViewer» SoWinExaminerViewer,SoWinPlaneViewer Otros componentes Dispositivos Captura de eventos Teclado Ratón Ejemplo #include <Inventor/Win/SoWin.h> #include <Inventor/Win/viewers/SoWinExaminerViewer.h> #include <Inventor/nodes/SoBaseColor.h> #include <Inventor/nodes/SoCone.h> #include <Inventor/nodes/SoSeparator.h> int main(int argc, char ** argv) HWND mainwin = SoWin::init(argc, argv, argv[0]); SoSeparator * root = new SoSeparator; root->ref(); root->addchild(new SoCone); SoWinExaminerViewer * eviewer = new SoWinExaminerViewer(mainwin); eviewer->setscenegraph(root); eviewer->show(); eviewer->settransparencytype(soglrenderaction::sorted_object_blend); SoWin::show(mainwin); SoWin::mainLoop(); // Clean up resources. delete eviewer; root->unref(); Relación entre OpenInventor y OpenGl OI permite construir aplicaciones con un alto nivel de abstracción Si no queremos usar los componentes de alto nivel podemos usar OpenGl para el renderizado y el tratamiento de los eventos Nos permite combinar las ventajas de ambos Ejemplo: Pintar un grafo de escena y pasar un filtro al framebuffer. Aumenta la complejidad return 0;

18 Implementaciones de OI OI de SGI Gratuito Disponible Irix Linux Coin3d Gratuito con propósitos no comerciales Versión profesional con librerías adicionales Disponible Linux Windows Mac OS X Como utilizar Coin3d con Visual Stutio Instalar las librerias Coin3D Simage (texturas) SoWin o SoQt (según el gestor de ventanas que vayamos a utilizar) Crear una variable de entorno con la dirección de la librería $(COIN3DDIR) C:\COIN3D\ Introducir en el path donde están las dlls $(PATH) C:\COIN3D\BIN Volver a arrancar el sistema Como utilizar Coin3d con Visual Stutio Crear un proyecto Aplicación de consola Vacía Configurar el proyecto C/C++ Preprocessor definition Introducir las variables de entorno de Coin» SIMAGE_DLL, COIN_DLL, SOWIN_DLL» SIMAGE_NOT_DLL, COIN_NOT_DLL, SOWIN_NOT_DLL Preprocessor -> Additional Include Files $(COIN3DDIR)\Include Link Object Library Modules $(COIN3DDIR)\lib\SoWin1.lib $(COIN_DIR)\lib\simage1.lib $(COIN3DDIR)\lib\Coin3.lib Como utilizar Coin3D con gcc Instalación Descargar librerías (Simage, coin, SoXt) Recompilarlos en el orden anterior tar xvfz nombre_paquete-x.y.z.tar.gz cd nombre_paquete-x.y.z./configure make make install (como root) Utilizar los comandos coin-config y soxt-config para compilar y enlazar soxt-config --build nombre_programa fich1.cpp fichn.cpp Para obtener más información sobre estos programas utiliza --help

19 Índice Eon Studio Introducción Paquetes Componentes Arquitectura e interfaz Introducción Paquetes Toolkit 3D Interfaz gráfico Funciona solo bajo Microsoft Windows Toolkit propietaria Extensible Da soporte para algún dispositivo I/O Cuevas Trackers Funciona sobre DirectX o OpenGl No es una herramienta de modelado Importa modelos (Okino) Dota a los modelos de comportamiento Eon Studio Importa modelos Utiliza Okino Creación de modelos interactivos No se necesita experiencia en programación Eon Inmersive Extensión de Eon Studio No incluido en el paquete básico Permite utilizar Eon con dispositivos RV Eon Viewer Permite visualizar proyectos Eon Gratuito

20 Paquetes Componentes Eon Raptor Plugin para 3D Studio SDK Librerías de C++ Totalmente integrado con Visual C++ Contiene nuevos wizards Basado en tecnología COM Permite extender los nodos y módulos de Eon Studio Permite integrar modelos Eon en nuestras aplicaciones Eon Turbo Permite publicar en la web modelos Eon Eon Xtra Plugin para explorer Permite visualizar modelos Eon Árbol de simulación Contiene todos los objetos que participan en la simulación (nodos) Scene graph Nodos Todos los objetos Eon son nodos que se cuelgan del árbol. Tipos Grupo Render Agentes Sensores Modelos de movimiento Scrips Componentes Componentes Campos Variables contenidas en los nodos Tipos de datos Números Cadenas Arrays Booleanos Punteros Vectores geométricos (traslaciones, rotaciones ) Tiempo Nodos Clases de campo Field: Campos internos de un nodo EventIn: Campos que recibe un nodo como eventos de entrada EventOut: Campos que recibe un nodo como eventos de salida ExposedField: Campos que pueden ser tratados tanto como eventos de entrada como eventos de salida. Conexiones y rutas Se define el comportamiento de los nodos conectando sus campos Prototipos Encapsulan nodos y sus conexiones internas

21 Arquitectura Interfaz

Programación de aplicaciones RV

Programación de aplicaciones RV Programación de aplicaciones RV TÉCNICAS Y DISPOSITIVOS DE REALIDAD VIRTUAL MASTER EN INFORMÁTICA GRÁFICA, JUEGOS Y REALIDAD VIRTUAL Marcos García Marcos.garcía@urjc.es Bibliografía Virtual Reality Technology

Más detalles

//Esta función es llamada cuando se produce un evento //de teclado void keycallback (void *userdata, SoEventCallback *eventoteclado) {

//Esta función es llamada cuando se produce un evento //de teclado void keycallback (void *userdata, SoEventCallback *eventoteclado) { Solución 4: /******************************************************** * * Este programa permite visualizar ficheros iv (vrml) * ********************************************************/ //Según el sistema

Más detalles

INGENIERÍA INFORMÁTICA Curso Académico 2006/2007. Sofía Bayona Beriso Francisco Javier Sánchez Zurdo. Realidad Virtual y Animación 1

INGENIERÍA INFORMÁTICA Curso Académico 2006/2007. Sofía Bayona Beriso Francisco Javier Sánchez Zurdo. Realidad Virtual y Animación 1 INGENIERÍA INFORMÁTICA Curso Académico 2006/2007 Sofía Bayona Beriso Francisco Javier Sánchez Zurdo Realidad Virtual y Animación 1 PÁGINA DE LA ASIGNATURA http://dac.escet.urjc.es/docencia/rva/ Realidad

Más detalles

Sensor de Temperatura utilizando el Starter Kit Javelin Stamp. Realizado por: Bertha Palomeque A. Rodrigo Barzola J.

Sensor de Temperatura utilizando el Starter Kit Javelin Stamp. Realizado por: Bertha Palomeque A. Rodrigo Barzola J. Sensor de Temperatura utilizando el Starter Kit Javelin Stamp Realizado por: Bertha Palomeque A. Rodrigo Barzola J. INTRODUCCION DIFERENCIAS EJEMPLOS JAVA Orientado a Objetos Multiplataforma Programar

Más detalles

Manual de NetBeans y XAMPP

Manual de NetBeans y XAMPP Three Headed Monkey Manual de NetBeans y XAMPP Versión 1.0 Guillermo Montoro Delgado Raúl Nadal Burgos Juan María Ruiz Tinas Lunes, 22 de marzo de 2010 Contenido NetBeans... 2 Qué es NetBeans?... 2 Instalación

Más detalles

Entre los más conocidos editores con interfaz de desarrollo tenemos:

Entre los más conocidos editores con interfaz de desarrollo tenemos: Herramientas de programación Para poder programar en ensamblador se precisa de algunas herramientas básicas, como un editor para introducir el código, un ensamblador para traducir el código a lenguaje

Más detalles

Unidad I. Introducción a la programación de Dispositivos Móviles (Continuación )

Unidad I. Introducción a la programación de Dispositivos Móviles (Continuación ) Clase:003 1 Unidad I Introducción a la programación de Dispositivos Móviles (Continuación ) 2 Entornos de Desarrollo Virtualizaciones. Agenda IDE s. Y Lenguajes de Programación. 3 Virtualización Que es

Más detalles

WINDOWS 2008 5: TERMINAL SERVER

WINDOWS 2008 5: TERMINAL SERVER WINDOWS 2008 5: TERMINAL SERVER 1.- INTRODUCCION: Terminal Server proporciona una interfaz de usuario gráfica de Windows a equipos remotos a través de conexiones en una red local o a través de Internet.

Más detalles

Informática 4º ESO Tema 1: Sistemas Informáticos. Sistemas Operativos (Parte 2)

Informática 4º ESO Tema 1: Sistemas Informáticos. Sistemas Operativos (Parte 2) 1. Qué es un sistema operativo?...2 2. Funciones de los sistemas operativos...2 3. Windows...2 3.1. La interfaz gráfica...2 3.2. La administración y los usuarios...3 3.3. El sistema de archivos...3 3.4.

Más detalles

REALIZACIÓN DE UN MOTOR DE RENDER PARA DISPOSITIVOS MÓVILES BASADO EN IRRLICHT. Autor: Javier Meseguer de Paz Dirigido por: Antonio Berlanga de Jesús

REALIZACIÓN DE UN MOTOR DE RENDER PARA DISPOSITIVOS MÓVILES BASADO EN IRRLICHT. Autor: Javier Meseguer de Paz Dirigido por: Antonio Berlanga de Jesús REALIZACIÓN DE UN MOTOR DE RENDER PARA DISPOSITIVOS MÓVILES BASADO EN IRRLICHT Autor: Javier Meseguer de Paz Dirigido por: Antonio Berlanga de Jesús Plan de la presentación Introducción Estado del arte

Más detalles

Linux Open Suse 10.2 (Básico + Avanzado)

Linux Open Suse 10.2 (Básico + Avanzado) Linux Open Suse 10.2 (Básico + Avanzado) Módulo: Linux básico Estudia los entornos de usuario KDE y GNOME, prestando especial atención al primero. Estudia cómo explorar el sistema de archivos, personalizar

Más detalles

Tema 1 Introducción. Arquitectura básica y Sistemas Operativos. Fundamentos de Informática

Tema 1 Introducción. Arquitectura básica y Sistemas Operativos. Fundamentos de Informática Tema 1 Introducción. Arquitectura básica y Sistemas Operativos Fundamentos de Informática Índice Descripción de un ordenador Concepto básico de Sistema Operativo Codificación de la información 2 1 Descripción

Más detalles

En esta unidad añadiremos información sobre EXT3 y trabajaremos con aspectos visibles que nos proporcionan estos sistemas de archivos.

En esta unidad añadiremos información sobre EXT3 y trabajaremos con aspectos visibles que nos proporcionan estos sistemas de archivos. ESTRUCTURA DEL SISTEMA DE ARCHIVOS 1. Introducción. En la unidad anterior se esbozó mediante la explicación de los formatos del disco duro, distintos tipos de sistemas de archivos: FAT16, FAT32, NTFS y

Más detalles

Capítulo 4. Implementación del lenguaje multitáctil

Capítulo 4. Implementación del lenguaje multitáctil Capítulo 4. Implementación del lenguaje multitáctil En este capítulo se presenta como fue diseñado y desarrollado el servicio de ademanes multitáctiles. Se presentan la arquitectura general del sistema,

Más detalles

Práctica 3: Utilización de Charts dobles, Waveforms Graphs, propiedades de gráficos, creación de Waveforms y su almacenamiento en disco.

Práctica 3: Utilización de Charts dobles, Waveforms Graphs, propiedades de gráficos, creación de Waveforms y su almacenamiento en disco. Práctica 3: Utilización de Charts dobles, Waveforms Graphs, propiedades de gráficos, creación de Waveforms y su almacenamiento en disco. En esta práctica se partirá de la aplicación practica2.vi generada

Más detalles

Introduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia

Introduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introduccion al Lenguaje C Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introducción C es un lenguaje de programación creado en 1972 por

Más detalles

ÍNDICE SISTEMAS OPERATIVOS... 5

ÍNDICE SISTEMAS OPERATIVOS... 5 INTRODUCCIÓN HABILIDADES INFORMÁTICAS BÁSICAS PARA ADULTOS SKILLS es un completo curso destinado a alumnos adultos, en particular, a empleados de mayor edad, de forma que puedan adquirir/mejorar sus conocimientos

Más detalles

CAPITULO 3 VRML-JAVA-WWW

CAPITULO 3 VRML-JAVA-WWW CAPITULO 3 VRML-JAVA-WWW 50 3.1 Introducción En éste capítulo se comenta brevemente sobre el origen y esencia de los lenguajes VRML 2 y Java, así como de la forma en que se pueden éstos complementar para

Más detalles

Práctica1. Introducción a Microsoft Access. Qué es Access?

Práctica1. Introducción a Microsoft Access. Qué es Access? Práctica1. Introducción a Microsoft Access Los sistemas de información empresariales tienen como misión el proporcionar información precisa en el momento adecuado, tanto para la gestión y realización de

Más detalles

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web.

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web. Modulo I. Introducción a la Programación Web. 1.1 Servidor Web. Antes de analizar lo que es un servidor Web y llevara a cabo su instalación, es muy importante identificar diferentes elementos involucrados

Más detalles

IES Abyla. Departamento de Informática. Sistemas Operativos

IES Abyla. Departamento de Informática. Sistemas Operativos Sistemas Operativos Definición y funciones básicas El Sistema Operativo es el software que permite y simplifica el uso del ordenador (hardware). Sus funciones principales son: Arrancar el ordenador y controlar

Más detalles

19. Packages o paquetes

19. Packages o paquetes Programación orientada a objetos con Java 201 19. Packages o paquetes Objetivos: a) Definir el concepto de paquete b) Interpretar el código fuente de una aplicación Java donde se utilicen paquetes c) Construir

Más detalles

El lenguaje de programación Java

El lenguaje de programación Java Departament d Arquitectura de Computadors El lenguaje de programación Java Java (I) Orientado a objetos Ejecutado por una maquina virtual Independiente de la plataforma Multithreaded Orientado a la red

Más detalles

Clases y Objetos. Informática II Ingeniería Electrónica

Clases y Objetos. Informática II Ingeniería Electrónica Clases y Objetos Informática II Ingeniería Electrónica Los Tipos de Datos Hasta ahora, en un programa podemos usar para representar variables a: Tipos fundamentales : enteros (int), caracteres (char),

Más detalles

TEMA 1. SISTEMAS OPERATIVOS Y ALMACENAMIENTO DE INFORMACIÓN

TEMA 1. SISTEMAS OPERATIVOS Y ALMACENAMIENTO DE INFORMACIÓN TEMA 1. SISTEMAS OPERATIVOS Y ALMACENAMIENTO DE INFORMACIÓN 1 SISTEMAS OPERATIVOS. INTRODUCCIÓN. Un sistema operativo es un programa (software) que se inicia al encender el ordenador, se encarga de gestionar

Más detalles

Introducción a la programación orientada a objetos

Introducción a la programación orientada a objetos Introducción a la programación orientada a objetos 1. Introducción a la programación orientada a objetos 2. Las clases 3. El tipo Struct 4. Diferencias entre Class y Struct 5. Pilares de la Programación

Más detalles

INDICE. 1. Introducción... 4. 2. El panel Entities view... 5. 3. El panel grafico... 6. 4. Barra de botones... 6. 4.1. Botones de Behavior...

INDICE. 1. Introducción... 4. 2. El panel Entities view... 5. 3. El panel grafico... 6. 4. Barra de botones... 6. 4.1. Botones de Behavior... MANUAL DE USUARIO INDICE 1. Introducción... 4 2. El panel Entities view... 5 3. El panel grafico... 6 4. Barra de botones... 6 4.1. Botones de Behavior... 7 4.2. Botones de In-agents... 8 4.3. Botones

Más detalles

Tras crear el terreno, añadir los objetos y programar la interfaz, el aspecto de la escena inicial quedó como se muestra en la Figura 30.

Tras crear el terreno, añadir los objetos y programar la interfaz, el aspecto de la escena inicial quedó como se muestra en la Figura 30. Sobre el terreno se añadió algo de vegetación, un par de árboles y una piedra. Además se creó una iluminación básica para el entorno. En ese momento el aspecto del entorno de esta escena era el que se

Más detalles

GESTIÓN DE REDES PARTE III

GESTIÓN DE REDES PARTE III PARTE III Arquitectura de Gestión OSI 3.1 Introducción La gestión de red OSI, pensada inicialmente para la gestión de las propias redes OSI, debe su implantación práctica al ser adoptada por los estándares

Más detalles

Cómo crear un fichero de ayuda para tus aplicaciones?

Cómo crear un fichero de ayuda para tus aplicaciones? Cómo crear un fichero de ayuda para tus aplicaciones? USANDO HTML HELP WORKSHOP HTML Help Workshop es una aplicación diseñada para proporcionar un sistema simple para crear y administrar proyectos de ayuda

Más detalles

FUNDAMENTOS DE PROGRAMACION CON C#

FUNDAMENTOS DE PROGRAMACION CON C# Capítulo 1 FUNDAMENTOS DE PROGRAMACION CON C# El lenguaje C# C# (léase, en inglés C sharp, y en español C almohadilla) es un lenguaje de programación que permite el desarrollo de aplicaciones para Internet,

Más detalles

Gestión de archivos (módulo transversal, MF0978_2)

Gestión de archivos (módulo transversal, MF0978_2) Gestión de archivos (módulo transversal, MF0978_2) Curso de capacitación para la obtención del módulo formativo Gestión de archivos del Certificado de profesionalidad (código MF0978_2), asociado a la unidad

Más detalles

Definiciones. Tema 21_Módulos Menú 1

Definiciones. Tema 21_Módulos Menú 1 Definiciones Un menú es una lista de opciones o de órdenes que forman parte de un mismo título, mediante los cuales se podrán seleccionar determinadas operaciones de la aplicación. El conjunto de todos

Más detalles

VAST: Manual de usuario. Autores: Francisco J. Almeida-Martínez Jaime Urquiza-Fuentes

VAST: Manual de usuario. Autores: Francisco J. Almeida-Martínez Jaime Urquiza-Fuentes VAST: Manual de usuario Autores: Francisco J. Almeida-Martínez Jaime Urquiza-Fuentes Índice general Índice general 2 1. Introducción 4 2. Representación intermedia del AST 5 2.1. Funcionamiento del VAST

Más detalles

Preliminares. Tipos de variables y Expresiones

Preliminares. Tipos de variables y Expresiones Preliminares. Tipos de variables y Expresiones Felipe Osorio Instituto de Estadística Pontificia Universidad Católica de Valparaíso Marzo 5, 2015 1 / 20 Preliminares Computadoras desarrollan tareas a un

Más detalles

Curso de Java POO: Programación orientada a objetos

Curso de Java POO: Programación orientada a objetos Curso de Java POO: Programación orientada a objetos Luis Guerra Velasco Curso INEM 02830. Programación en Java Marzo 2010 Índice 1 Introducción a la POO 2 Herencia y polimorfismo 3 Empaquetado de proyectos

Más detalles

Microsoft Office 2010 Illustrated. Tipos de Software

Microsoft Office 2010 Illustrated. Tipos de Software Microsoft Office 2010 Illustrated Tipos de Software SOFTWARE Conjunto de instrucciones que le indican a la computadora que hacer. Existen tres tipos de software: Sofware de Aplicacion Sofware de Programacion

Más detalles

TELECOMUNICACIONES Y REDES

TELECOMUNICACIONES Y REDES TELECOMUNICACIONES Y REDES Redes Computacionales I Prof. Cristian Ahumada V. Unidad V: Capa de Red OSI 1. Introducción. 2. Protocolos de cada Red 3. Protocolo IPv4 4. División de Redes 5. Enrutamiento

Más detalles

Informática y Programación Escuela de Ingenierías Industriales y Civiles Grado en Ingeniería en Ingeniería Química Curso 2010/2011

Informática y Programación Escuela de Ingenierías Industriales y Civiles Grado en Ingeniería en Ingeniería Química Curso 2010/2011 Módulo 1. Fundamentos de Computadores Informática y Programación Escuela de Ingenierías Industriales y Civiles Grado en Ingeniería en Ingeniería Química Curso 2010/2011 1 CONTENIDO Tema 1. Introducción

Más detalles

Programación de Sistemas

Programación de Sistemas Programación s Unidad 2 s Operativos y Programación Software Base Contenido Introducción a los s Operativos (SO) Definición y conceptos SO Visualización un sistema cómputo s distintos puntos vista Capas

Más detalles

Microsoft SQL Server Conceptos.

Microsoft SQL Server Conceptos. Microsoft Conceptos. Microsoft 2005 es una plataforma de base de datos a gran escala de procesamiento de transacciones en línea (OLTP) y de procesamiento analítico en línea (OLAP). La siguiente tabla muestra

Más detalles

Inducción al Laboratorio de Informática

Inducción al Laboratorio de Informática Inducción al Laboratorio de Informática La Escuela Colombiana de Ingeniería cuenta con varios Laboratorios, los cuales están a disposición de los estudiantes, profesores y todo el personal administrativo.

Más detalles

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo. GLOSARIO Actor: Un actor es un usuario del sistema. Esto incluye usuarios humanos y otros sistemas computacionales. Un actor usa un Caso de Uso para ejecutar una porción de trabajo de valor para el negocio.

Más detalles

GUIA PROGRAMACIÓN ORIENTADA A OBJETOS

GUIA PROGRAMACIÓN ORIENTADA A OBJETOS GUIA PROGRAMACIÓN ORIENTADA A OBJETOS 1. Por qué la P.O.O? R= A medida que se van desarrollando los lenguajes, se va desarrollando también la posibilidad de resolver problemas más complejos. En la evolución

Más detalles

ING. YIM APESTEGUI FLORENTINO

ING. YIM APESTEGUI FLORENTINO Qué es Flash? El software Adobe Flash Professional CC es el entorno de creación líder del sector de producción de contenido interactivo expresivo. Permite Crear experiencias envolventes y preséntelas al

Más detalles

CAPITULO 9. Diseño de una Base de Datos Relacional Distribuida

CAPITULO 9. Diseño de una Base de Datos Relacional Distribuida 9.1 Operaciones CAPITULO 9 Diseño de una Base de Datos Relacional Distribuida Las consultas distribuidas obtienen acceso a datos de varios orígenes de datos homogéneos o heterogéneos. Estos orígenes de

Más detalles

Contenido. Sistema de archivos. Operaciones sobre archivos. Métodos de acceso a archivos. Directorio. Sistema de archivos por capas.

Contenido. Sistema de archivos. Operaciones sobre archivos. Métodos de acceso a archivos. Directorio. Sistema de archivos por capas. Contenido Sistema de archivos Operaciones sobre archivos Métodos de acceso a archivos Directorio Sistema de archivos por capas Espacio libre Sistema de archivos Proporciona el mecanismo para el almacenamiento

Más detalles

Ministerio de Educación Base de datos en la Enseñanza. Glosario

Ministerio de Educación Base de datos en la Enseñanza. Glosario Ministerio de Educación Base de datos en la Enseñanza. Glosario Instituto de Tecnologías Educativas 2011 Glosario Glosario GLOSARIO Archivo Un archivo es un elemento que contiene información y que a su

Más detalles

Arquitectura de Aplicaciones

Arquitectura de Aplicaciones 1 Capítulo 13: Arquitectura de aplicaciones. - Sommerville Contenidos del capítulo 13.1 Sistemas de procesamiento de datos 13.2 Sistemas de procesamiento de transacciones 13.3 Sistemas de procesamiento

Más detalles

MANUAL DE AYUDA MÓDULO GOTELGEST.NET PREVENTA/AUTOVENTA

MANUAL DE AYUDA MÓDULO GOTELGEST.NET PREVENTA/AUTOVENTA MANUAL DE AYUDA MÓDULO GOTELGEST.NET PREVENTA/AUTOVENTA Fecha última revisión: Septiembre 2014 MANUAL DE AYUDA MÓDULO GOTELGEST.NET PREVENTA/AUTOVENTA MÓDULO GOTELGEST.NET MÓVIL... 3 1. INTRODUCCIÓN A

Más detalles

Creación un instalador con Visual Studio.NET. Irene Sobrón. Ingeniero de Telecomunicaciones por la Escuela Técnica Superior de Bilbao

Creación un instalador con Visual Studio.NET. Irene Sobrón. Ingeniero de Telecomunicaciones por la Escuela Técnica Superior de Bilbao Creación un instalador con Visual Studio.NET Irene Sobrón Ingeniero de Telecomunicaciones por la Escuela Técnica Superior de Bilbao Diferencia entre Debug y Release Existen dos configuraciones para realizar

Más detalles

Capitulo 5. Implementación del sistema MDM

Capitulo 5. Implementación del sistema MDM Capitulo 5. Implementación del sistema MDM Una vez que se concluyeron las actividades de análisis y diseño se comenzó la implementación del sistema MDM (Manejador de Documentos de MoProSoft). En este capitulo

Más detalles

Tema 1: y el lenguaje Java 1.Programación orientada a objetos 2.El lenguaje Java 3.Compilación, bytecode y JVMs 4.Entornos de desarrollo Java 5.Java vs otros lenguajes OO Programación orientada a objetos

Más detalles

Descarga, instalación y uso de herramientas:

Descarga, instalación y uso de herramientas: Descarga, instalación y uso de herramientas: Eclipse: Instalación de Eclipse (Más información en http://www.eclipse.org/) 1. Copiar, descomprimir e instalar si es necesario la última versión de Eclipse

Más detalles

PROGRAMACIÓ DIDÁCTICA: Secuanciación, Temporalización y Unidades Didácticas

PROGRAMACIÓ DIDÁCTICA: Secuanciación, Temporalización y Unidades Didácticas Departamento de Informática PROGRAMACIÓN DIDÁCTICA Curso 11-12 1 CONSEJERÍA DE EDUCACIÓN I.E.S. NERVIÓN Departamento de Informática CICLO FORMATIVO: TÉCNICO SUPERIOR EN DESARROLLO DE APLICACIONES MULTIPLATAFORMA.

Más detalles

Programación Orientada a Objetos con Java

Programación Orientada a Objetos con Java Programación Orientada a Objetos con Java M.C. Jorge Eduardo Ibarra Esquer jorgeeie@uabc.mx Sobrecarga de métodos Java permite la definición de dos o más métodos que tengan el mismo nombre, dentro de la

Más detalles

Getting Started. 1. Introducción. 2. Requerimientos de software

Getting Started. 1. Introducción. 2. Requerimientos de software Getting Started 1. Introducción Este documento presenta la información relevante y los procedimientos requeridos para comenzar a utilizar el software del campeonato, con el fin de implementar la estrategia

Más detalles

SENTINEL REMOTE CONTROL (S.R.C)

SENTINEL REMOTE CONTROL (S.R.C) SENTINEL REMOTE CONTROL (S.R.C) Versión G-0.5 Índice de contenidos 0.Consideraciones acerca de este producto...3 1.Objetivo del SRC...3 2.0 Instalación...3 2.1.Parte cliente (gclient)...4 2.1.Parte servidora

Más detalles

Desarrollo de técnicas cooperativas para un editor de objetos 3D

Desarrollo de técnicas cooperativas para un editor de objetos 3D Desarrollo de técnicas cooperativas para un editor de objetos 3D Proyecto de Fin de Carrera Ingeniería Informática David Sánchez Crespillo Universitat de les Illes Balears Año 2000 Índice General 1. Introducción

Más detalles

Introducción a Protégé

Introducción a Protégé FACULTAD DE INFORMÁTICA LICENCIATURA EN DOCUMENTACIÓN SISTEMAS DE REPRESENTACIÓN Y PROCESAMIENTO AUTOMÁTICO DEL CONOCIMIENTO Práctica 1 1ª Parte Introducción a Protégé Febrero 2003 1. Objetivo La presente

Más detalles

Informática 1 Grado en Matemáticas

Informática 1 Grado en Matemáticas Informática 1 Grado en Matemáticas Grupo de Javier Martínez Baena Índice de contenido 1.Objetivos...3 2. Por qué Code::Blocks?...3 3.Instalación en Windows...4 4.Configuración de Code::Blocks en castellano...7

Más detalles

Programación Avanzada SOLUCIÓN EXAMEN FEBRERO 2011

Programación Avanzada SOLUCIÓN EXAMEN FEBRERO 2011 Programación Avanzada SOLUCIÓN EXAMEN FEBRERO 2011 Por favor siga las siguientes indicaciones: Escriba con lápiz y de forma prolija. Escriba las hojas de un solo lado Escriba su nombre y número de documento

Más detalles

3.4. Reload Editor ( Guía de Uso).

3.4. Reload Editor ( Guía de Uso). 3.4. Reload Editor ( Guía de Uso). Anterior 3. Lors Management Siguiente 3.4. Reload Editor ( Guía de Uso). 3.4.1. Preguntas básicas sobre Reload Editor. - Qué hace el programa Reload Editor? RELOAD Editor

Más detalles

Manual del visor GeoEuskadi 2013 MANUAL DEL VISOR GEOEUSKADI

Manual del visor GeoEuskadi 2013 MANUAL DEL VISOR GEOEUSKADI MANUAL DEL VISOR GEOEUSKADI 2013 DOCUMENTO: Manual del visor GeoEuskadi AÑO FECHA DE EDICIÓN: 2013 PROPIETARIO: Gobierno Vasco. 1 Gobierno Vasco Contenido Barra de herramientas... 5 Zoom inicial... 5 Ampliar

Más detalles

Proyecto final elo329: utilizacion de LWJGL para java 3D. - Gabriel Juri - Andrés Medina - Lukas Perez

Proyecto final elo329: utilizacion de LWJGL para java 3D. - Gabriel Juri - Andrés Medina - Lukas Perez Proyecto final elo329: utilizacion de LWJGL para java 3D. Integrantes: - Carlos Ibañez - Gabriel Juri - Andrés Medina - Lukas Perez Descripcion del Problema. Videojuegos estan cada vez mas presentes en

Más detalles

A continuación resolveremos parte de estas dudas, las no resueltas las trataremos adelante

A continuación resolveremos parte de estas dudas, las no resueltas las trataremos adelante Modulo 2. Inicio con Java Muchas veces encontramos en nuestro entorno referencias sobre Java, bien sea como lenguaje de programación o como plataforma, pero, que es en realidad Java?, cual es su historia?,

Más detalles

Sesión No. 4. Contextualización INFORMÁTICA 1. Nombre: Procesador de Texto

Sesión No. 4. Contextualización INFORMÁTICA 1. Nombre: Procesador de Texto INFORMÁTICA INFORMÁTICA 1 Sesión No. 4 Nombre: Procesador de Texto Contextualización La semana anterior revisamos los comandos que ofrece Word para el formato del texto, la configuración de la página,

Más detalles

Programación Gráfica. Conceptos Básicos

Programación Gráfica. Conceptos Básicos 2013 1 Procesamiento de Imágenes. Es el campo que trata con métodos, técnicas, y algoritmos para manipulación, realce e interpretación de imágenes. Graficación por Computadora. Es la disciplina concerniente

Más detalles

Integración de NetBeans con OpenOffice.org

Integración de NetBeans con OpenOffice.org Integración de NetBeans con OpenOffice.org Índice de contenido Licencia...1 Alcance...1 Antrecedentes...1 Instalación del módulo de desarrollo en NetBeans...2 Configurar...7 Creando una función para Calc...8

Más detalles

Apéndice A Herramientas utilizadas

Apéndice A Herramientas utilizadas Apéndice A Herramientas utilizadas A.1 Java Media Framework El Java Media Framework (JMF) es una interfaz para el desarrollo de aplicaciones (API) e incorpora el manejo de audio y video en el lenguaje

Más detalles

1. El entorno de desarrollo Eclipse

1. El entorno de desarrollo Eclipse Índice 1. El entorno de desarrollo Eclipse 1 1.1. Qué es Eclipse?........................................................ 1 1.2. Trabajando con Eclipse....................................................

Más detalles

InteriCAD Lite es un programa para visualización de interiores que le permitirá crear imágenes con calidad fotorealista en un tiempo récord.

InteriCAD Lite es un programa para visualización de interiores que le permitirá crear imágenes con calidad fotorealista en un tiempo récord. Qué es InteriCAD Lite? InteriCAD Lite es un programa para visualización de interiores que le permitirá crear imágenes con calidad fotorealista en un tiempo récord. Se trata de un producto desarrollado

Más detalles

CONCEPTOS BASICOS. Febrero 2003 Página - 1/10

CONCEPTOS BASICOS. Febrero 2003 Página - 1/10 CONCEPTOS BASICOS Febrero 2003 Página - 1/10 EL ESCRITORIO DE WINDOWS Se conoce como escritorio la zona habitual de trabajo con windows, cuando iniciamos windows entramos directamente dentro del escritorio,

Más detalles

LINUX OPENSUSE 10.2 (BASICO+AVANZADO)

LINUX OPENSUSE 10.2 (BASICO+AVANZADO) LINUX OPENSUSE 10.2 (BASICO+AVANZADO) Código: 290 Modalidad: Teleformación Duración: 56 horas Objetivos: Estudio los entornos de usuario KDE y GNOME, prestando especial atención al primero. Estudia cómo

Más detalles

Plataforma desarrollo Java Formación elearning tutorizada en castellano. Fabricante: Java Grupo: Desarrollo Subgrupo: Master Java

Plataforma desarrollo Java Formación elearning tutorizada en castellano. Fabricante: Java Grupo: Desarrollo Subgrupo: Master Java C/Comandante Zorita 4 28020 Madrid/ info@ceticsa.es 902 425 524 / 91 700 01 17 Plataforma desarrollo Java Formación elearning tutorizada en castellano JAVA00d Ciclo de formación en plataforma Java Curso

Más detalles

GedicoPDA: software de preventa

GedicoPDA: software de preventa GedicoPDA: software de preventa GedicoPDA es un sistema integrado para la toma de pedidos de preventa y gestión de cobros diseñado para trabajar con ruteros de clientes. La aplicación PDA está perfectamente

Más detalles

abacformacio@abacformacio.com 1

abacformacio@abacformacio.com 1 Curso: Borland C Borland C++ Builder 5 Curso de desarrollo de aplicaciones Windows utilizando el entorno de programación Borland C++ Builder 5. Se estudian las particularidades del lenguaje C++, así como

Más detalles

Lo que necesitaremos para programar en Java, será un editor de texto o IDE y la JDK.

Lo que necesitaremos para programar en Java, será un editor de texto o IDE y la JDK. Introducción Java surgió en 1991 dentro de la empresa Sun Microsystems como un lenguaje de programación sencillo y universal destinado a electrodomésticos. La reducida potencia de cálculo y memoria de

Más detalles

"Diseño, construcción e implementación de modelos matemáticos para el control automatizado de inventarios

Diseño, construcción e implementación de modelos matemáticos para el control automatizado de inventarios "Diseño, construcción e implementación de modelos matemáticos para el control automatizado de inventarios Miguel Alfonso Flores Sánchez 1, Fernando Sandoya Sanchez 2 Resumen En el presente artículo se

Más detalles

Instalación del programa PSPP y obtención de una distribución de frecuencias.

Instalación del programa PSPP y obtención de una distribución de frecuencias. Práctica 2. Instalación del programa PSPP y obtención de una distribución de frecuencias. Con esta práctica instalaremos el programa PSPP. El programa es un software específico para el análisis estadístico

Más detalles

Práctica 2 Sólidos Articulados (Asignación 2 de Marzo; Entrega 23 de Marzo a las 23:59)

Práctica 2 Sólidos Articulados (Asignación 2 de Marzo; Entrega 23 de Marzo a las 23:59) Práctica 2 Sólidos Articulados (Asignación 2 de Marzo; Entrega 23 de Marzo a las 23:59) Cómo entregar la práctica? Enviar una copia del fichero Exercise.cpp por email a miguel.otaduy@urjc.es, antes del

Más detalles

1. En relación al concepto de microprocesador, señale cual de las siguientes es una definición correcta:

1. En relación al concepto de microprocesador, señale cual de las siguientes es una definición correcta: APELLIDOS NOMBRE DNI CALIFICACIÓN Cada repuestos correctos 0,4 puntos. Cada repuesta incorrecta resta 0,1 puntos. La doble marca no puntúa 1. En relación al concepto de microprocesador, señale cual de

Más detalles

MANUAL DE USUARIO. JNyARchiTech ALFONSO NEIL JIMÉNEZ CASALLAS MAYDA ALEXANDRA CARVAJAL VARGAS PONTIFICIA UNIVERSIDAD JAVERIANA

MANUAL DE USUARIO. JNyARchiTech ALFONSO NEIL JIMÉNEZ CASALLAS MAYDA ALEXANDRA CARVAJAL VARGAS PONTIFICIA UNIVERSIDAD JAVERIANA MANUAL DE USUARIO JNyARchiTech ALFONSO NEIL JIMÉNEZ CASALLAS MAYDA ALEXANDRA CARVAJAL VARGAS PONTIFICIA UNIVERSIDAD JAVERIANA 2012 TABLA DE CONTENIDO 1. QUÉ ES JNYARCHITECH?... 3 2. INSTRUCCIONES DE USO...

Más detalles

Práctica 1: Herramientas básicas:

Práctica 1: Herramientas básicas: Práctica 1: Herramientas básicas: En esta práctica veremos las siguientes herramientas: Conexión a Terminal remoto Conexión a escritorio remoto Otras herramientas Duración: 1 sesión de 2 5 horas Conexión

Más detalles

Sistema Inteligente de Exploración

Sistema Inteligente de Exploración Observatorio Municipal de Estadística Sistema Inteligente de Exploración Capítulos 1. Consideraciones iniciales y requerimientos... 2 2. Navegación... 3 3. Consulta de indicadores... 5 3.1. Elaboración

Más detalles

El pipeline gráfico Figura 3.1

El pipeline gráfico Figura 3.1 El pipeline gráfico Para llevar a cabo una representación virtual de un ambiente tridimensional, se realiza un modelado del escenario. Dicho modelo incluye la representación geométrica de los objetos presentes,

Más detalles

INDICE DEL CURSO APRENDER PROGRAMACIÓN JAVA DESDE CERO. PROGRAMACIÓN ORIENTADA A OBJETOS (CU00601B)

INDICE DEL CURSO APRENDER PROGRAMACIÓN JAVA DESDE CERO. PROGRAMACIÓN ORIENTADA A OBJETOS (CU00601B) APRENDERAPROGRAMAR.COM INDICE DEL CURSO APRENDER PROGRAMACIÓN JAVA DESDE CERO. PROGRAMACIÓN ORIENTADA A OBJETOS (CU00601B) Sección: Cursos Categoría: Curso Aprender programación Java desde cero Fecha revisión:

Más detalles

TEMA 2 WINDOWS XP Lección 4 BLOC DE NOTAS

TEMA 2 WINDOWS XP Lección 4 BLOC DE NOTAS TEMA 2 WINDOWS XP Lección 4 BLOC DE NOTAS 1) EL PEQUEÑO EDITOR El Bloc de notas de Windows XP es un básico editor de texto con el que podemos escribir anotaciones, de hasta 1024 caracteres por línea y

Más detalles

Demo FireMonkey La nueva generación de desarrollo de aplicaciones de negocio

Demo FireMonkey La nueva generación de desarrollo de aplicaciones de negocio Demo FireMonkey La nueva generación de desarrollo de aplicaciones de negocio Renacimiento del software de consumo Experiencia de usuario rica con medios y gráficos Intuitivo e interactivo fácil de aprender

Más detalles

Conceptos Básicos de Software. Clase III

Conceptos Básicos de Software. Clase III Clase III Definición de Sistema Operativo El sistema operativo es el programa (o software) más importante de una computadora. Para que funcionen los otros programas, cada computadora de uso general debe

Más detalles

Paso de Borland Turbo C (bajo DOS) a Anjuta (Linux) 1.

Paso de Borland Turbo C (bajo DOS) a Anjuta (Linux) 1. Paso de Borland Turbo C (bajo DOS) a Anjuta (Linux) 1. Anjuta es un entorno de desarrollo de C que podemos encontrar en cualquier distribución de GNU/Linux. Si nuestra distribución no dispone de ella,

Más detalles

Practica creación de tesauros

Practica creación de tesauros Practica creación de tesauros 2008-2009 Jorge Morato Lara Sonia Sánchez-Cuadrado Tutorial para tcs-10 de Webchoir Qué es? Es un programa para crear tesauros. Las relaciones de tipo tesauro se pueden adaptar

Más detalles

DESARROLLO DE APLICACIONES ACCESIBLES

DESARROLLO DE APLICACIONES ACCESIBLES DESARROLLO DE APLICACIONES ACCESIBLES OBJETIVOS Entender como funcionan las ayudas técnicas en entornos Windows Y Linux. Saber qué características debe tener una aplicación para que sea Accesible. DEFINICIÓN

Más detalles

Usando HADES Parte 1. Contenido. 1.1. Introducción 2. 1.2. Instalación 3. 1.3. Ejecución 3. 1.4. Menú contextual 4. 1.5. El primer circuito 5

Usando HADES Parte 1. Contenido. 1.1. Introducción 2. 1.2. Instalación 3. 1.3. Ejecución 3. 1.4. Menú contextual 4. 1.5. El primer circuito 5 Usando HADES Parte 1 Contenido 1.1. Introducción 2 1.2. Instalación 3 1.3. Ejecución 3 1.4. Menú contextual 4 1.5. El primer circuito 5 1.5.1. Colocar las compuertas 5 1.5.2. Los puertos de entrada 9 1.5.3.

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS

PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN ORIENTADA A OBJETOS Clase 1. Introducción Profesor: Diego Sánchez Gómez Introducción a la programación orientada a objetos 1. Introducción a la programación orientada a objetos 2. Las clases

Más detalles

Tema 1. Introducción a JAVA

Tema 1. Introducción a JAVA Tema 1. Introducción a JAVA Historia Características Plataforma Java Entorno de desarrollo Ejemplo: Hola mundo Estructura general de un programa Java 1 Historia de Java (i) Surge en 1991: Sun Microsystems

Más detalles

Introducción al lenguaje de programación java

Introducción al lenguaje de programación java Introducción al lenguaje de programación java Algoritmia y Programación Slide 1 LENGUAJES DE PROGRAMACION Un lenguaje de programación es un idioma artificial diseñado y creado para expresar algoritmos

Más detalles

Introducción al SPSS/PC. 1. El editor de datos. Taller de Estadística

Introducción al SPSS/PC. 1. El editor de datos. Taller de Estadística 1 Taller de Estadística Curso 2oo5/2oo6 Introducción al SPSS/PC SPSS: Statistical Package for the Social Sciences. Este programa estadístico está organizado en dos bloques: el editor de datos y el visor

Más detalles

PROFESORES Y TUTORÍAS TEMARIO PÁGINA DE LA ASIGNATURA. http://dac.etsii.urjc.es/docencia/rva

PROFESORES Y TUTORÍAS TEMARIO PÁGINA DE LA ASIGNATURA. http://dac.etsii.urjc.es/docencia/rva INGENIERÍA INFORMÁTICA Curso Académico 2011/2012 PÁGINA DE LA ASIGNATURA http://dac.etsii.urjc.es/docencia/rva Realidad Virtual y Animación 1 Realidad Virtual y Animación 2 PROFESORES Y TUTORÍAS Álvaro

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.1 UML: Introducción

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.1 UML: Introducción PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación II MODELOS y HERRAMIENTAS UML 1 1 Técnica de modelado de objetos (I) El modelado orientado a objetos es una técnica de especificación semiformal para

Más detalles