当前位置: 首页 > news >正文

NICEGUI---ROS开发之中常用的GUI工具

0. 简介

对于ROS来说,如果不具备一定知识的人员来使用这些我们写的算法,如果说没有交互,这会让用户使用困难,所以我们需要使用GUI来完成友善的数据交互,传统的GUI方法一般有PYQT这类GUI方法,但是这类GUI工具上手门槛较高,也不太适合快速且敏捷的可视化界面开发。NiceGUI 是一个易于使用、基于Python的用户界面框架,它显示在Web浏览器里,可创建按钮,对话框,markdown,3D场景,绘图等。它非常适用于小型网页应用、仪表盘、机器人项目、智能家居解决方案和类似的场景。相关代码也已经全部在Github上开源了。
在这里插入图片描述

1. 具体功能

我们打开NICEGUI官网就可以看到NICEGUI支持一些写法了,具体支持

- 交互- 按钮、滚动条、输入框- 提醒、对话、菜单- 键盘输入- ...- 样式设计- 自定义颜色主题- 自定义CSS- 现代设计风格素材- 内置Taiwind- 布局- 导航栏、选项卡、面板、...- 用行、列和卡片分组- HTML 和降价元素- 默认Flex- 代码- 实时- 代码更改时隐式重新加载- 直接的数据绑定- 在 Python 内执行 javascript- 可视化- 图表、图表和表格- 3D场景- 进度条- 用于数据刷新的内置定时器
...

在这里插入图片描述

2. 环境安装

对于nicegui来说安装很简单,即使用下面指令安装即可

python3 -m pip install nicegui

如果想要使用Docker,也可以使用multi-arch Docker image,在拉下docker后,就可以通过下面的指令运行含有NICEGUI的docker环境了

docker run --rm -p 8888:8080 -v $(pwd):/app/ -it zauberzeug/nicegui:latest

这将使用当前目录中的代码在http://localhost:8888上启动服务器。包含ui.run(port=8080,…)命令的文件必须命名为main.py。代码修改会触发自动重载。

3. 常见api以及在ROS中的使用

NICEGUI中也有良好的API以供读者参考,我们可以在https://nicegui.io/reference中找到NICEGUI常用的API。代码简单易懂,很值得试一下
在这里插入图片描述
下面我们根据API可以完成最简单的与ros联合的代码,这里将/status/odometry获取,并通过NICEGUI完成消息的显示整合以及发送

…详情请参照古月居

相关文章:

NICEGUI---ROS开发之中常用的GUI工具

0. 简介 对于ROS来说,如果不具备一定知识的人员来使用这些我们写的算法,如果说没有交互,这会让用户使用困难,所以我们需要使用GUI来完成友善的数据交互,传统的GUI方法一般有PYQT这类GUI方法,但是这类GUI工…...

高盐废水除钙镁的技术解析

高盐废水指含有机物和至少总溶解固体(totaldissolvedsolids,tds)的质量分数大于3.5%的废水,具有水量大,无机盐离子k、na、ca2、mg2、cl-、so42-等含量高,水质水量变化大,成分复杂,难生化降解等特…...

回文日期门牌制作

题目: 题目描述 如果将这个日期按 “yyyymmdd” 的格式写成一个 8 位数是 20200202,恰好是一个回文数。我们称这样的日期是回文日期。20200202 并不仅仅是一个回文日期,还是一个 ABABBABA 型的回文日期。 给定一个 8 位数的日期,请…...

基于半车悬架的轴距预瞄与轴间预瞄仿真对比

目录 前言 1. 半车悬架模型 2.轴距预瞄(单点预瞄)和轴间预瞄(两点预瞄)原理与仿真分析 2.1轴距预瞄(单点预瞄) 2.1.1预瞄原理 2.2.轴间预瞄(两点预瞄) 2.2.1预瞄原理 2.3仿真分析 3.总结 前言 对于悬架而言,四个车轮实际的输入信息是受到前后延时以及左右相…...

Linux开发 安装JDK8、p4

前面的笔记: Linux 学习笔记1 安装linux详细教程_linux系统 setting_O丶ne丨柒夜的博客-CSDN博客 Linux 学习笔记2 常用命令_O丶ne丨柒夜的博客-CSDN博客 Linux 学习笔记3 权限管理 定时任务 网络配置_O丶ne丨柒夜的博客-CSDN博客 安装配置 安装配置JDK8 Java …...

基于 x86 SoC 的车辆智能驾驶舱和ADAS设计(一)

随着汽车成为软件定义的自动化领域的中心,英特尔致力于提供从汽车到云的可扩展安 全解决方案来加快从高级驾驶员辅助系统(ADAS)到全自动汽车为自动驾驶提供技术支持。 2016 年 3 月,英特尔斥资 153 亿美元收购了以色列高级辅助驾驶系统企业 Mobileye。20…...

类模板函数模板

