Open Inventor 2023.2.1 Crack

Fixed Bugs List 2023.2

2023.2.1

Open Inventor 2023.2.1


  • MeshViz
  •  #OIV-4824 Crash in MeshViz PbNonLinearDataMapping::computeColor


     
  • Cache
  •  #OIV-4867 SoText3 : Texture read access violation – CAS-44904


     
  • Core
  •  #OIV-4725 Invalid displayed PoCircle color – CAS-44470


     
  • OpenGL
  •  #OIV-4710 Initializing Open Inventor unsets the current OpenGL device and render contexts – CAS-44389-F6F4


     
  • Selection
  •  #OIV-4588 Crash when selecting an object with SoExtSelection – CAS-43802
     #OIV-4881 Start and finish callback not called on triangle when doing a selection on a extrusion


     
  • Viewer
  •  #OIV-4728 SoRenderAreaCore node doesn't work as expected – CAS-44389-F6F4
     #OIV-4798 Qt Viewers - SoEvent::wasButton1Down() incorrectly returns FALSE
     #OIV-4814 Crash in SoWinExaminerViewer::processEvent handling keyboard input – CAS-44673


     
  • VolumeViz Readers
  •  #OIV-4163 SoVRSegyFileReader - Fails for SEGY volumes with missing traces inside volume

Release notes Open Inventor 2023.2

Minor version published in September 2023.

Enhancements and new features included in this version:

  • VolumeViz
    • Arbitrary tile size
    • Progress bar on slices
  • New platforms
    • List of supported platforms
    • Open Inventor on .NET6
    • Visual Studio 2022 support
  • RemoteViz
    • Front & back end synchronization
  • MeshVizXLM
    • Color mapping improved in MeshViz XLM
  • Core
    • Minor API changes
    • Reference manual update
  • Compatibility notes
    • C++
    • .NET
    • Java
  • Life cycle events
    • Dropped platforms
    • ImageViz becomes deprecated
    • Misc API and feature deprecation

Open Inventor 2023.2 includes all fixes available in Open Inventor 2023.1


VolumeViz

Arbitrary tile size

A volume data is represented as a set of tiles for out-of-core and multiresolution rendering. In previous releases, each tile had to have the same dimensions in x and y, and had to be a power of 2, e.g., (128,128,128) or (512,512,8). As of 2023.2 the tile dimensions can be 3 different arbitrary values in x, y, and z.

The main benefit of this new feature is the ability to specify tile dimensions equal to the volume dimensions. In that case, the rendering is performed using only a single resolution, i.e., the resolution of the volume without multiresolution. However, this option needs that the volume data fits entirely in the available CPU and GPU memories (see the fields maxMainMemory and maxTexMemory in the class SoLDMResourceParameters). Otherwise, VolumeViz falls back in the classic behavior and creates tiles to support out-of-core rendering.

The tile dimensions are specified by the field SoLDMResourceParameters::tileDimension. If the API is not new in 2023.2 it makes it independent from the tile dimensions specified by the SoVolumeReader::getTileSize() method. This enables to load a tiled dataset (such as LDM file format) with different tile dimensions than the original format to improve the loading time. The SoLDMResourceParameters::tileDimension must be set once the filename is set. That parameter can be push up to the volume dimensions.

Progress bar on slices

On previous versions, the loading progression of the data was only tracked when doing volume rendering. As of 2023.2 version, it is also possible to track data loading progression with slices (see SoOrthoSlice or SoObliqueSlice) or volume skin (see SoVolumeSkin).

See SoVolumeShape::setRenderProgress for detail. Note: the render progress is only taken into account by the classes SoOrthoSlice, SoObliqueSlice and SoVolumeSkin even if their base class SoVolumeShape contains other sub classes.

The example named VolRend has been updated and a progress bar is attached to the loading progression of the volume rendering, the volume skin, and all ortho and oblique slices.

New platforms

List of supported platforms

Until 2022, the system requirements and supported platforms were only specified in the developper zone and were only updated for the latest version of Open Inventor. As of Open Inventor 2023.2, the list of supported/deprecated/dropped platforms and their requirements are now part of the reference manual here.

Furthermore, the system requirements document now includes the requirements of previous versions of Open Inventor.

Open Inventor on .NET6

Open Inventor is available on .NET6 as a preview built in addition to .NET framework 4.7/4.8.

Limitations:

  • As the .NET api of Open Inventor is mostly written in C++ and C++/CLI, some related limitations exist and described here. Thus, any application using some Open Inventor .NET6 assemblies must embed the ijwhost.dll that is delivered in the folder $OIVNETHOME/assemblies/arch-xxx.
  • the native dlls of Open Inventor must be manually copied in the destination folder of your application. As alternative, you can also add to your PATH environment variable $OIVNETHOME/assemblies/arch-xxx.
  • the examples using RemoteViz assembly do not yet work with this version.

Visual Studio 2022 support

A new package of Open Inventor C++ built with Visual Studio 2022 is available in the download pages as of 2023.2 version.

RemoteViz

Front-end & back-end synchronization

Thanks to some javascript libraries for 2D vector drawing, it can be useful and convenient to mix javascript rendering on the front-end with an Open Inventor rendering on the back-end. However, it can be necessary to send information from back-end to front-end in order to synchronize both rendering. For instance, when a javascript circle's center must track a vertex of the 3D scene rendered by Open Inventor. Thus, it is necessary to synchronize front-end and back-end when a simple zoom or pan of the 3D scene leads to a new position of the 3D vertex in the pixel space of the rendering area.

Such type of synchronization can be done by using the following new methods available as of 2023.2 version:

  • RemoteViz::Rendering::RenderArea::setFrameMessage()
  • RemoteViz::Rendering::EncodedFrame::getMessage()

A new example highlights how to synchronize a javascript cirle with the top of a cone.

  • C++: $OIVHOME/examples/source/RemoteViz/FrontBackSync
  • .NET: $OIVNETHOME/examples/source/RemoteViz/FrontBackSync
  • Java: $OIVJHOME/examples/remoteviz/frontbacksync

MeshVizXLM

Color mapping improved in MeshViz XLM

When rendering a structured mesh having PER_NODE data binding, the default interpolations performed by the GPU can lead to display some pixels whose color does not belong to the chosen color map. This new version removes this artifact and all pixels used to render the mesh have only colors that belong to the color map. This new correct behavior may generate significant change in the rendering compared to previous version. That can be noticed when a large number of pixels are used by the render area to represent a cell, for instance when zooming on a single cell that have a large data gradient on its nodes.

The following images show the rendering of a 3D structured mesh where all mesh nodes in its left part have value 0, and all the mesh nodes in its right part have value 100. The color map used is a blue-white-red from 0 to 100. All hexahedron cells in the middle of the mesh have 4 nodes with value 0, and 4 nodes with value 100. Those cells are rendered with unexpected purple pixels before this new version.

Core

Minor API changes

  • In C# API:
    • The method SoAction.EnableElements() is obsolete : Use the EnabledElements property instead.
    • Some methods of the SoVolumeReader class are now deprecated:
      • The method GetBorderFlag() is now obsolete in the class SoVolumeReader. It is only kept in the class SoVRLdmFileBorderReader that is used to read old file format that contains borderFlag.
      • The method GetMinMax(Int32,Int32) is now obsolete and GetMinMax(Int64,Int64) must be used instead.
      • The method SetUserData(Object) is now obsolete and the property UserData must be used instead.
      • The method GetHistogram(Queue) is now obsolete and GetHistogram(IList<long>) must be used instead.
  • In C++ API and Java API:
    • The class SbXfBox3f have 2 new methods computeMaxDistance2() and getClosestPoint().
    • The class SbMatrix3 have 2 new methods det() and inverse().

Reference manual update

The C++ reference manual provided in $OIVHOME/doc/ReferenceManual in the Windows package has change and has a new look and user interface thanks to the latest Doxygen version. The CHM file provided in previous versions has been replaced by a folder containing a list of HTML files. Open the file $OIVHOME/doc/ReferenceManual.html in any browser to see the main page of the reference manual. The following changes can be noticed in the new manual:

  • a new search engine.
  • a different look and style.
  • the document of each class provides a new "list of all members" including all inherited members.
  • a new list of the fields and methods per parent class.

Compatibility notes

The following notes mention the API changes made in this version compared to Open Inventor 2023.1.

C++ API

SoVolumeReader::getSubSlice(const SbBox2i32&, int, void*)
this method has now a default implementation that prints an error message when called.

C# API

The method SoVRLdmFileBorderReader.IsThreadSafe() is removed and replaced by the IsThreadSafe property inherited from SoVolumeReader.

Java API

