Skip to content

Commit 765172b

Browse files
authored
Merge pull request #96 from bellenot/master
Make grid dashed lines working with WebGL (and reduce dash size)
2 parents 452920f + b816ace commit 765172b

File tree

1 file changed

+16
-6
lines changed

1 file changed

+16
-6
lines changed

scripts/JSRoot3DPainter.js

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -829,10 +829,15 @@
829829
if (zgridx && (zgridx.length > 0)) {
830830

831831
// var material = new THREE.LineBasicMaterial({ color: 0x0, linewidth: 0.5 });
832-
var material = new THREE.LineDashedMaterial( { color: 0x0, dashSize: 10, gapSize: 2 } );
832+
var material = new THREE.LineDashedMaterial( { color: 0x0, dashSize: 2, gapSize: 2 } );
833833

834-
var geom = new THREE.BufferGeometry();
835-
geom.addAttribute( 'position', new THREE.BufferAttribute( new Float32Array(zgridx), 3 ) );
834+
//var geom = new THREE.BufferGeometry();
835+
//geom.addAttribute( 'position', new THREE.BufferAttribute( new Float32Array(zgridx), 3 ) );
836+
var geom = new THREE.Geometry();
837+
for(i = 0; i < zgridx.length; i += 3 ){
838+
geom.vertices.push( new THREE.Vector3( zgridx[i], zgridx[i+1], zgridx[i+2]) );
839+
}
840+
geom.computeLineDistances();
836841

837842
var lines = new THREE.LineSegments(geom, material);
838843
lines.position.set(0,grmaxy,0);
@@ -850,10 +855,15 @@
850855
if (zgridy && (zgridy.length > 0)) {
851856

852857
// var material = new THREE.LineBasicMaterial({ color: 0x0, linewidth: 0.5 });
853-
var material = new THREE.LineDashedMaterial( { color: 0x0, dashSize: 10, gapSize: 2 } );
858+
var material = new THREE.LineDashedMaterial( { color: 0x0, dashSize: 2, gapSize: 2 } );
854859

855-
var geom = new THREE.BufferGeometry();
856-
geom.addAttribute( 'position', new THREE.BufferAttribute( new Float32Array(zgridy), 3 ) );
860+
//var geom = new THREE.BufferGeometry();
861+
//geom.addAttribute( 'position', new THREE.BufferAttribute( new Float32Array(zgridy), 3 ) );
862+
var geom = new THREE.Geometry();
863+
for(i = 0; i < zgridy.length; i += 3 ){
864+
geom.vertices.push( new THREE.Vector3( zgridy[i], zgridy[i+1], zgridy[i+2]) );
865+
}
866+
geom.computeLineDistances();
857867

858868
var lines = new THREE.LineSegments(geom, material);
859869
lines.position.set(grmaxx,0, 0);

0 commit comments

Comments
 (0)