<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>Okay I got it working, it's me not knowing how to work with Cmake .... I read the manual and some examples from VTK 5.10.1, made some cleanup, and was able to build the project. I am now working on the python wrappings.</div><div><br></div><div>I'll let you know in a few days if it works, I need more time to continue on this project.</div><div><br></div><div>Michka Popoff</div><br><div><div>On 23 juin 2013, at 23:47, Michka Popoff <<a href="mailto:michkapopoff@gmail.com">michkapopoff@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><meta http-equiv="Content-Type" content="text/html charset=windows-1252"><base href="x-msg://782/"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Thank you for the code. I looked at the pictures, it seems to do what I want.<div><br></div><div>I am trying to install it but my knowledge is quite limited. As I understand I can build it without recompiling the whole VTK ? Hope I can get python bindings for it.</div><div><br></div><div>I launched cmake on the folder, I got the two following errors :<div><br></div><div>1)<br><div><br></div><div><div> CMake Error at CMakeLists.txt:8 (INCLUDE):</div><div> include could not find load file:</div><div> CMakeMacros_CSCS.cmake</div><div><br></div><div>I was not able to find this file. I looked on the internet, and downloaded some old Paraview and VTK's from 2006/2007, but was not able to find the file.</div><div>So I removed the call to this file.</div><div><br></div><div>2)</div><div><br></div><div> CMake Error at CMakeLists.txt:93 (VTK_MAKE_INSTANTIATOR3):</div><div> Unknown CMake command "VTK_MAKE_INSTANTIATOR3".</div><div><br></div><div>Apparently this is due because VTK_MAKE_INSTANTIATOR3 is no more needed, so I also removed the line calling it.</div><div><br></div><div>Now the cmake is able to finish it's configuration.</div><div><br></div><div><br></div><div>Then I did a "make" and got the following error :</div><div><br></div><div><div>In file included from /Users/michkapopoff/Desktop/vtkCSCSPointSprites/vtkPointSpriteMapper.h:51:</div><div>/Users/michkapopoff/Desktop/build/vtkCSCSPointSpritesConfigure.h:7:5: error: expected value in expression</div><div>#if </div><div> ^</div><div>In file included from /Users/michkapopoff/Desktop/vtkCSCSPointSprites/vtkPointSpriteMapper.cpp:33:</div><div>/Users/michkapopoff/Desktop/vtkCSCSPointSprites/vtkPointSpriteMapper.h:52:10: fatal error: 'vtkPainterPolyDataMapper.h' file not found</div><div>#include "vtkPainterPolyDataMapper.h"</div><div> ^</div><div>2 errors generated.</div><div>make[2]: *** [CMakeFiles/vtkCSCSPointSprites.dir/vtkPointSpriteMapper.o] Error 1</div><div>make[1]: *** [CMakeFiles/vtkCSCSPointSprites.dir/all] Error 2</div><div>make: *** [all] Error 2</div></div><div><br></div><div>So it doesn't' find my include did, so I need to add the path to the INCLUDE_DIRECTORIES.</div><div>I added the path directly with SET(). Perhaps not the cleanest solution but it worked :</div><div><br></div><div><div>SET( CSCS_POINTSPRITES_INCLUDE_DIRS</div><div> ${PROJECT_SOURCE_DIR}</div><div> ${PROJECT_BINARY_DIR}</div><div> /usr/local/Cellar/vtk/5.10.1/include/vtk-5.10</div><div>)</div></div><div><br></div><div>So, next I got this error :</div><div><br></div><div><div>/Users/michkapopoff/Desktop/build/vtkCSCSPointSpritesConfigure.h:7:5: error: expected value in expression</div><div>#if </div><div> ^</div><div>In file included from /Users/michkapopoff/Desktop/vtkCSCSPointSprites/vtkPointSpriteMapper.cpp:33:</div><div>In file included from /Users/michkapopoff/Desktop/vtkCSCSPointSprites/vtkPointSpriteMapper.h:52:</div><div>In file included from /usr/local/Cellar/vtk/5.10.1/include/vtk-5.10/vtkPainterPolyDataMapper.h:25:</div><div>In file included from /usr/local/Cellar/vtk/5.10.1/include/vtk-5.10/vtkPolyDataMapper.h:25:</div><div>In file included from /usr/local/Cellar/vtk/5.10.1/include/vtk-5.10/vtkMapper.h:55:</div><div>In file included from /usr/local/Cellar/vtk/5.10.1/include/vtk-5.10/vtkAbstractMapper3D.h:32:</div><div>In file included from /usr/local/Cellar/vtk/5.10.1/include/vtk-5.10/vtkAbstractMapper.h:28:</div><div>In file included from /usr/local/Cellar/vtk/5.10.1/include/vtk-5.10/vtkAlgorithm.h:32:</div><div>In file included from /usr/local/Cellar/vtk/5.10.1/include/vtk-5.10/vtkObject.h:41:</div><div>In file included from /usr/local/Cellar/vtk/5.10.1/include/vtk-5.10/vtkObjectBase.h:43:</div><div>In file included from /usr/local/Cellar/vtk/5.10.1/include/vtk-5.10/vtkIndent.h:24:</div><div>In file included from /usr/local/Cellar/vtk/5.10.1/include/vtk-5.10/vtkSystemIncludes.h:40:</div><div>In file included from /usr/local/Cellar/vtk/5.10.1/include/vtk-5.10/vtkIOStream.h:108:</div><div>In file included from /usr/include/c++/4.2.1/backward/strstream:51:</div><div>/usr/include/c++/4.2.1/backward/backward_warning.h:32:2: warning: This file includes at least one deprecated or antiquated header. Please consider</div><div> using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the <X> header for the <X.h> header for</div><div> C++ includes, or <iostream> instead of the deprecated header <iostream.h>. To disable this warning use -Wno-deprecated. [-W#warnings]</div><div>#warning This file includes at least one deprecated or antiquated header. \</div><div> ^</div><div>1 warning and 1 error generated.</div><div>make[2]: *** [CMakeFiles/vtkCSCSPointSprites.dir/vtkPointSpriteMapper.o] Error 1</div><div>make[1]: *** [CMakeFiles/vtkCSCSPointSprites.dir/all] Error 2</div><div>make: *** [all] Error 2</div></div><div><br></div><div>Perhaps you have an idea for this one ?</div><div><br></div><div>Thanks in advance</div><div><br></div><div>Michka Popoff</div><div><br></div><div><br><div><div>On 21 juin 2013, at 14:39, "Biddiscombe, John A." <<a href="mailto:biddisco@cscs.ch">biddisco@cscs.ch</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div lang="EN-GB" link="blue" vlink="purple" style="font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div class="WordSection1" style="page: WordSection1; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">I’m attaching a very set of code from the original cvs repo that had the point sprite mapper. You should be able to compiled this against vtk, but not that the dates on the files go back to 2006, so you may need to update stuff<o:p></o:p></span></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); "> </span></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">JB<o:p></o:p></span></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); "> </span></div><div style="border-style: none none none solid; border-left-width: 1.5pt; border-left-color: blue; padding: 0cm 0cm 0cm 4pt; "><div><div style="border-style: solid none none; border-top-width: 1pt; border-top-color: rgb(181, 196, 223); padding: 3pt 0cm 0cm; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><b><span lang="EN-US" style="font-size: 10pt; font-family: Tahoma, sans-serif; ">From:</span></b><span lang="EN-US" style="font-size: 10pt; font-family: Tahoma, sans-serif; "><span class="Apple-converted-space"> </span>Michka Popoff [mailto:michkapopoff@<a href="http://gmail.com/" style="color: purple; text-decoration: underline; ">gmail.com</a>]<span class="Apple-converted-space"> </span><br><b>Sent:</b><span class="Apple-converted-space"> </span>20 June 2013 15:36<br><b>To:</b><span class="Apple-converted-space"> </span>vtkusers<br><b>Cc:</b><span class="Apple-converted-space"> </span>Biddiscombe, John A.; Markus Neuner<br><b>Subject:</b><span class="Apple-converted-space"> </span>Re: [vtkusers] Draw points with gaussian fade out<o:p></o:p></span></div></div></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Thanks for your answers,<o:p></o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">I try to fight my way through vtkFastSplatter, but there is only one example and I do not understand everything. (The documentation is a little sparse)<o:p></o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">The example in the docs use a <span style="font-size: 9pt; font-family: 'Courier New'; background-color: white; ">vtkImageViewer2,</span>and I want to have a vtkactor to put it in my 3d scenery.<o:p></o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">So I mapped the splatter on a vtkplane through a vtktexture (to be able to have a vtkactor). Hope this will not lead to performance problems once I try to display millions of vtkactors ...<o:p></o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">It's also not really working, the colors are messed up, and I don't understand the vtkpoints usage for the vtkFastSplatter.<o:p></o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">5 points are used in the example, which display 5 splats, but I was not able to have only one splat centered in the middle (even using only 1 point, at 0,0,0).<o:p></o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></div><div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">For vtkPointSpriteMapper, is not in vtk, so I have to find the way to take it from paraview, add it to vtk, and make the python bindings for it. Any idea how to achieve this ?<o:p></o:p></div></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Regards<o:p></o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Michka<o:p></o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Le 19 juin 2013 à 23:29, Biddiscombe, John A. a écrit :<o:p></o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></div><div><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Try googling vtkPointSpriteMapper<br>A modified version using painters is in paraview, but the original was designed for straight vtk use.<br><br>JB <br>(apologies if you get multiple copies of this, email misfired)<o:p></o:p></div></blockquote></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div><div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Le 19 juin 2013 à 19:57, Markus Neuner a écrit :<o:p></o:p></div></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><br><br><o:p></o:p></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Hi,<br><br>oh vtkGaussianSplatter is the wrong class. It generates a volume, but you could visualize it with volume rendering.<br><br>The first version is basically what FastSplatter does (<a href="http://www.vtk.org/Wiki/VTK/Examples/Cxx/Visualization/FastSplatter" style="color: purple; text-decoration: underline; ">http://www.vtk.org/Wiki/VTK/Examples/Cxx/Visualization/FastSplatter</a>).<br><br>For the second version i can't find a class in vtk that can actually does this (compute the Gaussian directly in the fragment shader).<br><br>You can derive from vtkGLSLShaderProgram and implement the procedures described in this example<a href="http://prideout.net/blog/p60/Splat.zip" style="color: purple; text-decoration: underline; ">http://prideout.net/blog/p60/Splat.zip</a><span class="Apple-converted-space"> </span>written by Philip Rideout.<br><br>Regards,<br>Markus<br><br><br>On 06/16/2013 06:31 PM, Michka Popoff wrote:<br><br><o:p></o:p></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Hi<o:p></o:p></div><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">thank you for your help.<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">1) For the first solution, what would be the class to use to create the texture from the gaussian equation ? Once I have the textures, I could map them to planes. I did wrote some OpenGL code a while ago where I did this with a shader, billboarding the textures so that the gaussians would always face the camera. This was very fast.<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">2) I saw vtkGaussianSplatter, but I don't know if I can set a different radius and exponent factor for each point ? In the class these values can only be set globally. I wrote some code (in python), inspired from the FinancialField example from vtkGaussianSplatter, but the splats are passed through vtkContourFilter to make a surface. I think this is messing with my gaussians, and I don't know how to do this without vtkContourFilter. I found no other example for vtkGaussianSplatter. Here is the code I wrote, displaying 10x10 points :<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">#!/usr/bin/env python<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">import vtk<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">from numpy import random<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "># Create points<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">points = vtk.vtkPoints()<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">for i in range(10):<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "> for j in range(10):<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "> points.InsertNextPoint(i, j, 0.0)<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">polydata = vtk.vtkPolyData()<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">polydata.SetPoints(points)<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">popSplatter = vtk.vtkGaussianSplatter()<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">popSplatter.SetInput(polydata)<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">popSplatter.SetSampleDimensions(50, 50, 50)<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">popSplatter.SetRadius(0.05)<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">popSplatter.ScalarWarpingOff()<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">popSplatter.Update()<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">popSurface = vtk.vtkContourFilter()<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">popSurface.SetInputConnection(popSplatter.GetOutputPort())<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">popSurface.SetValue(0, 0.01)<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">popMapper = vtk.vtkPolyDataMapper()<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">popMapper.SetInputConnection(popSurface.GetOutputPort())<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">popMapper.ImmediateModeRenderingOn()<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">popActor = vtk.vtkActor()<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">popActor.SetMapper(popMapper)<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "># Renderer<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">renderer = vtk.vtkRenderer()<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">renderer.AddActor(popActor)<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">renderer.ResetCamera()<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "># Render Window<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">renderWindow = vtk.vtkRenderWindow()<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">renderWindow.AddRenderer(renderer)<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "># Interactor<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">renderWindowInteractor = vtk.vtkRenderWindowInteractor()<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">renderWindowInteractor.SetRenderWindow(renderWindow)<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "># Begin Interaction<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">renderWindow.Render()<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">renderWindowInteractor.Start()<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">On 16 juin 2013, at 11:14, Markus Neuner <<a href="mailto:neuner.markus@gmx.net" style="color: purple; text-decoration: underline; ">neuner.markus@gmx.net</a>> wrote:<o:p></o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Hi Michka,<o:p></o:p></div></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">You could try to generate volumetric data using Gaussian splats.<o:p></o:p></div></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">There are two solutions to this problem:<o:p></o:p></div></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">- Create the 3D Gaussian function on the CPU during application initialization, and create a 3D texture from that.<o:p></o:p></div></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">- But better and much faster is to compute the Gaussian directly in the fragment shader.<o:p></o:p></div></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Have a look at vtkGaussianSplatter it may do what you want.<o:p></o:p></div></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Regards,<o:p></o:p></div></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Markus<o:p></o:p></div></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">On 06/15/2013 05:18 PM, Michka Popoff wrote:<o:p></o:p></div></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Hi<o:p></o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">I want to draw a lot of points in VTK (~1.000.000), with each point's color fading out to a transparent value, following a gaussian function.<o:p></o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">So the center will be bright (maximum intensity), and the border will have no color.<o:p></o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">I am able to draw a lot of points using vtkPoints, I can also change their color, but I am looking for a way to apply the fade out to every point. Of course the parameters of the gaussian function will be different for each point (intensity value in the middle, diameter).<o:p></o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">The result for 1 point would look like this :<a href="http://www.princeton.edu/~rvdb/images/deconv/Gauss2Psf.jpg" style="color: purple; text-decoration: underline; ">http://www.princeton.edu/~rvdb/images/deconv/Gauss2Psf.jpg</a><o:p></o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Are there some filters/mappers I could use directly ? Or can I perhaps try to "hijack" vtkgaussiansplatter to achieve this ?<o:p></o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Thanks in advance<o:p></o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Michka Popoff<o:p></o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">_______________________________________________<o:p></o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Powered by<span class="Apple-converted-space"> </span><a href="http://www.kitware.com/" style="color: purple; text-decoration: underline; ">www.kitware.com</a><o:p></o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Visit other Kitware open-source projects at<a href="http://www.kitware.com/opensource/opensource.html" style="color: purple; text-decoration: underline; ">http://www.kitware.com/opensource/opensource.html</a><o:p></o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Please keep messages on-topic and check the VTK FAQ at:<a href="http://www.vtk.org/Wiki/VTK_FAQ" style="color: purple; text-decoration: underline; ">http://www.vtk.org/Wiki/VTK_FAQ</a><o:p></o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Follow this link to subscribe/unsubscribe:<o:p></o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><a href="http://www.vtk.org/mailman/listinfo/vtkusers" style="color: purple; text-decoration: underline; ">http://www.vtk.org/mailman/listinfo/vtkusers</a><o:p></o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote></blockquote></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote><blockquote style="margin-top: 5pt; margin-bottom: 5pt; "><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></blockquote></div></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></div></div><span><vtkCSCSPointSprites.zip></span></div></blockquote></div><br></div></div></div></div></div></blockquote></div><br></body></html>