Re: Voxel modifing question

New Message Reply Date view Thread view Subject view Author view

Arno Pernozzoli (pernozzoli@bigfoot.com)
Thu, 15 Jul 1999 21:20:39 +0200


Hi,

had the same question last week. You have to iterate through the Brickset as

if you would load a new file, here a little C++-stub:

  _aVolume->setCurrentBrickSet(voPlaneOrientationScope::XY);
  voBrickSetIterator brickSetIter(_aVolume->getCurrentBrickSet());
  for (voBrick * brick; brick = brickSetIter();) {

    int xBrickOrigin, yBrickOrigin, zBrickOrigin;
    int xBrickSize, yBrickSize, zBrickSize;

    void *vdata = brick->getDataPtr();

    // get brick sizes -- they may different than those requested
    brick->getBrickSizes(xBrickOrigin, yBrickOrigin, zBrickOrigin,
                         xBrickSize, yBrickSize, zBrickSize);
    // read the data; OK to use brick data area as a temporary buffer

    tomoChangeBrick(voltc, NULL, 1, vdata,
                    xBrickOrigin, yBrickOrigin, zBrickOrigin,
                    xBrickSize, yBrickSize, zBrickSize,
                    _xVolumeSize, _yVolumeSize, _zVolumeSize, 0, 1,
                    cmin,cmax);
etc.

don't forget to re-optimize the brickset:

 if( aVolume->getInterpolationType() == voInterpolationTypeScope::_3D ) {
   voAppearanceActions::volumeOptimize( aVolume,
voOptimizeVolumeTypeScope::PRE_
TRANSPOSE );

Hope that helps

Arno:-)

----- Original Message -----
From: Zerbini Enrico - Mardessich Senko <flyone@michelle.bio.dist.unige.it>
To: <info-volumizer@corp.sgi.com>
Sent: Friday, July 16, 1999 2:52 AM
Subject: Voxel modifing question

> Hi,
> We don't know how we can modify a voxel in a BrickSetCollection (we
> know the voxel's position) without rebuild all the BrickSetCollection.
>
> If someone has any idea, please answers us.
>
> Thanks Flyone
>
>
>
>


New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2.0b2 on Mon Nov 01 1999 - 14:11:14 PST