VTK:Improvement: Difference between revisions

From KitwarePublic
Jump to navigationJump to search
(New page: == Documentation Improvement == <big><b>(If you agree with the following, [http://vtk.uservoice.com/pages/31508-general/suggestions/361238-better-documentation?ref=title vote] for the imp...)
 
Line 50: Line 50:


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?

Revision as of 22:03, 19 November 2009

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.

Here are some "easy" documentation fixes:

vtkMath

  • Pi, DoubleTwoPi, DoublePi all just say "useful constants. Maybe they could say something like "2 * 3.14159..." or 2 *\pi or something like that?
  • DegreesFromRadians says "Useful constants". This is incorrect. It should explain the conversion along with specify if there are/aren't bound on the input.
  • DoubleDegreesToRadians says "useful constants". This is incorrect.
  • DoubleRadiansToDegrees says "useful constants". This is incorrect.
  • Round(double) says "useful constants". This is incorrect.
  • Floor() has no documentation at all.
  • Outer(double, double, double) says "useful constants". This is incorrect.
  • Norm(double, int) says "useful constants". This is incorrect.
  • 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.

The list goes on....

vtkKdTree

  • TimingOff() says "turn ON timing"
  • 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

  • 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."

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.

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?