ITK/Examples/SimpleOperations/VariableLengthVector: Difference between revisions

From KitwarePublic
< ITK‎ | Examples
Jump to navigationJump to search
No edit summary
(Deprecate)
 
Line 1: Line 1:
==VariableLengthVector.cxx==
{{warning|1=The media wiki content on this page is no longer maintained.  The examples presented on the https://itk.org/Wiki/*  pages likely require ITK version 4.13 or earlier releases.   In many cases, the examples on this page no longer conform to the best practices for modern ITK versions.
<source lang="cpp">
}}
#include <itkVariableLengthVector.h>
#include <itkVector.h>


void VectorToVariableLengthVector();
[https://itk.org/ITKExamples[ITK Sphinx Examples]]
void VariableLengthVectorToVector();
 
int main(int, char*[])
{
  typedef itk::VariableLengthVector<double> VectorType;
  VectorType v;
  v.SetSize(2);
  v[0] = 1;
  v[1] = 2;
  std::cout << v << std::endl;
 
  for(unsigned int i = 0; i < v.Size(); i++)
    {
    std::cout << v[i] << " ";
    }
  std::cout << std::endl;
 
  VectorToVariableLengthVector();
  VariableLengthVectorToVector();
  return EXIT_SUCCESS;
}
 
void VectorToVariableLengthVector()
{
  std::cout << "VectorToVariableLengthVector()" << std::endl;
 
  typedef itk::Vector<double, 2> FixedVectorType;
  FixedVectorType fixedLengthVector;
  fixedLengthVector[0] = 1;
  fixedLengthVector[1] = 2;
 
  typedef itk::VariableLengthVector<double> VariableVectorType;
  VariableVectorType variableLengthVector;
 
  // This works
  variableLengthVector.SetSize(fixedLengthVector.Size());
  variableLengthVector.SetData(fixedLengthVector.GetDataPointer());
 
  // This crashes with both true and false
  //variableLengthVector.SetData(fixedLengthVector.GetDataPointer(), 2, true);
 
  std::cout << "variableLengthVector: " << variableLengthVector << std::endl;
}
 
void VariableLengthVectorToVector()
{
  std::cout << "VariableLengthVectorToVector()" << std::endl;
  typedef itk::VariableLengthVector<double> VariableVectorType;
  VariableVectorType variableLengthVector;
  variableLengthVector.SetSize(2);
 
  variableLengthVector[0] = 1;
  variableLengthVector[1] = 2;
 
  typedef itk::Vector<double, 2> FixedVectorType;
  FixedVectorType fixedLengthVector;
 
  for(unsigned int i = 0; i < FixedVectorType::GetVectorDimension(); i++)
    {
    fixedLengthVector[i] = variableLengthVector[i];
    }
 
  // This function doesn't exist!
  //fixedLengthVector.SetData(variableLengthVector.GetDataPointer());
  std::cout << "fixedLengthVector: " << fixedLengthVector << std::endl;
}
 
</source>
 
{{ITKCMakeLists|{{SUBPAGENAME}}}}

Latest revision as of 21:00, 3 June 2019

Warning: The media wiki content on this page is no longer maintained. The examples presented on the https://itk.org/Wiki/* pages likely require ITK version 4.13 or earlier releases. In many cases, the examples on this page no longer conform to the best practices for modern ITK versions.

[ITK Sphinx Examples]