[vtk-developers] Class design for spline visualizations

David Thompson david.thompson at kitware.com
Thu Jun 4 10:38:15 EDT 2015


Hi Lin,

> I have written a helper function to generate control points for arbitrary ellipse and modified the PatchInterpolation.py test to image test which contains line, circle and ellipse.

Excellent! I will do a detailed review of the changes this evening. At a quick glance, some things that would be nice are:

1. Being able to specify ellipses in 3D with vectors (see Common/DataModel/vtkVector.h) representing the center, major axis, and minor axis (both direction and length). The minor axis would have to be orthogonalized using Gram-Shmidt orthonormalization ( https://en.wikipedia.org/wiki/Gram%E2%80%93Schmidt_process ). 

2. Being able to return multiple patches so that an entire ellipse could be generated at once. Then, besides the 3 vectors (center, major, minor), two angles could be accepted indicating where the patch could start and stop. This would mean outputting multiple patch points. It will also require a subdivision algorithm to split a patch at a given parameter value (which we will use in several other places later this summer).

In terms of further development, in order to render 2-D splines properly, we will need a method to evaluate surface normals for patches. More generally, it would be nice to have an additional evaluation method that computes the derivative as well as the coordinates of the Bézier patch at the input points. (Note that the derivative is a vector with the same dimension as the parameter-space of the patch.)

> A question about the push the data. I followed the instruction in https://gitlab.kitware.com/vtk/vtk/blob/master/Documentation/dev/git/data.md, but I didn't see the message when doing the commit step.

That's OK, we'll figure it out when it comes time to submit the patch for review and inclusion into VTK. Hopefully we can do that next week.

	Thanks,
	David


More information about the vtk-developers mailing list