VTK issueshttps://gitlab.kitware.com/vtk/vtk/-/issues2024-01-02T11:07:56-05:00https://gitlab.kitware.com/vtk/vtk/-/issues/19214vendored mpi4py needs to be re-Cythonized in order to build with Python 3.122024-01-02T11:07:56-05:00Ben Wibkingvendored mpi4py needs to be re-Cythonized in order to build with Python 3.12VTK does not build with Python 3.12 due to its use of removed CPython APIs within the Cython-generated code for mpi4py.
See for example: https://github.com/cython/cython/issues/4788. (There are other issues with Python 3.12 as well.)
T...VTK does not build with Python 3.12 due to its use of removed CPython APIs within the Cython-generated code for mpi4py.
See for example: https://github.com/cython/cython/issues/4788. (There are other issues with Python 3.12 as well.)
The fixes are in the latest version of Cython, but the source code for mpi4py included here (https://gitlab.kitware.com/vtk/vtk/-/tree/master/ThirdParty/mpi4py) needs to be re-generated so that it can build with Python 3.12.
This patch will fix the issues and allow it to build, but it should only be used as a temporary workaround: https://github.com/openPMD/openPMD-api/files/13773304/fix-mpi4py-cython-python3.12.patch9.3Ben BoeckelBen Boeckelhttps://gitlab.kitware.com/vtk/vtk/-/issues/19208Underlinking of libvtkRenderingLICOpenGL2Java.so2024-01-02T13:18:10-05:00StefanBruensUnderlinking of libvtkRenderingLICOpenGL2Java.soWith the change from vtkCompositePolyDataMapper2 to vtkCompositePolyDataMapper
https://gitlab.kitware.com/vtk/vtk/-/commit/5b159e6fb88ca19346a5a8465b80f7379dea3d7d
`VTK::RenderingLICOpenGL2` became dependent of `VTK::RenderingCore` (...With the change from vtkCompositePolyDataMapper2 to vtkCompositePolyDataMapper
https://gitlab.kitware.com/vtk/vtk/-/commit/5b159e6fb88ca19346a5a8465b80f7379dea3d7d
`VTK::RenderingLICOpenGL2` became dependent of `VTK::RenderingCore` (...Mapper2 is in RenderingOpenGL2, ...Mapper is in RenderingCore).
For the regular shared lib this is fine, as the module has a private dep on RenderingCore, but the Java wrapper needs this as a public dependency, otherwise the RenderingCore Java wrapper library is omitted; the build fails when "--no-undefined" is used (otherwise, this likely will result in a linker error at runtime).
```
[ 4106s] [ 95%] Linking CXX shared library ../../lib64/java/vtk-Linux-x86_64/libvtkRenderingLICOpenGL2Java.so
[ 4106s] cd /home/abuild/rpmbuild/BUILD/VTK-9.3.0/build/Wrapping/Java && /usr/bin/cmake -E cmake_link_script CMakeFiles/vtkRenderingLICOpenGL2Java.dir/link.txt --verbose=1
[ 4106s] /usr/bin/g++ -fPIC -fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -DNDEBUG -O2 -g -DNDEBUG -Wl,-lc -Wl,--as-needed -Wl,--no-undefined -Wl,-z,now -shared -Wl,-soname,libvtkRenderingLICOpenGL2Java.so -o ../../lib64/java/vtk-Linux-x86_64/libvtkRenderingLICOpenGL2Java.so CMakeFiles/vtkRenderingLICOpenGL2Java.dir/CMakeFiles/vtkRenderingLICOpenGL2Java/vtkPainterCommunicatorJava.cxx.o CMakeFiles/vtkRenderingLICOpenGL2Java.dir/CMakeFiles/vtkRenderingLICOpenGL2Java/vtkBatchedSurfaceLICMapperJava.cxx.o CMakeFiles/vtkRenderingLICOpenGL2Java.dir/CMakeFiles/vtkRenderingLICOpenGL2Java/vtkCompositeSurfaceLICMapperJava.cxx.o CMakeFiles/vtkRenderingLICOpenGL2Java.dir/CMakeFiles/vtkRenderingLICOpenGL2Java/vtkCompositeSurfaceLICMapperDelegatorJava.cxx.o CMakeFiles/vtkRenderingLICOpenGL2Java.dir/CMakeFiles/vtkRenderingLICOpenGL2Java/vtkImageDataLIC2DJava.cxx.o CMakeFiles/vtkRenderingLICOpenGL2Java.dir/CMakeFiles/vtkRenderingLICOpenGL2Java/vtkLineIntegralConvolution2DJava.cxx.o CMakeFiles/vtkRenderingLICOpenGL2Java.dir/CMakeFiles/vtkRenderingLICOpenGL2Java/vtkStructuredGridLIC2DJava.cxx.o CMakeFiles/vtkRenderingLICOpenGL2Java.dir/CMakeFiles/vtkRenderingLICOpenGL2Java/vtkSurfaceLICCompositeJava.cxx.o CMakeFiles/vtkRenderingLICOpenGL2Java.dir/CMakeFiles/vtkRenderingLICOpenGL2Java/vtkSurfaceLICInterfaceJava.cxx.o CMakeFiles/vtkRenderingLICOpenGL2Java.dir/CMakeFiles/vtkRenderingLICOpenGL2Java/vtkSurfaceLICMapperJava.cxx.o CMakeFiles/vtkRenderingLICOpenGL2Java.dir/CMakeFiles/vtkRenderingLICOpenGL2Java/vtkTextureIOJava.cxx.o CMakeFiles/vtkRenderingLICOpenGL2Java.dir/CMakeFiles/vtkRenderingLICOpenGL2Java/vtkRenderingLICOpenGL2ModuleJava.cxx.o -Wl,-rpath,"\$ORIGIN/../../:\$ORIGIN:/usr/lib64/jvm/java/lib:/usr/lib64/jvm/java/lib/server" ../../lib64/libvtkRenderingLICOpenGL2.so.9.3 ../../lib64/java/vtk-Linux-x86_64/libvtkRenderingOpenGL2Java.so ../../lib64/libvtkRenderingOpenGL2.so.9.3 /usr/lib64/libGLEW.so /usr/lib64/libX11.so ../../lib64/libvtkIOImage.so.9.3 ../../lib64/libvtkRenderingHyperTreeGrid.so.9.3 ../../lib64/libvtkImagingCore.so.9.3 ../../lib64/libvtkRenderingUI.so.9.3 /usr/lib64/libX11.so ../../lib64/libvtkRenderingCore.so.9.3 ../../lib64/libvtkFiltersGeneral.so.9.3 ../../lib64/java/vtk-Linux-x86_64/libvtkCommonExecutionModelJava.so ../../lib64/java/vtk-Linux-x86_64/libvtkCommonDataModelJava.so ../../lib64/libvtkFiltersCore.so.9.3 ../../lib64/libvtkCommonExecutionModel.so.9.3 ../../lib64/libvtkCommonDataModel.so.9.3 ../../lib64/libvtkCommonTransforms.so.9.3 ../../lib64/libvtkCommonMisc.so.9.3 ../../lib64/java/vtk-Linux-x86_64/libvtkCommonCoreJava.so ../../lib64/libvtkJava.so.9.3 /usr/lib64/jvm/java/lib/libjawt.so /usr/lib64/jvm/java/lib/server/libjvm.so ../../lib64/libvtkCommonMath.so.9.3 ../../lib64/libvtkCommonCore.so.9.3 ../../lib64/libvtksys.so.9.3 -ldl -lpthread ../../lib64/libvtkkissfft.so.9.3 -Wl,-rpath-link,/home/abuild/rpmbuild/BUILD/VTK-9.3.0/build/lib64:/home/abuild/rpmbuild/BUILD/VTK-9.3.0/build/lib64/java/vtk-Linux-x86_64
[ 4106s] /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: CMakeFiles/vtkRenderingLICOpenGL2Java.dir/CMakeFiles/vtkRenderingLICOpenGL2Java/vtkCompositeSurfaceLICMapperJava.cxx.o: in function `vtkCompositeSurfaceLICMapper_Typecast':
[ 4106s] /home/abuild/rpmbuild/BUILD/VTK-9.3.0/build/Wrapping/Java/CMakeFiles/vtkRenderingLICOpenGL2Java/vtkCompositeSurfaceLICMapperJava.cxx:18: undefined reference to `vtkCompositePolyDataMapper_Typecast'
[ 4106s] collect2: error: ld returned 1 exit status
[ 4106s] make[2]: *** [Wrapping/Java/CMakeFiles/vtkRenderingLICOpenGL2Java.dir/build.make:387: lib64/java/vtk-Linux-x86_64/libvtkRenderingLICOpenGL2Java.so] Error 1
```
Moving `VTK::RenderingCore` from `PRIVATE_DEPENDS` to `DEPENDS` in the `vtk.module` fixes this.9.3Ben BoeckelBen Boeckelhttps://gitlab.kitware.com/vtk/vtk/-/issues/19176Is it possible to updrade ThirdParty/fmt to the latest version?2023-11-25T10:13:58-05:00Andrew MacleanIs it possible to updrade ThirdParty/fmt to the latest version?This is not an error, just a warning and relates to fmt.
Building with Microsoft Visual Studio Community 2022 (64-bit) - Current Version 17.8.1 generates this warning if the C++17 standard is enabled:
``` cmd
stdext::checked_array_itera...This is not an error, just a warning and relates to fmt.
Building with Microsoft Visual Studio Community 2022 (64-bit) - Current Version 17.8.1 generates this warning if the C++17 standard is enabled:
``` cmd
stdext::checked_array_iterator<T *>::iterator_category': warning STL4043: stdext::checked_array_iterator, stdext::unchecked_array_iterator, and related factory functions are non-Standard extensions and will be removed in the future. std::span (since C++20) and gsl::span can be used instead. You can define _SILENCE_STDEXT_ARR_ITERS_DEPRECATION_WARNING or _SILENCE_ALL_MS_EXT_DEPRECATION_WARNINGS to suppress this warning.
```
If you search on STL4043 you will find this [MSVC is deprecating stdext::checked_array_iterator #3540](https://github.com/fmtlib/fmt/issues/3540) the fix seems to be to just upgrade fmt to 10.1 or later. This seems to confirm that upgrading fmt will silence this: [Update fmt version to 10.1.0 #12411](https://github.com/microsoft/react-native-windows/pull/12411)9.3Ben BoeckelBen Boeckelhttps://gitlab.kitware.com/vtk/vtk/-/issues/19174The MapScalars() methods leak in Python2023-11-26T15:21:38-05:00David GobbiThe MapScalars() methods leak in PythonWhen called from Python, the `MapScalars()` methods leak the `vtkUnsignedCharArray` that they return. To avoid the leak, they need the `VTK_NEWINSTANCE` hint.
These methods appear in `vtkScalarsToColors` and `vtkMapper`. In addition t...When called from Python, the `MapScalars()` methods leak the `vtkUnsignedCharArray` that they return. To avoid the leak, they need the `VTK_NEWINSTANCE` hint.
These methods appear in `vtkScalarsToColors` and `vtkMapper`. In addition to adding the hint, the wrappers can be made to warn if they encounter an unhinted `MapScalars()` method that returns a VTK array.
In fact, any VTK method that returns a VTK object but isn't a getter (i.e. doesn't start with Get) has a fair probability of needing a hint.
Ref: [https://discourse.vtk.org/t/retrieve-the-mapped-colors-from-vtkopenglpolydatamapper/12760](https://discourse.vtk.org/t/retrieve-the-mapped-colors-from-vtkopenglpolydatamapper/12760)9.3David GobbiDavid Gobbihttps://gitlab.kitware.com/vtk/vtk/-/issues/19155vtkOCCTReader fails to compile2023-11-26T15:20:15-05:00Orion PoplawskivtkOCCTReader fails to compileTrying to build vtk 9.3.0.rc2 on Fedora rawhide I'm getting:
```
[ 28%] Building Java object Wrapping/Java/CMakeFiles/vtkjava.dir/vtk/vtkOCCTReader.class
cd /builddir/build/BUILD/VTK-9.3.0.rc2/redhat-linux-build-serial/Wrapping/Java && /...Trying to build vtk 9.3.0.rc2 on Fedora rawhide I'm getting:
```
[ 28%] Building Java object Wrapping/Java/CMakeFiles/vtkjava.dir/vtk/vtkOCCTReader.class
cd /builddir/build/BUILD/VTK-9.3.0.rc2/redhat-linux-build-serial/Wrapping/Java && /usr/bin/javac -classpath /builddir/build/BUILD/VTK-9.3.0.rc2/redhat-linux-build-serial/Wrapping/Java -source 1.7 -target 1.7 /builddir/build/BUILD/VTK-9.3.0.rc2/redhat-linux-build-serial/Wrapping/Java/vtk/vtkOCCTReader.java -d CMakeFiles/vtkjava.dir
warning: [options] bootstrap class path not set in conjunction with -source 7
warning: [options] source value 7 is obsolete and will be removed in a future release
warning: [options] target value 7 is obsolete and will be removed in a future release
warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
/builddir/build/BUILD/VTK-9.3.0.rc2/redhat-linux-build-serial/Wrapping/Java/vtk/vtkOCCTReader.java:47: error: method SetFileFormat(int) is already defined in class vtkOCCTReader
public void SetFileFormat(int id0)
^
1 error
4 warnings
```9.3https://gitlab.kitware.com/vtk/vtk/-/issues/19125vtk 9.3rc1 fails to build on FreeBSD2023-10-18T15:31:52-04:00Sean McBridevtk 9.3rc1 fails to build on FreeBSDThere are a couple of compiler errors building 9.3rc1 on FreeBSD, all in third party.
I'll work to get them fixed upstream first.
I've fixed one so far: https://github.com/sandialabs/seacas/pull/407/files
How to proceed from here thou...There are a couple of compiler errors building 9.3rc1 on FreeBSD, all in third party.
I'll work to get them fixed upstream first.
I've fixed one so far: https://github.com/sandialabs/seacas/pull/407/files
How to proceed from here though? Given we are already in rc stage, perhaps best to cherry pick just the minimal fix?9.3Ben BoeckelBen Boeckelhttps://gitlab.kitware.com/vtk/vtk/-/issues/19085vtkGLTFImporter/vtkGLTFReader hangs when searching for URI2023-09-21T04:02:50-04:00Mathieu Westphal (Kitware)vtkGLTFImporter/vtkGLTFReader hangs when searching for URIWith a certain [dataset](https://drive.google.com/file/d/11spGIZuOAAq7-WaiUbDpoVNCRmRD7vHp/view?usp=sharing) (which seems fairly common) vtkGLTFReader and vtkGLTFImporter hangs when calling `vtkURI::RemoveDotSegments`
```
while(!emp...With a certain [dataset](https://drive.google.com/file/d/11spGIZuOAAq7-WaiUbDpoVNCRmRD7vHp/view?usp=sharing) (which seems fairly common) vtkGLTFReader and vtkGLTFImporter hangs when calling `vtkURI::RemoveDotSegments`
```
while(!empty)
...
{
std::size_t firstSegment = input.find('/', 1);
output += input.substr(0, firstSegment);
input.erase(0, firstSegment);
}
```
We are parsing the entire file with this code, which is taking a very long time.
I think we should not be calling this but end up there anyway.
@alexy.pellegrini9.3https://gitlab.kitware.com/vtk/vtk/-/issues/19277vtkDataObjectTree->GetNumberOfChildren() is a protected member2024-03-15T06:41:35-04:00WillIsbackvtkDataObjectTree->GetNumberOfChildren() is a protected memberDear community,
As I am working with vtkDataObjectTree, i have compilation error saying the method **GetNumberOfChildren() is protected** and so I can't use it. However in the [doc](https://vtk.org/doc/nightly/html/classvtkDataObjectTre...Dear community,
As I am working with vtkDataObjectTree, i have compilation error saying the method **GetNumberOfChildren() is protected** and so I can't use it. However in the [doc](https://vtk.org/doc/nightly/html/classvtkDataObjectTree.html) it clearly say it's a **public member**.
I code in c++ and my vtk includes are libraries from ParaView_5.11.
Best regards,
Williamhttps://gitlab.kitware.com/vtk/vtk/-/issues/19275vtkAxisActor2D AdjustLabels does not move ticks2024-03-19T03:20:00-04:00Nicolas VuaillevtkAxisActor2D AdjustLabels does not move ticks`vtkAxisActor2D` has a mode called `AdjustLabels`, enabled by default, in which, from the doc:
> the labels and ticks are adjusted for "nice" numerical values to make it easier to read the labels.
The issue is that it **does not place ...`vtkAxisActor2D` has a mode called `AdjustLabels`, enabled by default, in which, from the doc:
> the labels and ticks are adjusted for "nice" numerical values to make it easier to read the labels.
The issue is that it **does not place the ticks accordingly** to the new label values.
## Example
This is visible in the `vtkBarChartActor` test, that uses this configuration for internal `vtkAxisActor2D` for vertical axis. See the baseline:
![image](/uploads/47520bed4db8fd9d75aafb708dcb7866/image.png)
For readability, I have switched first and last bar. Adding a print in the test, it shows that this first purple bar has **a value of** `73.4915`, which is inconsistent with the `75.0` tick mark.
The `vtkBarChartActor` configure its `vtkAxisActor2D` only with:
```
Number Of Labels: 5
Range: (84.3021, 0.212141)
```https://gitlab.kitware.com/vtk/vtk/-/issues/19273python wrappings for vtkSelectioNode. The methods SetFieldType and SetContent...2024-03-12T07:07:41-04:00phcerdanpython wrappings for vtkSelectioNode. The methods SetFieldType and SetContentType don't update valuesvtk 9.3 installed from pip
```python
selection_node = vtkSelectionNode()
selection_node.SetFieldType(vtkSelectionNode.INDICES)
selection_node.SetContentType(vtkSelectionNode.POINT)
```
However, the following works:
```python
selection_no...vtk 9.3 installed from pip
```python
selection_node = vtkSelectionNode()
selection_node.SetFieldType(vtkSelectionNode.INDICES)
selection_node.SetContentType(vtkSelectionNode.POINT)
```
However, the following works:
```python
selection_node = vtkSelectionNode()
selection_node.GetProperties().Set(vtkSelectionNode.CONTENT_TYPE(), vtkSelectionNode.INDICES)
selection_node.GetProperties().Set(vtkSelectionNode.FIELD_TYPE(), vtkSelectionNode.POINT)
```https://gitlab.kitware.com/vtk/vtk/-/issues/19268vtkRenderWindow loop instantiation results in many open windows2024-03-08T07:37:02-05:00Zachary StamlervtkRenderWindow loop instantiation results in many open windowsIssue:
Instantiating vtkRenderWindow in a loop without a vtkWindowInteractor results in a memory blowout and hard crash. The renderWindow is being used to render a series of images using a vtkPNGWriter. When run in lldb, a warning pops u...Issue:
Instantiating vtkRenderWindow in a loop without a vtkWindowInteractor results in a memory blowout and hard crash. The renderWindow is being used to render a series of images using a vtkPNGWriter. When run in lldb, a warning pops up once loop is on 101st iteration stating that over 100 windows have been opened. Tried creating the vtkRenderWindow inside the looped function as well, wrapped in a vtkNew<> instance, to no avail.
System:
MacOS Ventura(13.6.3), Intel silicon, VTK 9.2.9.2.6, C++17 compiled with clang++ using cmake.
Discussed on thread [here](https://discourse.vtk.org/t/vtkrenderwindow-memory-leak/10612/18). thread contains MRE.https://gitlab.kitware.com/vtk/vtk/-/issues/19266VTK module system links optional dependencies wrongly in PV with external VTK2024-03-14T07:21:13-04:00Alexander NeumannVTK module system links optional dependencies wrongly in PV with external VTKObserved error:
```
CMake Error at D:/installed/x64-windows-static-md/share/vtk/VTK-targets.cmake:1119 (set_target_properties):
The link interface of target "VTK::pegtl" contains:
PEGTL::PEGTL
but the target was not found. Po...Observed error:
```
CMake Error at D:/installed/x64-windows-static-md/share/vtk/VTK-targets.cmake:1119 (set_target_properties):
The link interface of target "VTK::pegtl" contains:
PEGTL::PEGTL
but the target was not found. Possible reasons include:
* There is a typo in the target name.
* A find_package call is missing for an IMPORTED target.
* An ALIAS target is missing.
Call Stack (most recent call first):
D:/installed/x64-windows-static-md/share/vtk/vtk-config.cmake:143 (include)
C:/a/1/s/scripts/buildsystems/vcpkg.cmake:859 (_find_package)
CMakeLists.txt:65 (find_package)
```
Reason for PEGTL being linked: `VTK::pegtl -> VTK::IOMotionFX`
`VTK::IOMotionFX` is an optional dependency in ParaView guarded by `PARAVIEW_ENABLE_MOTIONFX` resulting in: `CMake/ParaViewOptions.cmake(346): list(APPEND paraview_rejected_modules VTK::IOMotionFX )` disabling it for paraview and disableing the lookup of the corresponding VTK component.
However, the module system in VTK will link the target if it exists although it has been disabled. As such optional dependency can not be guarded by a `if(TARGET)` they always need to be guarded by a variable since VTK always provides all targets independent of which COMPONENTS have been requested.Ben BoeckelBen Boeckelhttps://gitlab.kitware.com/vtk/vtk/-/issues/19262offscreen rendering does not support as background process on windows scheduler2024-03-07T08:14:15-05:00Anand Vitthal Adakeoffscreen rendering does not support as background process on windows schedulerI'm trying to run a following vtk-python code through windows scheduler,
it runs in forground and failed in background.
```python
import vtk
import logging
from vtkmodules.util import numpy_support
try:
logging.basicConfig(filena...I'm trying to run a following vtk-python code through windows scheduler,
it runs in forground and failed in background.
```python
import vtk
import logging
from vtkmodules.util import numpy_support
try:
logging.basicConfig(filename='app.log', filemode='w', format='%(name)s - %(levelname)s - %(message)s')
logging.warning('This will get logged to a file')
# Create a sphere
sphere = vtk.vtkSphereSource()
sphere.SetThetaResolution(20)
sphere.SetPhiResolution(20)
logging.warning('1')
# Create a mapper
mapper = vtk.vtkPolyDataMapper()
mapper.SetInputConnection(sphere.GetOutputPort())
logging.warning('2')
# Create an actor
actor = vtk.vtkActor()
actor.SetMapper(mapper)
actor.GetProperty().SetColor(1, 0, 0) # Set color to red
# Create a renderer
renderer = vtk.vtkRenderer()
renderer.AddActor(actor)
renderer.SetBackground(1, 1, 1) # Set background to white
logging.warning('3')
# Create a render window
renderWindow = vtk.vtkRenderWindow()
# Enable off-screen rendering (headless rendering)
renderWindow.SetOffScreenRendering(1)
# Set desired size (optional)
renderWindow.SetSize(400, 400)
renderWindow.AddRenderer(renderer)
logging.warning('4')
# Create a render window interactor
renderWindowInteractor = vtk.vtkRenderWindowInteractor()
renderWindowInteractor.SetRenderWindow(renderWindow)
logging.warning('5')
# Render the scene
renderWindow.Render()
logging.warning('6')
# Grab a screenshot (offscreen rendering)
windowToImageFilter = vtk.vtkWindowToImageFilter()
windowToImageFilter.SetInput(renderWindow)
windowToImageFilter.Update()
logging.warning('7')
# Convert VTK image to NumPy array
vtk_image = windowToImageFilter.GetOutput()
height, width, _ = vtk_image.GetDimensions()
vtk_array = vtk_image.GetPointData().GetScalars()
components = vtk_array.GetNumberOfComponents()
vtk_data = numpy_support.vtk_to_numpy(vtk_array)
image_array = vtk_data.reshape(height, width, components)
logging.warning('8')
# Save the screenshot using vtkPNGWriter
writer = vtk.vtkPNGWriter()
writer.SetFileName("D:\\offscreen_rendering\\screenshot.png")
writer.SetInputConnection(windowToImageFilter.GetOutputPort())
writer.Write()
logging.warning('9')
except Exception as e:
with open('D:\\offscreen_rendering\\error.txt', 'w') as fw:
fw.write(str(e))
```
It run with following settings,
![working](/uploads/9faa660d76c8f38c9f2e25b87f831111/working.PNG)
And failed with the following setting
![not_working.PNG](/uploads/12db6b7df0ac79a8db39ccfd21e74e83/not_working.PNG)
The Only difference is `Run whether user is logged in or not`
for reference here i'm attaching the logs of the both scenario.
[app_not_working.log](/uploads/0af2d07efd87247b44911d5ffb2e7903/app_not_working.log)
[app_working.log](/uploads/38f87f7db6433ad64ad3d1ad178d3567/app_working.log)https://gitlab.kitware.com/vtk/vtk/-/issues/19261Rendering/ParallelLIC/vtkMPIPixelView.h is not getting installed by VTK (need...2024-03-18T03:36:29-04:00Alexander NeumannRendering/ParallelLIC/vtkMPIPixelView.h is not getting installed by VTK (needed by PV)VTK version: https://gitlab.kitware.com/vtk/vtk/-/tree/407d4b541111686c40fa53935e7d22c70d5a3f7c (VTK version of the PV 5.12 tag)VTK version: https://gitlab.kitware.com/vtk/vtk/-/tree/407d4b541111686c40fa53935e7d22c70d5a3f7c (VTK version of the PV 5.12 tag)Ben BoeckelBen Boeckelhttps://gitlab.kitware.com/vtk/vtk/-/issues/19256Allow to also blit back the depth buffer from the internal framebuffer2024-03-13T19:39:34-04:00Uwe SiemsAllow to also blit back the depth buffer from the internal framebufferIn an OpenGL application that we recently ported to VTK 9.3.0 (www.MeVisLab.de), we use vtkExternalOpenGLRenderWindow to render into an existing OpenGL context (which already is a FramebufferObject). The VTK scene is rendered inbetween o...In an OpenGL application that we recently ported to VTK 9.3.0 (www.MeVisLab.de), we use vtkExternalOpenGLRenderWindow to render into an existing OpenGL context (which already is a FramebufferObject). The VTK scene is rendered inbetween other render items, thus the content of the external framebuffer needs to be copied to the internal framebuffer, and then back to the external framebuffer.
This blitting back to the external framebuffer is implemented, but only copies the color buffer, not the depth buffer, though in our case more external rendering might occur, which would need the depth information from the VTK scene to render correctly.
I propose to add either a flag or another enum value for FrameBlitMode to control if the depth buffer should be copied too (in vtkOpenGLRenderWindow::Frame)https://gitlab.kitware.com/vtk/vtk/-/issues/19255Make bit size of depth buffer in vtkOpenGLRenderWindow configurable2024-03-13T19:37:57-04:00Uwe SiemsMake bit size of depth buffer in vtkOpenGLRenderWindow configurableIn an OpenGL application that we recently ported to VTK 9.3.0 (www.MeVisLab.de), we use vtkExternalOpenGLRenderWindow to render into an existing OpenGL context (which already is a FramebufferObject). The VTK scene is rendered inbetween o...In an OpenGL application that we recently ported to VTK 9.3.0 (www.MeVisLab.de), we use vtkExternalOpenGLRenderWindow to render into an existing OpenGL context (which already is a FramebufferObject). The VTK scene is rendered inbetween other render items, thus the content of the external framebuffer needs to be copied to the internal framebuffer, and then back to the external framebuffer.
In this complex application we don't have complete control over the bit size used for the depth buffer of the external OpenGL framebuffer, but if these don't match one gets an OpenGL error, and the blitting fails. vtkOpenGLRenderWindow currently always uses 32 bit depth, but in our case the external OpenGL framebuffer had 24 bit depth (this was with a Radeon card).
I propose to add an interface to select the depth bit size for the framebuffer objects created in vtkOpenGLRenderWindow::CreateFramebuffers.https://gitlab.kitware.com/vtk/vtk/-/issues/19254Misleading error message from OpenGL renderer2024-02-29T06:35:53-05:00Uwe SiemsMisleading error message from OpenGL rendererIn an OpenGL application that we recently ported to VTK 9.3.0 (www.MeVisLab.de), we use vtkExternalOpenGLRenderWindow to render into an existing OpenGL context (which already is a FramebufferObject).
Initially an OpenGL INVALID_OPERATION...In an OpenGL application that we recently ported to VTK 9.3.0 (www.MeVisLab.de), we use vtkExternalOpenGLRenderWindow to render into an existing OpenGL context (which already is a FramebufferObject).
Initially an OpenGL INVALID_OPERATION was reported for the glBindFramebuffer operation. But this is wrong, the actually failing part was in glBlitFramebuffer, but the error code wasn't checked at that place, and then attributed to the next function where the error code was checked.
For my use case it was enough to add a call
`vtkCheckOpenGLErrorsWithStack("glBlitFramebuffer");`
to the end of vtkOpenGLState::vtkglBlitFramebuffer, but perhaps one should check other OpenGL methods too?https://gitlab.kitware.com/vtk/vtk/-/issues/19251Bug reading VTK ascii file in python2024-02-22T09:16:06-05:00ChauveBug reading VTK ascii file in pythonHello,
Just to report a strange behavior that I observed using vtk in python.
I have vtk ascii file build using a given software. When I read it in python for post processing I can only see 2 variable. If I convert it in binairy I can r...Hello,
Just to report a strange behavior that I observed using vtk in python.
I have vtk ascii file build using a given software. When I read it in python for post processing I can only see 2 variable. If I convert it in binairy I can read all the variable.
Here is a minimum example of this:
- ascii file : [DSC_0103-DSC_0105-ldic.vtk](/uploads/6946b3bb65dba81eef6a98477b4f2b65/DSC_0103-DSC_0105-ldic.vtk)
```python
from paraview.simple import *
import vtk
# function to convert vtk ascci to binary
def vtk_ascii2binary(adr_disp):
# Create a temporary file
DSC_vtk = LegacyVTKReader(registrationName=adr_disp.split('/')[-1], FileNames=[adr_disp])
# save data
SaveData('vtk_binary.vtk', proxy=DSC_vtk, ChooseArraysToWrite=0,FileType='Binary')
return
# function to print cell variable
def print_cell_variable(file_vtk):
reader = vtk.vtkDataSetReader()
reader.SetFileName(file_vtk)
reader.Update()
# Get the output
ug = reader.GetOutput()
# Get cell data
cell_data = ug.GetCellData()
# Get the number of arrays in the cell data
num_cell_arrays = cell_data.GetNumberOfArrays()
# Iterate over arrays and print their names
print("Cell Data:")
for i in range(num_cell_arrays):
array_name = cell_data.GetArrayName(i)
print("Array {}: {}".format(i, array_name))
# Evaluation
adr='DSC_0103-DSC_0105-ldic.vtk'
# print variable from ascii file
print_cell_variable(adr)
# build binary file
vtk_ascii2binary(adr)
#print variable from binary file
vtk_ascii2binary('vtk_binary.vtk')
```
Output
```python
Cell Data:
Array 0: displacements
Array 1: error
Cell Data:
Array 0: error
Array 1: displacements
Array 2: iterations
Array 3: returnStatus
Array 4: deltaPhiNorm
```
Package :
- paraview 5.11.2
I have a work around converting ascii to binary but I still wanted to report this. Is it a bug or I am missing something ?
Best
Thomashttps://gitlab.kitware.com/vtk/vtk/-/issues/19248Tesselate filter on polygon indicates no parametrization2024-02-19T11:57:24-05:00Olivier CessenatTesselate filter on polygon indicates no parametrizationThe "Tesselate" filter applied on "VTK_POLYGON" indicates "Input dataset has cells without parametization".
Example file:
```
# vtk DataFile Version 3.0
Generated by Hand
ASCII
DATASET UNSTRUCTURED_GRID
POINTS 14 double
0.0 0.0 0...The "Tesselate" filter applied on "VTK_POLYGON" indicates "Input dataset has cells without parametization".
Example file:
```
# vtk DataFile Version 3.0
Generated by Hand
ASCII
DATASET UNSTRUCTURED_GRID
POINTS 14 double
0.0 0.0 0.001
0.0 0.0 0.002 1.0 0.0 0.0
1.0 1.0 0.0 0.0 1.0 0.0
2.0 0.0 0.0 2.0 1.0 0.0
0.5 0.1 0.0 1.0 0.6 0.0
0.6 1.1 0.0 0.1 0.4 0.0
2.0 -0.5 0.0 1.0 -1.0 0.0
0.0 -0.6 0.0
CELLS 2 12
4 2 5 6 3
6 1 13 12 11 5 2
CELL_TYPES 2
9
7
POINT_DATA 14
FIELD FieldData 1
TempNode 1 14 float
0.0
0.0 1.5
0.2 0.0
1.0 0.4
2.0 0.5
0.25 0.15
0.25 0.45
0.13
```https://gitlab.kitware.com/vtk/vtk/-/issues/19245vtkConduitToDataObject: incorrect handling of fields when multiple topologies...2024-02-07T11:26:33-05:00Utkarsh AyachitvtkConduitToDataObject: incorrect handling of fields when multiple topologies are specified`FillPartionedDataSet` creates a separate dataset for each topology, however, `AddFieldData` simply adds all fields to all dataset. Each field has a "fields/<fieldname>/topology" attribute which is intended to refer to the topology this ...`FillPartionedDataSet` creates a separate dataset for each topology, however, `AddFieldData` simply adds all fields to all dataset. Each field has a "fields/<fieldname>/topology" attribute which is intended to refer to the topology this field is to be a attached to, but that is simply ignored by `AddFieldData`.