VTK:Improvement: Difference between revisions

From KitwarePublic
Jump to navigationJump to search
 
(6 intermediate revisions by the same user not shown)
Line 9: Line 9:
* Clearly explain all function parameters
* Clearly explain all function parameters


===vtkMath===
 
* Perpendiculars(double, double, double, double) says "useful constants". This is incorrect. x,y,z, and theta must be explained.
* Outer2D says "useful constants". This is incorrect.
* Determinant2x2(double, double) says "Useful constants". This is incorrect.
* LUFactor3x3(double, int) says "useful constants". This is incorrect.
* LUSolve3x3(double, int,double) says "useful constants". This is incorrect.
* LinearSolve3x3(double,double,double) says "useful constants". This is incorrect.


===vtkKdTree===
===vtkKdTree===
* TimingOff() says "turn ON timing"
* SetFudgeFactor should not be a function because the fudge factor is always computed in the BuildLocator or BuildLocatorFromPoints function
* SetTiming(int) says "turn on timing". It should say "turn on timing and set the interval (of what?) to the input X (the input variable is not named - also a problem).
* GetTiming says "turn on timing". This is incorrect.
* GetMinCells() says "turn on timing". This is incorrect.
* SetNumberOfRegionsOrLess has no documentation.
* SetNumberOfRegionsOrMore has no documentation.
* SetFudgeFactor has no documentation.
* RemoveDataSet says "Turn on timing". This is incorrect.
* PrintVerboseTree says "Turn on timing"
* All CreateCellLists functions have no documentation.
* GetIncludeRegionBoundaryCells/On/Off say "turn on timing". This is incorrect.
* GetCellLists functions say "turn on timing". This is incorrect.
* GetRegionContainingCell says "turn on timing". This is incorrect.
* BuildLocatorFromPoints(vtkPoints) says "turn on timing". This is incorrect.
The list goes on...


===vtkLandmarkTransform===
===vtkLandmarkTransform===
* SetTargetLandmarks/SetSourceLandmarks - both of these have the same description. One should talk about the target only and the other should talk about the source only.
* GetSource/TargetLandmarks - same description as the Set* methods. This is incorrect.
* SetModeToRigidBody has the same desciption as SetSourceLandmarks. This is incorrect.
* SetModeTo* has the same description as SetSourceLandmarks. This is incorrect.
* GetMTime - says "Get the MTime". What is MTime? Modification time? Maybe "Get the time at which the object was last modified."
* GetMTime - says "Get the MTime". What is MTime? Modification time? Maybe "Get the time at which the object was last modified."


Line 45: Line 21:


The SetTargetReduction function specifies how many triangles should reduced by specifying the percentage ([0,1]) of triangles to be removed. For example, if the mesh contains 100 triangles and SetTargetReduction(.90) is called, after the decimation there will be approximately 10 triangles - a 90% reduction.
The SetTargetReduction function specifies how many triangles should reduced by specifying the percentage ([0,1]) of triangles to be removed. For example, if the mesh contains 100 triangles and SetTargetReduction(.90) is called, after the decimation there will be approximately 10 triangles - a 90% reduction.
==Documentation To-do List==
These are things that we should add to the documentation to make it clear to new users what is going on.
* vtkCutter - Need to add an image of a mesh and what happens when a vtkCutter is used to cut the mesh.
* vtkProbeFilter - What is an example of what this can actually be used to do? Provide an image?

Latest revision as of 19:15, 7 February 2010

Documentation Improvement

(If you agree with the following, vote for the improvements!!)

In my experience, the single most important factor that influences a users attitude about a software package is its ease of use. VTK provides a phenomenal collection of tools for scientific data processing and visualization. However, if a user has difficulty accessing these tools, their experience with, and therefore opinion of, the software will be less than satisfactory. Documentation is the key element which controls this difficulty level. I propose some improvements to the documentation system here.

General

  • Add required libraries list to each class
  • Clearly indicate default values
  • Clearly explain all function parameters


vtkKdTree

  • SetFudgeFactor should not be a function because the fudge factor is always computed in the BuildLocator or BuildLocatorFromPoints function

vtkLandmarkTransform

  • GetMTime - says "Get the MTime". What is MTime? Modification time? Maybe "Get the time at which the object was last modified."

vtkDecimatePro

Add this:

The SetTargetReduction function specifies how many triangles should reduced by specifying the percentage ([0,1]) of triangles to be removed. For example, if the mesh contains 100 triangles and SetTargetReduction(.90) is called, after the decimation there will be approximately 10 triangles - a 90% reduction.