Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 28-10-2004, 03:17   #1 (permalink)
409coffeemaker
Gast
 
Beiträge: n/a
Actionscript Gekritzel

Hi,

im Anhang habe ich eine Gif Datei… ich versuche, soetwas per Actionscript zu zeichnen… dynamisch, so das es sich ständige bewegt, länger/kürzer wird…

Bisher sahen meine Versuche alle sehr linear und brav aus…

Jemand eine Idee/Ansatz=?

Liebe Grüße

Yves
Angehängte Grafiken
Dateityp: gif untitled.gif (2,8 KB, 51x aufgerufen)
  Mit Zitat antworten
Alt 28-10-2004, 06:50   #2 (permalink)
flashed Dude
 
Benutzerbild von tolleiv
 
Registriert seit: Mar 2002
Ort: _level0
Beiträge: 1.402
Hallo

also wenns bisher zu linear war dann bau doch einfach noch zwei - drei Zufallsfaktoren mit ein dann sollte sich das geben

Wie sieht denn das Script bisher aus ?

mfg
__________________
Die Basis unseres Denkens ist das der Verstand sich selbst erkennt.
Kyle Broslovski


Eigenlob stinkt ~ fast immer
tolleiv ist offline   Mit Zitat antworten
Alt 28-10-2004, 21:06   #3 (permalink)
409coffeemaker
Gast
 
Beiträge: n/a
Hi,

das was ich bis jetzt habe ist mit haufenweise Zufallsfaktoren…

Das ganze wäre smooth und weniger hektisch cool…

Sowas wie bei Notwist.com oder 24-7media.de/saskiaramin/