class com.openinventor.inventor.SbViewVolume
the method getProjectedBbox(com.openinventor.inventor.SbMatrix, com.openinventor.inventor.SbBox3f) is now static

Life cycle events

Dropped platforms

As of Open Inventor 2023.2 the following platforms or devices are no longer supported:

  • AMD GPUs
  • Ubuntu18.04

ImageViz becomes deprecated

ImageViz extension is deprecated as of Open Inventor 2023.2 . ImageViz is still supported and there is no impact when running an application using ImageViz. However warnings are raised when compiling source code that uses a class or a function of ImageViz. The examples using ImageViz have been removed but can be retreived from previous versions.

ImageViz is replaced by the new ImageDev toolkit which provides the same features with the added benefit of a simpler API. More details are available here: developer.imageviz.com and imagedev-software-development-toolkit

Misc API and feature deprecation

The support of the following file format becomes deprecated.

  • VolumeViz JP3D compression
  • PNM (Portable Any Map)
  • PGX (JPEG 2000 Verification Model)
  • RAS (Raster Graphic by SunOS)

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/216955.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Stable Diffusion AI绘画系列【12】:国风美女剑客系列

《博主简介》 小伙伴们好&#xff0c;我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源&#xff0c;可关注公-仲-hao:【阿旭算法与机器学习】&#xff0c;共同学习交流~ &#x1f44d;感谢小伙伴们点赞、关注&#xff01; 《------往期经典推…

[ 蓝桥杯Web真题 ]-视频弹幕

目录 介绍 准备 目标 效果 规定 思路 解答参考 扩展功能 介绍 弹幕指直接显现在视频上的评论&#xff0c;可以以滚动、停留甚至更多动作特效方式出现在视频上&#xff0c;是观看视频的人发送的简短评论。通过发送弹幕可以给观众一种“实时互动”的错觉&#xff0c;弹幕…

206 反转链表

解题思路可以有两种方法&#xff1a;递归 or 迭代。 \qquad 迭代&#xff1a;通过使用for循环遍历&#xff0c;完成目标。方法直观&#xff0c;容易理解。 \qquad 递归&#xff1a;通过函数调用其自身&#xff0c;完成目标。递归最复杂、最重要的部分就是递归函数的构建&#…

tex中的边框

文章目录 利用tcolorbox宏包给公式加框 利用tcolorbox宏包 tcolorbox可以创建一个盒子的环境&#xff0c;例如&#xff1a; \documentclass{article} \usepackage{tcolorbox} \begin{document}\begin{tcolorbox}[left1cm, right1cm, top0.5cm, bottom0.5cm,colbackblue!10!wh…

Win Server 2019远程桌面服务部署

一、添加远程桌面授权服务 服务器管理 - 添加角色和功能打开“添加角色和功能向导”窗口&#xff0c;选择基于角色或给予功能安装&#xff1a; 打开服务器管理&#xff0c;打开角色和功能&#xff0c;添加远程回话主机和远程桌面授权 image.png 以上配置完成后使用期限为120…

JVM之垃圾回收与算法(四)

垃圾回收与算法 1.如何确定垃圾 1.1. 引用计数法 在 Java 中&#xff0c;引用和对象是有关联的。如果要操作对象则必须用引用进行。因此&#xff0c;很显然一个简单的办法是通过引用计数来判断一个对象是否可以回收。简单说&#xff0c;即一个对象如果没有任何与之关联的引用…

希宝猫罐头怎么样?专业人士告诉你质量好又便宜的猫罐头推荐

作为从业6年的宠物护理师来说&#xff0c;只买合适的&#xff0c;贵的不如好的&#xff0c;只要配方不出错营养跟得上&#xff0c;观察自家猫咪体质真的基本不怎么出错。希望大家看完这篇文章&#xff0c;各位铲屎官都能买到满意的猫罐头。那么希宝猫罐头在各方面表现怎么样呢&…

Linux系统下Nginx的安装步骤

目录 Nginx简介Nginx的作用Nginx的安装方法方法一方法二方法三 本文主要介绍在Linux系统下&#xff0c;三种常见Nginx安装方法。 Nginx简介 Nginx是一个高性能的HTTP和反向代理服务器&#xff0c;也可以作为邮件代理服务器和通用的TCP/UDP代理服务器。它最初由Igor Sysoev创建…

值班日历实现不同人显示不同的颜色区别

