>>>>> "RK" == Robert Kern <rkern at ucsd.edu> writes:
[...]
RK> immaterial. Every time a user sits down with Mayavi or tvtk,
RK> they're going to have to think about which classes to avoid if
RK> they care about not infringing on the patents.
Well, just to clarify. MayaVi does not use a single patented class.
For contouring I only use the slower vtkContourFilter. So, generating
images with vanilla MayaVi will not land you in trouble. However, if
someone creates a VTK pipeline using the patented algorithms (the VTK
libs that ship so far with MayaVi include patented) and renders it on
MayaVi then they are in trouble. This also does not insulate users of
MayaVi who make custom modules/filters that use patented. Therefore
the average MayaVi user does not have a problem. Its only someone who
uses raw VTK who is in trouble.
Obviously, Enthon cannot rely on this because folks are free to import
VTK from Python and do whatever they want to. In these cases it is
possible to find out what the patented classes are by doing something
like this:
from vtk import patented
dir(patented)
They can choose not to use these classes. In fact, I could whip up a
simple Python script to ensure that the only way patented is imported
is via:
from vtk import patented
and not by 'import vtk'. Thus, no one can use the patented stuff from
Python unless they know precisely what they are doing. This would
require a patch to just one file (vtk_python/vtk/__init__.py).
Therefore, we have two choices.
1. We simply advertize the patented classes and pop up a window on
install saying: "The following classes are patented." or
something along those lines. Then if someone wants to use it
they run the risk.
2. We disable importing patented into the vtk module and make it
available only from vtk.patented. This way if someone
desperately wants the patented stuff, they don't have to rebuild,
plus we are safe.
Comments?
cheers,
prabhu