<?xml version="1.0" encoding="ISO-8859-1"?><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<front>
<journal-meta>
<journal-id>0120-5609</journal-id>
<journal-title><![CDATA[Ingeniería e Investigación]]></journal-title>
<abbrev-journal-title><![CDATA[Ing. Investig.]]></abbrev-journal-title>
<issn>0120-5609</issn>
<publisher>
<publisher-name><![CDATA[Facultad de Ingeniería, Universidad Nacional de Colombia.]]></publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id>S0120-56092011000100021</article-id>
<title-group>
<article-title xml:lang="es"><![CDATA[Análisis de la detección de colisiones en un entorno virtual para aplicaciones hápticas de asistencia quirúrgica]]></article-title>
<article-title xml:lang="en"><![CDATA[Analysing collision detection in a virtual environment for haptic applications in surgery]]></article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Pinto Salamanca]]></surname>
<given-names><![CDATA[María Luisa]]></given-names>
</name>
<xref ref-type="aff" rid="A01"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Sabater Navarro]]></surname>
<given-names><![CDATA[José María]]></given-names>
</name>
<xref ref-type="aff" rid="A02"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Sofrony Esmeral]]></surname>
<given-names><![CDATA[Jorge]]></given-names>
</name>
<xref ref-type="aff" rid="A03"/>
</contrib>
</contrib-group>
<aff id="A01">
<institution><![CDATA[,Universidad Pedagógica y Tecnológica de Colombia  ]]></institution>
<addr-line><![CDATA[ ]]></addr-line>
</aff>
<aff id="A02">
<institution><![CDATA[,Universidad Politecnica Valencia  ]]></institution>
<addr-line><![CDATA[ ]]></addr-line>
<country>España</country>
</aff>
<aff id="A03">
<institution><![CDATA[,Universidad Nacional de Colombia Departamento de Ingeniería Mecánica y Mecatrónica ]]></institution>
<addr-line><![CDATA[ ]]></addr-line>
</aff>
<pub-date pub-type="pub">
<day>01</day>
<month>04</month>
<year>2011</year>
</pub-date>
<pub-date pub-type="epub">
<day>01</day>
<month>04</month>
<year>2011</year>
</pub-date>
<volume>31</volume>
<numero>1</numero>
<fpage>204</fpage>
<lpage>212</lpage>
<copyright-statement/>
<copyright-year/>
<self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_arttext&amp;pid=S0120-56092011000100021&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_abstract&amp;pid=S0120-56092011000100021&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_pdf&amp;pid=S0120-56092011000100021&amp;lng=en&amp;nrm=iso"></self-uri><abstract abstract-type="short" xml:lang="es"><p><![CDATA[Este trabajo presenta de forma resumida el uso de dos interfaces hápticas comercialmente disponibles para aplicaciones de asistencia quirúrgica en tareas de entrenamiento y simulación médica. Mediante la integración de kits de desarrollo con librerías software de código abierto como OpenGL y VCollide, se propone una solución a los problemas de pérdida de realismo táctil y detección de colisiones con objetos sólidos en un entorno virtual. Con base en los resultados de algunos trabajos relacionados con la obtención, procesamiento y análisis de imágenes para la construcción de modelos, se desarrollan aplicaciones hápticas de interacción con sólidos rígidos de interés médico, que incluyen herramientas para la marcación de puntos y trayectorias sobre una superficie, y un algoritmo de reflexión de fuerzas para la simulación de interacción con órganos modelados por medio de técnicas hibridas (renderizado superficial y volumétrico). Se hace especial énfasis en la representación de los instrumentos virtuales quirúrgicos, integrando herramientas con geometría 3D.]]></p></abstract>
<abstract abstract-type="short" xml:lang="en"><p><![CDATA[This paper presents an analysis of two commerciallyavailable haptic interfaces that can be used in surgical training and medical simulation. Integrating development kits with open source software libraries like OpenGL and VCollide led to proposing a solution to problems like loss of tactile ability and detecting collisions between objects in a virtual environment. Haptic applications were based on results regarding capturing, processing and analysing images for building models for interaction with rigid bodies of medical interest. The application included tools for marking points and paths on a virtual surfaces and force reflection algorithms for simulating interactions with surface/volumetric 3D models. Immersion characteristics and the effect of virtual surgical instruments were analysed.]]></p></abstract>
<kwd-group>
<kwd lng="es"><![CDATA[háptica]]></kwd>
<kwd lng="es"><![CDATA[detección de colisiones]]></kwd>
<kwd lng="es"><![CDATA[simulador médico]]></kwd>
<kwd lng="en"><![CDATA[haptics]]></kwd>
<kwd lng="en"><![CDATA[collision detection]]></kwd>
<kwd lng="en"><![CDATA[medical simulator]]></kwd>
</kwd-group>
</article-meta>
</front><body><![CDATA[ <p align="center"><font face="Verdana" size="4"><b>An&aacute;lisis de la detecci&oacute;n de colisiones en un entorno virtual para aplicaciones h&aacute;pticas de asistencia quir&uacute;rgica</b></font></p>     <p><font face="Verdana" size="3">    <p align="center"><b>Analysing collision detection in a virtual environment for haptic applications in surgery</b></p></font> <font face="Verdana" size="2">    <p><b>Mar&iacute;a Luisa Pinto Salamanca <sup>1</sup>, Jos&eacute; Mar&iacute;a Sabater Navarro <sup>2</sup>, Jorge Sofrony Esmeral<sup>3</sup></b></p>     <p><sup>1</sup> Ingeniera electr&oacute;nica. M.Sc. en Ingenier&iacute;a - Automatizaci&oacute;n Industrial, Universidad Nacional de Colombia. Profesora, Escuela de Ingenier&iacute;a Electromec&aacute;nica, Universidad Pedag&oacute;gica y Tecnol&oacute;gica de Colombia Uptc. marialuisa. <a href="mailto:pinto@uptc.edu.co">pinto@uptc.edu.co</a>.</p>     <p><sup>2</sup> PhD. en Ingenier&iacute;a, Universidad Miguel Hern&aacute;ndez. M.Sc. en Ingenier&iacute;a Industrial, ETSII - Universidad Politecnica Valencia, Espa&ntilde;a. Profesor Coordinador  Virtual Reality and Robotics Lab. vr2, Universidad Miguel Hern&aacute;ndez de Elche, Espa&ntilde;a. <a href="mailto:j.sabater@umh.es">j.sabater@umh.es</a>.</p>     <p><sup>3</sup> Ph.D. en Sistemas de Control, University Of Leicester, Reino Unido. M.Sc., Technology And Medicine. Profesor, Departamento de Ingenier&iacute;a Mec&aacute;nica y Mecatr&oacute;nica, Universidad Nacional de Colombia. <a href="mailto:jsofronye@bt.unal.edu.co">jsofronye@bt.unal.edu.co</a>.</p><hr>     <p><b>RESUMEN</b></p>     <p>Este trabajo presenta de forma resumida el uso de dos interfaces h&aacute;pticas comercialmente disponibles para aplicaciones de asistencia quir&uacute;rgica en tareas de entrenamiento y simulaci&oacute;n m&eacute;dica. Mediante la integraci&oacute;n de kits de desarrollo con librer&iacute;as software de c&oacute;digo abierto como OpenGL y VCollide, se propone una soluci&oacute;n a los problemas de p&eacute;rdida de realismo t&aacute;ctil y detecci&oacute;n de colisiones con objetos s&oacute;lidos en un entorno virtual.</p>     <p>Con base en los resultados de algunos trabajos relacionados con la obtenci&oacute;n, procesamiento y an&aacute;lisis de im&aacute;genes para la construcci&oacute;n de modelos, se desarrollan aplicaciones h&aacute;pticas de interacci&oacute;n con s&oacute;lidos r&iacute;gidos de inter&eacute;s m&eacute;dico, que incluyen herramientas para la marcaci&oacute;n de puntos y trayectorias sobre una superficie, y un algoritmo de reflexi&oacute;n de fuerzas para la simulaci&oacute;n de interacci&oacute;n con &oacute;rganos modelados por medio de t&eacute;cnicas hibridas (renderizado superficial y volum&eacute;trico). Se hace especial &eacute;nfasis en la representaci&oacute;n de los instrumentos virtuales quir&uacute;rgicos, integrando herramientas con geometr&iacute;a 3D.</p>     ]]></body>
<body><![CDATA[<p><b>Palabras claves</b>: h&aacute;ptica, detecci&oacute;n de colisiones, simulador m&eacute;dico.</p>     <p><b>ABSTRACT</b></p>     <p>This paper presents an analysis of two commerciallyavailable haptic interfaces that can be used in surgical training and medical simulation. Integrating development kits with open source software libraries like OpenGL and VCollide led to proposing a solution to problems like loss of tactile ability and detecting collisions between objects in a virtual environment.</p>     <p>Haptic applications were based on results regarding capturing, processing and analysing images for building models for interaction with rigid bodies of medical interest. The application included tools for marking points and paths on a virtual surfaces and force reflection algorithms for simulating interactions with surface/volumetric 3D models. Immersion characteristics and the effect of virtual surgical instruments were analysed.</p>     <p><b>Keywords</b>: haptics, collision detection, medical simulator.</p><hr>     <p><b>Recibido</b>: diciembre 7 de 2009. <b>Aceptado</b>: enero 24 de 2011</p><hr>     <p><font face="Verdana" size="3"><b>Introducci&oacute;n</b></font></p>     <p>H&aacute;ptica es un &aacute;rea que estudia e investiga la interacci&oacute;n de la modalidad sensorial del tacto con un mundo virtual. Las interfaces h&aacute;pticas son dispositivos bidireccionales que proporcionan sensaciones de fuerzas o tacto al operador a trav&eacute;s de la misma interfaz con la que env&iacute;a consignas al sistema remoto; son b&aacute;sicamente posicionadores de avanzadas prestaciones que permiten simular sensaciones t&aacute;ctiles gracias a la realimentaci&oacute;n de fuerzas (G&oacute;mez, 2005).</p>     <p>De acuerdo a los resultados de selecci&oacute;n de una interfaz h&aacute;ptica para aplicaciones de asistencia quir&uacute;rgica presentados en (M&eacute;ndez, 2008), los <i>joysticks</i> h&aacute;pticos Phantom Omni<sup>&reg;</sup> y Novint Falcon<i>&trade;</i> son dispositivos de bajo costo con una serie de caracter&iacute;sticas electromec&aacute;nicas que permiten una interacci&oacute;n apropiada en sistemas de teleoperaci&oacute;n donde se requiere de ciertas habilidades manuales especiales.</p>     <p>La representaci&oacute;n del efector final del dispositivo h&aacute;ptico en el entorno virtual se realiza mediante un solo punto con coordenadas en los ejes (x, y, z), denominado SCP (<i>surface contact point</i>), God-Object, HIP (<i>haptic interface point</i>) (Popescu, 1999), <i>proxy</i> (para el Phantom Omni) o <i>hdlTool</i> (para el Novint Falcon). A partir de este punto se efect&uacute;an las transformaciones de la geometr&iacute;a que representan la herramienta t&aacute;ctil o cursor h&aacute;ptico, el c&aacute;lculo de colisiones y la realimentaci&oacute;n de fuerzas (figura <a href="#a21e1">1</a>). Mientras no exista colisi&oacute;n entre el cursor h&aacute;ptico y una superficie (con la cual se desea interactuar en el entorno tridimensional), coincidir&aacute;n las posiciones del efector final con el proxy, teniendo en cuenta las transformaciones necesarias para relacionarlo con la escena virtual; cuando exista un contacto entre el proxy y el s&oacute;lido, el efector final podr&aacute; penetrar en el objeto, sin embargo el proxy se mantendr&aacute; en su superficie. La fuerza que se enviar&aacute; entonces al dispositivo puede ser calculada siguiendo un modelo, por ejemplo masa-muelle, basado en la distancia existente entre el punto de contacto y el dispositivo h&aacute;ptico, o determinada por medio de una proporcionalidad con la superficie colisionada.</p>     ]]></body>
<body><![CDATA[<p><a name="a21e1"></a></p>     <p align="center"><img src="img/revistas/iei/v31n1/v31n1a21e1.jpg"/></p>     <p>Este trabajo propone la integraci&oacute;n de un conjunto de librer&iacute;as para simular el contacto de un objeto s&oacute;lido y una herramienta h&aacute;ptica representada tambi&eacute;n como un s&oacute;lido en una escena virtual. Esto se realiza vali&eacute;ndonos de un algoritmo para la detecci&oacute;n de colisiones entre objetos r&iacute;gidos y modelos superficiales triangulares cargados desde archivos *.obj, a partir del estudio de la librer&iacute;a VCollide y su integraci&oacute;n con OpenGL<sup>&reg;</sup> y HDAPI. Se generaliza, adem&aacute;s, este procedimiento, implement&aacute;ndolo con el dispositivo Novint Falcon<i>&trade;</i> y su SDK HDAL (Novint, 2008), el cual no incluye algoritmo para la detecci&oacute;n de colisiones. Las aplicaciones se desarrollaron sobre una plataforma Windows XP de 32-bits, con el compilador Microsoft<sup>&reg;</sup> Visual Studio.Net 2005, en un PC con AMD Athlon<i>&trade;</i> 64 X2 Dual Core Processor TK57 1.90 GHz, 1.75 GB RAM y tarjeta gr&aacute;fica NVIDIA GeForce 7000M 256 MB.</p>     <p><font face="Verdana" size="3"><b>Integraci&oacute;n de los dispositivos h&aacute;pticos</b></font></p>     <p><b>Descripci&oacute;n de equipos y software</b></p>     <p><b>Interfaz Phantom Omni<sup>&reg;</sup></b></p>     <p>El dispositivo Phantom Omni<sup>&reg;</sup>, de SensAble Technologies, Inc. (<a href="http://www.sensable.com/haptic-phantom-omni.htm"target="_blank">http://www.sensable.com/haptic-phantom-omni.htm</a>) (figura <a href="#a21e2">2</a>b), es una interfaz h&aacute;ptica tipo joystick de configuraci&oacute;n serial con 6 GDL y realimentaci&oacute;n de fuerzas nominales de 3.3N en tres ejes: x, y, z. El OpenHaptics<sup>&reg;</sup> SDK es el kit de desarrollo, proporcionado con el dispositivo h&aacute;ptico Phantom Omni<sup>&reg;</sup> en el OpenHaptics Toolkit v.2.0, que permite crear aplicaciones de software para el manejo de los dispositivo h&aacute;pticos Phantom<sup>&reg;</sup> de SensAble Technologies. Este SDK incluye el conjunto de librer&iacute;as HDAPI (<i>Haptic Device API</i>), HLAPI (<i>Haptic Library API</i>), utilidades, controladores del dispositivo (<i>Phantom Device Drivers, PDD</i>) y ejemplos de c&oacute;digos fuente; en este trabajo se usaron las librer&iacute;as Open Haptics Academic Edition OHAE v2.0.</p>      <p><a name="a21e2"></a></p>     <p align="center"><img src="img/revistas/iei/v31n1/v31n1a21e2.jpg"/></p>     <p><b><i>Interfaz Novint Falcon<i>&trade;</i></i></b></p>     ]]></body>
<body><![CDATA[<p>El Novint Falcon<i>&trade;</i> (figura <a href="#a21e2">2</a>c) es un dispositivo con realimentaci&oacute;n de fuerzas de configuraci&oacute;n paralela, fabricado por Novint Technologies Inc., el cual permite la interacci&oacute;n en escenarios tridimensionales 3D. El Novint HDAL SDK es el kit de desarrollo para el dispositivo Novint Falcon y contiene toda la documentaci&oacute;n y los archivos de software necesarios para desarrollar aplicaciones con el dispositivo h&aacute;ptico desde la capa de abstracci&oacute;n HDAL (<i>Haptic Device Abstraction Layer</i>). La versi&oacute;n utilizada en los experimentos desarrollados fue HDAL SDK v.2.1.3.</p>     <p><b><i>OpenGL API y VCollide</i></b></p>     <p>OpenGL<sup>&reg;</sup> API es una interfaz de programaci&oacute;n usada para creaci&oacute;n de entornos virtuales 3D en tiempo real. Fue desarrollada por Silicon Graphics a partir de su biblioteca IRIS GL, y se considera actualmente como la API libre y portable m&aacute;s utilizada en la industria para el desarrollo de aplicaciones gr&aacute;ficas 2D y 3D (Hearn, 2006). Permite la generaci&oacute;n de nuevos modelos o la interacci&oacute;n con modelos creados con otros paquetes gr&aacute;ficos a partir del manejo de ficheros WaveFront .obj y del uso de las librer&iacute;as <i>gl, glu</i> y <i>glut</i> (Bradford, 2004) en lenguajes de programaci&oacute;n como C++, C#, Java y Visual Basic. En el trabajo presentado se usaron las librer&iacute;as OpenGL<sup>&reg;</sup> API gl, glu, glut versi&oacute;n 3.7.6 para Windows<sup>&reg;</sup>.</p>     <p>Por la facilidad que ofrece para trabajar con mallados triangulares, por el tipo de reporte de colisi&oacute;n y por registrar menor tiempo promedio de ejecuci&oacute;n en comparaci&oacute;n con otras librer&iacute;as (Caselli, 2002; Mu&ntilde;oz-Moreno, 2004), se seleccion&oacute; VCollide para analizar la detecci&oacute;n de colisiones en un entorno h&aacute;ptico. Esta librer&iacute;a fue desarrollada por el grupo GAMMA (<i>Geometric Algorithms for Modeling, Motion, and Animation</i>, <a href="http://www.cs.unc.edu/~geom/"target="_blank">http://www.cs.unc.edu/~geom/</a>), de la Universidad de Carolina del Norte. Est&aacute; escrita en C++ y fue dise&ntilde;ada para trabajar en ambientes que contienen un gran n&uacute;mero de objetos geom&eacute;tricos formados por mallas de tri&aacute;ngulos. Los experimentos de interacci&oacute;n h&aacute;ptica se desarrollaron con VCollide v.201, compilada con Microsoft Visual Studio<sup>&reg;</sup> v.6.0 y v.8.0.</p>     <p><b>Integraci&oacute;n OpenGL y VCollide</b></p>     <p>Teniendo en cuenta que tanto las librer&iacute;as VCollide como OpenGL se basan en el lenguaje de programaci&oacute;n C++, la integraci&oacute;n para una aplicaci&oacute;n de realidad virtual con objetos colisionables resulta una tarea sencilla. Para la integraci&oacute;n de geometr&iacute;as m&aacute;s elaboradas con OpenGL se utilizaron archivos WaveFront *.obj, que permiten una f&aacute;cil interpretaci&oacute;n con rutinas de C++. Estos archivos definen la geometr&iacute;a y otras propiedades del objeto, las cuales pueden ser desplegadas en visualizadores de prestaciones avanzadas. El archivo *.obj puede ser creado a partir de una exportaci&oacute;n con dicho formato desde cualquier programa de modelado 3D.</p>     <p>En la aplicaci&oacute;n se generaron, importaron y exportaron modelos de s&oacute;lidos 3D con el programa de modelado Blender v.2.46 (<a href="http://www.blender.org"target="_blank">www.blender.org</a>), teniendo en cuenta que el modelo *.obj deb&iacute;a ser triangular para que se pudiera adicionar como objeto colisionable en VCollide. Para interpretar los archivos *.obj de cada objeto en la escena se desarroll&oacute; una clase que permitiera ordenar la informaci&oacute;n de caras y v&eacute;rtices, escalizar seg&uacute;n el tama&ntilde;o de cada objeto, calcular las normales de los tri&aacute;ngulos, dibujar los s&oacute;lidos y adicionarlos como nuevos objetos colisionables. Con el reporte de VCollide se rescat&oacute; la informaci&oacute;n del par de objetos colisionados y los pol&iacute;gonos de solapamiento.</p>     <p><b>Experimentos de interacci&oacute;n h&aacute;ptica</b></p>     <p>La librer&iacute;a HDAPI proporciona un control directo del Phantom Omni<sup>&reg;</sup>. Por medio de las funciones y utilidades ofrecidas se puede manejar la configuraci&oacute;n del dispositivo h&aacute;ptico, comprobar su estado (posici&oacute;n, velocidad y fuerza del efector final), y generar fuerzas indicando la intensidad, direcci&oacute;n e instante de aplicaci&oacute;n. La representaci&oacute;n del cursor h&aacute;ptico se realiza mediante un s&oacute;lido virtual teniendo en cuenta que las transformaciones del dispositivo son traslaciones y rotaciones efectuadas con respecto a la posici&oacute;n del proxy en la escena.</p>     <p>Estas consideraciones permitieron integrar las librer&iacute;as VCollide, OpenGL y HDAPI de OpenHaptics SDK, haciendo que el vector de fuerza a aplicar dependiera de las colisiones detectadas entre los s&oacute;lidos.</p>     ]]></body>
<body><![CDATA[<p>Con la inserci&oacute;n de mallados (de variados tama&ntilde;os y n&uacute;mero de v&eacute;rtices) obtenidos previamente por procesamiento de im&aacute;genes m&eacute;dicas (Tibamoso, 2009) se evalu&oacute; el desempe&ntilde;o de algoritmos implementando las librer&iacute;as HDAPI y HLAPI de Open Haptics, VCollide, HDAL y OpenGL. La herramienta o cursor h&aacute;ptico se represent&oacute; con modelos superficiales de un l&aacute;piz, un bistur&iacute;, una fresa y un martillo, intercambiables gracias a un men&uacute; de opciones. Los modelos superficiales, incluidos como archivos en formato WaveFront *.obj, conten&iacute;an desde 528 hasta 1.794.041 pol&iacute;gonos triangulares. El an&aacute;lisis se concentr&oacute; en comprobar el desempe&ntilde;o de:</p>     <p>1. Herramienta h&aacute;ptica con modelo superficial y librer&iacute;a HLAPI: interacci&oacute;n del dispositivo Phantom Omni (figura <a href="#a21e3">3</a>).</p>     <p>2. Herramienta h&aacute;ptica con modelado superficial y librer&iacute;as HDAPI/ Vcollide: interacci&oacute;n del dispositivo Phantom Omni.</p>     <p>3. Herramienta h&aacute;ptica con modelado superficial y librer&iacute;as HDAL/VCollide: interacci&oacute;n del dispositivo Novint Falcon.</p>     <p><a name="a21e3"></a></p>     <p align="center"><img src="img/revistas/iei/v31n1/v31n1a21e3.jpg"/></p>     <p><b>Algoritmo de reflexi&oacute;n de fuerza por aproximaci&oacute;n volum&eacute;trica</b></p>     <p>La renderizaci&oacute;n de fuerzas es el procedimiento por el cual se transmite una sensaci&oacute;n t&aacute;ctil mediante la aplicaci&oacute;n de una serie de vectores de fuerza a trav&eacute;s del dispositivo h&aacute;ptico. Estos vectores de fuerza son actualizados seg&uacute;n la interacci&oacute;n y transformaci&oacute;n din&aacute;mica entre los objetos virtuales de la escena y la interfaz h&aacute;ptica. Una vez representado el dispositivo h&aacute;ptico en el entorno virtual, el c&aacute;lculo y aplicaci&oacute;n de los vectores de fuerzas se pueden dar en dependencia del movimiento, el tiempo, o una combinaci&oacute;n de ambos. A partir de la informaci&oacute;n proporcionada en la detecci&oacute;n de colisiones con VCollide se propuso un algoritmo que utiliza las librer&iacute;as HDAPI y HDAL para permitir la aplicaci&oacute;n de un vector de fuerzas con direcci&oacute;n y magnitud dependiente de la geometr&iacute;a y volumen de las partes colisionadas (Sabater, 2009).</p>     <p>Cuando se detecta la colisi&oacute;n, la informaci&oacute;n del reporte de VCollide y la inicializaci&oacute;n de la aplicaci&oacute;n permiten conocer cu&aacute;ntos objetos s&oacute;lidos han colisionado, as&iacute; como cu&aacute;les, y cuantos tri&aacute;ngulos se han solapado en cada s&oacute;lido. El volumen de los s&oacute;lidos incluidos en la escena se determina a partir de las coordenadas de los v&eacute;rtices que forman los pol&iacute;gonos triangulares de cada secci&oacute;n (figura <a href="#a21e4">4</a>). Por simplicidad del algoritmo, se calcul&oacute; el volumen envolvente de una primitiva geom&eacute;trica, que se seleccion&oacute; como un paralep&iacute;pedo que reduce el c&aacute;lculo matem&aacute;tico a la multiplicaci&oacute;n de tres coordenadas (ancho, alto y profundidad) determinadas por la diferencia entre los componentes m&iacute;nimos y m&aacute;ximos de cada eje coordenado. Esto permiti&oacute; la aplicaci&oacute;n de una t&eacute;cnica de caja envolvente alineada con el objeto (OBB), calculada por un algoritmo que acepta transformaciones de traslaci&oacute;n y rotaci&oacute;n del i-&eacute;simo objeto <sup><i>vs<font size="-1">i</font></i></sup> de la siguiente manera:</p>     <p><a name="a21e4"></a></p>     ]]></body>
<body><![CDATA[<p align="center"><img src="img/revistas/iei/v31n1/v31n1a21e4.jpg"/></p>     <p>1. Determinar (<i>x</i><sub>min</sub>, <i>x</i><sub>max</sub>), (<i>y</i><sub>min</sub>, <i>y</i><sub>max</sub>), (<i>z</i><sub>min</sub>, <i>z</i><sub>max</sub>)   </p>     <p>2 . Calcular, <i>x<sub>v</sub></i> = <i>x</i><sub>max</sub> - <i>x</i><sub>min</sub>, <i>y<sub>v</sub></i> = <i>y</i><sub>max</sub> - <i>y</i><sub>min</sub>, <i>z<sub>v</sub></i> = <i>z</i><sub>max</sub> - <i>z</i><sub>min</sub></p>     <p>3. Transformar objeto, ir a <i>1)</i></p>     <p>Para simular la interacci&oacute;n del s&oacute;lido y el cursor h&aacute;ptico se supuso que el c&aacute;lculo de la fuerza depend&iacute;a de la informaci&oacute;n geom&eacute;trica, vectorial y volum&eacute;trica de las partes del s&oacute;lido cuyas caras han colisionado con la herramienta, utilizando informaci&oacute;n de los tri&aacute;ngulos colisionados <sup><i>Tc<font size="-2">1</font></i></sup>, sus v&eacute;rtices <sup><i>vc<font size="-2">1</font></i></sup>, normales <sup><i>nc<font size="-2">1</font></i></sup> de la parte <sup><i>pc<font size="-2">1</font></i></sup> y volumen <sup><i>Voc<font size="-2">1</font></i></sup>correspondiente. Se plante&oacute; entonces la aplicaci&oacute;n de un vector de fuerza con magnitud proporcional al volumen de la parte s&oacute;lida tocada y con direcci&oacute;n dada por la sumatoria de las normales de cada una de las caras colisionadas en el s&oacute;lido.</p>      <p><font face="Verdana" size="3"><b>Resultados</b></font></p>     <p><b>La detecci&oacute;n de colisiones con VCollide contra HLAPI y HDAL</b></p>     <p>En la figura <a href="#a21e5">5</a> se indican los tiempos de inicializaci&oacute;n para las ejecuciones de cada dispositivo h&aacute;ptico en funci&oacute;n del n&uacute;mero de pol&iacute;gonos triangulares incluidos en cada modelo. Esta informaci&oacute;n evidencia que para cargar un objeto en la escena virtual, con 233.764 tri&aacute;ngulos en su mallado superficial, con el dispositivo Novint Falcon (librer&iacute;as HDAL y VCOLLIDE), se debieron esperar 25.342 ms antes de comenzar la aplicaci&oacute;n, mientras que en la interfaz Phantom Omni (librer&iacute;as HLAPI y HDAPIVCOLLIDE) los tiempos de inicio para convertir los objetos en modelos colisionables fueron de 7.109 ms y 7.719 ms.</p>     <p><a name="a21e5"></a></p>     <p align="center"><img src="img/revistas/iei/v31n1/v31n1a21e5.jpg"/></p>     ]]></body>
<body><![CDATA[<p>Al evaluar los componentes del SDK OpenHaptics en relaci&oacute;n con el tiempo de inicializaci&oacute;n, se obtuvo mejor respuesta usando HDAPI-VCollide. Sin embargo, el algoritmo de realimentaci&oacute;n del HLAPI (que ya viene implementado en la misma librer&iacute;a) muestra una mejor respuesta en cuanto a la intensidad de la se&ntilde;al de fuerza y su variaci&oacute;n al mover el cursor h&aacute;ptico sobre el s&oacute;lido, permitiendo percibir una sensaci&oacute;n t&aacute;ctil m&aacute;s suave y continua que con el HDAPI-VCollide. Pero esto s&oacute;lo es cierto si la detecci&oacute;n de colisiones se efect&uacute;a entre el proxy y un s&oacute;lido, lo cual ocasiona que haya posibles inmersiones de la herramienta aun cuando se est&eacute;n realimentando fuerzas.</p>     <p>Otro aspecto a considerar con el uso de las librer&iacute;as HL fue su dependencia del tipo de renderizado gr&aacute;fico para los pol&iacute;gonos que conforman el modelo superficial, cuyas variaciones visuales se obtuvieron por medio de la funci&oacute;n <i>glPolygonMode</i> de OpenGL. El renderizado h&aacute;ptico con HL fue indetectable cuando los s&oacute;lidos fueron visualizados a partir de puntos o l&iacute;neas. En la tabla <a href="#a21e6">1</a> se indican otros criterios de comparaci&oacute;n.</p>     <p><a name="a21e6"></a></p>     <p align="center"><img src="img/revistas/iei/v31n1/v31n1a21e6.jpg"/></p>     <p><b>Herramientas virtuales de exploraci&oacute;n t&aacute;ctil en un modelo superficial</b></p>     <p>Con el uso de las funciones <i>callbacks</i> de las librer&iacute;as HLAPI y HDAL se facilita el manejo de eventos de inter&eacute;s para la realimentaci&oacute;n t&aacute;ctil: 1) detecci&oacute;n de colisi&oacute;n de los objetos de la escena con el proxy o punto a partir del cual se dibuja el cursor h&aacute;ptico; 2) captura de entradas digitales por medio de los pulsadores con los que cuentan los dispositivos h&aacute;pticos. Con estas funciones se implementaron herramientas de exploraci&oacute;n t&aacute;ctil para la marcaci&oacute;n de puntos y trayectorias sobre modelos superficiales de inter&eacute;s m&eacute;dico (figura 6a). Se incluy&oacute; la opci&oacute;n de almacenamiento de los puntos marcados en archivos de tipo texto plano.</p>     <p>La figura <a href="#a21e7">6</a>b presenta la imagen de la aplicaci&oacute;n de integraci&oacute;n OpenGL, VCollide y HDAPI. En este caso se apreci&oacute; el efecto del algoritmo de fuerzas propuesto; la direcci&oacute;n del vector de fuerza (flecha negra) es correspondiente con la sumatoria de la direcci&oacute;n de las normales y la magnitud cambia con respecto al volumen de la superficie tocada con la herramienta h&aacute;ptica. Aunque la funci&oacute;n del c&aacute;lculo de volumen que se realiz&oacute; no es del todo confiable para modelos superficiales con cavidades, lo cual implicar&iacute;a un mayor costo computacional, se pudo concluir experimentalmente que a menor tama&ntilde;o de los objetos colisionables, mejor ser&aacute; la aproximaci&oacute;n volum&eacute;trica y el vector de fuerza aplicado.</p>     <p><a name="a21e7"></a></p>     <p align="center"><img src="img/revistas/iei/v31n1/v31n1a21e7.jpg"/></p>     <p><font face="Verdana" size="3"><b>Conclusiones</b></font></p>     ]]></body>
<body><![CDATA[<p>Las ventajas de programar el dispositivo Phantom Omni con la librer&iacute;a HLAPI son notorias en cuanto a la realimentaci&oacute;n t&aacute;ctil de forma continua y a la inserci&oacute;n previa de algoritmos de renderizaci&oacute;n de fuerza. Sin embargo, se encuentran considerables p&eacute;rdidas de inmersi&oacute;n visual y realismo de la aplicaci&oacute;n, ya que la detecci&oacute;n de colisiones se realiza &uacute;nicamente con respecto a un punto, lo cual puede ser indeseado en un simulador m&eacute;dico. Con el uso de VCollide para la detecci&oacute;n de colisiones se superan estos inconvenientes, pero se deben generar algoritmos para la identificaci&oacute;n de tri&aacute;ngulos y v&eacute;rtices de los modelos superficiales, la detecci&oacute;n de posici&oacute;n del efector final y la aplicaci&oacute;n de fuerzas con la integraci&oacute;n de las librer&iacute;as HDAPI para el dispositivo Phantom Omni y HDAL para el Novint Falcon.</p>     <p>En el algoritmo para la generaci&oacute;n de la escena gr&aacute;fica mediante OpenGL, con el uso de OpenHaptics o HDAL, la sincronizaci&oacute;n de los hilos h&aacute;ptico y gr&aacute;fico es transparente para el usuario. No obstante, las aplicaciones de HLAPI en las que se cargaron modelos superficiales con m&aacute;s de 230.000 caras triangulares provocaron lentitud en la ejecuci&oacute;n gr&aacute;fica. Las actualizaciones de la escena (ubicaci&oacute;n de puntos de vista, ejecuci&oacute;n de transformaciones del cursor h&aacute;ptico, acercamientos, etc.) son autom&aacute;ticas con HLAPI, pero la realimentaci&oacute;n t&aacute;ctil solamente se presenta cuando los s&oacute;lidos son visualizados como modelos superficiales completos (GL-FILL), es decir, que se pierde la informaci&oacute;n t&aacute;ctil cuando se visualizan los objetos por sus v&eacute;rtices o por las l&iacute;neas que componen el mallado (GL-POINT, GL-LINE y GL-FILL). Esta situaci&oacute;n es imperceptible con el uso de HDAPI o HDAL.</p>     <p>En las simulaciones hechas para aplicaciones de asistencia quir&uacute;rgica se consider&oacute; que los objetos de la escena virtual (tanto &oacute;rganos como herramientas del instrumental quir&uacute;rgico) fueron r&iacute;gidos (geometr&iacute;a constante) y at&oacute;micos (topolog&iacute;a constante), esto es, no se pod&iacute;an dividir, ni seccionar. En dichas aplicaciones estos objetos s&oacute;lo experimentaron rotaciones y traslaciones, las escalizaciones se realizaron previamente al cargar la informaci&oacute;n sobre los pol&iacute;gonos de objetos. Sin embargo, para lograr que estas simulaciones puedan ser utilizadas con &eacute;xito en el campo quir&uacute;rgico, se deben incluir algoritmos de deformaci&oacute;n en un campo tridimensional que permitan analizar &oacute;rganos como objetos deformables, adem&aacute;s de herramientas del instrumental quir&uacute;rgico especiales, como la aguja y el hilo de sutura, y lograr un equilibrio entre el costo computacional de los algoritmos y el realismo para simular estas situaciones.</p> <hr>     <p><font face="Verdana" size="3"><b>Referencias</b></font></p>     <!-- ref --><p>Bradford, J., Using OpenGL &amp; GLUT in Visual Studio .NET, 2003. <a href="http://csf11.acs.uwosh.edu/cs371/visualstudio/index.html"target="_blank">http://csf11.acs.uwosh.edu/cs371/visualstudio/index.html</a>, 2004.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000077&pid=S0120-5609201100010002100001&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>Caselli, S., Mazolli, M., Reggiani, M., A experimental evaluation of colision detection packages for robot motion planning. Procedings of the IEEE/RSJ Intl., Conference of Intelligent Robots and Systems EPFL. Lausanne, Switzerland, 2002.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000079&pid=S0120-5609201100010002100002&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>G&oacute;mez, J.M., Mu&ntilde;oz, V., Dominguez, F., Ser&oacute;n, J., Sistema experimental de Tele-Cirug&iacute;a., Revista eSalud, Vol. 1, No 2, Abril-Junio, 2005.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000081&pid=S0120-5609201100010002100003&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     ]]></body>
<body><![CDATA[<!-- ref --><p>Hearn, D., Baker, M., Gr&aacute;ficos por computadora con OpenGL., PEARSON Prentice Hall, Madrid. 3 Edition. 2006.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000083&pid=S0120-5609201100010002100004&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>M&eacute;ndez, L., Pinto, M., Sofrony, J., Definici&oacute;n y Selecci&oacute;n de una Interfaz H&aacute;ptica para Aplicaciones Preliminares de Asistencia Quir&uacute;rgica., Memorias del III Encuentro Nacional de Investigaci&oacute;n en Posgrados - ENIP 2008, Universidad Nacional de Colombia, Mayo, 2008.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000085&pid=S0120-5609201100010002100005&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>Novint Technologies, Inc., Haptic Device Abstraction Layer (HDAL)., Programmer's Guide HDAL SDK VERSION 2.1.3 Agosto, 2008.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000087&pid=S0120-5609201100010002100006&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>Mu&ntilde;oz-Moreno, E., Rodr&iacute;guez, S., Vilora, A., Lamata, P., Mart&iacute;n, M.A., Luis-Garc&iacute;a, R., Aja, S., G&oacute;mez, E., Alberola, C., Detecci&oacute;n de colisiones. Un problema clave en la simulaci&oacute;n quir&uacute;rgica., Inform&aacute;tica y Salud (I+S) vol. 48, Octubre, 2004, pp. 23-35.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000089&pid=S0120-5609201100010002100007&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>Popescu, V., Burdea, G., Bouzit, M. Virtual Reality Simulation Modeling for a Haptic Glove., Computer Animation, 1999. Proceedings. Geneva, Switzerland, 1999, pp.195.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000091&pid=S0120-5609201100010002100008&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>      ]]></body>
<body><![CDATA[<!-- ref --><p>Sabater, J., Pinto, M., Saltaren, R., Sofrony, J., Azorin, J.M., Perez, C., Badesa, J., Force reflecting algorithm in tumour resection simulation procedures., CARS 2009 - Proceedings of the 23rd International Congress and Exhibition, Berlin, Germany, June 23 - 27, 2009, pp. 138-140.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000093&pid=S0120-5609201100010002100009&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>SensAble Technologies, Inc., OpenHaptics Toolkit v. 2.0., Programmer's Guide, 2005, pp. 5-3 5-4.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000095&pid=S0120-5609201100010002100010&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p>     <!-- ref --><p>Tibamoso G., Romero, E., Segmentaci&oacute;n y Reconstrucci&oacute;n Simult&aacute;nea del Volumen del H&iacute;gado a partir de im&aacute;genes de Tomograf&iacute;a Axial Computarizada, Descripci&oacute;n de proyecto., Universidad Nacional de Colombia, <a href="http://www.bioingenium.unal.edu.co/pagpro.php?idp=3Dhigado&amp;lang=es&amp;linea=2"target="_blank">http://www.bioingenium.unal.edu.co/pagpro.php?idp=3Dhigado&amp;lang=es&amp;linea=2</a>, 2009.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000097&pid=S0120-5609201100010002100011&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --></p><hr></font>     ]]></body><back>
<ref-list>
<ref id="B1">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Bradford]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<source><![CDATA[Using OpenGL & GLUT in Visual Studio]]></source>
<year>2003</year>
<publisher-name><![CDATA[NET]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B2">
<nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Caselli]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
<name>
<surname><![CDATA[Mazolli]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Reggiani]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
</person-group>
<source><![CDATA[A experimental evaluation of colision detection packages for robot motion planning. Procedings of the IEEE/RSJ Intl]]></source>
<year></year>
<conf-name><![CDATA[ Conference of Intelligent Robots and Systems EPFL]]></conf-name>
<conf-date>2002</conf-date>
<conf-loc>Lausanne </conf-loc>
</nlm-citation>
</ref>
<ref id="B3">
<nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Gómez]]></surname>
<given-names><![CDATA[J.M]]></given-names>
</name>
<name>
<surname><![CDATA[Muñoz]]></surname>
<given-names><![CDATA[V]]></given-names>
</name>
<name>
<surname><![CDATA[Dominguez]]></surname>
<given-names><![CDATA[F]]></given-names>
</name>
<name>
<surname><![CDATA[Serón]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<article-title xml:lang="es"><![CDATA[Sistema experimental de Tele-Cirugía]]></article-title>
<source><![CDATA[Revista eSalud]]></source>
<year>Abri</year>
<month>l-</month>
<day>Ju</day>
<volume>1</volume>
<numero>2</numero>
<issue>2</issue>
</nlm-citation>
</ref>
<ref id="B4">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Hearn]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
<name>
<surname><![CDATA[Baker]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
</person-group>
<source><![CDATA[Gráficos por computadora con OpenGL]]></source>
<year>2006</year>
<edition>3 Edition</edition>
<publisher-loc><![CDATA[Madrid ]]></publisher-loc>
<publisher-name><![CDATA[PEARSONPrentice Hall]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B5">
<nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Méndez]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
<name>
<surname><![CDATA[Pinto]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Sofrony]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<source><![CDATA[Definición y Selección de una Interfaz Háptica para Aplicaciones Preliminares de Asistencia Quirúrgica]]></source>
<year></year>
<conf-name><![CDATA[ III Encuentro Nacional de Investigación en Posgrados - ENIP 2008]]></conf-name>
<conf-date>Mayo, 2008</conf-date>
<conf-loc> </conf-loc>
</nlm-citation>
</ref>
<ref id="B6">
<nlm-citation citation-type="">
<collab>Novint Technologies, Inc</collab>
<source><![CDATA[Haptic Device Abstraction Layer (HDAL)., Programmer's Guide HDAL SDK]]></source>
<year>Agos</year>
<month>to</month>
<day>, </day>
</nlm-citation>
</ref>
<ref id="B7">
<nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Muñoz-Moreno]]></surname>
<given-names><![CDATA[E]]></given-names>
</name>
<name>
<surname><![CDATA[Rodríguez]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
<name>
<surname><![CDATA[Vilora]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[Lamata]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
<name>
<surname><![CDATA[Martín]]></surname>
<given-names><![CDATA[M.A]]></given-names>
</name>
<name>
<surname><![CDATA[Luis-García]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[Aja]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
<name>
<surname><![CDATA[Gómez]]></surname>
<given-names><![CDATA[E]]></given-names>
</name>
<name>
<surname><![CDATA[Alberola]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
</person-group>
<article-title xml:lang="es"><![CDATA[Detección de colisiones. Un problema clave en la simulación quirúrgica]]></article-title>
<source><![CDATA[Informática y Salud (I+S)]]></source>
<year>Octu</year>
<month>br</month>
<day>e,</day>
<volume>48</volume>
<page-range>23-35</page-range></nlm-citation>
</ref>
<ref id="B8">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Popescu]]></surname>
<given-names><![CDATA[V]]></given-names>
</name>
<name>
<surname><![CDATA[Burdea]]></surname>
<given-names><![CDATA[G]]></given-names>
</name>
<name>
<surname><![CDATA[Bouzit]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
</person-group>
<source><![CDATA[Virtual Reality Simulation Modeling for a Haptic Glove]]></source>
<year>1999</year>
<page-range>195</page-range><publisher-loc><![CDATA[Geneva ]]></publisher-loc>
<publisher-name><![CDATA[Proceedings]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B9">
<nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Sabater]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[Pinto]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Saltaren]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[Sofrony]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[Azorin]]></surname>
<given-names><![CDATA[J.M]]></given-names>
</name>
<name>
<surname><![CDATA[Perez]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
<name>
<surname><![CDATA[Badesa]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<source><![CDATA[Force reflecting algorithm in tumour resection simulation procedures]]></source>
<year></year>
<conf-name><![CDATA[ CARS 2009 - Proceedings of the 23rd International Congress and Exhibition]]></conf-name>
<conf-date>June 23 - 27, 2009</conf-date>
<conf-loc>Berlin </conf-loc>
<page-range>138-140</page-range></nlm-citation>
</ref>
<ref id="B10">
<nlm-citation citation-type="">
<collab>SensAble Technologies, Inc</collab>
<source><![CDATA[OpenHaptics Toolkit]]></source>
<year>2005</year>
<page-range>5-3 5-4</page-range></nlm-citation>
</ref>
<ref id="B11">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Tibamoso]]></surname>
<given-names><![CDATA[G]]></given-names>
</name>
<name>
<surname><![CDATA[Romero]]></surname>
<given-names><![CDATA[E]]></given-names>
</name>
</person-group>
<source><![CDATA[Segmentación y Reconstrucción Simultánea del Volumen del Hígado a partir de imágenes de Tomografía Axial Computarizada]]></source>
<year>2009</year>
<publisher-name><![CDATA[Universidad Nacional de Colombia]]></publisher-name>
</nlm-citation>
</ref>
</ref-list>
</back>
</article>