准备看个项目找实习&#xff0c;边看边学&#xff0c;一看到处都是template 和typename&#xff0c;好几年前学的C都忘记光了&#xff0c;在这里先做个笔记复习一下。template <class T> T abs(T x) {if(x < 0) return -x;return x; } int main() {int x 1;cout <…...

Leetcode DAY 56: 两个字符串的删除操作 and 编辑距离

583. 两个字符串的删除操作 1 、 dp[i][j] 表示 让以word1[i - 1]为结尾的字符串 和 以word2[i - 2]为结尾的字符串 相等需要删除的最少次数 1、dp[i][j] 的 递推需要考虑两种情况&#xff1a; &#xff08;1&#xff09;word1[i - 1] word2[j - 1] 相当于不考虑word1[i]和…...

系统检测维护工具Wsycheck使用(18)

实验目的 &#xff08;1&#xff09;学习Wsycheck的基本功能&#xff1b; &#xff08;2&#xff09;掌握Wsycheck的基本使用方法&#xff1b; 预备知识 windows操作系统的基本知识如&#xff1a;进程、网络、服务和文件等的了解。 Wsycheck是一款强大的系统检测维护工具,进程和…...

111 ok

全部 答对 答错 单选题 1.在与团队一起召开开工会议之后&#xff0c;项目经理分配工作活动&#xff0c;由于与其职能经理分配的任务发生冲突&#xff0c;一位团队成员拒绝开始工作&#xff0c;项目经理首先应该做什么&#xff1f; A请项目发起人帮助与职能经理进行谈判 B签发…...

Python API教程:API入门

什么是API&#xff1f; 一个API&#xff0c;或被称为应用程序接口&#xff0c;是一个服务器为你提供一个接收或发送数据的代码。API通常用来接收数据。 本文就集中焦点在此话题中。 当我们想从一个API中接收数据&#xff0c;我们需要开始请求。请求可以包含整个Web。例如&am…...

SpringMVC学习笔记

文章目录一、SpringMVC简介1、MVC与三层架构1.1 M1.2 V1.3 C1.4 MVC模式的工作流程1.5 三层架构2、什么是SpringMVC3、SpringMVC的特点二、搭建项目框架1、web项目结构2、创建maven工程&#xff0c;配置pom.xmla>添加web模块b> pom.xml中设置打包方式&#xff1a;warc>…...

Linux学习记录01

文章目录1. Linux基础知识2. Linux常用命令2.1 基础知识2.2 ls命令2.3 cd pwd命令2.4 mkdir2.5 touch、cat、more2.6 cp、mv、rm2.7 通配符、root模式2.8 whicih、find命令2.9 grep、mc、| 管道符2.10 echo、反引号、tail、重定向符2.11 vi、vm文本编辑器1. Linux基础知识 Lin…...

VScode 插件【配置】

写这篇博客的原因&#xff1a; vscode 很久以前的插件&#xff0c;忘记是干什么的了记录 vscode 好用的插件 插件介绍&#xff08;正文开始&#xff09; Auto Rename tag 开始/关闭标签内容 同步 Chinese (Simplified) VScode 中文化 CSS Peek 通过 html 代码查找到引用的样式…...

基于 Rainbond 的 Pipeline(流水线)插件

背景 Rainbond 本身具有基于源码构建组件的能力&#xff0c;可以将多种编程语言的代码编译成 Docker 镜像&#xff0c;但是在持续集成的过程中&#xff0c;往往会需要对提交的代码进行静态检查、构建打包以及单元测试。之前由于 Rainbond 并没有 Pipeline 这种可编排的机制&am…...

ASGARD:单细胞导向的药物发现

异质性&#xff0c;或更具体地说&#xff0c;病变组织中的不同的细胞群&#xff0c;是许多复杂疾病治疗失败的主要原因&#xff08;如癌症、阿尔茨海默症、中风和COVID-19等&#xff09;&#xff0c;也是精准医疗成功的主要障碍。近年来&#xff0c;单细胞技术&#xff0c;特别…...

js-DOM03-事件

事件&#xff08;Event&#xff09; - 事件对象 - 当响应函数被调用时&#xff0c;浏览器每次都会将一个事件对象作为实参传递进响应函数中&#xff0c; 这个事件对象中封装了当前事件的相关信息&#xff0c;比如&#xff1a;鼠标的坐标&#xff0c;键盘的按键…...

天梯赛题目练习L1-007--L1-009

1、L1-007 念数字 题目详情 - L1-007 念数字 (pintia.cn) 分数 10 输入一个整数&#xff0c;输出每个数字对应的拼音。当整数为负数时&#xff0c;先输出fu字。十个数字对应的拼音如下&#xff1a; 0: ling 1: yi 2: er 3: san 4: si 5: wu 6: liu 7: qi 8: ba 9: jiu输入格…...

来吧!接受Kotlin 协程--线程池的7个灵魂拷问

前言 之前有分析过协程里的线程池的原理&#xff1a;Kotlin 协程之线程池探索之旅(与Java线程池PK)&#xff0c;当时偏重于整体原理&#xff0c;对于细节之处并没有过多的着墨&#xff0c;后来在实际的使用过程中遇到了些问题&#xff0c;也引发了一些思考&#xff0c;故记录之…...

