Disegno del triangolo usando ActionScript

Dutch French Spanish Portuguese Italian German Japanese Chinese Korean Russian Arabic Bookmark and Share this Article Original English article
  

Generi un metodo di abitudine MovieClip.drawTriangle() usando l'api di disegno ed invochilo su una clip di film.

Potete determinare e tracciare i vertici di un triangolo dato le lunghezze di due lati e l'angolo fra loro. Ciò è un metodo migliore che specificando le lunghezze dei tre lati perché conoscendo loro le lunghezze di due lati e l'angolo determina sempre un triangolo, mentre tre lati arbitrari non possono adattare insieme per fare un triangolo.

Il metodo su ordinazione del drawTriangle() accetta sei parametri:

ab
La lunghezza del lato ha formato fra i punti a e b

CA
La lunghezza del lato ha formato fra i punti a e c

angolo
L'angolo (nei gradi) fra i lati ab e CA.

rotazione
La rotazione del triangolo nei gradi. Se 0 o il CA undefined e laterale mettono l'asse in parallelo di x.

x
Di coordinata x del centro di massa (il punto concentr) del triangolo.

y
Di coordinata y del centro di massa del triangolo.

Definisca il metodo su ordinazione del drawTriangle() su MovieClip.prototype per metterlo a disposizione di tutta la clip di film cita ad esempio:

//includa la biblioteca per la matematica su ordinazione 
per accedere a Math.degToRad(). # includa "Math.as"
MovieClip.prototype.drawTriangle = funzione (ab, 
CA, angolo, rotazione, x, y) {
 //convertito l'angolo fra i lati dai gradi 
all'angolo di radianti = Math.degToRad(angle);
 //convertito la rotazione del triangolo dai gradi a 
rotazione di radianti = Math.degToRad(rotation);
 //calcoli le coordinate dei punti b e del bx del c. 
varietà = di Math.cos(angle - rotazione) * ab; varietà da = 
Math.sin(angle - rotazione) * ab; varietà cx = 
Math.cos(-rotation) * CA; varietà = Math.sin(-rotation) cy * 
CA;
 //calcoli il centroidX di coordinate varietà del centro 
di massa = (cx + bx)/3 - x; varietà centroidY = (cy + by)/3 - 
y;
 //movimento verso punto a, allora disegna la linea CA, 
allora allinea i Cb ed infine il Ba (ab). 
this.moveTo(-centroidX, - centroidY); this.lineTo(cx - 
centroidX, cy - centroidY); this.lineTo(bx - centroidX, vicino -
centroidY); this.lineTo(-centroidX, - centroidY); }

Ci sono alcuni punti circa questo metodo che sopportano ulteriore discussione.

Indichi la a sempre sarà il punto di rotazione, in modo da non dovete calcolarli siete coordinate. Tuttavia, i punti b e c devono essere calcolati (usando i rapporti trigonometrici di base). Definiamo il punto b all'estremità della linea ab ad angolo dell'angolo in unrotated il triangolo. Al fattore nella rotazione sottraiamo la rotazione dall'angolo. Definiamo il punto c per essere all'estremità della linea CA. In unrotated il triangolo, il punto c è sullo stesso asse di x del punto a, ma al fattore nella rotazione dovreste sottrarre la rotazione dall'angolo fra la linea il CA (ed in se, che è, naturalmente, 0). Ciò li conduce a:

bx di varietà = Math.cos(angle - rotazione) * ab; 
varietà da = Math.sin(angle - rotazione) * ab; varietà 
cx = Math.cos(-rotation) * CA; varietà = Math.sin(-rotation) cy
* CA;

Di coordinata x del centro di massa di un triangolo è calcolato aggiungendo insieme di coordinata x dei vertici e dividendo per tre. Di coordinata y è trovato in un modo analogo. Nel nostro metodo del drawTriangle(), le coordinate di punto a sono sempre (0, 0), in modo da esso non fattore nell'equazione. Sottraiamo la x e gli input di y dal centro di massa coordina per rappresentare l'immagine riportata affatto prestabilita dall'utente:

centroidX di varietà = (cx + bx)/3 - x; varietà 
centroidY = (cy + by)/3 - y;

Qui è un esempio di come usare il metodo del drawTriangle(). Noti che ancora dovete definire la linea stile prima dell'invocazione del metodo del drawTriangle().

//tiraggio un triangolo con i lati di 100 e 200 pixel e un
angolo di 30 gradi di this.createEmptyMovieClip("triangle_mc", 1); 
triangle_mc.lineStyle(1, 0x000000, 100); //uso un 
un-pixel, un nero, un bordo solido triangle_mc.drawTriangle(100, 200, 
30);
 
ciò è un articolo aggiunto da Elis Frugalo


Diniego: Il nostro Web site non è responsabile delle informazioni contenute da questo articolo. Questo articolo in nessun modo riflette le viste, le opinioni, i pensieri o la credenza del personale dell'indice degli articoli.

Avviso di traduzione: L'articolo "che disegna un triangolo che usando ActionScript" è stato tradotto usando un servizio di traduzione automatizzato. Chiediamo scusa francamente per tutti gli errori di traduzione che hanno accaduto. Grazie per capire.


Online: 1192 users browsing the articles directory