Domanda

Il mio programma C ++ richiede l'accesso a spline 3D che sono stati costruiti in 3ds Max (2011). ho trovato un semplice MAXScript che esporta queste scanalature come file XML - un esempio nel seguente modo:

<spline name='Line001' knots='5' closed='true'>
<knot x='-4.67297e-005' y='0.0' z='0.0'>
    <invec x='-0.000144482' y='-600.0' z='-1.52588e-005' />
    <outvec x='5.10227e-005' y='600.0' z='1.52588e-005' />
</knot>
<knot x='6.17511e-005' y='800.0' z='500.0'>
    <invec x='7.92357e-005' y='800.0' z='100.0' />
    <outvec x='4.42666e-005' y='800.0' z='900.0' />
</knot>
<knot x='-66.0574' y='1000.0' z='900.0'>
    <invec x='-66.0574' y='700.0' z='900.0' />
    <outvec x='-66.0573' y='1300.0' z='900.0' />
</knot>
<knot x='323.651' y='1300.0' z='4.57764e-005'>
    <invec x='323.651' y='1600.0' z='200.0' />
    <outvec x='323.651' y='1000.0' z='-200.0' />
</knot>
<knot x='-0.000152032' y='-700.0' z='-200.0'>
    <invec x='-0.00014329' y='-700.0' z='-400.0' />
    <outvec x='-0.000160774' y='-700.0' z='-1.52588e-005' />
</knot>
</spline>

La mia domanda è - quale sarebbe l'approccio più semplice (e più leggero) per l'accesso e la valutazione di questa spline nel mio programma C ++? Io so come analizzare il codice XML per i dati, ma da allora in poi Attualmente sto perso. Ho bisogno di essere in grado di a) valutare un punto lungo la spline 3D e b) calcolare un vettore che descrive la tangente a questo punto (se possibile). Capisco che ci sono le librerie disponibili per questo genere di cose, ma io sono sicuro di che è più appropriato -. In particolare in termini di formato descritto sopra (nodi, ciascuno con un invec e outvec)

È stato utile?

Soluzione

Dal momento che 3ds Max è già calcolando queste curve, si potrebbe esportare le curve 'forno' a XML alla risoluzione che ne avete bisogno, che sto indovinando sarà un punto per ogni fotogramma.

Se si preferisce valutare le curve nella propria applicazione, le curve di Bézier poi (che sto cercando di indovinare questi sono) sono abbastanza facili da calcolare senza l'aiuto di una libreria esterna. Date un'occhiata a algoritmo di De Casteljau su Wikipedia, in particolare la sezione che descrive la geometrica interpretazione, che è molto più facile da afferrare rispetto alle formule.

scroll top