【四】3D Object Model之创建Creation——write_object_model_3d()算子

2023-11-29 14:52

本文主要是介绍【四】3D Object Model之创建Creation——write_object_model_3d()算子,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


😊😊😊欢迎来到本博客😊😊😊

🌟🌟🌟 Halcon算子太多,学习查找都没有系统的学习查找路径,本专栏主要分享Halcon各类算子含义及用法,有时间会更新具体案例。

😊😊😊 具体食用方式:可以点击本专栏【Halcon算子快速查找】–>搜索你要查询的算子名称;或者点击Halcon算子汇总博客,即可食用。

🎁🎁🎁支持:如果觉得博主的文章还不错或者您用得到的话,可以悄悄关注一下博主哈,如果三连收藏支持就更好啦!这就是给予我最大的支持!😙😙😙


文章目录

  • 学习目标
  • 学习内容
    • 1、write_object_model_3d()
      • Halcon例程
  • 【3D Object Model之创建Creation】 待更新算子
  • 汇总

学习目标

  • write_object_model_3d()

学习内容

算子简介

函数名解释
write_object_model_3d()保存一个3D对象模型。

1、write_object_model_3d()

  write_object_model_3d( : : ObjectModel3D, FileType, FileName, GenParamName, GenParamValue : )

  函数说明:操作符write_object_model_3d将3d对象模型ObjectModel3D写入文件FileName。对象模型可以用read_object_model_3d再次读取,也可以导入到适当的CAD程序中。请注意,基元只能以HALCON格式“om3”存储。如果需要以另一种格式存储基元,则必须事先调用操作符sample_object_model_3d。然而,这导致了基元到3D点的转换,并且因此仅对应于基元的近似。
  所有坐标都以米为单位。如果以后使用read_object_model_3d读取文件,则必须将参数Scale设置为’m’以避免缩放数据。

  函数参数:
    ObjectModel3D输入 3D对象模型句柄;
    FileType输入写入的文件的类型;默认:'om3'参考: 'dxf', 'obj', 'off', 'om3', 'ply', 'ply_binary', 'stl', 'stl_ascii', 'stl_binary'具体如下:

