Difference between revisions of "VTK6 Migration Guide"
m (2 revisions) |
m |
||
(3 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
__NOTOC__ | __NOTOC__ | ||
− | + | == VTK Documentation == | |
− | = | + | * [http://www.vtk.org/Wiki/VTK/VTK_6_Migration_Guide VTK6 Migration Guide] |
− | http://www.vtk.org/Wiki/VTK/VTK_6_Migration_Guide | + | * [http://vtk.org/Wiki/VTK/VTK_6_Migration/Overview VTK6 Migration Overview] |
− | |||
− | == | + | == FloatingPointType == |
vtkFloatingPointType has to be replaced with double | vtkFloatingPointType has to be replaced with double | ||
− | < | + | <syntaxhighlight lang="cpp"> |
- vtkFloatingPointType point[3]; | - vtkFloatingPointType point[3]; | ||
+ double point[3]; | + double point[3]; | ||
− | </ | + | </syntaxhighlight> |
Line 18: | Line 17: | ||
When vtk version macros (like VTK_MAJOR_VERSION) are used, the following header has to be included: | When vtk version macros (like VTK_MAJOR_VERSION) are used, the following header has to be included: | ||
− | < | + | <syntaxhighlight lang="cpp"> |
+#include <vtkVersionMacros.h> | +#include <vtkVersionMacros.h> | ||
− | </ | + | </syntaxhighlight> |
== Pipeline changes == | == Pipeline changes == | ||
− | http://www.vtk.org/Wiki/VTK/VTK_6_Migration/Replacement_of_SetInput | + | [http://www.vtk.org/Wiki/VTK/VTK_6_Migration/Replacement_of_SetInput| VTk Docu] |
+ | |||
+ | |||
=== Example 1 === | === Example 1 === | ||
− | < | + | <syntaxhighlight lang="cpp"> |
anotherFilter->SetInput(aFilter->GetOutput()); | anotherFilter->SetInput(aFilter->GetOutput()); | ||
− | </ | + | </syntaxhighlight> |
should become | should become | ||
− | < | + | <syntaxhighlight lang="cpp"> |
anotherFilter->SetInputConnection(aFilter->GetOutputPort()); | anotherFilter->SetInputConnection(aFilter->GetOutputPort()); | ||
− | </ | + | </syntaxhighlight> |
=== Example 2 === | === Example 2 === | ||
− | < | + | <syntaxhighlight lang="cpp"> |
vtkDataObject* output = aFilter->GetOutput(); | vtkDataObject* output = aFilter->GetOutput(); | ||
anotherFilter->SetInput(output); | anotherFilter->SetInput(output); | ||
− | </ | + | </syntaxhighlight> |
should become | should become | ||
− | < | + | <syntaxhighlight lang="cpp"> |
anotherFilter->SetInputConnection(aFilter->GetOutputPort()); | anotherFilter->SetInputConnection(aFilter->GetOutputPort()); | ||
− | </ | + | </syntaxhighlight> |
+ | |||
=== Example 3 === | === Example 3 === | ||
− | < | + | <syntaxhighlight lang="cpp"> |
vtkPolyData *pd = vtkPolyData::New(); | vtkPolyData *pd = vtkPolyData::New(); | ||
aFilter->SetInput(pd); | aFilter->SetInput(pd); | ||
− | </ | + | </syntaxhighlight> |
should become | should become | ||
− | < | + | <syntaxhighlight lang="cpp"> |
vtkPolyData *pd = vtkPolyData::New(); | vtkPolyData *pd = vtkPolyData::New(); | ||
aFilter->SetInputData(pd); | aFilter->SetInputData(pd); | ||
− | </ | + | </syntaxhighlight> |
+ | |||
=== Update on vtkData === | === Update on vtkData === | ||
Since vtkData Objects no longer have a source, the update method is not existing anymore. Instead, call the update method of the source directly. | Since vtkData Objects no longer have a source, the update method is not existing anymore. Instead, call the update method of the source directly. | ||
− | == | + | |
+ | == CxxRevisionMacro == | ||
Deprecated Macro. Just remove it. | Deprecated Macro. Just remove it. | ||
− | < | + | <syntaxhighlight lang="cpp"> |
-vtkCxxRevisionMacro(vtkPVAxesActor, "$Revision$"); | -vtkCxxRevisionMacro(vtkPVAxesActor, "$Revision$"); | ||
− | </ | + | </syntaxhighlight> |
Line 79: | Line 83: | ||
Renamed macro | Renamed macro | ||
− | < | + | <syntaxhighlight lang="cpp"> |
- vtkTypeRevisionMacro(vtkPVAxesActor,vtkProp3D); | - vtkTypeRevisionMacro(vtkPVAxesActor,vtkProp3D); | ||
+ vtkTypeMacro(vtkPVAxesActor,vtkProp3D); | + vtkTypeMacro(vtkPVAxesActor,vtkProp3D); | ||
− | </ | + | </syntaxhighlight> |
== allocateScalars == | == allocateScalars == | ||
+ | |||
+ | |||
=== Example 1 === | === Example 1 === | ||
Replace | Replace | ||
− | < | + | <syntaxhighlight lang="cpp"> |
int vtkMyAlg::RequestInformation(vtkInformation*, vtkInformationVector**, | int vtkMyAlg::RequestInformation(vtkInformation*, vtkInformationVector**, | ||
vtkInformationVector* outInfoVec) | vtkInformationVector* outInfoVec) | ||
Line 96: | Line 102: | ||
output->GetScalarType(); | output->GetScalarType(); | ||
output->GetNumberOfScalarComponents(); | output->GetNumberOfScalarComponents(); | ||
− | </ | + | </syntaxhighlight> |
with | with | ||
− | < | + | <syntaxhighlight lang="cpp"> |
int vtkMyAlg::RequestInformation(vtkInformation*, vtkInformationVector**, | int vtkMyAlg::RequestInformation(vtkInformation*, vtkInformationVector**, | ||
vtkInformationVector* outInfoVec) | vtkInformationVector* outInfoVec) | ||
Line 107: | Line 113: | ||
vtkImageData::GetScalarType(outInfo); | vtkImageData::GetScalarType(outInfo); | ||
vtkImageData::GetNumberOfScalarComponents(outInfo); | vtkImageData::GetNumberOfScalarComponents(outInfo); | ||
− | </ | + | </syntaxhighlight> |
+ | |||
=== Example 2 === | === Example 2 === | ||
− | + | <syntaxhighlight lang="cpp"> | |
− | < | ||
int vtkMyAlg::RequestData(vtkInformation*, vtkInformationVector**, | int vtkMyAlg::RequestData(vtkInformation*, vtkInformationVector**, | ||
vtkInformationVector* outInfoVec) | vtkInformationVector* outInfoVec) | ||
Line 119: | Line 125: | ||
output->GetScalarType(); | output->GetScalarType(); | ||
output->GetNumberOfScalarComponents(); | output->GetNumberOfScalarComponents(); | ||
− | </ | + | </syntaxhighlight> |
This code does not need to be changed. | This code does not need to be changed. |
Latest revision as of 17:10, 4 December 2014
VTK Documentation
FloatingPointType
vtkFloatingPointType has to be replaced with double
<syntaxhighlight lang="cpp"> - vtkFloatingPointType point[3]; + double point[3]; </syntaxhighlight>
versionMacros
When vtk version macros (like VTK_MAJOR_VERSION) are used, the following header has to be included:
<syntaxhighlight lang="cpp"> +#include <vtkVersionMacros.h> </syntaxhighlight>
Pipeline changes
Example 1
<syntaxhighlight lang="cpp"> anotherFilter->SetInput(aFilter->GetOutput()); </syntaxhighlight>
should become
<syntaxhighlight lang="cpp"> anotherFilter->SetInputConnection(aFilter->GetOutputPort()); </syntaxhighlight>
Example 2
<syntaxhighlight lang="cpp"> vtkDataObject* output = aFilter->GetOutput(); anotherFilter->SetInput(output); </syntaxhighlight>
should become
<syntaxhighlight lang="cpp"> anotherFilter->SetInputConnection(aFilter->GetOutputPort()); </syntaxhighlight>
Example 3
<syntaxhighlight lang="cpp"> vtkPolyData *pd = vtkPolyData::New(); aFilter->SetInput(pd); </syntaxhighlight>
should become
<syntaxhighlight lang="cpp"> vtkPolyData *pd = vtkPolyData::New(); aFilter->SetInputData(pd); </syntaxhighlight>
Update on vtkData
Since vtkData Objects no longer have a source, the update method is not existing anymore. Instead, call the update method of the source directly.
CxxRevisionMacro
Deprecated Macro. Just remove it.
<syntaxhighlight lang="cpp"> -vtkCxxRevisionMacro(vtkPVAxesActor, "$Revision$"); </syntaxhighlight>
vtkTypeRevisionMacro
Renamed macro
<syntaxhighlight lang="cpp"> - vtkTypeRevisionMacro(vtkPVAxesActor,vtkProp3D); + vtkTypeMacro(vtkPVAxesActor,vtkProp3D); </syntaxhighlight>
allocateScalars
Example 1
Replace
<syntaxhighlight lang="cpp"> int vtkMyAlg::RequestInformation(vtkInformation*, vtkInformationVector**,
vtkInformationVector* outInfoVec)
{
vtkImageData* output = this->GetOutput(); output->GetScalarType(); output->GetNumberOfScalarComponents();
</syntaxhighlight>
with
<syntaxhighlight lang="cpp"> int vtkMyAlg::RequestInformation(vtkInformation*, vtkInformationVector**,
vtkInformationVector* outInfoVec)
{
vtkInformation* outInfo = outInfoVec->GetInformationObject(0); vtkImageData::GetScalarType(outInfo); vtkImageData::GetNumberOfScalarComponents(outInfo);
</syntaxhighlight>
Example 2
<syntaxhighlight lang="cpp"> int vtkMyAlg::RequestData(vtkInformation*, vtkInformationVector**,
vtkInformationVector* outInfoVec)
{ vtkImageData* output = vtkImageData::GetData(outInfoVec); // Allocate output scalars here output->GetScalarType(); output->GetNumberOfScalarComponents(); </syntaxhighlight>
This code does not need to be changed.