VTK/Examples/Cxx/SimpleOperations/RandomSequence

From KitwarePublic

Jump to: navigation, search

This is the "new" (December, 2009) VTK way to produce random numbers. It is actually a random sequence generator.

RandomNumbers.cxx

#include <vtkMinimalStandardRandomSequence.h>
#include <vtkSmartPointer.h>
 
int main(int, char *[])
{
  //Create a random sequence generator.
  vtkSmartPointer<vtkMinimalStandardRandomSequence> sequence = 
      vtkSmartPointer<vtkMinimalStandardRandomSequence>::New();
 
  // initialize the sequence
  sequence->SetSeed(1);
 
  //Get 3 random numbers.
  double x = sequence->GetValue();
  sequence->Next();
  double y = sequence->GetValue();
  sequence->Next();
  double z = sequence->GetValue();
 
  // You can also use seq->GetRangeValue(-1.0,1.0); 
  //to set a range on the random values.
 
  //Output the resulting random numbersl
  std::cout << "x: " << x << " y: " << y << " z: " << z << std::endl;
 
  return EXIT_SUCCESS;
}

CMakeLists.txt

cmake_minimum_required(VERSION 2.8)
 
PROJECT(RandomSequence)
 
find_package(VTK REQUIRED)
include(${VTK_USE_FILE})
 
if (APPLE)
  add_executable(RandomSequence MACOSX_BUNDLE RandomSequence.cxx)
else()
  add_executable(RandomSequence RandomSequence.cxx)
endif()
 
if(VTK_LIBRARIES)
  target_link_libraries(RandomSequence ${VTK_LIBRARIES})
else()
  target_link_libraries(RandomSequence vtkHybrid vtkHybrid)
endif()
Personal tools