Come si fa un fascio di cavi:
Qui una soluzione per un fascio twisted di cavi,
basando su una idea di Jim Dunlop.
Paso 1: Una curva spline per il fascio di cavi.
Facciamo una curve spline per il camino dei cavi.
Per testare usiamo un modo con un numero di sfere relativamente scarso.
Importante:
Dobbiamo evitare parte verticale nella spline!
Dobbiamo anche evitare ogni modo di looping e di curva a gomito..
#declare Wire_R = 0.4;// radius
// spline:
#declare Test_Spline =
spline { natural_spline
-0.25, <-1.0, 0.0, 0>,
0.00, <-0.0, 0.0, 0>, //start
0.25, < 1.7, 0.05, 0.05>,
0.35, < 2.0, 0.15, 0.25>,
0.60, < 2.0, 0.65, 1.2>,
0.80, < 0.5, 0.90, 2.0>,
1.00, < 0.2, 1.50, 2>, // end
1.25, < 0.2, 2.00, 2>
} //-------------------------------
Paso 2: Dichiarazione del taglio trasversale
del fascio di cavi.
I trefoli sono disposte attorno al filo centrale in una silhouette imbracatura
come illustrato nell'immagine qui.
L'algoritmo complicato, creato da Jim, funziona bene per fino a 61 trefoli.
E 'troppo voluminoso per mostrare qui in tutti i dettagli. Per saperne di più consultare il file di scena.
Paso 3: Usare la macro Spline_Trans
Macro di Rune S. Johansen
(Questa macro normalmente è usato per pilotare aeroplani
in la rotta. Un esempio si può vedere qui
Animations con Curve Spline.)
Invece di una singola sfera come nel paso 1, usiamo
l'oggetto 'object{ HarnessSilhouette ..}'
e mettiamo su la spline curve usando la macro
'Spline_Trans'.
Aumentiamo anche la densità di questi elementi per ottenere un cavo continuo:
Con la prima macro possiamo fare un segmento del fascio di cavi puro, ritorto o non, lungo una curva spline
(o di parti della curva)
object{ HarnessSegment(
19,// # of wires in bundle, max.61
0.020,// >0. Radius of wire
800, // # of samples in spline
0, // # of 360 degress turns
Test_Spline, // spline name,
<0.7,0,0>,// base color
0.25, // color variation,
0, // Start point on spline
1, // End point on spline
) //----------
} //-----------------------------
Con la seconda macro possiamo anche aggiungere alcuni oggetti
all'inizio ed alla fine del cablaggio:
object{ CableHarness(
12,// # of wires in bundle, max.61
0.020,// >0. Radius of wire
800, // # of samples in spline
3.5, // # of 360 degress turns
Test_Spline, // spline name,
<0.7,0,0>,// base color
0.25, // color variation,
0, // Start point on spline
1, // End point on spline
BeginObject,// to put on beginning
EndObject, // to put on end
) //----------
} //-----------------------------
|
Una curva spline per il fascio di cavi.
rosso = punti spline, viola = punti di controllo
Il raggruppamento dei cavi.
|