Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 20-08-2003, 18:41   #1 (permalink)
Erstmal n Herri!
 
Benutzerbild von _Hannes_
 
Registriert seit: Aug 2002
Ort: Hamburg
Beiträge: 1.233
n-eck zeichnen

Hi!

alle meine Versuche per AS ein n-Eck zu zeichnen sind gescheitert schaut euch mal folgendes Script an (1. Frame) und packt einen Movieclip mit was drin (n Punkt o.ä.) in die Library (Verknüpfungsname: yo ).

(es wird natürlich noch nix gezeichnet sondern nur ein MC an den Eckpunkten plaziert)

ActionScript:
  1. MovieClip.prototype.drawNGon = function(radius, ecken) {
  2.     offset = 360 / ecken;
  3.        
  4.     //Winkel und Strecken Prädefin.
  5.     wAlpha;
  6.     wBeta = 0;
  7.     wGamma = 90;
  8.     a;
  9.     b;
  10.     c = radius;
  11.    
  12.     //Koordinaten ausrechnen
  13.     for (n = 1; n <= ecken; n++) {
  14.         wAlpha = 180 - wBeta - wGamma;
  15.         a = (c / Math.sin(wGamma)) * Math.sin(wAlpha);
  16.         b = (c / Math.sin(wGamma)) * Math.sin(wBeta);
  17.         dotX = b;
  18.         dotY = a;
  19.         wBeta += offset;
  20.         _root.attachMovie("yo", "yo" + ++mc, mc);
  21.         with (_root["yo" + n]) {
  22.             _x = dotX //eckpunkte[0][n];
  23.             _y = dotY //eckpunkte[1][n];
  24.         }
  25.     }
  26.    
  27.        
  28. }
  29.  
  30. _root.drawNGon(100, 8);

ich weiß dass das Script ziemlich aufgebläht ist, aber ich wollte das zum besseren Verständnis drinlassen und erst bei Erfolg ausdünnen.

Kann mir wer helfen?

EDIT: hier nochmal zum ansehen: http://www.nlcrew.de/files/flashforum/Untitled-1.swf
__________________
hannesstruss.de

Geändert von _Hannes_ (20-08-2003 um 18:44 Uhr)
_Hannes_ ist offline   Mit Zitat antworten
Alt 20-08-2003, 19:00   #2 (permalink)
Neuer User
 
Registriert seit: Jun 2001
Ort: Zürich
Beiträge: 1.776
ich hab mal mit scanis an nem netzdiagramm rumgeschraubt, das war ne ähnliche aufgabenstellung...

Zahlen grafisch ausgeben?

vielleicht hilfts ja...
fresh ist offline   Mit Zitat antworten
Alt 20-08-2003, 22:33   #3 (permalink)
Erstmal n Herri!
 
Benutzerbild von _Hannes_
 
Registriert seit: Aug 2002
Ort: Hamburg
Beiträge: 1.233
danke! das ist dabei rausgekommen:

ActionScript:
  1. MovieClip.prototype.drawNGon = function(radius, ecken, xPos, yPos, rot) {
  2.     var offset = (2 * Math.PI) / ecken;
  3.     var eckpunkte = [[],[]];
  4.     var wBeta = offset / (1 + rot);
  5.     var c = radius;
  6.     //Koordinaten ausrechnen
  7.     for (n = 1; n <= ecken; n++) {
  8.         a = Math.cos(wBeta)*c + xPos;
  9.         b = Math.sin(wBeta)*c + yPos;
  10.         eckpunkte[0].push(b);
  11.         eckpunkte[1].push(a);
  12.         wBeta += offset;
  13.     }
  14.     //Zeichnen
  15.     this.moveTo(eckpunkte[0][0], eckpunkte[1][0]);
  16.     for (n = 0; n < eckpunkte[0].length; n++) {
  17.         this.lineTo(eckpunkte[0][n], eckpunkte[1][n]);
  18.     }
  19.     this.lineTo(eckpunkte[0][0], eckpunkte[1][0]);
  20. }_root.lineStyle(1, 0x000000, 100);
  21. _root.drawNGon(100, 8, 200, 200, 1);

mfg
__________________
hannesstruss.de

Geändert von _Hannes_ (20-08-2003 um 22:36 Uhr)
_Hannes_ ist offline   Mit Zitat antworten
Alt 21-08-2003, 05:53   #4 (permalink)
...
 
Registriert seit: Oct 2002
Ort: Nürnberg
Beiträge: 3.611
*daumenhoch*
cooles teil...
thorben.schmitt ist offline   Mit Zitat antworten
Alt 21-08-2003, 07:30   #5 (permalink)
Erstmal n Herri!
 
Benutzerbild von _Hannes_
 
Registriert seit: Aug 2002
Ort: Hamburg
Beiträge: 1.233
thx! aber wie ich auf die Formel in meinem ersten Post gekommen bin weiß ich auch nich...
__________________
hannesstruss.de
_Hannes_ ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 01:13 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele