Crear nuevo vértice en la intersección de dos ejes
¿hay alguna forma de crear un nuevo vértice aprovechando la intersección de dos ejes y que quede exacto? Con la herramienta Knife es como un poco a ojo ¿no? Siempre tienes que, acabar alineando después.
No entiendo muy bien lo que dices, pero si seleccione dos vértices y pulsas w subdivide, se crea un vétice justo en el centro entre los dos vértices seleccionados.
Me parece que lo que quiere es que unamos 2 Edges que se cruzan con un vértice justo en el punto de unión. No lo tengo claro, si es así no se me ha ocurrido en la vida, m.
Me parece que lo que quiere es que unamos 2 Edges que se cruzan con un vértice justo en el punto de unión. No lo tengo claro, si es así no se me ha ocurrido en la vida, m.
Vaya, vale, ahora que tú lo dices lo entiendo. El procedimiento sería subdividir cada Edge y luego soldar los vértices que coinciden en esa intersección. Por cierto, el Knife hace lo mismo que w/subdivide si seleccione midpoints, no importa por dónde pases el Knife, te creara el corte justo en la mitad.
lo que quisiera saber es como crear un vértice justo en el punto donde se cruzan dos ejes o que dos ejes que se cruzan en un punto, queden unidos justo por ese punto convertido en un nuevo vértice.
Por ejemplo, si hacemos el signo + con dos ejes perpendiculares y queremos que el punto donde se cruzan se convierta en un nuevo vértice que sea común a los dos ejes (soldado) pero no coincide necesariamente en el centro de ninguno de los dos ejes.
Se puede hacer con Blender? .
dicho de otra forma: Extruyo el vértice a en el eje X y creo el vértice c. Extruyo el vértice b en el eje Z y creo el vértice d.
En el punto de corte del eje ac y el eje bd quiero crear un nuevo vértice de manera que, al eliminar los vértices c y de me quede cómo resultado un cuadrado perfecto y al que puedo crearle una cara.
-- IMÁGENES ADJUNTAS --
🖼️
Estamos trabajando para mostrar las imágenes del foro
Adjunto #46964
No conozco ningún software que haga eso, sería como booleanas a nivel subobjeto,?
lo que suelo hacer es, como dice Shazam, cortar con Knife intentando aproximarme lo más posible a la intersección de los dos ejes, luego los sueldo con Alt+m, pero después tengo que volver a alinear en el eje X y z.
dicho de otra forma: Extruyo el vértice a en el eje X y creo el vértice c. Extruyo el vértice b en el eje Z y creo el vértice d.
En el punto de corte del eje ac y el eje bd quiero crear un nuevo vértice de manera que, al eliminar los vértices c y de me quede cómo resultado un cuadrado perfecto y al que puedo crearle una cara.
Es exactamente lo mismo tal como digo, lo que quieres es unir con un vertex 2 Edges (no ejes) en el mismo punto de unión, interesante, lo miraré.
Según tu ejemplo es sencillo saber dónde iría el punto. Haz el proceso tal como dices tu, con el Knife, y cambias el valor de x y z con el numerator (tecla n) con la z de a y la x de b.
Saludosres.
No te entiendo, o no sé cómo hacerlo.
Selecciona el vértice a y pulsa n mira que valor tiene z, anótalo. Selecciona el vértice b y pulsa y anota el valor de x.
Ahora selecciona el vértice nuevo que cruza los ejes y que has creado con tu método (con Knife) y cambia el valor z y x con lo que has anotado.
Vale, entendido me gusta el método y es exacto, gracias Leander. Pensé que existiría alguna forma más rápida o algún atajo como cortar por el punto de unión que yo desconocía.
Desgraciadamente yo tampoco lo conoco, además el sistema que te he enseñado no sirve para ejes inclinados. Lo de cortar por el punto de unión es una buena idea.
Seguiré mirando porque también es de interés para mí.
A falta de una herramienta intersección (y seguro que hay algún script que lo hace.) yo probaría con el Snap (contra vértices) y el shift-v (alinear vista).
Es bastante rápido si las aristas están alineadas respecto a los ejes, o al menos hacen ángulos de 90.
Un ejemplo, con aristas inclinadas pero haciendo 90 grados (para que sea más fácil.
Subdivido una arista, alineo una vista con ella (shift-v), y teniendo activo el imán (Snap) desplazo el vértice en cuestión hasta que coincide con uno de la otra arista. Después, sería lo mismo con la otra arista y soldar vértices.
-- IMÁGENES ADJUNTAS --
🖼️
Estamos trabajando para mostrar las imágenes del foro
Adjunto #46970
🖼️
Estamos trabajando para mostrar las imágenes del foro
Adjunto #46971
🖼️
Estamos trabajando para mostrar las imágenes del foro
Adjunto #46972
Tal vez se pueda hacer con un script. He hecho uno rápido que te crea un vértice en la intersección de dos Edges. Supongo que se podría ampliar para representar el vértice en los Edges y para que funcione con toda una malla. Un saludo.
Posdata: simplemente ejecutad el script. Eso sí, no funciona con más de dos aristas, aunque como he dicho, se puede modificar.
Edito: y cambiad el nombre del objeto a plane.
-- IMÁGENES ADJUNTAS --
🖼️
Estamos trabajando para mostrar las imágenes del foro
Adjunto #46974
Pedro, no consigo entender tu método.
Guau. Que rapidez. No sé aplicar el script. ¿es necesario tener Python instalado completamente?
No. Simplemente pulsa Alt+p con el ratón sobre la ventana del script. Acuérdate de cambiar el nombre del objeto a plane.
Qué cosas más raras quieres hacer, cejas.
vale Pepius, me parece que me pide el objeto plane.
Qué cosas más raras quieres hacer, cejas.
Hola Caronte.
No es que sean cosas raras, haciendo un dibujo me pareció que extruyendo los dos vértices extremos opuestos de un plane ya creado podía crear una nueva cara, no sé me salió así, como la imagen que he enviado, pero después me encontré con que al soldar los vértices creados después del corte, aún tenía que alinearlos y al final creé la cara. Por eso os preguntaba si existía esta herramienta.
Desde luego, no será por soluciones. Estáis en todo.
Vaya Pepius, que requerimientos más raros tiene tu programa. Cambia la línea del principio.
[indent]obj = Blender. Nmesh. Getrawfromobject(plane).
[/indent].
Por algo como.
[code]seleccionado = Blender. Object. Getselected().
If seleccionado.= []:
Obj = Blender. Nmesh. Getrawfromobject(seleccionado[0].getname ()) t# y el resto del script.
[/code]
Y así usara el objeto seleccionado en vez de ese plane hardcode.
Pedro, no consigo entender tu método.
Pues, la idea era como te decía el usar el Snap. Prueba con alguna imagen tuya, con el Snap activo y moviendo algún vértice, bloqueando algún eje, a ver si así captas la idea.
Y un vistazo al wiki siempre es recomendable, puede dar ideas: [url]http://wiki.blender.org/index.php/tutoriales/Snap[/url] el apartado [i]using Mesh Snaps with XYZ constraints[/i].
No, si ya Pedro, pero es que, lo había hecho para probar yo, así que, no me he preocupado mucho en hacerlo user-friendly es que hacía tiempo que no tocaba el Api de Blender y no me acuerdo de nada. Un saludo.
No es que sean cosas raras.
Vaya. No poco, según lo veo quieres hacer algo de forma atípica y después arreglarlo.
Vaya. No poco, según lo veo quieres hacer algo de forma atípica y después arreglarlo.
Creo que estoy de acuerdo con Caronte, hay que organizarse un poco y pensar donde irían las aristas antes de empezar a modelar, aunque también es bueno buscar la solución que se plantea cejas para cuando llegue el momento.
Creo que estoy de acuerdo con Caronte, hay que organizarse un poco y pensar donde irían las aristas antes de empezar a modelar.
Exacto.
Aunque también es bueno buscar la solución que se plantea cejas para cuando llegue el momento.
Hombre, si a alguien le sobra el tiempo.
Bueno, he mejorado el script, ya es un poco útil y todo . A ver qué os parece, las instrucciones están en el mismo script. Un saludo.
-- IMÁGENES ADJUNTAS --
🖼️
Estamos trabajando para mostrar las imágenes del foro
Adjunto #46990
escrito por Caronte. No poco, según lo veo quieres hacer algo de forma atípica y después arreglarlo.
Es lo que tiene ser autodidacta, falta pulir muchos detalles, organización del trabajo, y avanzar muy lentamente. En cada nuevo trabajo, nuevos problemas, nuevos retos. A veces se buscan soluciones atípicas para no tener que empezar de nuevo un trabajo, al que ya llevas muchas horas dedicadas y que corre el riesgo de ser abandonado. Menos mal que siempre estáis dispuestos a ayudar a gente como yo.
Ya que estamos, voy a probar de nuevo el script de Pepius y la idea de Pedro y de paso aprendo.
je. El script funciona correctamente. A lo mejor se podría incluir como herramienta nueva en próximas versiones de Blender. Gracias Pepius.
De nada. Nada, el script es una tontería y su utilidad es muy limitada, aunque me alegro de que te pueda servir.
Pepius, solo un comentario sobre el estilo Python. Veo que te gusta usar range () en los bucles. Queda mejor si no lo usas.
Por ejemplo, en un bucle como:
[code]for arista in range (0, len(obj, Edges)):
If (*.obj), Edges[arista].v1.sel and (*.obj), Edges[arista].v2.sel:
Edges, append(obj, Edges[arista]).
[/code]
Queda mejor.
[code]for arista in (*.obj), Edges:
If arista, v1.sel and arista, v2.sel:
Edges, append(arista).
[/code]
O así, si lo prefieres:
[code]Edges = [arista for arista in (*.obj), Edges if arista, v1.sel and arista, v2.sel][/code]
Es lo mismo, pero mejor.
(Perdón por el offtopic).
Nunca habría pensado en esa última forma. De hecho, ni sabía que se pudiera hacer eso en Python, parece más una consulta sql. Me encanta Python.