ODA(Open Design Alliance)试用小记-ODA提供源码下载就完全可控了吗?

1.概述

ODA(Open Design Alliance)库架构如下:

产品体系如下: 

ODA的产品体系越来越壮大,包括主流BIM格式SDK、Viewer、Cloud、数据交换等,每个模块需要单独购买,并提供“源码服务”。

2.是否可控?

值得注意的是并不是全部的代码开放,比如kernel库,其中对于底层的几何数据结构、几何算法等均没有提供源码服务,只有头文件和使用样例。

  • 容器,如:OdVector.h;
  • 几何数据结构,如:GePoint3d.h、GeNurbSurface.h,即使非常基础的点和向量类都不提供源码;
  • 渲染,如:BrepRenderer.h、BrepRendererImpl.h,渲染也是核心,能都给你了?
  • 几何算法,如:ModelerGeometry、BmBooleanOperationsUtils;
  • 实体造型算法,如:OdBrepModeler,包括各种类型实体的造型,如拉伸、旋转、放样、直纹等;

......

那么解析rvt、dwg、dgn等格式的代码你能拿到吗?

同样,给你代码下载权限的是使用ODA核心库的应用代码,rvt等格式的解析生成代码,格式组织是没有开放下载权限的。

ODA:基础和核心的东西必须掌握在手中,防止被卡脖子~  哦,防止不能卡XX的脖子

3.参考

1、这个链接说明了样例等需要依赖哪些库(应该是没有源码的库),

Determining which Libraries to Use

2、下图中的exe、lib基本上都没有源码,但这些都是ODA自己开发的,只是没有提供源码服务,大部分都是最核心的几何内核、基础工具、授权检查之类的内容;

而ThirdParty中的库基本上都是开源的第三方库,如rapidjson、tinyxml等,不用ODA提供源码我们也能找到;

4.小结

这也就解释了为什么有时候ODA样例程序渲染数据正确,而我们用相同的库却可能有错误,但离开ODA(即使宣称拥有源码)我们无法处理,只能依赖ODA解决。因为比较核心内容并没有开发给你,你只是拿到了应用(使用ODA库的应用)代码! 

从技术和商业角度也能理解ODA的行为,认不认可就是另外一回事了,除非有额外更好的选择才可能有意义。

当然使用ODA仍旧是很多公司的首选,毕竟快、综合成本低、可靠(至少目前可靠,短期内也不会有风险......)。

所以购买了ODA库,拥有对应源码,就自主可控了吗?

公众号:geometrylib,欢迎交流。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【rust】 基于rust编写wasm,实现markdown转换为html文本

文章目录 背景转换预览核心代码前置依赖rustup换源 cargo本地路径修改(可选)cargo换源中科大 wasm-pack安装 背景 尝试用rust编写一款markdown转html的插件,通过wasm给html使用,不得不说体积挺小,约200K, …

深度学习——D2(数据操作)

N维数组 创建数组 访问元素 一列: [ : , 1 ] 反向累积、正向累积(自动求导) 梯度 梯度(Gradient)是微积分中的一个重要概念,主要用于描述一个函数在某个区域内的变化情况。以下是对梯度的详细解释: 一…

Qorvo® 推出具有卓越能效的新一代 Matter™ 解决方案

全新 SoC 利用 ConcurrentConnect™ 技术实现智能家居的无缝互联 Qorvo今日宣布,推出面向智能家居设备的全新片上系统(SoC)解决方案——QPG6200L,并已向主要客户提供样品。该款下一代物联网(IoT)解决方案采…

数据结构双链表和循环链表

目录 一、循环链表二、双向链表三、循环双向链表 一、循环链表 循环链表就是首尾相接的的链表,就是尾节点的指针域指向头节点使整个链表形成一个循环,这就弥补了以前单链表无法在后面某个节点找到前面的节点,可以从任意一个节点找到目标节点…

【YashanDB知识库】如何配置jdbc驱动使getDatabaseProductName()返回Oracle

本文转自YashanDB官网,具体内容请见https://www.yashandb.com/newsinfo/7352676.html?templateId1718516 问题现象 某些三方件,例如 工作流引擎activiti,暂未适配yashandb,使用中会出现如下异常: 问题的风险及影响 …

实际有库存却提示可用量不足保存不了杂发单

财务要统计研发费用,成本的金额。研发人员没有足够的意识配合。开立请购单时兴之所致,任性自由。想弄一个项目号就弄一个。不开心就没有项目号啦。哪管他人死活。 U9的逻辑,请购单如果带入项目号(客制化的功能)&#x…

《OpenCV 计算机视觉》—— Harris角点检测、SIFT特征检测

文章目录 一、Harris 角点检测1.基本思想2.检测步骤3.OpenCV实现 二、SIFT特征检测1. SIFT特征检测的基本原理2. SIFT特征检测的特点3. OpenCV 实现 一、Harris 角点检测 OpenCV中的Harris角点检测是一种基于图像灰度值变化的角点提取算法,它通过计算每个像素点的响…

