@@ -339,7 +339,7 @@ function calculateMesh(inputX, inputY, inputZ, inputC, inputMC, scalingFactor) {
339
339
F . push ( f ) ;
340
340
}
341
341
342
- function catmullRom ( x , y , z , r , f , Tratio ) {
342
+ function catmullRom ( x , y , z , r , R , G , B , Tratio ) {
343
343
344
344
var t0 = 0 ;
345
345
var d , c1 , c2 ;
@@ -358,7 +358,9 @@ function calculateMesh(inputX, inputY, inputZ, inputC, inputMC, scalingFactor) {
358
358
var A1y = c1 * y [ 0 ] + c2 * y [ 1 ] ;
359
359
var A1z = c1 * z [ 0 ] + c2 * z [ 1 ] ;
360
360
var A1r = c1 * r [ 0 ] + c2 * r [ 1 ] ;
361
- var A1f = c1 * f [ 0 ] + c2 * f [ 1 ] ;
361
+ var A1R = c1 * R [ 0 ] + c2 * R [ 1 ] ;
362
+ var A1G = c1 * G [ 0 ] + c2 * G [ 1 ] ;
363
+ var A1B = c1 * B [ 0 ] + c2 * B [ 1 ] ;
362
364
363
365
d = t2 - t1 ;
364
366
c1 = ( t2 - T ) / d ;
@@ -367,7 +369,9 @@ function calculateMesh(inputX, inputY, inputZ, inputC, inputMC, scalingFactor) {
367
369
var A2y = c1 * y [ 1 ] + c2 * y [ 2 ] ;
368
370
var A2z = c1 * z [ 1 ] + c2 * z [ 2 ] ;
369
371
var A2r = c1 * r [ 1 ] + c2 * r [ 2 ] ;
370
- var A2f = c1 * f [ 1 ] + c2 * f [ 2 ] ;
372
+ var A2R = c1 * R [ 1 ] + c2 * R [ 2 ] ;
373
+ var A2G = c1 * G [ 1 ] + c2 * G [ 2 ] ;
374
+ var A2B = c1 * B [ 1 ] + c2 * B [ 2 ] ;
371
375
372
376
d = t3 - t2 ;
373
377
c1 = ( t3 - T ) / d ;
@@ -376,7 +380,9 @@ function calculateMesh(inputX, inputY, inputZ, inputC, inputMC, scalingFactor) {
376
380
var A3y = c1 * y [ 2 ] + c2 * y [ 3 ] ;
377
381
var A3z = c1 * z [ 2 ] + c2 * z [ 3 ] ;
378
382
var A3r = c1 * r [ 2 ] + c2 * r [ 3 ] ;
379
- var A3f = c1 * f [ 2 ] + c2 * f [ 3 ] ;
383
+ var A3R = c1 * R [ 2 ] + c2 * R [ 3 ] ;
384
+ var A3G = c1 * G [ 2 ] + c2 * G [ 3 ] ;
385
+ var A3B = c1 * B [ 2 ] + c2 * B [ 3 ] ;
380
386
381
387
d = t2 - t0 ;
382
388
c1 = ( t2 - T ) / d ;
@@ -385,7 +391,9 @@ function calculateMesh(inputX, inputY, inputZ, inputC, inputMC, scalingFactor) {
385
391
var B1y = c1 * A1y + c2 * A2y ;
386
392
var B1z = c1 * A1z + c2 * A2z ;
387
393
var B1r = c1 * A1r + c2 * A2r ;
388
- var B1f = c1 * A1f + c2 * A2f ;
394
+ var B1R = c1 * A1R + c2 * A2R ;
395
+ var B1G = c1 * A1G + c2 * A2G ;
396
+ var B1B = c1 * A1B + c2 * A2B ;
389
397
390
398
d = t3 - t1 ;
391
399
c1 = ( t3 - T ) / d ;
@@ -394,7 +402,9 @@ function calculateMesh(inputX, inputY, inputZ, inputC, inputMC, scalingFactor) {
394
402
var B2y = c1 * A2y + c2 * A3y ;
395
403
var B2z = c1 * A2z + c2 * A3z ;
396
404
var B2r = c1 * A2r + c2 * A3r ;
397
- var B2f = c1 * A2f + c2 * A3f ;
405
+ var B2R = c1 * A2R + c2 * A3R ;
406
+ var B2G = c1 * A2G + c2 * A3G ;
407
+ var B2B = c1 * A2B + c2 * A3B ;
398
408
399
409
d = t2 - t1 ;
400
410
c1 = ( t2 - T ) / d ;
@@ -403,9 +413,11 @@ function calculateMesh(inputX, inputY, inputZ, inputC, inputMC, scalingFactor) {
403
413
var Cy = c1 * B1y + c2 * B2y ;
404
414
var Cz = c1 * B1z + c2 * B2z ;
405
415
var Cr = c1 * B1r + c2 * B2r ;
406
- var Cf = c1 * B1f + c2 * B2f ;
416
+ var CR = c1 * B1R + c2 * B2R ;
417
+ var CG = c1 * B1G + c2 * B2G ;
418
+ var CB = c1 * B1B + c2 * B2B ;
407
419
408
- return [ Cx , Cy , Cz , Cr , Cf ] ;
420
+ return [ Cx , Cy , Cz , Cr , CR , CG , CB ] ;
409
421
}
410
422
411
423
var quadCount = 36 ;
@@ -854,14 +866,16 @@ function calculateMesh(inputX, inputY, inputZ, inputC, inputMC, scalingFactor) {
854
866
[ p . y [ n ] , p . y [ n + 1 ] , p . y [ n + 2 ] , p . y [ n + 3 ] ] ,
855
867
[ p . z [ n ] , p . z [ n + 1 ] , p . z [ n + 2 ] , p . z [ n + 3 ] ] ,
856
868
[ p . r [ n ] , p . r [ n + 1 ] , p . r [ n + 2 ] , p . r [ n + 3 ] ] ,
857
- [ p . c [ n ] , p . c [ n + 1 ] , p . c [ n + 2 ] , p . c [ n + 3 ] ] ,
869
+ [ p . c [ n ] [ 0 ] , p . c [ n + 1 ] [ 0 ] , p . c [ n + 2 ] [ 0 ] , p . c [ n + 3 ] [ 0 ] ] ,
870
+ [ p . c [ n ] [ 1 ] , p . c [ n + 1 ] [ 1 ] , p . c [ n + 2 ] [ 1 ] , p . c [ n + 3 ] [ 1 ] ] ,
871
+ [ p . c [ n ] [ 2 ] , p . c [ n + 1 ] [ 2 ] , p . c [ n + 2 ] [ 2 ] , p . c [ n + 3 ] [ 2 ] ] ,
858
872
c1 ) ;
859
873
860
874
rp . x . push ( xyzrf [ 0 ] ) ;
861
875
rp . y . push ( xyzrf [ 1 ] ) ;
862
876
rp . z . push ( xyzrf [ 2 ] ) ;
863
877
rp . r . push ( xyzrf [ 3 ] ) ;
864
- rp . c . push ( colorer ( xyzrf [ 4 ] ) ) ;
878
+ rp . c . push ( [ xyzrf [ 4 ] , xyzrf [ 5 ] , xyzrf [ 6 ] , 1 ] ) ; // fixme transfer opacity too
865
879
}
866
880
}
867
881
0 commit comments