ā07-26-2014 05:25 PM
En una aplicación necesito graficar una superficie 3d. Esta superficie es reproducida con los datos de un scaner de ultra sonido que recorre un plano de ciertas dimensiones a lo largo de los ejes x e y. El eje z representa datos de retardos de onda en microsengundos. Necesito darle color a esta superficie, haciendo que en cada punto dato de color de la superficie sea función de una variable continua independiente de los ejes x,y,z. El elemento que estoy utilizando para graficar es "3D surface". Hasta el momento, todos accesos para la configuración del color de la superficie que he encontrado son en función del eje z. Necesito independizarme del eje z y (repito) hacer que el color en cada punto sea funcion de otra variable que en esta aplicacion serĆa la intensidad de eco.
Gracias.
ā07-29-2014 01:38 AM
Hola,
Nunca he utilizado los graficos 3D, por eso no puedi decirte si lo que quieres hacer es posible o no, pero seguramente habra alguien aqui que te puede contestar, lo unico es que tendras que preguntar en ingles, no importa si no lo hablas perfectamente y ademas google te puede ayudar.
mucha suerte!
We have two ears and one mouth so that we can listen twice as much as we speak.
Epictetus
ā07-29-2014
05:24 PM
- last edited on
ā09-15-2025
09:33 AM
by
Content Cleaner
Hola damoyano
Me parece que este ejemplo de la comunidad puede ser la solución que estĆ”s buscando. AvĆsanos si tienes mĆ”s preguntas.
Saludos
ā07-29-2014 09:14 PM
Gracias Luis, es lo que estaba buscando. Es muy similar a otro ejemplo que me envió otro integrante de este foro. En la aplicación en la que estoy trabando, utilizo el 3d surface clĆ”sico debido a que lo he notado mĆ”s eficiente en algunas funcionalidades con respecto al moderno (por ejemplo el corte de secciones planas, la operacion con el cursor, etc.). El ejemplo que me has enviado utiliza el 3d surface moderno que posee entrada para la matriz de color. El vi del clĆ”sico no tiene esa matriz como entrada, sin embargo en el diagrama de ese vi, he observado que hay una variable w ( array de 2 dimensiones) y me ha parecido que podrĆa utilizarla como matriz de color (del mismo modo que el caso del vi moderno). Con esta intención he modificado el vi clĆ”sico original y he habilitado la entrada de esa matriz w. Adicionalmente, he seteado el ColorMapStyle --> cwCustom, el ColorMapValues con el vector (0, 0.5, 1) y el ColorMapColors con el vector (FF, FF00, FF0000). Pero no ha funcionado como esperaba. El color que genera el vi clĆ”sico responde a la rampa que tiene seteado internamente. En quĆ© puedo estar equivocĆ”ndome??
Daniel
ā07-30-2014 05:51 PM
Hola Damoyano,
Estuve comparando ambos Vis (moderno contra clĆ”sico) y me encuentro con algunas diferencias significativas entre ellos que indican que son distintos internamente. Principalmente, en el 3D graph.vi clĆ”sico el nombre del VI indica que utiliza ActiveX para cargar la imagen, internamente se pueden ver las llamadas a algunos mĆ©todos de esa clase especĆfica ActiveX. Por otro lado el grĆ”fico 3D moderno no es un VI en sĆ, sino una gama de VIs con diferentes sabores de esa opción (graph.vi),esto ya nos indica son diferentes internamente.
Por otro lado, entiendo lo que buscas hacer al utilizar la terminal w, podrĆas por favor postear el VI modificado o una imagen del diagrama de bloques para visualizar los cambios que has hecho?
No estoy muy seguro de que modificando ese VI logres tu objetivo pero otra opción que tienes es tratar de entender cada componente de ese VI por separado e intentar construir tu mismo lo que buscas hacer con esos elementos.
Saludos,
Daniel C.
ā07-31-2014 07:35 AM
Hola Daniel C.
La modificación del vi original estÔ funcionando. Puedo ver las imagenes en color ó en grises seleccionando el modo de visualización. Ahora estoy dedicado a generar una rampa para decodificar el mapa de colores.
ā07-31-2014 10:44 AM
De acuerdo Damoyano, es bueno escuchar que has logrado hacerlo funcionar.