| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Oct 2002
Beiträge: 219
| Klasse MovieClip erweitern (oder so)
Hallo Flasher, ich bin nun dabei, mich in die Zeichenfunktionen meines Flash MX einzuarbeiten. MovieClip.lineTo und curveTo sind ja ganz nett, aber ich würde mir gerne noch ein paar höhere Funktionen dazu programmieren. Ein MovieClip.drawPolygon beispielsweise wäre praktisch, wenn es anschließend in allen MovieClip-Objekten zur Verfügung steht. Aber wie erweitere ich die Klasse MovieClip? Geht sowas? -- sterlu |
| | |
| | #2 (permalink) |
| nerdig working Registriert seit: Jul 2001 Ort: Hamburg
Beiträge: 5.832
| PHP-Code:
__________________ beat it | shake it | fish it | just pudding | love-o-meter flashforum sidebar installieren Geändert von michael (05-01-2006 um 20:13 Uhr) |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Oct 2002
Beiträge: 219
|
Ah, das ist gut zu wissen, danke! ... es tut aber anscheinend nicht ganz das, was ich mir in meiner Naivität vorgestellt habe ... Ich habe folgendes Problem dabei: Normalerweise gebe ich ja, bevor ich ein lineTo verwende, zunächst ein lineStyle an. Danach zeichnet die Funktion lineTo automatisch mit diesen Parametern. Wenn ich aber eine neue Methode drawPoly() definiere, dann funktioniert diese nur, wenn ich IN ihr ein lineStyle aufrufe, sie kennt also die vor dem Methodenaufruf AUSSERhalb gesetzten Parameter aus lineStyle() nicht. Ich dachte, wenn ich drawPoly von einer objektunabhängigen Funktion zu einer MovieClip-Methode mache, wäre ich dieses Problem los, aber das ist wohl nicht so. Beispiel: Dieser Code zeichnet nur dann ein Dreieck, wenn ich die zweite Zeile wieder aktiviere. Das lineStyle() aus Zeile 12 hat keinen Einfluss auf die Methode: Code: MovieClip.prototype.drawPoly = function( points ) {
// lineStyle (1, 0x000000, 100);
moveTo ( points[0][0], points[0][1] );
for ( i=1; i<points.length; i++ ) {
lineTo ( points[i][0], points[i][1] );
}
lineTo ( points[0][0], points[0][1] );
}
_root.createEmptyMovieClip( "test", 1 );
with (_root.test) {
lineStyle (1, 0x000000, 100);
drawPoly ( [ [0,0], [100,0], [200,100] ] );
} |
| | |
| | #5 (permalink) |
| nerdig working Registriert seit: Jul 2001 Ort: Hamburg
Beiträge: 5.832
|
jo seit flash6 muss da immer this in die prototype-funktionen, also auch bei moveTo und lineStyle, kannst das natürlich mit with(this){} zusammenfassen die zählvariable i solltest du mit dem schlüsselwort var deklarieren, sonst fliegt i auf der zeitleiste rum, wird aber nur bei ausführen der funktion gebraucht.
__________________ beat it | shake it | fish it | just pudding | love-o-meter flashforum sidebar installieren |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |