I&#39;ve just noticed that none of my writer plugins are working from the GUI.  They appear but when trying to write I get the following output:<div><br></div><div><div>Failed to create writer for:  &quot;/path/to/file.mytype&quot; </div>
<div>ERROR: In /ParaView/ParaViewCore/ServerManager/vtkSMWriterFactory.cxx, line 374</div><div>vtkSMWriterFactory (0x8b3d8a0): No matching writer found for extension: mytype</div><div><br></div><div>Is this intentional and do we need to put in hints for each writer now?  I thought the type just went in the pqXML file.</div>
<div><br></div><div>Thanks,</div><div>Paul</div><br><div class="gmail_quote">On 10 May 2012 20:40, Yumin Yuan <span dir="ltr">&lt;<a href="mailto:yumin.yuan@kitware.com" target="_blank">yumin.yuan@kitware.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Is this your own csv writer? if yes, did you have hints for the writer<br>
in your xml config file<br>
<br>
&lt;/WriterProxy&gt;<br>
    ......<br>
<br>
      &lt;Hints&gt;<br>
        &lt;WriterFactory extensions=&quot;csv&quot;<br>
           file_description=&quot;my csv writer&quot;/&gt;<br>
      &lt;/Hints&gt;<br>
<br>
&lt;/WriterProxy&gt;<br>
<br>
This is something I found out that I have to do for my writer plugin with 3.14.<br>
<span class="HOEnZb"><font color="#888888">Yumin<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
On Thu, May 10, 2012 at 2:14 PM, Utkarsh Ayachit<br>
&lt;<a href="mailto:utkarsh.ayachit@kitware.com">utkarsh.ayachit@kitware.com</a>&gt; wrote:<br>
&gt; Your script looks reasonable to me. I&#39;ll check it out.<br>
&gt;<br>
&gt; Utkarsh<br>
&gt;<br>
&gt; On Sun, May 6, 2012 at 2:44 PM, Luis Martinez &lt;<a href="mailto:lamtmartos@hotmail.com">lamtmartos@hotmail.com</a>&gt; wrote:<br>
&gt;&gt; Hi all,<br>
&gt;&gt;<br>
&gt;&gt; I have a pvbatch script that worked in version 3.12. It uses plot over line<br>
&gt;&gt; and writes out CSV data.  Now I get the following error in version 3.14:<br>
&gt;&gt;<br>
&gt;&gt; Is this a bug or am I supposed to call the writer differently in 3.14?<br>
&gt;&gt;<br>
&gt;&gt; Thanks!<br>
&gt;&gt;<br>
&gt;&gt; Tony<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; ERROR: In<br>
&gt;&gt; /build/buildd/paraview-3.14.1/ParaViewCore/ServerManager/vtkSMWriterFactory.cxx,<br>
&gt;&gt; line 374<br>
&gt;&gt; vtkSMWriterFactory (0x17ee360): No matching writer found for extension: csv<br>
&gt;&gt;<br>
&gt;&gt; Traceback (most recent call last):<br>
&gt;&gt;   File &quot;wakeProfilesAllTurbines.py&quot;, line 65, in &lt;module&gt;<br>
&gt;&gt;     writer.FieldAssociation = &quot;Points&quot;<br>
&gt;&gt; AttributeError: &#39;NoneType&#39; object has no attribute &#39;FieldAssociation&#39;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; Here is the script Im using:<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; try: paraview.simple<br>
&gt;&gt; except: from paraview.simple import *<br>
&gt;&gt; paraview.simple._DisableFirstRenderCameraReset()<br>
&gt;&gt; import os<br>
&gt;&gt; import math<br>
&gt;&gt; import matplotlib as mpl<br>
&gt;&gt; mpl.use(&#39;Agg&#39;)<br>
&gt;&gt; import matplotlib.pyplot as plt<br>
&gt;&gt; import csv<br>
&gt;&gt; from scipy.integrate import trapz<br>
&gt;&gt; # Current location<br>
&gt;&gt; directory=os.getcwd()<br>
&gt;&gt; if not os.path.exists(&#39;./wakeProfiles/plots/&#39;):<br>
&gt;&gt;     os.makedirs(&#39;./wakeProfiles/plots/&#39;)<br>
&gt;&gt; # Rotor Diameter<br>
&gt;&gt; D=93<br>
&gt;&gt; width=D*1.5<br>
&gt;&gt; profiles=[0.125,0.25,0.5,0.75,1,2,3,4]<br>
&gt;&gt; layout=open(&#39;./layout.dat&#39;)<br>
&gt;&gt; Umean_slice_0_vtk = LegacyVTKReader(<br>
&gt;&gt; FileNames=[directory+&#39;/../ADM/sliceDataADM/12746.8908019/Umean_slice_0.vtk&#39;]<br>
&gt;&gt; )<br>
&gt;&gt; Umean_slice_1_vtk = LegacyVTKReader(<br>
&gt;&gt; FileNames=[directory+&#39;/../ALM/sliceDataALM/12771/Umean_slice_0.vtk&#39;] )<br>
&gt;&gt; SetActiveSource(Umean_slice_0_vtk)<br>
&gt;&gt; CellDatatoPointData1 = CellDatatoPointData()<br>
&gt;&gt; SetActiveSource(CellDatatoPointData1)<br>
&gt;&gt; Calculator1 = Calculator()<br>
&gt;&gt; Calculator1.AttributeMode = &#39;point_data&#39;<br>
&gt;&gt; Calculator1.Function = &#39;Umean_X*cos(0.84444265) + Umean_Y*sin(0.84444265)&#39;<br>
&gt;&gt; Calculator1.ResultArrayName = &#39;U_row&#39;<br>
&gt;&gt; SetActiveSource(Umean_slice_1_vtk)<br>
&gt;&gt; CellDatatoPointData2 = CellDatatoPointData()<br>
&gt;&gt; SetActiveSource(CellDatatoPointData2)<br>
&gt;&gt; Calculator2 = Calculator()<br>
&gt;&gt; Calculator2.AttributeMode = &#39;point_data&#39;<br>
&gt;&gt; Calculator2.Function = &#39;Umean_X*cos(0.84444265) + Umean_Y*sin(0.84444265)&#39;<br>
&gt;&gt; Calculator2.ResultArrayName = &#39;U_row&#39;<br>
&gt;&gt; for i, turbine in enumerate(layout):<br>
&gt;&gt;     for profile in profiles:<br>
&gt;&gt;         SetActiveSource(Calculator1)<br>
&gt;&gt;         PlotOverLine1 = PlotOverLine( Source=&quot;High Resolution Line Source&quot; )<br>
&gt;&gt;         PlotOverLine1.Source.Resolution = 100<br>
&gt;&gt;         alpha0=0.84444265-math.atan((width/2)/(profile*D))<br>
&gt;&gt;         alpha1=0.84444265+math.atan((width/2)/(profile*D))<br>
&gt;&gt;         L=math.sqrt((D*profile)**2+(width/2)**2)<br>
&gt;&gt;         x0=float(turbine.split()[0])+L*math.cos(alpha0)<br>
&gt;&gt;         y0=float(turbine.split()[1])+L*math.sin(alpha0)<br>
&gt;&gt;         x1=float(turbine.split()[0])+L*math.cos(alpha1)<br>
&gt;&gt;         y1=float(turbine.split()[1])+L*math.sin(alpha1)<br>
&gt;&gt;         PlotOverLine1.Source.Point1 = [x0, y0, 65.0]<br>
&gt;&gt;         PlotOverLine1.Source.Point2 = [x1, y1, 65.0]<br>
&gt;&gt;         if not os.path.exists(&#39;./wakeProfiles/&#39;+str(profile)):<br>
&gt;&gt;             os.makedirs(&#39;./wakeProfiles/&#39;+str(profile))<br>
&gt;&gt;         if not os.path.exists(&#39;./wakeProfiles/plots/&#39;+str(profile)):<br>
&gt;&gt;             os.makedirs(&#39;./wakeProfiles/plots/&#39;+str(profile))<br>
&gt;&gt;<br>
&gt;&gt; nameADM=directory+&#39;/wakeProfiles/&#39;+str(profile)+&#39;/ADM&#39;+&#39;turbine&#39;+str(i+1)+&#39;.csv&#39;<br>
&gt;&gt;         writer = CreateWriter(nameADM, PlotOverLine1)<br>
&gt;&gt;         writer.FieldAssociation = &quot;Points&quot;<br>
&gt;&gt;         writer.UpdatePipeline()<br>
&gt;&gt;         del writer<br>
&gt;&gt;         SetActiveSource(Calculator2)<br>
&gt;&gt;         PlotOverLine2 = PlotOverLine( Source=&quot;High Resolution Line Source&quot; )<br>
&gt;&gt;         PlotOverLine2.Source.Resolution = 100<br>
&gt;&gt;         PlotOverLine2.Source.Point1 = [x0, y0, 65.0]<br>
&gt;&gt;         PlotOverLine2.Source.Point2 = [x1, y1, 65.0]<br>
&gt;&gt;<br>
&gt;&gt; nameALM=directory+&#39;/wakeProfiles/&#39;+str(profile)+&#39;/ALM&#39;+&#39;turbine&#39;+str(i+1)+&#39;.csv&#39;<br>
&gt;&gt;         writer = CreateWriter(nameALM, PlotOverLine2)<br>
&gt;&gt;         writer.FieldAssociation = &quot;Points&quot;<br>
&gt;&gt;         writer.UpdatePipeline()<br>
&gt;&gt;         del writer<br>
&gt;&gt;         csvreader1 = csv.reader(open(nameADM,&#39;rb&#39;))<br>
&gt;&gt;         csvreader2 = csv.reader(open(nameALM,&#39;rb&#39;))<br>
&gt;&gt;         x,y,x1,y1=[],[],[],[]<br>
&gt;&gt;         for j, line in enumerate(csvreader1):<br>
&gt;&gt;             if j&gt;0:<br>
&gt;&gt;                 x.append((float(line[5])-width/2)/D)<br>
&gt;&gt;                 y.append(float(line[0]))<br>
&gt;&gt;         for j, line in enumerate(csvreader2):<br>
&gt;&gt;             if j&gt;0:<br>
&gt;&gt;                 x1.append((float(line[5])-width/2)/D)<br>
&gt;&gt;                 y1.append(float(line[0]))<br>
&gt;&gt;         plt.plot(x,y,&#39;-&#39;,label=&#39;ADM&#39;,color=&#39;black&#39;)<br>
&gt;&gt;         plt.plot(x1,y1,&#39;--&#39;,label=&#39;ALM&#39;,color=&#39;black&#39;)<br>
&gt;&gt;         plt.xlabel(&#39;Distance&#39;)<br>
&gt;&gt;         plt.ylabel(r&#39;$U$ (m/s)&#39;)<br>
&gt;&gt;         plt.legend(loc=&#39;best&#39;)<br>
&gt;&gt;         plt.ylim([2,10])<br>
&gt;&gt;<br>
&gt;&gt; plt.savefig(&#39;./wakeProfiles/plots/&#39;+str(profile)+&#39;/turbine&#39;+str(i+1)+&#39;.eps&#39;)<br>
&gt;&gt;<br>
&gt;&gt; plt.savefig(&#39;./wakeProfiles/plots/&#39;+str(profile)+&#39;/turbine&#39;+str(i+1)+&#39;.png&#39;)<br>
&gt;&gt;         plt.clf()<br>
&gt;&gt;         del x,y,x1,y1,csvreader1,csvreader2<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; _______________________________________________<br>
&gt;&gt; Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
&gt;&gt;<br>
&gt;&gt; Visit other Kitware open-source projects at<br>
&gt;&gt; <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
&gt;&gt;<br>
&gt;&gt; Please keep messages on-topic and check the ParaView Wiki at:<br>
&gt;&gt; <a href="http://paraview.org/Wiki/ParaView" target="_blank">http://paraview.org/Wiki/ParaView</a><br>
&gt;&gt;<br>
&gt;&gt; Follow this link to subscribe/unsubscribe:<br>
&gt;&gt; <a href="http://www.paraview.org/mailman/listinfo/paraview" target="_blank">http://www.paraview.org/mailman/listinfo/paraview</a><br>
&gt;&gt;<br>
&gt; _______________________________________________<br>
&gt; Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
&gt;<br>
&gt; Visit other Kitware open-source projects at <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
&gt;<br>
&gt; Please keep messages on-topic and check the ParaView Wiki at: <a href="http://paraview.org/Wiki/ParaView" target="_blank">http://paraview.org/Wiki/ParaView</a><br>
&gt;<br>
&gt; Follow this link to subscribe/unsubscribe:<br>
&gt; <a href="http://www.paraview.org/mailman/listinfo/paraview" target="_blank">http://www.paraview.org/mailman/listinfo/paraview</a><br>
_______________________________________________<br>
Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Please keep messages on-topic and check the ParaView Wiki at: <a href="http://paraview.org/Wiki/ParaView" target="_blank">http://paraview.org/Wiki/ParaView</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://www.paraview.org/mailman/listinfo/paraview" target="_blank">http://www.paraview.org/mailman/listinfo/paraview</a><br>
</div></div></blockquote></div><br></div>