Subject: How to perfectly fit data in a screenshot Hi,
Just in case someone is interested I report here my solution. The 855 seems to be a limit for the vertical size. The limit is actually 855 x magnification. This is good because at least is constant. To perfectly fit an image with these characteristics: xc, yc, zc = Focus width, height = Actual dimensions in meters You can calculate these parameters ratio = height / width magnification = 2 (or whatever value you need) height_p = 855 * magnification width_p = int(height_p * 1.0 / ratio / magnification) Then you can use (apart from all the other settings) renderView1.ViewSize = [width_p , height_p] renderView1.InteractionMode = '2D' renderView1.CameraPosition = [xc, yc, 10000.0 + zc] renderView1.CameraFocalPoint = [xc, yc, zc] renderView1.CameraParallelScale = (height / 2.0) (Notice this is the orginal height in meters) And finally SaveScreenshot(output_file, magnification=magnification, quality=100, view=renderView1) I don't really understand the value 855, but it doesn't matter anymore. Cheers Ruggiero On 15 September 2015 at 07:59, Ruggiero Guida <ruggiero.gu...@gmail.com> wrote: > I have noticed that if I run the script in paraview python shell the size > settings are ignored and the UI settings are used instead - in my case > 648x639. If I run it from pvpython with paraview closed then the size will > be 1000x855 or whatever horizontal resolution i specify x 855. > > Thanks > Ruggiero > > On 15 Sep 2015, at 05:47, Dan Lipsa <dan.li...@kitware.com> wrote: > > I was wandering because I thought you used a different script than what I > sent. If you only changed the palette it should not make a difference. I am > on Linux. Maybe there is a problem with screenshot saving on MacOS. Maybe > someone else with a mac could try this. If not, I am in the process of > getting a mac laptop, I'll try to remember to try this out when I get my > new laptop. > > Dan > > > On Mon, Sep 14, 2015 at 5:43 PM, Ruggiero Guida <ruggiero.gu...@gmail.com> > wrote: > >> Not sure I said that I'm on Mac OS X. >> >> Re: palette. No reason, I prefer a white background and I was >> experimenting with the colour mappings from colorbrewer >> >> >> Sent from Outlook <http://aka.ms/Ox5hz3> >> >> >> >> >> On Mon, Sep 14, 2015 at 9:51 AM -0700, "Dan Lipsa" <dan.li...@kitware.com >> > wrote: >> >> Hmm, >>> I tried >>> ~/ParaView-4.3.1-Linux-64bit/bin/pvpython test.py >>> >>> and still created the right png - see attached. >>> I notice you have a different color palette. Why is that? >>> >>> >>> On Mon, Sep 14, 2015 at 8:11 AM, Ruggiero Guida < >>> ruggiero.gu...@gmail.com> wrote: >>> >>>> Thanks Dan. >>>> >>>> Run you script through pvpython. No modifications apart from the >>>> filenames. I still have an image with 1000x855 size (see attached). >>>> >>>> I will try to build paraview from source to see if this changes. >>>> >>>> Thanks >>>> >>>> <image.png> >>>> >>>> On 12 September 2015 at 02:04, Dan Lipsa <dan.li...@kitware.com> wrote: >>>> >>>>> Ruggiero, >>>>> Attached is the script I used on ParaView master. It saves a 1000x1000 >>>>> png. I had to uncomment renderView1.ViewSize and change the magnification >>>>> for SaveScreenshot to 1. >>>>> >>>>> Dan >>>>> >>>>> >>>>> >>>>> On Thu, Sep 10, 2015 at 9:38 PM, Ruggiero Guida < >>>>> ruggiero.gu...@gmail.com> wrote: >>>>> >>>>>> Attached. Thanks for checking. >>>>>> >>>>>> On 11 September 2015 at 09:34, Dan Lipsa <dan.li...@kitware.com> >>>>>> wrote: >>>>>> >>>>>>> If you send me your test.vtk I can try to generate the script on my >>>>>>> machine. >>>>>>> >>>>>>> Dan >>>>>>> >>>>>>> >>>>>>> On Thu, Sep 10, 2015 at 9:10 PM, Ruggiero Guida < >>>>>>> ruggiero.gu...@gmail.com> wrote: >>>>>>> >>>>>>>> I am using the 4.3.1 binary version downloaded from the website. I >>>>>>>> generated my script starting from the trace as you suggest. >>>>>>>> Uncommenting >>>>>>>> the ViewSize on your script works. The fact is that it does not work on >>>>>>>> mine and i really don't understand why. I guess it is related to the >>>>>>>> settings of the camera. >>>>>>>> >>>>>>>> Have you tried to run my script on your machine? I would expect to >>>>>>>> have a square image with the data fitted perfectly into it, but as >>>>>>>> soon as >>>>>>>> I increase the ViewSize above 855x855, only the horizontal size >>>>>>>> increases. >>>>>>>> As you can see from the VTK the source data is 24x24. >>>>>>>> >>>>>>>> Thanks >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> On 11 September 2015 at 08:51, Dan Lipsa <dan.li...@kitware.com> >>>>>>>> wrote: >>>>>>>> >>>>>>>>> What version of ParaView do you use? I run the script on a >>>>>>>>> ParaView source build from git master. >>>>>>>>> >>>>>>>>> >>>>>>>>> You should be able to do Tools / Start Trace, open your file and >>>>>>>>> then save it to the desired resolution. The script generated should >>>>>>>>> tell >>>>>>>>> you what settings you need. You might need to uncomment the setting >>>>>>>>> of the >>>>>>>>> ViewSize. This is what I had to do. >>>>>>>>> >>>>>>>>> On Thu, Sep 10, 2015 at 6:41 PM, Ruggiero Guida < >>>>>>>>> ruggiero.gu...@gmail.com> wrote: >>>>>>>>> >>>>>>>>>> Thanks Dan. >>>>>>>>>> >>>>>>>>>> The image saved is 648 x 639 (see attached). What I am not >>>>>>>>>> understanding is the relation between ViewSize, camera settings and >>>>>>>>>> actual >>>>>>>>>> image size in pixels. >>>>>>>>>> >>>>>>>>>> I would like to use paraview to render some textures that I will >>>>>>>>>> be using in my code and I need the image ti fit perfectly the >>>>>>>>>> content. >>>>>>>>>> >>>>>>>>>> On 10 September 2015 at 23:19, Dan Lipsa <dan.li...@kitware.com> >>>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>>> Ruggiero, >>>>>>>>>>> The following script saves a 100x100 sphere. >>>>>>>>>>> I created it using the trace option in ParaView. >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> On Thu, Sep 10, 2015 at 5:07 AM, Ruggiero Guida < >>>>>>>>>>> ruggiero.gu...@gmail.com> wrote: >>>>>>>>>>> >>>>>>>>>>>> I am trying to create a screenshot of a specific size from a >>>>>>>>>>>> [VTK file][1]. >>>>>>>>>>>> This is the code I am using >>>>>>>>>>>> >>>>>>>>>>>> from paraview.simple import * >>>>>>>>>>>> paraview.simple._DisableFirstRenderCameraReset() >>>>>>>>>>>> rad_map = LegacyVTKReader(FileNames=['test.vtk']) >>>>>>>>>>>> >>>>>>>>>>>> # get active view >>>>>>>>>>>> renderView1 = GetActiveViewOrCreate('RenderView') >>>>>>>>>>>> dpi = 70 >>>>>>>>>>>> heigth = 24.39846235421442 >>>>>>>>>>>> width = 24.398462354214413 >>>>>>>>>>>> width_p = int(width * dpi) >>>>>>>>>>>> heigth_p = int(heigth * dpi) >>>>>>>>>>>> renderView1.ViewSize = [width_p, heigth_p] >>>>>>>>>>>> >>>>>>>>>>>> # reset view to fit data >>>>>>>>>>>> #renderView1.ResetCamera() >>>>>>>>>>>> >>>>>>>>>>>> # current camera placement for renderView1 >>>>>>>>>>>> renderView1.CameraParallelProjection = 1 >>>>>>>>>>>> renderView1.CameraPosition = [5, 5, 1000] >>>>>>>>>>>> renderView1.CameraFocalPoint = [5, 5, 0.0] >>>>>>>>>>>> renderView1.CameraViewUp = [0.0, 1.0, 0.0] >>>>>>>>>>>> scale = (heigth) / 2.0 >>>>>>>>>>>> renderView1.CameraParallelScale = scale >>>>>>>>>>>> >>>>>>>>>>>> Render() >>>>>>>>>>>> SaveScreenshot("/Users/ruggiero/dev/test.png", >>>>>>>>>>>> magnification=1) >>>>>>>>>>>> >>>>>>>>>>>> The problem is that the `ViewSize` seems to be ignored and I >>>>>>>>>>>> keep having images of fixed size 1707 × 855. The height 855 seems >>>>>>>>>>>> to be a >>>>>>>>>>>> kind of limit; the only way to get what I want is to limit the >>>>>>>>>>>> `ViewSize` >>>>>>>>>>>> to 855x855. >>>>>>>>>>>> >>>>>>>>>>>> I have checked [this][2] question and [this][3] question, but >>>>>>>>>>>> with no success. >>>>>>>>>>>> >>>>>>>>>>>> Any idea? I am not very confident in the settings for the >>>>>>>>>>>> camera. Could this be the issue? >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> [1]: https://dl.dropboxusercontent.com/u/1342856/test.vtk >>>>>>>>>>>> [2]: >>>>>>>>>>>> http://stackoverflow.com/questions/31930448/in-python-script-for-paraview-can-i-specify-the-resolution-when-i-do-a-savescre >>>>>>>>>>>> [3]: >>>>>>>>>>>> http://stackoverflow.com/questions/27430588/paraview-python-command-to-save-picture-of-defined-size >>>>>>>>>>>> >>>>>>>>>>>> _______________________________________________ >>>>>>>>>>>> Powered by www.kitware.com >>>>>>>>>>>> >>>>>>>>>>>> Visit other Kitware open-source projects at >>>>>>>>>>>> http://www.kitware.com/opensource/opensource.html >>>>>>>>>>>> >>>>>>>>>>>> Please keep messages on-topic and check the ParaView Wiki at: >>>>>>>>>>>> http://paraview.org/Wiki/ParaView >>>>>>>>>>>> >>>>>>>>>>>> Search the list archives at: >>>>>>>>>>>> http://markmail.org/search/?q=ParaView >>>>>>>>>>>> >>>>>>>>>>>> Follow this link to subscribe/unsubscribe: >>>>>>>>>>>> http://public.kitware.com/mailman/listinfo/paraview >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>>> >>> >
_______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the ParaView Wiki at: http://paraview.org/Wiki/ParaView Search the list archives at: http://markmail.org/search/?q=ParaView Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/paraview