Bonjour,

J'aimerai bien que quelqu'un m'aide pour résoudre ce petit (grand pour moi) probleme.

Voilà donc j'ai un code source pour un Cube 3D qui fait des rotations et ce que je veux c'est afficher le contenu d'une page html sur chaque face au lieu d'une image.

Et si c'est possible j'aimerai bien avoir une posibilité d'arreter le cube en cliquant n'importe ou et le faire tourner avec la souris aussi

Voilà le code

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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
--------
 
Stage.scaleMode = 'noScale';
 
 
var rotations = {x:0, y:0, z:0};
 
var boxPoints = [
{x:-30, y:-30, z:-30},
{x:30, y:30, z:-30},
{x:-30, y:30, z:-30},
{x:-30, y:-30, z:30},
{x:30, y:-30, z:30},
{x:30, y:30, z:30}
];
 
 
this.createEmptyMovieClip("theScene", 1);
theScene._x = theScene._y = 130;
 
createImages();
 
theScene.onEnterFrame = function(){
 
rotations.x -= this._ymouse/2000;
rotations.y += this._xmouse/2000;
 
var points2d = pointsTransform(boxPoints, rotations);
 
movieClip3PointTransform(this.image0, points2d[2], points2d[0], points2d[3]);
movieClip3PointTransform(this.image1, points2d[5], points2d[1], points2d[2]);
movieClip3PointTransform(this.image2, points2d[0], points2d[2], points2d[1]);
movieClip3PointTransform(this.image3, points2d[4], points2d[3], points2d[0]);
movieClip3PointTransform(this.image4, points2d[3], points2d[4], points2d[5]);
movieClip3PointTransform(this.image5, points2d[1], points2d[5], points2d[4]);
}
 
function createImages(){
 
var i = 6;
while(i--){
 
theScene.createEmptyMovieClip("image"+i, i);
theScene["image"+i].createEmptyMovieClip("contents", i);
theScene["image"+i].contents.attachBitmap(
flash.display.BitmapData.loadBitmap("image"+i),
1, false, true
);
}
}
 
 
function pointsTransform(points, rotations){
var tpoints = new Array();
var sx = Math.sin(rotations.x);
var cx = Math.cos(rotations.x);
var sy = Math.sin(rotations.y);
var cy = Math.cos(rotations.y);
var sz = Math.sin(rotations.z);
var cz = Math.cos(rotations.z);
var x,y,z, xy,xz, yx,yz, zx,zy;
 
var i = points.length;
while (i--){
x = points[i].x;
y = points[i].y;
z = points[i].z;
xy = cx*y - sx*z;
xz = sx*y + cx*z;
yz = cy*xz - sy*x;
yx = sy*xz + cy*x;
zx = cz*yx - sz*xy;
zy = sz*yx + cz*xy;
tpoints[i] = {x:zx, y:zy};
}
return tpoints;
}
 
 
function movieClip3PointTransform(mc, a,b,c){
mc._visible = pointsIsVisible(a,b,c);
if (!mc._visible) return;
var m = mc.transform.matrix;
m.tx = b.x;
m.ty = b.y;
m.a = (a.x - b.x)/mc.contents._width;
m.b = (a.y - b.y)/mc.contents._width;
m.c = (c.x - b.x)/mc.contents._height;
m.d = (c.y - b.y)/mc.contents._height;
mc.transform.matrix = m;
}
 
 
function pointsIsVisible(a,b,c){
var db = b.x - a.x;
if (!db) return (a.y > b.y == c.x > a.x);
var dc = c.x - a.x;
if (!dc) return (a.y > c.y == b.x < a.x);
return ((b.y-a.y)/db < (c.y-a.y)/dc) != (a.x < b.x == a.x > c.x);
}
 
-----------
Merci beaucoup d'avance.