|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Bannato
Iscritto dal: Oct 2002
Messaggi: 567
|
Scomposizione Figura in Triangoli
Salve ragazzi, ho un problema che va al di là delle mie competenze di programmazione
Dunque la questione è molto semplice: io sto cercando di creare con le D3D un'immagine di un parallelepipedo a dimensioni variabili. Il problema è: esiste un algoritmo che mi calcola i punti dei 3 veritici che compongono ogni triangolo che andranno a comporre la mia figura? C'è un modo più semplice per la costruzione in 3D con le D3D? Grazie |
|
|
|
|
|
#2 |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
ma scusa, che ci vuole a definirli manualmente? se è un parallelepipedo sarà composto solo da 12 triangoli, piuttosto che scervellarti sull'algoritmo fai prima a definirli a mano in base alle dimensioni date, no?
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jun 2002
Città: Firenze
Messaggi: 630
|
Controlla anche se l'elenco dei vertici di ogni triangolo deve riportare in vertici in senso orario rispetto alla faccia visibile. Potrebbe essere necessario per il corretto funzionamento del rendering engine.
__________________
---> Lombardp CSS Certified Expert (Master Level) at Experts-Exchange Proud user of LITHIUM forum : CPU technology Webmaster of SEVEN-SEGMENTS : Elettronica per modellismo |
|
|
|
|
|
#4 | |
|
Bannato
Iscritto dal: Oct 2002
Messaggi: 567
|
Quote:
|
|
|
|
|
|
|
#5 | |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
Quote:
|
|
|
|
|
|
|
#6 |
|
Member
Iscritto dal: Jan 2005
Città: Torino
Messaggi: 81
|
Dato un parallelepipedo che ha origine in (x,y,z) = (0,0,0) di dimensioni L = larghezza, H = altezza, P = profondità
N° Triang ; vertice 1 ; vertice 2 ; vertice 3 01 ; (0,0,0) ; (L,0,0) ; (0,H,0) faccia posteriore 02 ; (L,H,0) ; (L,0,0) ; (0,H,0) faccia posteriore 03 ; (0,0,P) ; (L,0,P) ; (0,H,P) faccia anteriore 04 ; (L,H,P) ; (L,0,P) ; (0,H,P) faccia anteriore 05 ; (0,0,0) ; (L,0,P) ; (L,0,0) faccia inferiore 06 ; (0,0,0) ; (L,0,P) ; (0,0,P) faccia inferiore 07 ; (0,H,0) ; (L,H,P) ; (L,H,0) faccia superiore 08 ; (0,H,0) ; (L,H,P) ; (0,H,P) faccia superiore 09 ; (0,H,0) ; (0,0,P) ; (0,0,0) faccia sinistra 10 ; (0,H,0) ; (0,0,P) ; (0,H,P) faccia sinistra 11 ; (L,H,0) ; (L,0,P) ; (L,0,0) faccia destra 12 ; (L,H,0) ; (L,0,P) ; (L,H,P) faccia destra Spero sia questo che ti serve... Ciao
__________________
DaryL74 |
|
|
|
|
|
#7 | ||
|
Bannato
Iscritto dal: Oct 2002
Messaggi: 567
|
Quote:
Quote:
|
||
|
|
|
|
|
#8 | |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
Quote:
quello che ti avevo suggerito io era praticamente quello che daryl74 ha scritto in pseudocodice. |
|
|
|
|
|
|
#9 |
|
Member
Iscritto dal: Jan 2005
Città: Torino
Messaggi: 81
|
Comunque la storia degli angoli non la ho capita.
Ci vorrebbe un disegno esplicativo... Ciao
__________________
DaryL74 |
|
|
|
|
|
#10 |
|
Bannato
Iscritto dal: Oct 2002
Messaggi: 567
|
si scusate mi ero spiegato male inizialmente...comunque ormai per questioni di tempistiche sono dovuto passare al DirectDraw quindi non ne ho più necessità...appena si sistemano un po' le cose vi faccio un disegnino.
Grazie ancora per l'aiuto |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 16:56.



















