1
- const ROWS = 100 ;
2
- const COLS = 100 ;
3
- Quadrille . cellLength = 5 ;
1
+ const ROWS = 80 ;
2
+ const COLS = 80 ;
4
3
let quadrille ;
5
4
6
5
let cubo ;
@@ -11,6 +10,7 @@ let origen;
11
10
function setup ( ) {
12
11
createCanvas ( COLS * Quadrille . cellLength , ROWS * Quadrille . cellLength ) ;
13
12
angleMode ( RADIANS ) ;
13
+ Quadrille . cellLength = 5 ;
14
14
Quadrille . outlineWeight = 0 ;
15
15
quadrille = createQuadrille ( ROWS , COLS ) ;
16
16
cubo = {
@@ -54,9 +54,10 @@ function draw() {
54
54
background ( 0 ) ;
55
55
quadrille . clear ( ) ;
56
56
57
- qRotateX ( cubo . vertices , 0.08 ) ;
57
+ qRotateX ( cubo . vertices , 0.1 ) ;
58
58
let triangs3D = qTriangles ( cubo ) ;
59
59
let triangs2D = qProyectTriangles ( triangs3D , fov , qCam , origen ) ;
60
+
60
61
qRenderLines ( triangs2D , quadrille , color ( 255 ) ) ;
61
62
62
63
drawQuadrille ( quadrille , { outline : 'green' } ) ;
@@ -79,7 +80,7 @@ function quaLine(x0, y0, x1, y1, quad, c) {
79
80
let sy = ( dy > 0 ) ? 1 : - 1 ;
80
81
dx = Math . abs ( dx ) ;
81
82
dy = Math . abs ( dy ) ;
82
- let e ;
83
+ let e = 0 ;
83
84
84
85
if ( dx > dy ) {
85
86
e = dx / 2 ;
@@ -111,13 +112,6 @@ function qTriangleLine(triang2D, quad, c){
111
112
quaLine ( triang2D [ 0 ] [ 0 ] , triang2D [ 0 ] [ 1 ] , triang2D [ 1 ] [ 0 ] , triang2D [ 1 ] [ 1 ] , quad , c ) ;
112
113
quaLine ( triang2D [ 0 ] [ 0 ] , triang2D [ 0 ] [ 1 ] , triang2D [ 2 ] [ 0 ] , triang2D [ 2 ] [ 1 ] , quad , c ) ;
113
114
quaLine ( triang2D [ 1 ] [ 0 ] , triang2D [ 1 ] [ 1 ] , triang2D [ 2 ] [ 0 ] , triang2D [ 2 ] [ 1 ] , quad , c ) ;
114
- /*
115
- quad.rasterizeTriangle(triang2D[0][0], triang2D[0][1],
116
- triang2D[1][0], triang2D[1][1],
117
- triang2D[2][0], triang2D[2][1],
118
- colorizeShader,
119
- [255, 0, 0], [0, 255, 0], [0, 0, 255]);
120
- */
121
115
}
122
116
123
117
function qRenderLines ( triangles , quad , c ) {
@@ -140,7 +134,6 @@ function qTriangles(shp){
140
134
for ( let i = 0 ; i < shp . triangles . length ; i ++ ) {
141
135
qTriangleList . push ( triang ( shp , shp . triangles [ i ] ) ) ;
142
136
}
143
-
144
137
return qTriangleList ;
145
138
}
146
139
@@ -167,7 +160,7 @@ function qPerspective(point, fov, cam, center){
167
160
pm = [ [ fov / p [ 2 ] , 0 ] ,
168
161
[ 0 , fov / p [ 2 ] ] ,
169
162
[ center [ 0 ] / p [ 2 ] , center [ 1 ] / p [ 2 ] ] ] ;
170
- return axbQMatrix ( [ p ] , pm ) ;
163
+ return axbQMatrix ( [ p ] , pm ) [ 0 ] ;
171
164
}
172
165
173
166
function proy ( points , fov , cam , center ) {
0 commit comments