Zurück   Flashforum > Flash > Stuff

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 15-12-2007, 17:55   #1 (permalink)
Neuer User
 
Benutzerbild von _crypto_
 
Registriert seit: Mar 2006
Beiträge: 1.573
[Stuff] ActionScript 3 stdLib

ALso ich arbeite grad an einer lib mit vielen klassen und funktionen
bis her siehts so aus:
HTML-Code:
<std>
|
|-- <data>
|    |-- Element
|    |-- Iterator
|    |-- Stack
|
|-- <events>
|    |-- EventHandler
|
|-- <geom>
|    |-- Graph
|
|-- <math>
|    |-- math
|    |-- Matrix
|    |-- Vector
|
|-- <utils>
     |-- Time
std.data.Element:
ActionScript:
  1. import std.data.Element;
  2.  
  3. var e : Element = new Element( "hallo");
  4.  
  5. trace( e.value ); // hallo
  6. e.value = 0;
  7. trace( e.value ); // 0
  8.  

std.data.Iterator:
ActionScript:
  1. package std.data
  2. {
  3.     public interface Iterator
  4.     {
  5.         public function get data() : *;
  6.         public function set data( value : * ) : void
  7.         public function start() : void;
  8.         public function hasNext() : Boolean;
  9.         public function next() : *
  10.     }
  11. }

std.data.Stack:
ActionScript:
  1. import std.data.Stack;
  2.  
  3. var s : Stack = new Stack( 0, 1, 2, 3, 4 );
  4.  
  5. trace( s.pop() ); // 4
  6. s.push( "blaaaa" );
  7. trace( s.pop() ); // blaaaa
  8.  

std.events.EventHandler:
ActionScript:
  1. import std.events.EventHandler;
  2.  
  3. var s : Sprite = new Sprite;
  4.  
  5. function enterFrame( event : Event ) : void {};
  6. function addedToStage( event : Event ) : void {};
  7.  
  8. EventHandler.addEventListenerTo( s, Event.ENTER_FRAME, enterFrame );
  9. EventHandler.addEventListenerTo( s, Event.ADDED_TO_STAGE, addedToStage );
  10.  
  11. this.addChild( s );
  12.  
  13. trace( s.hasEventListener( Event.ENTER_FRAME ) ); // true
  14.  
  15. EventHandler.removeEventListenerFrom( s );
  16. // removes all
  17.  
  18. EventHandler.removeEventListenerFrom( s, Event.ENTER_FRAME );
  19. // removes all Event.ENTER_FRAME listerners
  20.  
  21. EventHandler.removeEventListenerFrom( s, Event.ENTER_FRAME, enterFrame );
  22. // removes the specific listener
  23.  

std.geom.Graph:
ActionScript:
  1. import std.geom.Graph:
  2.  
  3. function f( x : Number ) : Number
  4. {
  5.     // y = mx + n
  6.     return 2/5 * x + 50;
  7. }
  8.  
  9. Graph.setProperties( 1, 0xFF0000, 0.5 );
  10. Graph.drawFunction( f, [ -10, 10 ], this.graphics );

std.math.math:
Erweiterung der Math-Klasse um komplexe funktionen
( Hyperbolicus udn Areafunktionen ) + Hilfsfunktionen

std.math.Matrix:
ActionScript:
  1. import std.math.Matrix;
  2.  
  3. var m : Matrix = new Matrix( 2, 3 );
  4. m.setElementAt( 1, 1, 1 );
  5. m.setElementAt( 1, 2, 2 );
  6. m.setElementAt( 1, 3, 3 );
  7.            
  8. m.setElementAt( 2, 1, 4 );
  9. m.setElementAt( 2, 2, 5 );
  10. m.setElementAt( 2, 3, 6 );
  11. /*
  12. * 1 2 3
  13. * 4 5 6
  14. */
  15.            
  16. var m2 : Matrix = new Matrix( 3, 2 );
  17. m2.setElementAt( 1, 1, 6 );
  18. m2.setElementAt( 1, 2, -1 );
  19.            
  20. m2.setElementAt( 2, 1, 3 );
  21. m2.setElementAt( 2, 2, 2 );
  22.  
  23. m2.setElementAt( 3, 1, 0 );
  24. m2.setElementAt( 3, 2, -3 );
  25. /*
  26. * 6 -1
  27. * 3 2
  28. * 0 -3
  29. */
  30.  
  31. m.add( m2 );
  32.    
  33. trace( m.toString() );
  34. /*
  35. * 7 1 3
  36. * 7 7 6
  37. */
Ist aber noch nicht komplett implementiert. fehlen noch einige funktionen.

std.math.Vector:
ActionScript:
  1. import std.math.Vector;
  2.  
  3. var v : Vector = new Vector;
  4.            
  5. v = Vector.add( v, new Vector( 2, 3 ) );
  6. v.normalize();
  7.        
  8. v = v.getOrthogonal();
  9. v = Vector.project( v, new Vector( 1, 1 ) );
  10.            
  11. trace( v.toString() );

std.utils.Time:
Verhindert, dass durch herrabsetzen der FrameRate die bewegung
verlangsamt wird. Besonders für Spiele geeignet um nicht cheaten zu können
ActionScript:
  1. import std.utils.Time;
  2.  
  3. var s : Sprite = new Sprite;
  4. s.x = 100;
  5. s.y = 200;
  6. s.graphics.lineStyle( 0, 0x000000, 1 );
  7. s.graphics.drawCircle( 0, 0, 15 );
  8. this.addChild( s );
  9.  
  10. var b : Sprite = new Sprite;
  11. b.x = 100;
  12. b.y = 100;
  13. b.graphics.lineStyle( 0, 0x000000, 1 );
  14. b.graphics.drawCircle( 0, 0, 15 );
  15. this.addChild( b );
  16.  
  17. addEventListener( Event.ENTER_FRAME, enterFrame );
  18. function enterFrame( event : Event ) : void
  19. {
  20.     var delay : Number = Time.getDelay();
  21.  
  22.     s.x += 5 * delay;
  23.     b.x += 5;
  24.  
  25.     Time.update();
  26. }

Für weitere Klassen oder ähnliches was man brauchen könnte würd ich mich über eure Vorschläge freuen.
Angehängte Dateien
Dateityp: rar std.rar (4,3 KB, 11x aufgerufen)
__________________

Currently working on:

- --- ---

-----------------------------------------------------------------
ActionScript 3.0, C++, Java, Delphi

Geändert von _crypto_ (16-12-2007 um 12:09 Uhr)
_crypto_ 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 19:17 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele