Je ne retrouve pas tous les paramètres d'actionscript au niveau des matrices....
Le x,y par exemple, il est matérialisé par quoi ?
@+
Je ne retrouve pas tous les paramètres d'actionscript au niveau des matrices....
Le x,y par exemple, il est matérialisé par quoi ?
@+
Qu'entends-tu par x et y ?!
Flash ne gère que des matrices 2D sous la forme
[a b tx]
[c d ty]
[0 0 1]
c'est assez bien expliqué dans la rubrique Matrice ici
Ok, ça marche...
tx,ty correspondent aux x et y du lien que je regardais.
Je vais me fier aux références officielles adobe.
C'est parce que je n'ai toujours pas résolu la compréhension et la maitrise de
beginGradientfill. c'est assez obscur...
en effet, d'après la doc adobe actionscript2, je devrais avoir un beau dégradé rouge bleu avec ce code:
alors, je me demandais si ce n'était pas un soucis au niveau de la déclaration de la matrice...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 matrix1.createbox(1,1,0,0,0); begingradientfill('linear',[$ff0000,$0000ff],[100,100],[0,255],matrix1); moveto(0,0); lineto(300,0); lineto(300,300); lineto(0,300); lineto(0,0); endFill();
merci
n'as-tu pas oublié de créer la matrice ? createbox est une méthode, pas un constructor.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 matrix1 := Matrix.Create(); matrix1.createbox(1,1,0,0,0);
Oui, dans le bout de code, j'avais oublié de joindre le create mais de toute façon comme tout est objet en ActionScript, je le fais systématiquement...
voici le code complet :
tu peux tester...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 program degrade; uses Flash8; {$FRAME_WIDTH 300} {$FRAME_HEIGHT 300} type Tdegrade = class(MovieClip) constructor Create; end; constructor Tdegrade.Create; var matrix1:Matrix; begin inherited Create(nil,'degrade',1); matrix1.create(); matrix1.createbox(1,1,0,0,0); begingradientfill('linear',[$ff0000,$0000ff],[100,100],[0,255],matrix1); moveto(0,0); lineto(300,0); lineto(300,300); lineto(0,300); lineto(0,0); endFill(); end; begin Tdegrade.Create; end.![]()
J'ai fait un test sur matrix, ci-joint :
Normalement, l'image devrait pivotée de 45° par rapport au coin en haut à gauche... il n'en est rien ! ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 program voeux2012; uses Flash8; {$FRAME_WIDTH 520} {$FRAME_HEIGHT 366} {$JPEG img 'voeux2012.jpg'} var b: BitmapData; matrix1:matrix; begin matrix1.create(); matrix1.createBox(1,1,math.pi/4,0,0); b:= loadBitmap('img'); _root.beginBitmapFill(b,matrix1); _root.moveto(0,0); _root.lineto(520, 0); _root.lineto(520,366); _root.lineto(0, 366); _root.lineto(0,0); end![]()
Partager