Pregunta

En Blender (v2.48), ¿cómo puedo determinar la longitud de un camino (en unidades de Blender) a partir de una secuencia de comandos de Python?

El valor está disponible en la interfaz gráfica de usuario: con la ruta seleccionada, el panel de edición contiene un botón PrintLen . La longitud aparece a la derecha cuando se pulsa el botón.

¿Cómo puedo obtener este valor mediante programación desde un script en Python que se ejecutan en Blender?

Nota:. No estoy interesado en el PathLen valor que se encuentra en los marcos, no Blender unidades

¿Fue útil?

Solución

La mejor idea que he encontrado es crear una malla a partir de la ruta y sumar la longitud de los segmentos (bordes).

import Blender

def get_length(path):
    """
    Return the length (in Blender distance units) of the path.
    """
    mesh = Blender.Mesh.New()
    mesh.getFromObject(path)

    return sum(edge.length for edge in mesh.edges)
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top