前端UI用的移动端的vantUI。这里只是我的思路总结&#xff0c;和用什么UI框架关系不大。 先看效果图&#xff1a; <van-calendarref"calendar":poppable"false":show-confirm"false":style"{ height: 580px }":min-date"minD…

01 高等数学.武忠祥.0基础

第一章 函数与极限 01映射与函数 02 函数概念 对应法则 定义域 常见函数 函数的几种特性 周期函数不一定有最小周期。 涉及额外与复习 存在与任意的关系

专业爬虫框架 _scrapy进阶使用详解

⑴ 中间件 中间件基本介绍 在Scrapy中&#xff0c;中间件是一种插件机制 它允许你在发送请求和处理响应的过程中对Scrapy引擎的行为进行干预和定制。 Scrapy中间件的用途&#xff1a; 修改请求、处理响应、处理异常、设置代理、添加自定义的HTTP头部等等。 Scrapy中间件主要分…

P1025 [NOIP2001 提高组] 数的划分

暴搜 剪枝 枚举固定的位置 #include<bits/stdc.h> using namespace std; using ll long long; const int N 1e310; int n,k; int res; void dfs(int last,int sum,int cur){if(curk){if(sumn)res;return;}for(int ilast;isum<n;i)dfs(i,sumi,cur1); } int main() {c…

【C++】树型结构关联式容器:map/multimap/set/multisetの使用指南(27)

前言 大家好吖&#xff0c;欢迎来到 YY 滴C系列 &#xff0c;热烈欢迎&#xff01; 本章主要内容面向接触过C的老铁 主要内容含&#xff1a; 欢迎订阅 YY滴C专栏&#xff01;更多干货持续更新&#xff01;以下是传送门&#xff01; 目录 一.键值对二.关联式容器&#xff06;序列…

Pygame游戏实战六:飞机大战

介绍模块 本游戏使用的是由Pycharm中的pygame模块来实现的&#xff0c;也可以在python中运行。通过Pygame制作一个飞机大战&#xff0c;通过控制自己的飞机来攻击敌机&#xff0c;敌机的速度也忽快忽慢&#xff0c;看看这个是你小时候玩的游戏吗&#xff1f; 最小开发框架 详…

JDBC常见的几种连接池使用(C3P0、Druid、HikariCP 、DBCP)(附上代码详细讲解)

Hi i,m JinXiang ⭐ 前言 ⭐ 本篇文章主要介绍JDBC常见的几种连接池使用&#xff08;C3P0、Druid、HikariCP 、DBCP&#xff09;以及部分理论知识 &#x1f349;欢迎点赞 &#x1f44d; 收藏 ⭐留言评论 &#x1f4dd;私信必回哟&#x1f601; &#x1f349;博主收将持续更新学…

kubectl获取ConfigMap导出YAML时如何忽略某些字段

前言&#xff1a; 当我们在使用Kubernetes时&#xff0c;常常需要通过kubectl命令行工具来管理资源。有时我们也想将某个资源的配置导出为YAML文件&#xff0c;这样做有助于版本控制和资源的迁移。然而&#xff0c;默认情况下&#xff0c;使用kubectl get命令导出资源配置会包…

【c】有序数列插入一个整数

#include<stdio.h> int main() {int n;scanf("%d",&n);int arr[n1];for(int i0;i<n;i){scanf("%d",&arr[i]);}int a;scanf("%d",&a);arr[n]a;for(int j0;j<n;j){if(arr[j]>arr[n])//交换元素位置{int temparr[j];arr…

JFrog----常见的开源协议以及应用注意点

文章目录 1. MIT 许可证2. GPL&#xff08;通用公共许可证&#xff09;3. LGPL&#xff08;较宽松的通用公共许可证&#xff09;4. Apache 许可证 2.05. BSD 许可证开源协议的选择和注意点结论 开源软件近年来在软件开发中变得越来越流行。使用开源软件可以节省时间和资源&…

拼多多电商平台API接口,获取拼多多实时准确数据,获取产品销量、价格,sku图片及sku库存数据演示

拼多多商品详情API接口的作用是让开发者可以获取拼多多平台上特定商品的详细信息&#xff0c;包括商品的标题、价格、图片、规格、参数以及店铺信息等。通过这个接口&#xff0c;开发者可以轻松地获取商品的原始数据&#xff0c;便于进行数据分析、价格比较、爬取等操作。这为电…