Sé que Matlab tiene una función llamada cilindro para crear los puntos de un cilindro cuando el número de puntos a lo largo de la circunferencia y la longitud del radio. ¿Qué ocurre si no quiero un cilindro de la unidad y tampoco quiero que se centre en el eje predeterminado (por ejemplo, a lo largo del eje z)? ¿Cuál sería el enfoque más fácil para crear un cilindro de este tipo? Gracias por adelantado.Crear un cilindro con un eje centrado diferente
Respuesta
La respuesta anterior está muy bien, pero se puede obtener MATLAB para hacer la mayoría del trabajo para usted (porque los resultados de cylinder
x,y,z
componentes separados que necesitan trabajar un poco para hacer la multiplicación de matrices para la rotación). Para que el centro de la base del cilindro en [x0 y0 z0]
, escalado por [xf yf xf]
(xf=yf
uso a menos que desee un cilindro elíptico), utilice:
[x y z] = cylinder;
h=mesh(x*xf+x0,y*yf+y0,z*zf+z0)
Si también desea girar para que no se alinea a lo largo del eje z, use rotate
. Por ejemplo, para girar alrededor de x-axis
por 90 grados, por lo que está alineado a lo largo del eje y, utilice:
rotate(h,[1 0 0],90)
Multiplica los puntos por tu combinación favorita de scaling matrix, translation matrix y rotation matrix.
Gracias. Eso es realmente lo que hice de alguna manera, aunque podría hacerse de forma más elegante usando las matrices mencionadas. – stanigator
+1 para una buena forma general de lograr cualquier transformación. – Ramashalanka
- 1. Línea de centrado: etiqueta de eje roto en matplotlib
- 2. three.js - ¿cómo giro un cilindro alrededor de un punto específico?
- 3. cilindro impostor en GLSL
- 4. matplotlib gráfico de barras centrado con fechas
- 5. Crear un mapa de color con blanco centrado alrededor de cero
- 6. ¿Cómo obtengo RMagick para envolver imágenes alrededor de un cilindro?
- 7. Centrado DIV con IE
- 8. Cómo dibujar el cilindro en el eje y o x en OpenGL
- 9. Diferente punto de inicio (no 0) en barra de eje Y-eje?
- 10. QT QPushButton con un ícono y texto centrado superpuesto
- 11. Imagen de centrado en un JFrame?
- 12. CSS centrado horizontal de un div fijo?
- 13. Formato de API de visualización de Google Eje secundario de Y diferente del Eje Y primario
- 14. Centrado de un DIV fluido con un ancho máximo y un posicionamiento absoluto
- 15. Mantener un PictureBox centrado dentro de un contenedor
- 16. Reutilizando un AVAudioPlayer para un sonido diferente
- 17. Estableciendo un eje en matplotlib
- 18. Centrado de cadenas con printf()
- 19. ¿Cómo abro un JInternalFrame centrado en un JDesktopPane?
- 20. ¿Por qué una base de datos siempre se representa con un cilindro?
- 21. Mostrar pestañas con un carácter diferente (Emacs)
- 22. ¿Utiliza un comando diff diferente con CVS?
- 23. ¿Usando vimdiff con un .vimrc diferente?
- 24. ¿Cómo escribir texto centrado en varios colores en un lienzo?
- 25. Descargar un archivo con un nombre diferente al nombre almacenado
- 26. jQuery: ¿Cómo animar un div centrado para llenar la pantalla mientras todavía está centrado?
- 27. transformación de etiquetas de eje con un multiplicador ggplot2
- 28. Interpolar superficie del cilindro 3D en Matlab
- 29. Swing: ¿creando un JScrollPane que muestra su componente centrado?
- 30. ¿Cómo crear un JButton con un menú?
+1 para la mejor solución en términos específicos de matlab. –
+1 en mi extremo también. Gracias. – stanigator
Una nota más. ¿Cómo recupero los puntos de h una vez que he creado la malla y giro usando las funciones de Matlab? – stanigator