2024.5.1
Changes and Fixes
- fixes to
extrude()
method thanks to @JeffreyWardman - add
utils.madcad2vedo
conversion as per #976 by @JeffreyWardman - add
utils.camera_to_dict()
- add
Axes(title_backface_color=...)
keyword - fix
labels()
andlabels2d()
- add
shapes.plot_scalar()
plot a scalar along a line. - add support for
tetgenpy
- add
transformations.compute_main_axes()
- add
transformations.__call__()
to apply a transformation - fix small bug in
pointcloud.distance_to()
- add
applications.MorphPlotter()
to morph a polygonal mesh to a target mesh - add
smooth_data()
to smooth/diffuse data attributes - add
shapes.Tubes()
- add
utils.Minimizer()
class - add
CellCenters(Points)
class - add
core.apply_transform_from_actor()
- add
add volume.slab()
- add
mesh.generate_random_points()
to generate random points onto a surface - add
tetmesh.generate_random_points()
to generate random points in a tet mesh - rename
integrate_arrays_over_domain()
tointegrate_data
- extend
volume.operation()
to support logic operations as per #1002 - add
pointcloud.relax_point_positions()
method - add
pointcloud.auto_distance()
method calculates the distance to the closest point in the same cloud of points. - fixed
mesh.collapse_edges()
after #992 - add
mesh.cut_closed_surface()
- fix
image.clone()
in #1011 - add
transformations.TransformInterpolator
class - add
Line.find_index_at_position()
finds the index of the line vertex that is closest to a point - add
visual.LightKit
class which provides "natural" lighting from 4 sources. - add
fast-simplification
example by @Louis-Pujol in #992 - add metadata "shape" to
volume.slice_plane()
in #1018 - fix
core.mark_boundaries()
method - add callbacks for cutters in #1020 and
examples/volumetric/slice_plane3.py
- add
utils.andrews_curves()
function. - add
transformations.LinearTransform.transpose()
method. - add
pointcloud.generate_segments()
to generate a continous line from un-ordered points in 3d - fix
assembly.__add__()
by @j042 in #1036 - small fix to
Ruler3D
class. - add
plotter.render_hidden_lines()
method - add slot for triangle strips in constructor
Mesh([verts, faces, lines, strips])
in #1019 - internally use "import vedo.vtkclasses as vtki" instead of "vtk" to avoid confusion
- add
join_with_strips()
in #1043 - improvements to
shapes.Ellipsoid()
and bug fixes in #978 by @daniel-a-diaz - improvements to
pointcloud.pca_ellipsoid()
and bug fixes - improvements to
pointcloud.pca_ellipse()
and bug fixes - fix Plotter
a
toggle keypress - fix viz on jupyter notebook as per #994
- fix
mesh.imprint()
- small fix to
applications.Slicer2DPlotter
- automatically apply the actor transform to an object actor that was moved manually (via eg "InteractorStyleTrackballActor") in #1045 and #1046 by @sergei9838
- add support to
RectilinearGrid
andStructuredGrid
data (experimental). - improvements to
RayCastPlotter
- add
visual.scalar_range()
to control mesh coloring. - fix
shapes.Text3D.text()
by @gioda - add
volume.isosurface_discrete()
method
Soft Breaking Changes
Changes that can break existing code whose fixing is trivial:
- change
clone2d(scale=...)
toclone2d(size=...)
- remove
shapes.StreamLines(object)
becomesobject.compute_streamlines()
- split
mesh.decimate()
intomesh.decimate()
,mesh.decimate_pro()
andmesh.decimate_binned()
as per #992 - modified
core.clean()
after #992 - remove
import_window()
for obj files and createload_obj()
by @zhouzq-thu in #891 - add
smooth_mls_12d(..., n=0)
to fix the number of neighbors in the smoothing - modified API for
mesh.binarize()
plotter.add_hover_legend()
now returns the id of the callback.- removed
settings.render_lines_as_tubes
andsettings.hidden_line_removal
, addplotter.render_hidden_lines()
method - fix
close()
,close_window()
is now obsolete and removed.
Hard Breaking Changes
Changes that will break existing code and need active thinking and work to adapt
- None
New/Revised Examples
examples/basic/sliders_hsv.py
examples/basic/buttons1.py
examples/basic/buttons2.py
examples/basic/input_box.py
examples/advanced/warp4b.py
examples/advanced/diffuse_data.py
examples/advanced/moving_least_squares1D.py
examples/volumetric/slab_vol.py
examples/volumetric/streamlines1.py
examples/volumetric/streamlines2.py
examples/volumetric/streamlines3.py
examples/volumetric/streamlines4.py
examples/volumetric/office.py
examples/volumetric/slice_plane1.py
examples/volumetric/slice_plane3.py
examples/volumetric/mesh2volume.py
examples/volumetric/read_volume3.py
examples/volumetric/rectl_grid1.py
examples/volumetric/struc_grid1.py
examples/volumetric/app_raycaster.py
examples/volumetric/isosurfaces1.py
examples/volumetric/isosurfaces2.py
examples/simulations/mag_field1.py
examples/pyplot/andrews_cluster.py
examples/other/madcad1.py
examples/other/tetgen1.py
examples/other/nelder-mead.py
examples/other/fast_simpl.py
tests/issues/issue_968.py
tests/issues/issue_1025.py
tests/issues/test_force_anim.py
tests/snippets/test_discourse_1956.py
tests/snippets/test_ellipsoid_main_axes.py
tests/snippets/test_compare_fit1.py
New Contributors
- @daizhirui made their first contribution in #983
- @JeffreyWardman made their first contribution in #988
- @PeterMitrano made their first contribution in #1000
- @Louis-Pujol made their first contribution in #1016
Full Changelog: v2023.5.0...v2024.5.1