Java五子棋

目录 一:案例要求: 二:代码: 三:结果: 一:案例要求: 实现一个控制台下五子棋的程序。用一个二维数组模拟一个15*15路的五子棋棋盘,把每个元素赋值位“┼”可以画出棋…

一文说透RTMP、RTSP、RTP、HLS、MPEG-DASH

实时视频传输协议 1. RTMP(Real Time Messaging Protocol) 简介:RTMP是由Adobe公司开发的实时消息传输协议,主要用于流媒体数据的传输。它基于TCP传输,具有低延迟、高可靠性的特点。特点:RTMP支持多种视频…

9.29总结

这星期学了概率和组合数学 这是我觉得的一个有趣的题目,每个人身上都有n-1根绳子,如果组不成稳定三角,那么肯定有两个人相邻两根绳子颜色不一样,那么每两个这样的人就会贡献一个不稳定三角形,所以只要所有三角形减去每…

统信UOSv20专业版(1050)桌面操作系统设置root密码

统信UOSv20专业版(1050)桌面操作系统设置root密码 1. 系统版本信息 版本信息 kalamiuos:~$ uname -r 4.19.0-amd64-desktop kalamiuos:~$ kalamiuos:~$ uname -a Linux uos 4.19.0-amd64-desktop #5310 SMP Mon Oct 10 19:43:13 CST 2022 x86_64 GNU/Linux kalamiuos:~$ kal…

Vue3-TS-Lodash:理解Lodash / 常用方法积累

一、Lodash官网 Lodash 简介 | Lodash中文文档 | Lodash中文网 二、理解Lodash Lodash 是一个一致性、模块化、高性能的 JavaScript 实用工具库。它提供了大量的函数来帮助你处理数组、数值、对象、字符串等,使你的代码更加简洁、易读和高效。Lodash 的设计哲学是…

【Mybatis篇】动态SQL的详细带练

🧸安清h:个人主页 🎥个人专栏:【计算机网络】 🚦作者简介:一个有趣爱睡觉的intp,期待和更多人分享自己所学知识的真诚大学生。 文章目录 🎯一.动态SQL简单介绍 🚦动态S…

端侧Agent系列 | 端侧AI Agent任务拆解大师如何助力AI手机?(详解版)

引言 简介 Octo-planner 规划和执行Agent框架 规划数据集 基准设计 实验设计 结果 全量微调与LoRA 多LoRA训练与合并 不同基础模型的全量微调 不同数据集大小的全量微调 总结 实战 英文 中文示例1: 中文示例2: 0. 引言 人生到处知何似…

【有啥问啥】具身智能(Embodied AI):人工智能的新前沿

具身智能(Embodied AI):人工智能的新前沿 引言 在人工智能(AI)的进程中,具身智能(Embodied AI)正逐渐成为研究与应用的焦点。具身智能不仅关注于机器的计算能力,更强调…

排序算法的分析和应用

自己设计一个长度不小于10的乱序数组,用希尔排序,自己设定希尔排序参数 画出每一轮希尔排序的状态 自己设计一个长度不小于10的乱序数组,用堆排序,最终要生成升序数组,画出建堆后的状态 画出每一轮堆排序的状态 自…

【C++并发入门】摄像头帧率计算和多线程相机读取(上):并发基础概念和代码实现

前言 高帧率摄像头往往应用在很多opencv项目中,今天就来通过简单计算摄像头帧率,抛出一个单线程读取摄像头会遇到的问题,同时提出一种解决方案,使用多线程对摄像头进行读取。同时本文介绍了线程入门的基础知识,讲解了…

【OS】计算机系统概述|操作系统基本概念|并发|并行|虚拟异步

✨ Blog’s 主页: 白乐天_ξ( ✿>◡❛) 🌈 个人Motto:他强任他强,清风拂山冈! 🔥 所属专栏:C深入学习笔记 💫 欢迎来到我的学习笔记! 前言 一、操作系统的概念 操作系统…

如何使用ssm实现基于Java的高校物业工程报修系统

TOC ssm736基于Java的高校物业工程报修系统jsp 绪论 1.1研究背景与意义 信息化管理模式是将行业中的工作流程由人工服务,逐渐转换为使用计算机技术的信息化管理服务。这种管理模式发展迅速,使用起来非常简单容易,用户甚至不用掌握相关的专…

2. 将GitHub上的开源项目导入(clone)到(Linux)服务器上——深度学习·科研实践·从0到1

目录 1. 在github上搜项目 (以OpenOcc为例) 2. 转移到码云Gitee上 3. 进入Linux服务器终端 (jupyter lab) 4. 常用Linux命令 5. 进入对应文件夹中导入项目(代码) 注意:系统盘和数据盘 1. 在github上搜项目 (以OpenOcc为例) 把链接复制下…