Skip to content

Commit de8ef2a

Browse files
committed
Update hpainter example
1 parent 5310052 commit de8ef2a

File tree

1 file changed

+13
-7
lines changed

1 file changed

+13
-7
lines changed

demo/node/hpainter.js

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
// in batch display one just able to create images
33

44

5-
import { version, HierarchyPainter, draw } from 'jsroot';
6-
5+
import { version, HierarchyPainter, draw, addDrawFunc } from 'jsroot';
6+
import { writeFileSync } from 'fs';
77

88
console.log(`JSROOT version ${version}`);
99

@@ -14,22 +14,28 @@ const hp = new HierarchyPainter('hpainter');
1414
hp.setDisplay('batch');
1515

1616
// catch draw function calls
17-
hp.setDrawFunc((dom, obj, opt) => {
18-
console.log(`trying to draw ${obj._typename}`);
19-
return draw(dom, obj, opt);
17+
addDrawFunc({
18+
name: '*',
19+
func: (dom, obj, opt) => {
20+
console.log(`Actual draw of ${obj._typename}`);
21+
// if function return true no normal drawing will be performed
22+
// do not try to call `draw` function from here !!!
23+
// return true;
24+
}
2025
});
2126

2227
await hp.openRootFile('https://root.cern/js/files/hsimple.root');
2328

2429
// display of TH2 histogram
30+
console.log('Invoke histogram drawing');
2531
await hp.display('hpxpy');
2632

2733
await hp.expandItem('ntuple');
2834

2935
// invoking TTree::Draw
36+
console.log('Invoke TLeaf drawing');
3037
await hp.display('ntuple/pz');
3138

32-
3339
// should be BatchDisplay
3440
const disp = hp.getDisplay();
3541

@@ -38,5 +44,5 @@ for (let id = 0; id < disp.numFrames(); ++id) {
3844
console.log(`Frame ${id} create svg size ${svg.length}`);
3945

4046
// one can save svg plain file
41-
// writeFileSync(`frame${id}.svg`, svg);
47+
writeFileSync(`frame${id}.svg`, svg);
4248
}

0 commit comments

Comments
 (0)