ITK/Examples/SimpleOperations/BresenhamLine

From KitwarePublic
< ITK‎ | Examples
Revision as of 16:42, 1 March 2011 by Lorensen (talk | contribs) (Only available in ITKv4)
Jump to navigationJump to search

BresenhamLine.cxx

<source lang="cpp">

  1. if ( ITK_VERSION_MAJOR < 4 )//This only works with ITKv4

int main(int argc, char *argv[]) {

 return 0;

}

  1. else
  1. include "itkBresenhamLine.h"
  2. include "itkVector.h"
  3. include "itkOffset.h"
  4. include "itkPoint.h"
  1. include <iostream>

static void Vector(void); static void Line(void);

int main(int argc, char *argv[]) {

 Vector();
 Line();
 return EXIT_SUCCESS;

}

void Vector(void) {

 itk::BresenhamLine<2> line;
 itk::Vector<float, 2> v;
 v[0] = 1;
 v[1] = 1;
 std::vector< itk::Offset<2> > offsets = line.BuildLine(v, 4);
 for(unsigned int i = 0; i < offsets.size(); i++)
   {
   std::cout << offsets[i] << std::endl;
   }

}

void Line(void) {

 itk::BresenhamLine<2> line;
 itk::Index<2> pixel0;
 pixel0[0] = 0;
 pixel0[1] = 0;
 itk::Index<2> pixel1;
 pixel1[0] = 5;
 pixel1[1] = 5;
 std::vector< itk::Index<2> > pixels = line.BuildLine(pixel0, pixel1);
 for(unsigned int i = 0; i < pixels.size(); i++)
   {
   std::cout << pixels[i] << std::endl;
   }

}

  1. endif

</source>

CMakeLists.txt

<source lang="cmake"> cmake_minimum_required(VERSION 2.6)

PROJECT(BresenhamLine)

FIND_PACKAGE(ITK REQUIRED) INCLUDE(${ITK_USE_FILE})

ADD_EXECUTABLE(BresenhamLine BresenhamLine.cxx) TARGET_LINK_LIBRARIES(BresenhamLine ITKIO)

</source>