Vtkski development: Difference between revisions

From bone.wiki
Jump to navigation Jump to search
No edit summary
Line 4: Line 4:


Also, see [[vtkMeshModel]] which contains some examples of using the class vtkMeshModel .
Also, see [[vtkMeshModel]] which contains some examples of using the class vtkMeshModel .
==Compiling and Installation==
===Getting the source code===
Choose a place in your home directory that you want to use for the source code.  For example
mkdir -p ~/code
cd ~/code
(Note that '~' gets automatically expanded to your home directory.)
Get the sources from the subversion repository.
svn checkout https://mike.kin.ucalgary.ca/svn/bonelab/trunk
See the section on svn for more info: [[Subversion (SVN)]] .
===Compiling===
From the vtkski project directory, create a build directory in trunk/Libraries and use cmake to configure the build:
mkdir build
cd build
cmake-gui ..
Here are some typical configuration options:
{| border="1" cellpadding="2" cellspacing="0"
|-
! option
! Setting
! Comments
|- valign="top"
| VTK_DIR || /opt/vtk-5.6.0/lib/vtk-5.6  || Set this to wherever you installed VTK.  If you intend to build the paraview extensions as plugins, then you set this to the internal version of VTK inside the paraview build directory.  (See [[Paraview development]] if you need to install ParaView).
|- valign="top"
| BONELAB_BUILD_LIBRARY_itkski  || ON/OFF || Set this to OFF if you don't want to build itkski as well.  In this case you won't need to have ITK installed or specify where it can be found.
|- valign="top"
| ITK_DIR || /opt/itk-3.18.0/lib/InsightToolkit || You only need to set this if BONELAB_BUILD_LIBRARY_itkski is ON.  In that case, set it to herever you installed ITK.
|- valign="top"
| Boost_INCLUDE_DIR  ||  /opt/boost-1.42.0/include || Set this to wherever you installed boost.  Note that this is an Advanced setting, and you won't see it until you toggle to Advanced view.  Don't worry about all the Boost libraries it doesn't find; as soon as Boost_INCLUDE_DIR is properly set, it will find them.
|}
Once you're happy with your settings, hit Configure.  You might have to hit it a couple of times until there are no more errors, and the Generate button is enabled.  Then hit Generate and quite cmake-gui.
Now run:
make
You won't usually need to run a 'make install', since you can just use vtkski from your build directory.
===Building Doxygen documentation===
This is an advanced topic.  Most users can just refer to the documentation here: http://mike.kin.ucalgary.ca/vtkski/ .
To build the Doxygen documentation, set the cmake variable BUILD_DOCUMENTATION to ON.  This variable is marked as advanced.  You will need to have installed Doxygen ( http://www.doxygen.org/ ) in order to build the documentation.
The documentation is not automatically built with make (it takes a very long time to build).  Instead, you will need to explicitly request it, like this:
make  vtkskiDoxygenDoc
====Installing the Doxygen documentation on mike.kin====
I recommend that you build the documentation with the cmake flag DOCUMENTATION_HTML_TARZ set to on (this variable is an advanced setting).  Then the build process will automatically make a tar ball of all the HTML documentation, build/Utilities/Doxygen/vtkski-html.tar.gz , which is easy to copy over to mik.kin (using FTP or scp or the mounted Data0 volume).
The documentation needs to live in /Library/WebServer/Documents/vtkski .  The commands would look something like this
tar xvzf vtkski-html.tar.gz
sudo rm -rf /Library/WebServer/Documents/vtkski    # remove old docs
sudo mv html /Library/WebServer/Documents/vtkski
sudo chown -R root /Library/WebServer/Documents/vtkski


==Checklist for new vtkski classes==
==Checklist for new vtkski classes==

Revision as of 15:19, 9 June 2010

Documentation for vtkski

On-line documentation for vtkski is available at http://mike.kin.ucalgary.ca/vtkski/ .

Also, see vtkMeshModel which contains some examples of using the class vtkMeshModel .

Checklist for new vtkski classes

  • Select a category for your new class, for example 'IO', and put your source files in that directory.
  • Modify the CmakeLists.txt file in that directory to add your new source files to the list of source files.
  • Build vtkski and make sure that your class compiles.
  • Refer to Creating VTK Classes for important coding style tips.
  • Add your class, with a brief description, to Class List for vtkski.

For help writing VTK classes, refer to the book "VTK User's Guide", Part III, "Developer's Guide". There are a couple of copies in the lab.