Я использую Xtk, чтобы сделать виджет для измерения расстояний в томе. На сцене есть четыре объекта: объем, две сферы - куб. куб помещается в начале координат и сферы переводятся 30 единиц вдоль X и оси Y, каждый в противоположном направлении, как показано ниже:Неверный объемный ограничитель
https://docs.google.com/file/d/0B2oRl7iWfVvTaXAyckNTOC04RlE/edit?usp=sharing
куба и сферы размещены в правильном положении, но проблема возникает тогда, когда объем включен в сцене, изменение системы координат и перевод происхождения:
https://docs.google.com/file/d/0B2oRl7iWfVvTR3BJdk13Zm9BdTQ/edit?usp=sharing
resetBoundingBox()
функция вызывается сразу после render()
, но это не имеет никакого значения. Даже я попытался добавить сначала объекты, а затем тома в рендеринг без результата.
Сферы также можно перетаскивать, и на эту функцию также влияет изменение системы corrdinate, поскольку в момент начала движения сферы это преобразуется в отношении положения мыши.
Почему перевод происходит? Кажется, что объем влияет на сцену, сбрасывая resetBoundingBox()
.
Недостает разделение между 2 в вычитании. Это было бы примерно так: 'var center = [volume.bbox [0] + (volume.bbox [1] -volume.bbox [0])/2, volume.bbox [2] + (volume.bbox [3] -volume.bbox [2])/2, volume.bbox [4] + (volume.bbox [5] -volume.bbox [4])/2 ] ' Я не знал' У X.volume' был определен такой getter (bbox). Он не указан в ссылке API. Спасибо за информацию. – JPOV
Спасибо, что подобрал опечатку, я ее исправил – Nicolas