Skip to content

Releases: marcomusy/vedo

2020.4.1

13 Oct 21:09
Compare
Choose a tag to compare

New in vedo 2020.4.1

  • Fixed pip problem (hopefully solving issue #185 raised by @RizzerOnGitHub)
  • Typo in readme fixed (thanks to @danielhrisca)
  • Global variable settings.collectable_actors is now obsolete and void.
  • Various minor issues have been fixed too.

addons.py:

  • buildAxes() now admits a header title

  • addScalarBar3D() returns self, use self.scalarbar to access the scalarbar
    object (e.g for scaling, rotating and repositioning it)

  • makeLUT() renamed to buildLUT() with new examples, which includes
    indicators for NaN's and out of scale values:


base.py:

  • setTransform() -> applyTransform() accepts now a python or numpy matrix
    (thanks to @FedeClaudi input)
  • added removePointArray() and removeCellArray() methods
  • added divergence(), vorticity() methods
  • added removePointArray() and removeCellArray() methods (thanks to @Tai-Hsien input)

colors.py:

  • added ask() method to prompt user input from command line
  • added printc(dbg=1) mode to help debugging

io.py:

  • load() method can load and return normal npy or npz numpy data files

mesh.py:

  • clone(deep=True), deep can be False to generate a shallow copy of the obj.

picture.py:

  • polygonize(), create a polygonal Mesh from a Picture by filling regions
    above a specified threshold

plotter.py:

  • flyTo(), fly camera to the specified point.
  • export(), to export scene.npz

pointscloud.py

  • interpolateDataFrom(), Interpolate over source to port its data
    onto the current object using various kernels.

pyplot.py:

  • removed directedgraph.clean() because it's just wrong (might marginally affect @DeepaMahm)
  • added whisker() function to generate whisker-style plots


shapes.py:

  • added CSpline class, to generate a Cardinal Spline object.

New examples:

vedo -r interpolateMeshArray
vedo -r interpolateScalar1
vedo -r spline_draw
vedo -r mesh_lut
vedo -r whiskers

2020.4.0

26 Aug 22:05
Compare
Choose a tag to compare

vedo 2020.4.0

Main changes

  • mesh and volume data is moved from the package to vedo.embl.es/examples/data
    https://vedo.embl.es/examples/data/
    they are downloaded on the fly and cached

  • 14 new polygonized 3D fonts are available, making the old vtk default obsolete
    Font: Bongas
    Font: Calco
    Font: Comae
    Font: Glasgo
    Font: Inversionz
    Font: Kanopus
    Font: LionelOfParis
    Font: LogoType (supports Russian, Japanese and Chinese chars)
    Font: Normografo
    Font: Quikhand
    Font: SmartCouric
    Font: Theemim
    Font: VictorMono

    Default font is Normografo, can be changed with e.g.
    settings.useDefaultFont = "Theemim"

    Latex-like syntax is supported in Text() allowing to use Greek and math symbols in axes and plot titles:
    Type vedo -r fonts to generate the above tables.

addons:

  • Ruler(): create a 3D ruler to indicate the distance of two points
  • buildRulerAxes(): a new axis style (7) formed by 3 rulers
  • many improvements to default axis style 1
  • New axis style 11: generates a thin lined square floor

Plotter:

  • show(..., newplotter=True) -> show(..., new=True)
  • added methods: render(), resetCamera() and backgroundColor(c1, c2, at)
  • can now change transparency using arrow keys instead of "m,./"
    Pressing -+ cycles through available axes styles.

utils:

  • added resampleArrays()
  • systemReport()
  • class dotdict: A dictionary supporting dot notation.
  • trimesh2vtk() -> trimesh2vedo() (check @YimingXu1213)
  • vtk2trimesh() -> vedo2trimesh()

io:

  • can now save and load object transformation to .mat file

mesh and pointclouds:

  • coloring with pointColors() and cellColors() is merged into method cmap()
  • meshes can be described by new vignette() and caption()
  • useBounds() tells the camera to keep inot account mesh when resetting
  • added gradient() to return the gradient of the input scalar as numpy array

shapes:

  • convexHull() -> ConvexHull()
  • added VedoLogo() to generate the 3D logo of the package
  • major improvements to Text()

examples:

  • new or updated examples are:
    vedo -r isolines
    vedo -r silhouette2 (thanks to @zhouzq-thu )
    vedo -r meshquality
    vedo -r mesh_smoother2
    vedo -r vpolyscope (needs pip install polyscope)
    vedo -r flag_labels
    vedo -r customAxes
    vedo -r fonts3d
    vedo -r scatter2
    vedo -r scatter3
    vedo -r covid19
    vedo -r caption

2020.3.4

30 Jun 01:11
Compare
Choose a tag to compare

Various improvements

  • new examples:
    vedo -r multi_viewer
    vedo -r clone2d
    vedo -r plot_density
  • read files and scenes from dropbox and/or web links
  • vtkio.py moved to io.py
  • fixed bug @jsanchez679 in cutWithMesh()
  • mesh.normalize() does not shift to origin the mesh anymore
  • improved axes=10 and axes=5 customization
  • requires vtk<=8.1.2 as vtk-9 seems to have a lot of issues

2020.3.3

17 Jun 23:38
Compare
Choose a tag to compare
  • fixed bug for obj format writing by @FedeClaudi
  • fixed bug on Text2D justification

2020.3.1

13 Jun 20:41
Compare
Choose a tag to compare
  • Various improvements and fixes
  • better support for tetrahedral meshes
  • non-blocking example added
  • 3d text supports super/subscripts
  • automatically detect spyder environment

2020.3.0

04 May 22:45
Compare
Choose a tag to compare

General changes:

  • addPointScalars and addPointVectors now are merged into new addPointArray() method.
  • addCellScalars and addCellVectors now are merged into new addCellArray() method.
  • added mesh.isobands() to produce color bands for scalars in a mesh, analogous to isolines()
  • completely revised addScalarbar and addScalarBar3D which now works also for volumes.
  • can export a full html page with k3d with exportWindow("page.html")

New application module contains more elaborated and high level functionalities:

  • Slicer() to generate a Plotter window with slicing planes for the input Volume.
  • Slicer2d() creates a 2D window with a single balck and white slice of a Volume, which can be oriented arbitrarily in space.
  • RayCaster() generates a Plotter window for volume rendering using ray casting.
  • IsosurfaceBrowser() generates a Plotter window for Volume isosurfacing using a slider.
  • Browser() generates a Plotter window to browse a list of objects using a slider.

In backends module for jupyter notebooks:

  • Updated k3d interface to add mesh and volumes names in the rendering menu
  • Improved rendering for lines.

In volume module:

  • added slicePlane() to slice a volume in arbitrary orientation

2020.2.4

15 Apr 22:56
Compare
Choose a tag to compare
  • Minor improvements.
  • API change in smoothMLS2D() and smoothMLS1D()
  • all examples can be run from command line e.g.
    vtkplotter -ir covid19
    or listed with
    vtkplotter --list

2020.2.3

01 Apr 23:20
Compare
Choose a tag to compare

various fixes

2020.2.1

04 Mar 17:47
Compare
Choose a tag to compare
  • various bug fixes

2020.2.0

12 Feb 22:05
Compare
Choose a tag to compare
  • improved vtkplotter.pyplot submodule
  • background color now defaults to white
  • added Mesh.idLabels() to generate cells and point ID labels
  • methods like rotateX().pos() now operate in left-to-right order (as it should be)
  • Text is split into Text2D and Text (for 3D)