xtk中相机的模型边界框和旋转中心

时间:2012-02-05 21:46:01

标签: javascript visualization webgl xtk

尝试http://www.goxtk.com,很棒的东西! 有没有一种快速的方法可以获得模型的边界框或其他可以用作相机旋转中心的点?最糟糕的情况是,循环点的最佳方法是什么?感谢您的回复!

1 个答案:

答案 0 :(得分:1)

可以在每个X.object()中查询其质心,如下所示:

...
r = new X.renderer('r');
r.init();

o = new X.object();
o.load('test.vtk');

r.add(o);
r.render();

r.onShowtime = function() {

    // print the centroid
    console.log(o.points().centroid());

};
...

你必须重载X.renderer的onShowtime函数,以确保X.object正确设置(.vtk文件加载等)。

要配置相机,您可以执行操作。以下内容:

...
r.camera().setPosition(-400,0,0); // set the position
r.camera().setFocus(-10,-10,-10); // set the focus point
r.camera().setUp(1,0,0); // set the (normalized) up vector
r.render();
...

无论如何,循环点:

...
// o is an X.object
var numberOfPoints = o.points().count();
var pointArrayLength = o.points().length(); // equals numberOfPoints * 3
var allPoints = o.points().all(); // as a flat 1D array optimized for WebGL

// just loop it :)
...