Update the transformation matrix to record rotation (function remx ()).
Use a matrix to calculate the coordinate of the cube after rotation,
Convert the spatial coordinates of each vertex to the plane coordinates (function p2d () according to "near, large, and small ()),
Determine whether the surface is visible by using the zcoordinate of the normal vector of each cube surface,
Use the div layer with the height of 1px to simulate the Quadrilateral (function gra2htm ()).
The Code dragged by the mouse is modified by someone else's code.
<! DOCTYPE html PUBLIC "-// W3C // dtd xhtml 1.0 Transitional // EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <ptml xmlns = "http://www.w3.org/1999/xhtml"> <pead> <meta http-equiv =" content-Type "content =" text/html; charset = gb2312 "/> <title> Cube </title> </pead> <body> <input type =" button "onClick =" clearInterval (tt) "value =" Stop "/> <input type =" button "onClick =" clearInterval (tt); tt = setInterval ('CC. roll (\ 'rx \ ', 0.2); cc. paint (); ', 100) "value =" Down "/> <input type =" button "onClick =" clearInterval (tt); tt = setInterval ('CC. roll (\ 'ry \ ', 0.2); cc. paint (); ', 100) "value =" Right "/> </body> </ptml>
[Ctrl + A select all Note: If you need to introduce external Js, You need to refresh it to execute]