Dynamic Movement Primitives (DMP) 学习

Dynamic Movement Primitives (DMP) 学习 【知乎】Dynamic Movement Primitives介绍及Python实现与UR5机械臂仿真 1. DMP的建模过程 链接&#xff1a;Dynamic Movement Primitives介绍及Python实现与UR5机械臂仿真 - 知乎 (zhihu.com) 沙漏大佬&#xff01;&#xff01;&am…...

从 SU22 到 SU24,权限检查指示符和默认值的装载与落地治理

在 SAP 权限项目里,最容易被低估的一类数据,不是用户主记录,也不是 PFCG 角色本身,而是藏在 SU22 和 SU24 背后的权限检查指示符与授权默认值。很多团队在 DEV 系统里把角色调到绿灯,以为传到 QAS 和 PRD 以后就万事大吉,结果一到回归测试,业务顾问打开 VA01、ME21N、FD…...

36种阀体混线全自动智能分拣方案|3D视觉+机器人柔性制造实践

一、项目背景与行业痛点在高端流体控制设备制造领域&#xff0c;阀体、阀盖的精密分拣是保障产品质量的核心环节。随着工业设备向小型化、高精度方向发展&#xff0c;客户对阀体组件加工误差的控制要求持续提升&#xff0c;传统生产模式面临显著瓶颈&#xff1a;1. 人工分拣效率…...

本地代码解释器:基于LLM与Docker沙箱的AI编程助手实现

1. 项目概述&#xff1a;一个本地化的代码解释器最近在GitHub上看到一个挺有意思的项目&#xff0c;叫Allen091080/local-code-interpreter。光看名字&#xff0c;很多开发者可能就会心一笑&#xff0c;这不就是想在本地复现类似ChatGPT Code Interpreter那种“对话式代码执行”…...

Ziatype印相私藏工作流曝光(含自研LUT预设包+EXIF元数据注入模板,仅限本期开放下载)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Ziatype印相的技术起源与美学哲学 Ziatype&#xff08;锌盐印相法&#xff09;并非数字时代的产物&#xff0c;而是19世纪末摄影化学工艺的深度演化——它脱胎于铂金印相&#xff08;Platinotype&#…...

模块二-数据选择与索引——06. 列选择与操作

06. 列选择与操作 1. 概述 数据选择是 Pandas 最常用的操作之一。掌握列选择与操作&#xff0c;可以高效地提取、添加、修改和删除数据列。 import pandas as pd import numpy as np# 创建示例数据 df pd.DataFrame({姓名: [张三, 李四, 王五, 赵六, 钱七],年龄: [25, 30, 28,…...

大模型压缩实战:量化、剪枝与蒸馏技术解析与AngelSlim应用

1. 项目概述&#xff1a;从“大”到“小”的模型压缩革命最近在模型部署和推理优化的圈子里&#xff0c;Tencent/AngelSlim 这个项目被讨论得挺多。简单来说&#xff0c;它不是一个全新的模型&#xff0c;而是一套由腾讯开源的、专门用于大语言模型&#xff08;LLM&#xff09;…...

ClawGuard:为Clawdbot AI智能体打造的安全监控与熔断防护系统

1. 项目概述&#xff1a;ClawGuard 是什么&#xff0c;以及为什么你需要它如果你正在使用或开发基于 Clawdbot 框架的 AI 智能体&#xff0c;那么“安全”和“可控”这两个词&#xff0c;大概率已经在你脑海里盘旋过无数次了。我接触过不少团队&#xff0c;从最初的兴奋于 AI 智…...

Docker 的了解和使用

1. 虚拟化全虚拟化&#xff1a;虚拟机的操作系统可以和宿主机的操作系统完全不同。os层虚拟化&#xff1a;操作内核相同&#xff0c;软件虚拟化。2. docker安装 Docker容器本质上是Linux容器&#xff0c;它需要Linux内核环境才能运行。在Windows上直接运行Docker&#xff0c;需…...

3分钟掌握完全离线的实时语音转文字:TMSpeech让你彻底告别云端依赖

3分钟掌握完全离线的实时语音转文字&#xff1a;TMSpeech让你彻底告别云端依赖 【免费下载链接】TMSpeech 腾讯会议摸鱼工具 项目地址: https://gitcode.com/gh_mirrors/tm/TMSpeech 在数字时代&#xff0c;语音转文字已成为现代办公和学习的高效助手&#xff0c;但你是…...

ComfyUI-Impact-Pack终极指南:快速掌握AI图像增强的完整教程

ComfyUI-Impact-Pack终极指南&#xff1a;快速掌握AI图像增强的完整教程 【免费下载链接】ComfyUI-Impact-Pack Custom nodes pack for ComfyUI This custom node helps to conveniently enhance images through Detector, Detailer, Upscaler, Pipe, and more. 项目地址: ht…...