PHP-Code:
//AS1
MovieClip.prototype.draw=function(x,y,c,a,lineSize,colour,alpha)
     { 
    if(
t>=20)
        {
        
this.clear();
        
t=1;
        }
    else
        {
        
t++;
        }
    
this.lineStyle(lineSizecolouralpha);
    
with(this)
        { 
        
curveTo(x,y,c,a
        } 
    };


var 
pointX=this.createEmptyMovieClip('pointX',1);
var 
linerX=function()
    {
    
pointX.draw(random(100),random(100),random(150),random(150),1,'0x8c0000',random(100));
    
pointX._x=random(150);
    
pointX._y=random(150);
    };
setInterval(linerX,random(150));

var 
pointY=this.createEmptyMovieClip('pointY',2);
var 
linerY=function()
    {
    
pointY.draw(random(100),random(100),random(150),random(150),1,'0x8c0000',random(100));
    
pointY._x=random(150);
    
pointY._y=random(150);
    };
setInterval(linerY,random(150));

var 
pointZ=this.createEmptyMovieClip('pointZ',3);
var 
linerZ=function()
    {
    
pointZ.draw(random(100),random(100),random(150),random(150),1,'0x8c0000',random(100));
    
pointZ._x=random(150);
    
pointZ._y=random(150);
    };
setInterval(linerZ,random(150));

this.stop(); 

Yves
  Mit Zitat antworten
Alt 28-10-2004, 21:40   #4 (permalink)
_actionScript._Fötus
 
Benutzerbild von Alcopix
 
Registriert seit: Oct 2004
Ort: _root.dortmund_mc._lockroot = true:
Beiträge: 9
Cool Weniger Hektik

Es ist wie im Leben: Je langsamer, desto smoother.
__________________
"Die Welt ist eine Instanz."
Flashkrates (469-399 v. Chr.)
Alcopix ist offline   Mit Zitat antworten
Alt 28-10-2004, 21:46   #5 (permalink)
flashed Dude
 
Benutzerbild von tolleiv
 
Registriert seit: Mar 2002
Ort: _level0
Beiträge: 1.402
Axo naja
also ich weiß zwar noch nicht genau wo du hin willst aber ich glaub solang du recht zusammenhanglos irgendwelche curveTo Geschichten darstellst wirds generell schwer da was smoothes rein zu bringen

also ich würd da eher irgendwas fortlaufendes zufällig in versch. richtungen schicken und da kannste ja dann auch kreisbögen etc. integrieren und wenn dies e fortlaufenden bögen halbwegs smooth ineinander übergehen dann denk ich passt das - also du bringst zufall ins spiel muß aber gleichzeitig zusehen das nirgends unbedingt 90° ecken drin sind etc ...

wofür isn das ganze überhaupt?

mfg
__________________
Die Basis unseres Denkens ist das der Verstand sich selbst erkennt.
Kyle Broslovski


Eigenlob stinkt ~ fast immer
tolleiv ist offline   Mit Zitat antworten
Alt 28-10-2004, 22:17   #6 (permalink)
409coffeemaker
Gast
 
Beiträge: n/a
Hi,

das ganze soll zunächst ein Gebilde aus ca. 30 Strahlen sein, die, so wie du schon gesagt hast, sich fortlaufend zeichnen.
Zehn dieser Strahlen sollen am Ende jeweils preloaderbedingt eine Zehnerprozentzahl anzeigen(10%,20% usw…), welche attached werden soll…

Währenddessen soll sich das ganze hin-und herschwanken, wieder verkürzen, leicht in eine andere Richtung zeichnen…

Am Ende, nach dem Laden, bleibt das ganze als gestalterisches Objekt stehen.

Klar ist mein Ansatz undurchdacht und willkürlich… ich wollte erstmal sehen, was passiert.

Aber ok…


Um nun konkreter zu werden… was mir reichen würde wäre erstmal:

1 Linie/Kurve, die sich langsam zeichnet und dabei öfters mal leicht die Richtung sowie ihren Bogen ändert und irgendwann nicht mehr verlängert bleibt, sich aber weiter bewegt.

Das würde ich dann am Ende ca. 20 mal instanzieren…


Vielen Dank schon mal das ihr mir bei diesem grauenvollen Ansatz helfen möchtet!

Liebe Grüße

Yves
  Mit Zitat antworten
Alt 28-10-2004, 22:19   #7 (permalink)
flashed Dude
 
Benutzerbild von tolleiv
 
Registriert seit: Mar 2002
Ort: _level0
Beiträge: 1.402
Das is mir gerade auf die Schnelle dazu eingefallen vielleicht hilfts dir ja weiter auch wenns erstmal nix weiter als ne doofe Kreisbewegung ist ...

PHP-Code:
this.createEmptyMovieClip('c1',1);
this.createEmptyMovieClip('c2',2);
MovieClip.prototype.draw_circ = function(color,alpha,r,s,cx,cy)
{
    
this.angle<(360-s) ? this.angle += this.angle=0;
    
this.lineStyle(0,color,alpha);

    
this.ox this.x;
    
this.oy this.y;
    
this.cx+Math.sin(this.angle*Math.PI/180)*r;    
    
this.cy+Math.cos(this.angle*Math.PI/180)*r;
    if(
this.ox != undefinedthis.lineTo((this.ox+this.x)/2,(this.oy+this.y)/2)
    else    
this.moveTo(this.x,this.y);
}


var 
circ1 = function()    {    c1.draw_circ(0xFFFFFF,20,90+random(20),-5+random(10),90+random(20),90+random(20)); }
var 
circ2 = function()    {    c2.draw_circ(0x006699,80,90+random(20),-5+random(10),90+random(20),90+random(20)); }
setInterval(circ1,50);
setInterval(circ2,50); 
was da die abgehackten ecken verhindert ist das (this.ox+this.x)/2 in der lineTo ...

Edit: in totaler ignoranz deines letzten beitrags

mfg
__________________
Die Basis unseres Denkens ist das der Verstand sich selbst erkennt.
Kyle Broslovski


Eigenlob stinkt ~ fast immer

Geändert von tolleiv (28-10-2004 um 22:24 Uhr)
tolleiv ist offline   Mit Zitat antworten
Alt 28-10-2004, 22:25   #8 (permalink)
409coffeemaker
Gast
 
Beiträge: n/a
Das ist schon mal besser als mein Ansatz…

Das ganze muss dann noch „luftiger“ werden und die curves sollten, wenn es geht, sich elastisch hin- und her biegen… und irgendwann muss das mal aufhören…

Ich probier mal!


Danke
  Mit Zitat antworten
Alt 28-10-2004, 23:01   #9 (permalink)
flashed Dude
 
Benutzerbild von tolleiv
 
Registriert seit: Mar 2002
Ort: _level0
Beiträge: 1.402
So also mal ohne Kreis - ich denk das könnte evt in die richtige richtung gehen fehlt halt noch der curveTo Faktor und ein smoothes element

Code:
this.createEmptyMovieClip('c1',1);
MovieClip.prototype.drawit = function(color,alpha,s,a)
{
	this.lineStyle(0,color,alpha);

	this.ox = this.x;
	this.oy = this.y;
	this.oa = this.a;
	this.a = 90+a;
	this.x = this.ox+Math.sin((this.oa+this.a)/2*Math.PI/180)*s;	
	this.y = this.oy+Math.cos((this.oa+this.a)/2*Math.PI/180)*s;
	if(this.ox != undefined) this.lineTo((this.ox+this.x)/2,(this.oy+this.y)/2)
	else	this.moveTo(this.x,this.y);
	this._x -= 1;
}
var circ1 = function()	{	c1.drawit(0xFFFFFF,20,2+random(2),-135+random(270)); }
setInterval(circ1,50);
Ich mach erstmal die augen zu ... cu

Edit: so ganz kann ich mir das immernoch nicht vorstellen ... also wie das dann evt. aussehen soll mein ich ...

mfg
__________________
Die Basis unseres Denkens ist das der Verstand sich selbst erkennt.
Kyle Broslovski


Eigenlob stinkt ~ fast immer

Geändert von tolleiv (28-10-2004 um 23:03 Uhr)
tolleiv 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 05:27 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele