Fixed Open Inventor Bugs

Issue API Product Release

Clipping artifacts appeared with VolumeViz in some cases.

Core VolumeViz 9.0

Selection was failing when applying a 10E-05 scale factor to a geometry added under a separator

Core Open Inventor 9.2.2

Compilation warnings have been removed when using Inventor/devices/SoBufferObject.h

Cpp Open Inventor 8.6.2

Calling SoIvTune.SetInstance produced a crash

.NET IvTune 9.0

IvTune was producing a crash when exiting

Core IvTune 9.0

IvTune could not be launched if the native DLLs were not in the PATH.

.NET IvTune 9.0

The layout was modified when a field editor was changed

Core IvTune 9.0

SoHeightFieldRender produced rendering artifacts related to incorrect interpretation of SoLDMGlobalResourcesParameters::maxNumTriangles.

Core VolumeViz 9.3

The following error message was displayed when opening ivTune with Shift-F12:

Could not load plugin IvtTutorialD.dll
Could not load plugin IvtToolsD.dll

.NET IvTune 9.1

The Open Inventor distribution included a header file (inttypes.h) with the same name but not the same content as a system file.  This file has been renamed “SbTypes.h”.

Cpp Open Inventor 9.0

The reference to the shader parameter was kept in the list of shader objects by the SoUniformShaderParameterElement element after the last rendering. Thus the shader parameter couldn't be freed when removing the shader.

Cpp Open Inventor 8.6.1

The volume clipping was Invalid when using SoUniformGridProjectionClipping

Core VolumeViz 8.6.2

Shapes was disappearing when hovering the cursor over other shapes under SoLocateHighlight

Core Open Inventor 9.0

LDM conversion failed with when setting segy reader parameters. It seems that the ldm converter didn't take care (or doesn't receive) the reader passed to SegYConverter.SetReader.

.NET Open Inventor 8.6.2

SoCircularExtrusion produced a different result with v9.0 compared to v8.6.

Core Open Inventor 9.0

When using a transformation that "flipped" an axis, the UniformGridClipping was clipping the full volume.

Core VolumeViz 9.0

SoFont::isAvailableFont returned erroneous info when called several times on the same font name

Core Open Inventor 9.2.1

SoCudaContext was not dereferenced properly.

Core Open Inventor 8.6.3

When defining a custom VolumeViz reader and saving to a file the iv file was invalid.

.NET Open Inventor 9.0

SoInteractive complexity didn't change state while using the mouse wheel to zoom.

Core Open Inventor 9.0

Write action stopped when traversing custom SoSwitch under a SoMultiDataSeparator.

Core VolumeViz 8.6.1

When loading complex VolumeViz rendering, the new renderer introduced in V9.0 may take too long to initialize the first frame resultig in a driver timeout on Windows. After this timeout, the rendering cannot be restarted without stopping and restarting the application. This problem has been fixed.

Cpp VolumeViz 9.0

LDMMandleBulb demo was crashing on some graphic boards after a few frames.

Cpp VolumeViz 9.0

Lines of text in multi-line text nodes were sometimes displayed at wrong positions. Several lines were displayed below other lines even though they were set in the text node before those lines.

Core Open Inventor 9.0

SoRayPickAction returned non-zero values from SoPickedPoint::getTextureCoords() even when enableTexCoordsGeneration was set to FALSE.

Core Open Inventor 9.0

SoRayPickAction POINT_PICKING mode returned only one vertex even when setPickAll was TRUE.

Core Open Inventor 9.0

RayPickAction was slow when enabling setPickAll on a scene having 1 pointSet of 5 millions points.

Core Open Inventor 9.0

When creating a SbName from a null SbString, the program crashed.

Core Open Inventor 9.0

MultiDataSeparator with multiple VolumeRender and VolumeData crashed in some cases.

Cpp Open Inventor 9.0

Edit a Multi Field with IVtune Slown down the application.

Core IvTune 9.0

Two problems have been fixed for fields created in custom nodes:

1°) when creating a custom nodes with a new field, the field value was not initialized

2°) it was not possible to setup a default value for a field without notification. It means that setting a value generated a notification whereas we were still in the node constructor which can produce errors.

Constructors of single value fields have now initial values.

.NET Open Inventor 9.2

MultiDataSeparator with multiple VolumeRender and VolumeData crashed in some cases.

Core Open Inventor 9.0

When calling getTail on the managed orthoSlice path, an exception was raised.

.NET Open Inventor 9.1

Using CSGClippingGroup demo with large file on OIV 9.0.0 crashed the graphic driver.
The same demo was working fine with OIV8.6.0.

Cpp VolumeViz 9.0

SoOffscreenRender::writeTo[format] randomly crashed depending on platform or build

.NET Open Inventor 9.0

Missing demos in the OivSuite.NET installer packaging.

The 5 demos CSGClippingGroup, HorizonClipping, VolumeExtract, VolumePickingGPU, VolumePipeClipping were not installed by the installer.

.NET Open Inventor 9.0

Using a large dataset with the volumePipeClipping demo worked perfectly on OIV 8.6.0 and crashed on 9.0.0

Cpp VolumeViz 9.2.1

Volume Rendering Performance were slower with 9.0 than with 8.6.

Core VolumeViz 9.1

Turning FSAA on crashed IvtuneViewer

Core IvTune 9.0

When using the IvTune viewing toolbar and when the extension was deactivated the last used tool was still active

Core Open Inventor 9.0

Depending on the order of the API calls to SoOffscreenRender, the resulting snapshot
and/or the viewer render area may be corrupted.

Core Open Inventor 9.0

Using  the setValuesBuffer method of SoMFVec3f with a non empty buffer failed with an Inventor error:
Inventor error in setValues():
Bad argument : num (arg 1) is not positive

Java Open Inventor 9.0

IvtuneViewer crashed when applying a reorganize triangle strip action on a cube.

Core IvTune 9.0

SoVolumeRender::lowScreenResolution did not take into account the SoInteractiveComplexity::interactiveMode

if SoInteractiveComplexity::interactiveMode=FORCE_INTERACTIVE
and SoVolumeRender::lowScreenResolution!=1
screen resolution was not reduced

Core VolumeViz 9.0

SoVRMemoryReader data path was not referenced producing crashes even when properly managed at application level.

Core VolumeViz 9.0

In IvTune, "Highlight selected node" option did not remain off.

The "Highlight selected node" option often interferes with input event handling in the application window.  Previously it was possible to turn it off.  In OIV 9, it is possible to uncheck the box, but somehow IvTune was turning it back on...

Core IvTune 9.0

The example MultiPathsSwitch crashed on exit

Core Open Inventor 9.0

GDI object wre not released in SoWinViewer.

Core Open Inventor 9.0

Bind context failure and Aero disabled when opening a viewer after closing another one.

It happened when OIV_COMPAT_CONTEXT_80=2

Core Open Inventor 8.6.3

Custom field container issue: fields were saved several times.

When deriving from SoFieldContainer and adding new fields to the container, new fields were saved in iv files multiple times, one for each instance created.

.NET Open Inventor 9.0

When reopening the QT viewer, the application crashes.

Core Open Inventor 9.0

SoSFBufferObject did not unref the object in destructor.

The ref count was incremented when we set the field but it was not decremented when we destroy the field or its container.

Core Open Inventor 9.0

Calling SoVRDicomFileReader::getSubSlice crashed when called with parameters different from image stack's.

Core VolumeViz 9.0

The useRGBA field of SoVolumeShape had no effect.

Cpp VolumeViz 9.1

SoCpuBufferUniform default constructor had inconsistent behaviors.

Core Open Inventor 9.2

Pressing AltGr key in a Java viewer raised an exception on Linux

Java Open Inventor 9.0

SoExtSelection didn't support SoPickStyle for SoBufferedShape

Core Open Inventor 9.0

SoVolumeClippingGroup did not work if the transparency mode was any delayed mode.

Core Open Inventor 9.0

When writing a scene graph using a SoWriteAction containing two nodes with the same name but defined in two different namespaces, the output name was the same for both nodes.

.NET Open Inventor 9.0

SoExtSelection displayed errors when enabling the lasso mode "Visible Shapes":

Inventor error in SbThreadMutex:~SbThreadMutex():
Locks count is not zero (1), did you forget some unlock() calls?

Core Open Inventor 9.0

GeneratePrimitives displayed an error message when applying SoExtSelection/Visible_shapes to a scene containing  SoBufferedShape nodes:

Inventor error in SoBufferedShape():
generatePrimitives: function not implemented

Core Open Inventor 9.0

When an SoVolumeData was shared in different viewers the SoVolumeClippingGroup did not work.

Core Open Inventor 9.0

The method SoBufferObject.Memset(value,valueSize, offset, count) was not rellay usable in .NET.

A new convenience method replaces it.

.NET Open Inventor 9.0

Running an LDM action onto a custom app without adding LDM assembly in the project produced a crash.

.NET VolumeViz 9.0

IvTune couldn't be launched several times.

Java Open Inventor 9.0

The preference for disabling the DirectViz popup menu was not working properly and had different names whether you are in Qt or Xt.

Core Open Inventor 9.0

When using VolumeGroup, the first volume was not rendered correctly compared to V9.0.

Cpp VolumeViz 9.1

Bad rendering of Oblique slice with texture precision set to 0. The slice appeared black.

Cpp VolumeViz 9.0

The rendering of a circular extrusion with SPINE_ONLY flag set was wrong.

Core Open Inventor 9.0

CSGShape failed in some cases.

If the CSG Operation failled, retry with a small random transformation on geometry.
Note: as it is a random transformation, it may not works everytime. By default, it retries only 1 time but the number of attempt can be customized with SoCSGShape::setMaxAttempt method.

Core Open Inventor 9.0

Shapes added after a SoVolumeShader node were not visible

Core VolumeViz 9.0

A memory leak appeared when changing the size of SoRenderToTarge.

Core Open Inventor 9.0

SoExtSelection using lasso did not select objects if lasso mode was VISIBLE_SHAPES

Core Open Inventor 9.0

When disposing an Inventor node, the dispose method of the other nodes referenced by fields like SoSFNode were never called. The nodes that are referenced via AddChild were correctly disposed. But the nodes that are only referenced by a SoSFNode, SoMFNode, SoSFFieldContainer, and SoMFFieldContainer were not.

.NET Open Inventor 9.0

LDM conversion failed when setting the output data format to SIGNED_INT32 on some platforms.

Core VolumeViz 9.0

Memory allocation failures were not handeled in the native code which lead to a crash of the Java application.

Java Open Inventor 9.0

IvTuneViewer was crashing when changing transparency type to "Sorted Object Blend"

Core Open Inventor 9.0

Compilation warnings when compiling SoFieldContainer.h have been removed

Cpp Open Inventor 8.6.3

Calling twice SetValuesBuffer on a SoMFied object was producing assertion failure.

.NET Open Inventor 9.0

Characters were randomly missing from strings rendered with SoText2

Core Open Inventor 9.0

QT Viewer decoration issue: the picking and manipulating buttons were enabled simultaneously in some cases.

Core Open Inventor 9.0

The override of the virtual SoDetail::copy() method was missing in SoVolumeSkinDetail.

Core VolumeViz 9.0

Incorrect display of SoVolumeIndexedFaceSet in some cases.

Core VolumeViz 9.0

When using DataRange nodes with multiple instance of the same Volumedata, performances were bad due to texture caching problems.

Core VolumeViz 9.0

Poor performance when scaling vectors from MoMeshVector.

MoMeshVector was settings each vertex, color and lineset information using a set1Value, thus triggering OpenInventor notification mechanism. This was leading to a poor scenegraph generation speed.
The code now relies on start/finishEditing.

Core MeshVizXLM 8.6.3

IvTuneViewer was crashing when enabling fullscene antialiasing.

Core Open Inventor 9.0

Wrong display of MoMeshPlaneSlice when a spherical projection was applied

Cpp Open Inventor 8.6.3

When running an OIV application that is distributed without DirectViz dll, an error message always appeared in the console at run time. (in debug and release mode)

Inventor error in SoDynamicLibManager::loadLibrary():
Error in loading DirectVizD.dll : Le module specifie est introuvable.

Core Open Inventor 9.0

IvTune field editor for SoMFUInt32 did not allow entering hexadecimal values

Core IvTune 9.0

Wrong display when updating the projection type on MeshViz XLM display modules.

Cpp Open Inventor 8.6.3

When using the ray picking setRay method with enableConicVolume=false and triangleCulling=false, all points are selected

Core Open Inventor 9.0.1

ShadowGroup was visible on the viewer background when using SoBackgroundNode

Core Open Inventor 9.0

VolumeViz did not work correctly with PoSceneView:

Volume rendering appeared correctly if the PoSceneView's viewport starts at the left edge of the viewer, i.e. viewportOrigin = 0,0.   But if the viewport started anywhere else, for example viewportOrigin=0.25,0, then the volume rendering was clipped.

Core VolumeViz 9.0

CSGShape failed to perform boolean operations in some cases

Core Open Inventor 9.1

Volume rendering did not work on Intel HD graphics GPU.

Core VolumeViz 9.1

Casting an SoPath to an SoFullPath throw an Exception in .NET

.NET Open Inventor 9.2

SoOrthoSliceDragger didn't work if the slice was inside a node kit.

Core VolumeViz 9.0

Deleting a SoVolumeData node was very slow in some cases.

Cpp VolumeViz 9.0

Volume disappeared during one frame after VolumeExtraction

Core VolumeViz 9.0

When calling Dispose() method on a field container containing field of type SoSFNode, the Dispose(False) method was never called by the finalizer thread.

.NET Open Inventor 9.0