3
3
Program: Insight Segmentation & Registration Toolkit
4
4
Module: $RCSfile: itkTriangleMeshToBinaryImageFilter.txx,v $
6
Date: $Date: 2008-01-20 18:00:40 $
7
Version: $Revision: 1.10 $
6
Date: $Date: 2008-10-06 14:59:58 $
7
Version: $Revision: 1.11 $
9
9
Copyright (c) Insight Software Consortium. All rights reserved.
10
10
See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
171
172
itkDebugMacro(<< "TriangleMeshToBinaryImageFilter::Update() called");
173
RasterizeTriangles();
175
176
// Get the input and output pointers
176
177
OutputImagePointer OutputImage = this->GetOutput();
178
if (m_Size[0] == 0 || m_Size[1] == 0 || m_Size[2] == 0)
180
itkExceptionMacro(<< "Must Set Image Size");
183
typename OutputImageType::RegionType region;
185
region.SetSize ( m_Size );
186
region.SetIndex( m_Index );
188
OutputImage->SetLargestPossibleRegion( region); //
189
OutputImage->SetBufferedRegion( region ); // set the region
190
OutputImage->SetRequestedRegion( region ); //
191
OutputImage->SetSpacing(m_Spacing); // set spacing
192
OutputImage->SetOrigin(m_Origin); // and origin
178
if (m_InfoImage == NULL)
180
if (m_Size[0] == 0 || m_Size[1] == 0 || m_Size[2] == 0)
182
itkExceptionMacro(<< "Must Set Image Size");
185
typename OutputImageType::RegionType region;
187
region.SetSize ( m_Size );
188
region.SetIndex( m_Index );
190
OutputImage->SetLargestPossibleRegion( region); //
191
OutputImage->SetBufferedRegion( region ); // set the region
192
OutputImage->SetRequestedRegion( region ); //
193
OutputImage->SetSpacing(m_Spacing); // set spacing
194
OutputImage->SetOrigin(m_Origin); // and origin
198
std::cout << "Using info image" << std::endl;
199
m_InfoImage->Update();
200
OutputImage->CopyInformation(m_InfoImage);
201
OutputImage->SetRegions(m_InfoImage->GetLargestPossibleRegion());
202
m_Size = m_InfoImage->GetLargestPossibleRegion().GetSize();
203
m_Index = m_InfoImage->GetLargestPossibleRegion().GetIndex();
204
m_Spacing = m_InfoImage->GetSpacing();
205
m_Origin = m_InfoImage->GetOrigin();
194
208
OutputImage->Allocate(); // allocate the image
210
RasterizeTriangles();
196
212
typedef itk::ImageRegionIteratorWithIndex<OutputImageType> myIteratorType;
198
myIteratorType it(OutputImage,region);
214
myIteratorType it(OutputImage,OutputImage->GetLargestPossibleRegion());