Mostrando las entradas con la etiqueta programación. Mostrar todas las entradas
Mostrando las entradas con la etiqueta programación. Mostrar todas las entradas

12 abril, 2013

Construir un string cross-platform C++

Buscando la forma genérica para concatenar adecuadamente números en un string o cadenas de strings entre si, recordé el uso de stringstream para no olvidarlo. Anoto que usé primero std::to_string pero luego noté que en Linux pone problemas de compilación. Voici l’exemple:

std::stringstream ss; 
ss<<"Ou yeah! "<< 3 ; 
std::string s = ss.str();
std::cout << s << '\n';

28 marzo, 2013

Una vieja conexión BBTK - ITK ...

Luego de sufrir un día en un problema mínimo, la solución se encuentra en los recuerdos y algunos amigos/colegas/asesores que tienen más memoria.

Lo importante a tener en cuenta esta vez es que si se crea una caja BBTK que haga algo con filtros de ITK, hay que agregar un atributo de estilo itk::DataObject::Pointer _att a la clase, y asignarle el output luego de hacerle SetOutput a la caja. De esta forma, se retransmite el objeto hacia las otras clases y el recolector de basura no se ve tentado a eliminar el SmartPointer dando la impresión que el código funciona y son los maravillosos pipelines que no quieren pasar los datos de caja en caja!

Importante dato a tener en cuenta.

14 marzo, 2013

Java + VTK - 1er Test

Primera prueba de Java + VTK!

Seguí en detalle la guía disponible en este sitio Web: http://www.particleincell.com/2011/vtk-java-visualization/ . A pesar que todo funcionó prefiero hacer anotaciones aun más precisas de mi prueba para que pueda reproducirse sin problema:

1- Descargué el VTK 5.10.1 . Generé el proyecto con CMake 2.8.9 y el CMakeCache.txt está disponible en los archivos adjuntos. Aquí se puede ver que forcé la dependencia a una de las versiones instaladas en mi máquina, específicamente la de Java 7 32bits. (C:/Program Files (x86)/Java/jdk1.7.0_15)

2- La compilación la realicé con VC++ Express 2008. No hubo problemas de compilación y luego de instalar se agregaron las rutas indicadas al PATH: C:\Program Files (x86)\VTK\bin;C:\Program Files (x86)\Java\jdk1.7.0_15\lib; C:\Program Files (x86)\Java\jre7\bin; C:\Program Files (x86)\Java\jre7\bin\client; C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\redist\x86\Microsoft.VC90.CRT;

3- Al crear el proyecto Eclipse asigné el mismo JDK como JVM que utiliza el proyecto. Añadí también el vtk.jar. Aparecieron los problemas de “vtkCommonJava not loaded”, pero se resolvieron finalmente añadiendo como Native Libraries de vtk.jar la ruta: C:\Program Files (x86)\VTK\bin donde están todos los DLL’s.

4- El ejemplo de los IsoSurfaces y los planos funciona :D. Haré una prueba con imágenes para ver cómo se comporta en dichos casos Java con VTK.


Voila mi primer Test!


RaC

27 febrero, 2013

Motor de Rendering - VTK

Tomado del webinar de Kitware de VTK, agrego la siguiente imagen que me parece vital para entender la conexión entre los objetos que hacen parte de las escenas VTK:


Tomado de http://www.vtk.org/VTK/resources/webinars.html


Esta es la mejor manera de explicar y entender las conexiones necesarias en VTK !! (este mismo diagrama lo hice en repetidas ocasiones hace unos años)

20 febrero, 2013

CreaTools - Complex Boxes

Something very important to remember when using complex boxes in CreaTools / Algo muy importante para recordar cuando se usan cajas complejas en CreaTools:

Une entrée de la boîte complexe qui est utilisée à l’intérieur par des autres boîtes. Voici un exemple,

image

Si on utilise cette boîte dans un autre diagramme, la valeur de l’entrée n’est pas transmit à la boîte complexe. Pour ce cas spécifique avec des chaines de caractères, j’ai fait le changement suivant et l’application marche:

image

Par contre, une solution plus générique pour un objet quelconque c’est d’utiliser une boîte MagicBox au lieu du ConcatStrings. Comme ca , il fait une copie directe de l’entrée a toutes les sorties.