参数名解释
'om3'使用此格式可以通过write_object_model_3d函数将文件写入。此格式的默认文件扩展名为'om3'
'dxf'AUTOCAD格式。此格式的默认文件扩展名为'dxf'
'off'Object File Format(.off)。这是一种基于ASCII的简单格式,可以存储3D点和多边形。不支持二进制OFF格式。此格式的默认文件扩展名为'off'
'ply'多边形文件格式(也称为斯坦福三角形格式)。这是一种简单的格式,可以存储3D点、点法线和多边形。HALCON支持该格式的ASCII和二进制版本。此格式的默认文件扩展名为'ply'
'obj'OBJ文件格式,也称为’Wavefront OBJ格式’。这是一种基于ASCII的格式,可以存储3D点、多边形、法线、纹理坐标、材质和其他信息。HALCON支持点('v’行)和多边形面(‘f’行)。其他实体将被忽略。此格式的默认文件扩展名为'obj'
'stl''stl_binary''stl_ascii'STL文件格式,也称为’立体光刻格式’、‘表面三角化语言’、‘标准三角化语言’和’标准三角剖分语言’。该格式存储三角形和三角形法线。然而,由于HALCON 3D对象模型不支持三角形法线,只读取三角形,而忽略三角形法线。如果需要,法线会从三角形重新计算。HALCON同时支持该格式的ASCII和二进制版本。如果设置为’stl’,HALCON将自动检测格式类型。将类型设置为’stl_binary’或’stl_ascii’将强制使用相应的格式。此格式的默认文件扩展名为'stl'

    FileName输入写入的文件的名称;参考.off, .ply, .dxf, .om3, .obj, .stl
    GenParamName输入通用参数的名称;
    GenParamValue输入通用参数的值;

  可以设置一组附加的可选参数。参数的名称和值分别在GenParamNameGenParamValue中传递。某些可选参数只能针对特定的文件类型进行设置。GenParamName具有以下值:

参数名解释
'invert_normals'在保存三维对象模型之前反转法线和面方向。如果此值设置为“true”,则对于'off''ply''obj''stl'格式,面(三角形和多边形)的方向将反转。对于支持点法线( 'ply''obj')的格式,在将所有法线写入光盘之前,将反转所有法线。请注意,对于类型'om3''dxf',该参数没有任何作用。

Halcon例程


【3D Object Model之创建Creation】 待更新算子

  • clear_object_model_3d()
  • copy_object_model_3d()
  • deserialize_object_model_3d()
  • gen_box_object_model_3d()
  • gen_cylinder_object_model_3d()
  • gen_empty_object_model_3d()
  • gen_object_model_3d_from_points()
  • gen_plane_object_model_3d()
  • gen_sphere_object_model_3d()
  • gen_sphere_object_model_3d_center()
  • read_object_model_3d()
  • serialize_object_model_3d()
  • set_object_model_3d_attrib()
  • set_object_model_3d_attrib_mod()
  • union_object_model_3d()
  • write_object_model_3d()

汇总

  本专栏博客汇总:Halcon算子汇总


🚶🚶🚶今天的文章就到这里啦~
喜欢的话,点赞👍、收藏⭐️、关注💟哦 ~

这篇关于【四】3D Object Model之创建Creation——write_object_model_3d()算子的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/433258

相关文章

无人叉车3d激光slam多房间建图定位异常处理方案-墙体画线地图切分方案

墙体画线地图切分方案 针对问题:墙体两侧特征混淆误匹配,导致建图和定位偏差,表现为过门跳变、外月台走歪等 ·解决思路:预期的根治方案IGICP需要较长时间完成上线,先使用切分地图的工程化方案,即墙体两侧切分为不同地图,在某一侧只使用该侧地图进行定位 方案思路 切分原理:切分地图基于关键帧位置,而非点云。 理论基础:光照是直线的,一帧点云必定只能照射到墙的一侧,无法同时照到两侧实践考虑:关

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

在cscode中通过maven创建java项目

在cscode中创建java项目 可以通过博客完成maven的导入 建立maven项目 使用快捷键 Ctrl + Shift + P 建立一个 Maven 项目 1 Ctrl + Shift + P 打开输入框2 输入 "> java create"3 选择 maven4 选择 No Archetype5 输入 域名6 输入项目名称7 建立一个文件目录存放项目,文件名一般为项目名8 确定

Java 创建图形用户界面(GUI)入门指南(Swing库 JFrame 类)概述

概述 基本概念 Java Swing 的架构 Java Swing 是一个为 Java 设计的 GUI 工具包,是 JAVA 基础类的一部分,基于 Java AWT 构建,提供了一系列轻量级、可定制的图形用户界面(GUI)组件。 与 AWT 相比,Swing 提供了许多比 AWT 更好的屏幕显示元素,更加灵活和可定制,具有更好的跨平台性能。 组件和容器 Java Swing 提供了许多

顺序表之创建,判满,插入,输出

文章目录 🍊自我介绍🍊创建一个空的顺序表,为结构体在堆区分配空间🍊插入数据🍊输出数据🍊判断顺序表是否满了,满了返回值1,否则返回0🍊main函数 你的点赞评论就是对博主最大的鼓励 当然喜欢的小伙伴可以:点赞+关注+评论+收藏(一键四连)哦~ 🍊自我介绍   Hello,大家好,我是小珑也要变强(也是小珑),我是易编程·终身成长社群的一名“创始团队·嘉宾”

Maven创建项目中的groupId, artifactId, 和 version的意思

文章目录 groupIdartifactIdversionname groupId 定义:groupId 是 Maven 项目坐标的第一个部分,它通常表示项目的组织或公司的域名反转写法。例如,如果你为公司 example.com 开发软件,groupId 可能是 com.example。作用:groupId 被用来组织和分组相关的 Maven artifacts,这样可以避免

MiniGPT-3D, 首个高效的3D点云大语言模型,仅需一张RTX3090显卡,训练一天时间,已开源

项目主页:https://tangyuan96.github.io/minigpt_3d_project_page/ 代码:https://github.com/TangYuan96/MiniGPT-3D 论文:https://arxiv.org/pdf/2405.01413 MiniGPT-3D在多个任务上取得了SoTA,被ACM MM2024接收,只拥有47.8M的可训练参数,在一张RTX

批处理以当前时间为文件名创建文件

批处理以当前时间为文件名创建文件 批处理创建空文件 有时候,需要创建以当前时间命名的文件,手动输入当然可以,但是有更省心的方法吗? 假设我是 windows 操作系统,打开命令行。 输入以下命令试试: echo %date:~0,4%_%date:~5,2%_%date:~8,2%_%time:~0,2%_%time:~3,2%_%time:~6,2% 输出类似: 2019_06

ORACLE 11g 创建数据库时 Enterprise Manager配置失败的解决办法 无法打开OEM的解决办法

在win7 64位系统下安装oracle11g,在使用Database configuration Assistant创建数据库时,在创建到85%的时候报错,错误如下: 解决办法: 在listener.ora中增加对BlueAeri-PC或ip地址的侦听,具体步骤如下: 1.启动Net Manager,在“监听程序”--Listener下添加一个地址,主机名写计

SAM2POINT:以zero-shot且快速的方式将任何 3D 视频分割为视频

摘要 我们介绍 SAM2POINT,这是一种采用 Segment Anything Model 2 (SAM 2) 进行零样本和快速 3D 分割的初步探索。 SAM2POINT 将任何 3D 数据解释为一系列多向视频,并利用 SAM 2 进行 3D 空间分割,无需进一步训练或 2D-3D 投影。 我们的框架支持各种提示类型,包括 3D 点、框和掩模,并且可以泛化到不同的场景,例如 3D 对象、室