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

4.vtk光照vtkLight

文章目录

  • VTK中的光照
    • 1. vtkLight 的两种类型:位置光照和方向光照
    • 2. vtkLight 的常用方法
    • 3. 方法命名风格
    • 4. vtkProp 的可见性与 vtkLight 的开关
  • 示例

VTK中的光照

vtkLight: 用于定义一个或多个光源。每个光源可以有其颜色、位置、焦点等属性。
vtkActor: 每个vtkActor对象(代表场景中的一个对象)都有自己的属性,包括材质属性(material properties),这些属性决定了该对象如何响应光。
vtkRenderer: 负责管理场景中的所有元素,包括光源和actor,并且控制着场景的最终渲染。

1. vtkLight 的两种类型:位置光照和方向光照

位置光照 (Positional Light):也称为聚光灯(Spotlight)。光源的位置在渲染场景中的某个具体点。可以指定光源的衰减值、锥角等参数,模拟现实世界中的灯光效果。示例:台灯、手电筒等。方向光照 (Directional Light):光源位于无穷远处,光线被认为是平行的。常用于模拟自然界的太阳光。默认情况下,vtkLight 是方向光照。

关键点: 光源的方向由其位置 (SetPosition) 和焦点 (SetFocalPoint)
的连线决定。如果光源是方向光照,则它的位置可以看作是无穷远,而方向由焦点决定。

2. vtkLight 的常用方法

以下是 vtkLight 提供的一些常用方法及其作用: (1) 设置光照颜色

SetColor(double r, double g, double b):设置光源的颜色,使用 RGB 格式。参数范围通常是 [0.0, 1.0]。示例:light->SetColor(1.0, 0.0, 0.0); 将光源颜色设置为红色。

(2) 设置光源位置

SetPosition(double x, double y, double z):设置光源的位置。对于位置光照,这是光源的具体坐标。对于方向光照,这是光源的方向向量。

(3) 设置焦点

SetFocalPoint(double x, double y, double z):设置光源的焦点。光源的方向是从光源位置指向焦点。

(4) 设置光照强度

SetIntensity(double intensity):设置光源的强度,默认值为 1.0。强度越高,光照越亮。

(5) 打开或关闭光源

SetSwitch(int onOff) / SwitchOn() / SwitchOff():控制光源的开关状态。SetSwitch(1) 或 SwitchOn() 表示打开光源。SetSwitch(0) 或 SwitchOff() 表示关闭光源。GetSwitch() 返回当前光源的开关状态。

3. 方法命名风格

VTK 中的方法命名遵循一定的模式,便于理解和使用。以下是常见的命名风格:

SetXXX() 和 GetXXX():SetXXX() 用于设置某个属性的值。GetXXX() 用于获取某个属性的当前值。

示例

light->SetIntensity(2.0);  // 设置光照强度为 2.0
double intensity = light->GetIntensity();  // 获取当前光照强度

XXXOn() 和 XXXOff():

XXXOn() 等价于 SetXXX(1),表示开启某个属性。
XXXOff() 等价于 SetXXX(0),表示关闭某个属性。

示例

light->SwitchOn();  // 打开光源
light->SwitchOff(); // 关闭光源

SetPositional() 和 GetPositional():

SetPositional(int) 用于设置光源是否为位置光照。SetPositional(1) 表示启用位置光照。SetPositional(0) 表示禁用位置光照(即使用方向光照)。
GetPositional() 返回当前光源是否为位置光照。

示例:

 light->SetPositional(1);  // 启用位置光照
bool isPositional = light->GetPositional();  // 检查是否为位置光照

4. vtkProp 的可见性与 vtkLight 的开关

在 VTK 中,类似的命名风格不仅适用于 vtkLight,还适用于其他类,例如 vtkProp(所有可视化对象的基类)。以下是一些类比:

vtkProp 的可见性控制:SetVisibility(int) / GetVisibility() / VisibilityOn() / VisibilityOff()。

示例:

actor->VisibilityOn();  // 显示对象
actor->VisibilityOff(); // 隐藏对象

vtkLight 的开关控制:

SetSwitch(int) / GetSwitch() / SwitchOn() / SwitchOff()。

示例:

light->SwitchOn();  // 打开光源
light->SwitchOff(); // 关闭光源

示例

#include <iostream>
#include <vtkSmartPointer.h>
#include <vtkRenderWindow.h>
#include <vtkRenderer.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkInteractorStyleTrackballCamera.h>
#include <vtkCylinderSource.h>
#include <vtkPolyDataMapper.h>
#include <vtkActor.h>
#include <vtkProperty.h>
#include <vtkAutoInit.h>
#include <vtkSphereSource.h>
#include <vtkLineSource.h>
#include <vtkPlaneSource.h>
#include <vtkLight.h>
#include <vtkNamedColors.h>
using namespace std;VTK_MODULE_INIT(vtkRenderingOpenGL2);
VTK_MODULE_INIT(vtkInteractionStyle);
VTK_MODULE_INIT(vtkRenderingFreeType);int main()
{vtkNew<vtkNamedColors> colors;// 创建球体数据源vtkNew<vtkSphereSource> sphereSource;sphereSource->SetCenter(0.0, 0.0, 0.0);sphereSource->SetRadius(1.0);// 映射器vtkNew<vtkPolyDataMapper> mapper;mapper->SetInputConnection(sphereSource->GetOutputPort());// 创建演员vtkNew<vtkActor> actor;actor->SetMapper(mapper);actor->GetProperty()->SetColor(colors->GetColor3d("MistyRose").GetData());// 渲染器vtkNew<vtkRenderer> renderer;renderer->AddActor(actor);renderer->SetBackground(0.0, 1.0, 0.0);// 添加光源vtkNew<vtkLight> light;light->SetPositional(1);  // 设置为位置光照light->SetPosition(1, 1, 1);light->SetFocalPoint(0, 0, 0);light->SetConeAngle(30);light->SetDiffuseColor(colors->GetColor3d("White").GetData());light->SetSpecularColor(colors->GetColor3d("White").GetData());light->SetIntensity(2.0);  // 设置光照强度light->SwitchOn();         // 打开光源//light->SwitchOff();renderer->AddLight(light);// 渲染窗口vtkNew<vtkRenderWindow> renderWindow;renderWindow->AddRenderer(renderer);renderWindow->SetSize(640, 480);renderWindow->SetWindowName("LightingExample");// 渲染窗口交互器vtkNew<vtkRenderWindowInteractor> renderWindowInteractor;renderWindowInteractor->SetRenderWindow(renderWindow);// style风格vtkNew<vtkInteractorStyleTrackballCamera> style;renderWindowInteractor->SetInteractorStyle(style);  // 修正:通过交互器设置样式// 开始渲染renderWindow->Render();renderWindowInteractor->Start();return 0;
}

在这里插入图片描述

相关文章:

4.vtk光照vtkLight

文章目录 VTK中的光照1. vtkLight 的两种类型&#xff1a;位置光照和方向光照2. vtkLight 的常用方法3. 方法命名风格4. vtkProp 的可见性与 vtkLight 的开关 示例 VTK中的光照 vtkLight: 用于定义一个或多个光源。每个光源可以有其颜色、位置、焦点等属性。 vtkActor: 每个vtk…...

定义AIDL 接口

目录 定义 AIDL 接口创建 .aidl 文件实现 AIDL 接口向客户端公开接口接口的版本兼容性小结1. 定义 AIDL 接口 AIDL 接口是什么? 概念 AIDL(Android 接口定义语言)用来定义跨进程通信(IPC)的接口。简单来说,它规定了客户端和服务端之间如何进行数据交换和方法调用。.aidl…...

Linux系统-scp命令--两台服务器之间传输文件

一、定义 scp是secure copy的简写&#xff0c;scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令&#xff0c;可以在linux服务器之间复制文件和目录&#xff0c;scp传输是加密的&#xff0c;可能会稍微影响一下速度。另外&#xff0c;scp还非常不占资源&#xff0c;不会提…...

Visual Studio + OpenCV C++ 安装与配置教程

OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉库,广泛用于图像处理、视频分析、模式识别和机器学习等领域。它由Intel公司于1999年发起,并在2000年由Willow Garage(一个机器人研究机构)进一步开发和维护。OpenCV支持多种编程语言,包括C++、Python…...

怎么通过OPPO手机进行图片编辑?图片编辑攻略,打造专业级照片

在当今数字化时代&#xff0c;手机摄影已成为记录生活、分享瞬间的重要方式。而作为市场上广受欢迎的智能手机品牌之一&#xff0c;OPPO手机不仅在摄影硬件上表现出色&#xff0c;其内置的图片编辑功能也极为强大&#xff0c;能够满足使用者从基础调整到高级创作的各种需求。本…...

基于MFC 的链接库

1. 动态库 MFC Regular dll: ① DLL内部有一个CWinApp类全局对象(像是基于mfc的exe程序那样存在一个theApp)&#xff0c;该CWinApp类的Initstance负责执行dll内部初始化。 ② DLL不能人为提供Dllmain函数&#xff0c;该函数由mfc库提供。 ③在visual studio 的工程配置中&a…...

2025.04.15【Connection】| 生信数据可视化:连接图绘制指南

文章目录 生信数据可视化&#xff1a;连接图绘制指南什么是连接地图&#xff1f;为什么使用连接地图&#xff1f;如何在R中创建连接地图&#xff1f;1. 安装和加载必要的库2. 准备数据3. 计算大圆航线的距离和方位角4. 创建连接地图 高级技巧1. 自定义地图样式2. 添加地理背景 …...

回溯算法:List 还是 ArrayList?一个深拷贝引发的思考

在学习和使用回溯算法解决问题时&#xff0c;我们经常会遇到需要维护一个结果列表&#xff0c;例如所有可能的子集、组合或排列。 这个结果列表通常是一个 List<List<Integer>>&#xff0c;其中内部的 List<Integer> 代表一个具体的解。 然而&#xff0c;在…...

WPS表格中设置折线图随数据列自动变化——存钱计划

效果展示&#xff1a; wps自动更新表格 1.公式>名称管理器>新建 2.修改名称和引用位置 OFFSET(Sheet1!$A$2,0,0,COUNTA(Sheet1!$A:$A)-1,1) 3.插入>图表 4.右键>选择数据 5.添加&#xff0c;输入名称和系列值。 Sheet1!名称管理器里的名字 标签分类里也填入 6如图…...

内网Windows挂载目录到公网服务器

工程目的 最近在研究图像生成&#xff0c;Stable Diffusion的各种模型尤其3.5以后大的飞起来&#xff0c;动不动五六十G&#xff0c;以往上传到服务器费时费力占带宽又占存储空间&#xff0c;更关键的是用学校服务器只能校园网才能上&#xff0c;上传传个半天第二天来一看发现…...

ffmpeg命令(一):信息查询命令

媒体文件信息查看 命令说明ffmpeg -i input.mp4查看媒体文件基本信息&#xff08;封装格式、编解码器、时长等&#xff09;ffprobe input.mp4使用专用工具查看详细信息ffprobe -v error -show_format -show_streams input.mp4输出格式和流的详细信息ffprobe -v quiet -print_f…...

2 cline 提示词工程指南-记忆库

cline 提示词工程指南-记忆库 前言 编程&#xff0c;就是搭建一个系统&#xff0c;该系统在编程过程中逐步长成&#xff0c;最后该系统可以完成某个具体任务。 显然&#xff0c;编程是一个需要仔细规划、逐步推进的系统性、流程性、逻辑性工作。 我们的 ai 能胜任么&#x…...

VueDOMPurifyHTML 防止 ​​XSS(跨站脚本攻击)​​ 风险

VueDOMPurifyHTML 是一个 ​​Vue.js 插件​​&#xff0c;用于在 v-html 指令中安全地渲染 HTML 内容&#xff0c;防止 ​​XSS&#xff08;跨站脚本攻击&#xff09;​​ 风险。 ​​作用​​ ​​解决 v-html 的安全问题​​ Vue 的 v-html 会直接渲染原始 HTML&#xff0…...

关于SQLite轻量数据库的研究

安装本地SQLite 下载地址&#xff1a; https://www.sqlite.org/download.html 下载这两个包 解压到本地&#xff0c;得到这几个文件&#xff1a; 将解压后的目录添加到Path环境变量中&#xff1a; 在cmd中输入 “sqlite3” 和 “.open D:\work\sqliteInstall\mytestdb.…...

使用Python爬取豆瓣电影Top250并保存到Excel完整教程

在当今数据驱动的时代&#xff0c;获取和分析网络数据已成为许多领域的重要技能。本文将详细介绍如何使用Python爬取豆瓣电影Top250榜单数据&#xff0c;并将结果保存到Excel文件中。这个项目不仅适合Python初学者学习网络爬虫基础&#xff0c;也能帮助数据分析师获取有价值的电…...

Redis + Caffeine打造超速两级缓存架构

背景 接口的逻辑非常简单&#xff1a;根据传入的城市、仓库和发货时间&#xff0c;查询快递的预计送达时间。 然而&#xff0c;由于会频繁调用这个接口&#xff0c;尤其是在大促期间&#xff0c;接口的性能要求极高。 数据量虽然不大&#xff0c;但为了确保接口的高性能和高…...

讲讲String类的常用函数

String类在开发过程中经常用到&#xff0c;这里来总结一下。 1.声明与初始化 std::string str;//声明 std::string str "Hello, World!";//初始化 2.连接 std::string str1 "Hello, "; std::string str2 "World!"; std::string result …...

Sentinel实战教程:流量控制与Spring Boot集成

Sentinel实战教程:流量控制与Spring Boot集成 1. Sentinel简介与核心概念 1.1 什么是Sentinel? Sentinel是阿里巴巴开源的流量控制组件,主要用于微服务架构中的流量防护。它通过限流、熔断、热点防护等机制,帮助系统在高并发场景下保持稳定运行。 1.2 核心功能与术语 流…...

【计算机系统结构】MIPSsim

目录 双击MIPSsim.exe 问题1&#xff1a;Microsoft Defender SmartScreen阻止了无法是被的应用启动&#xff0c;运行此应用可能会导致你的电脑存在风险 解决 出现下面的问题的话&#xff0c;建议直接在官网下载 问题2&#xff1a;.NET Framework 3.5安装错误代码0x80240438 …...

Charles 安装与使用详解:实现 App 与小程序 HTTPS 抓包

在日常的移动端开发、接口调试或逆向分析中&#xff0c;我们经常需要抓取移动 App 或微信小程序的 HTTP/HTTPS 请求。Charles 是一款经典强大的代理抓包工具&#xff0c;凭借简单的界面和强大的功能&#xff0c;成为了 macOS 抓包的首选工具之一。 本文将详细介绍 Charles 的安…...

0415美团面试题目详解

基础知识型,基础知识!!! margin-top:100%(基于父元素宽度) “margin-top: 100% 表示元素的上外边距为父元素宽度的 100%。例如,若父元素宽 300px,则上边距为300px。需注意,CSS 中垂直方向的百分比边距(如 margin-top/margin-bottom)均基于父元素宽度计算,而非高度。这…...

【微信小程序】报错: http://127.0.0.1:7001 不在以下 request 合法域名列表中

问题 微信小程序报错: http://127.0.0.1:7001 不在以下 request 合法域名列表中&#xff0c;请参考文档&#xff1a;https://developers.weixin.qq.com/miniprogram/dev/framework/ability/network.html(env: Windows,mp,1.05.2204250; lib: 3.0.2) 解决方法&#xff1a; 详…...

go的json unmarshal和 k8s的deepcopy对比

Go 的 encoding/json.Unmarshal 和 Kubernetes 的 DeepCopy 虽然都依赖反射&#xff0c;但性能差异显著。以下是两者的对比分析及性能优化原理&#xff1a; 一、反射实现差异 1. json.Unmarshal 的反射特点 动态类型解析&#xff1a;需在运行时解析 JSON 结构&#xff0c;通过…...

1. k8s的简介

Kubernetes&#xff08;k8s&#xff09;简介 1. 产生背景 随着云计算和微服务架构的兴起&#xff0c;传统的单体应用逐渐被拆分为多个小型、松耦合的服务&#xff08;微服务&#xff09;。这种架构虽然提升了开发灵活性和可维护性&#xff0c;但也带来了新的挑战&#xff1a;…...

华为云CloudMatrix 384 超节点将有数万规模上线,赋能AI产业发展

近日&#xff0c;华为公司副总裁张修征表示&#xff0c;华为云 CloudMatrix 384 超节点今年上半年将有数万规模的上线&#xff0c;这或将彻底终结算力焦虑。未来&#xff0c;CloudMatrix 超节点可以构建超过万片的大集群来提供算力。 CloudMatrix 384超节点 华为云 CloudMatri…...

Java基础 4.15

1.重载方法练习 /* 类Methods中定义三个重载方法并调用 方法名为m 分别接受一个int参数 两个int参数 一个字符串参数 分别执行平方运算并输出 相乘并输出结果 输出字符串信息 在main()方法中分别用参数区别调用三个方法 */ public class OverLoadExercise01 {public static v…...

现代c++获取linux系统架构

现代c获取linux系统架构 前言一、使用命令获取系统架构二、使用c代码获取系统架构三、验证四、总结 前言 本文介绍一种使用c获取linux系统架构的方法。 一、使用命令获取系统架构 linux系统中可以使用arch或者uname -m命令来获取当前系统架构&#xff0c;如下图所示 archuna…...

shell编程之函数与数组

目录 shell函数 函数的用法 俩个数求和 系统资源监控并报警函数 函数变量的作用范围 函数的参数 递归函数 shell数组 获取数组的长度 读取某下的标赋值 数组遍历 数组切片 数组替换 数组删除 shell脚步调试 shell函数 函数的用法 Shell函数可用于存放一系列的…...

IntelliJ IDEA 中最常用的快捷键分类整理

以下是 IntelliJ IDEA 中最常用的快捷键分类整理&#xff0c;适用于 Windows/Linux&#xff08;Mac 用户将 Ctrl 替换为 ⌘&#xff0c;Alt 替换为 Option&#xff09;&#xff1a; 一、编辑相关 快捷键功能说明Ctrl Space基础代码补全Ctrl Shift Space智能类型补全Ctrl P…...

大数据面试问答-Kafka/Flink

1. Kafka 1.1 定位 分布式流数据平台&#xff0c;核心解决三大问题&#xff1a; 高吞吐的实时数据管道&#xff1a;支持每秒百万级消息处理。 持久化的消息队列&#xff1a;消息持久化到磁盘&#xff0c;支持多订阅者。 流式数据处理&#xff1a;与 Flink/Spark Streaming 集…...

工厂园区光储充能量管理系统解决方案——助力高效用能与低碳运营

园区痛点&#xff1a;电费高、能效低、碳排压力大 安科瑞 郭海棚 198 21380729 电费成本高&#xff1a;峰谷电价差显著&#xff0c;尖峰时段用电成本激增。设备能效低&#xff1a;老旧设备能耗高&#xff0c;缺乏实时监控与优化手段。供电稳定性差&#xff1a;生产设备突发停电…...

Windows10下Jekyll博客部署全指南|解决GitHub模板运行失败问题

场景&#xff1a;在GitHub拉取的一个Jekyll博客网站运行不起来 这是想要实现的效果 这是项目代码 概要 前置要求 git版本控制工具已安装windows10环境GitHub可以正常上网 相关问题 Jekyll博客部署常见错误GitHub模板运行失败解决方法Windows10环境变量配置Ruby版本兼容性问…...

数字IC设计-VCS和Verdi的使用

#学习记录# 前言&#xff1a;本文以一个简单的计数器来说明vcs和verdi的使用 1 代码文件 1.1 计数器代码 //Engineer&#xff1a;Mr-pn-junction module counter(input clk,input rst,output reg [5:0] count); always(posedge clk or negedge rst)beginif(!rst)coun…...

FastAPI基础知识点精要

一、核心性能优势 1. 异步编程支持 原生async/await语法‌&#xff1a;支持非阻塞IO操作&#xff0c;轻松处理高并发场景‌ASGI协议实现‌&#xff1a;基于Starlette框架构建&#xff0c;支持WebSocket等实时协议‌性能基准‌&#xff1a;测试显示响应速度比Flask快3-5倍&…...

<uniapp><websocket><http>基于uniapp,手机客户端通过websocket进行数据通讯(二维码扫码数据)

前言 本专栏是基于uniapp实现手机端各种小功能的程序,并且基于各种通讯协议如http、websocekt等,实现手机端作为客户端(或者是手持机、PDA等),与服务端进行数据通讯的实例开发。 发文平台 CSDN 环境配置 系统:windows 平台:visual studio code、HBuilderX(uniapp开…...

GitLab-获取token(访问令牌)

一、操作步骤 GitLab-获取token&#xff08;访问令牌&#xff09;主要步骤&#xff1a;以及相关截图 登录 GitLab 打开 GitLab 网站并登录你的账号。 进入用户设置 点击右上角头像 → Edit profile → 左侧菜单选择 Access Tokens。 创建 Token Token name: 输入名称&#…...

python 安装win32com.client库

win32com.client是Python中用于操作Windows COM对象的强大模块&#xff0c;特别适合与Microsoft Office应用程序(如Word、Excel、Outlook等)进行交互。 1. 安装win32com.client 需要安装pywin32库&#xff1a; pip install pywin32如果安装失败或速度慢&#xff0c;可以使用国…...

流量统计--Maven依赖

新建项目Flow 创建依赖&#xff0c;在pm.xml里添加如下内容&#xff1a; <!-- 添加hadoop-client 3.1.3的依赖--> <dependencies> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>…...

L1-6 大勾股定理(PTA)

大勾股定理是勾股定理的推广&#xff1a;对任何正整数 n 存在 2n1 个连续正整数&#xff0c;满足前 n1 个数的平方和等于后 n 个数的平方和。例如对于 n1 有 324252&#xff1b;n2 有 102112122132142 等。给定 n&#xff0c;本题就请你找出对应的解。 输入格式&#xff1a; …...

HarmonyOS-ArkUI V2装饰器: @Computed装饰器:计算属性

引 @Computed是用来装饰一个自己写的getter方法的装饰器,它可以让您像用平常的状态变量那样去用这个getter方法。那么getter方法里怎么获取的值,必然涉及到您写的逻辑。这个逻辑可以是很复杂的一种计算方式,经过一系列复杂方式计算完您吐出相应的结果即可。 为了便于理解,…...

豆瓣图书数据采集与可视化分析

文章目录 一、适用题目二、豆瓣图书数据采集1. 图书分类采集2. 爬取不同分类的图书数据3. 各个分类数据整合 三、豆瓣图书数据清洗四、数据分析五、数据可视化1. 数据可视化大屏展示 源码获取看下方名片 一、适用题目 基于Python的豆瓣图书数据采集与分析基于Python的豆瓣图书…...

网络安全·工具篇1·Nmap的运用

今天我们要介绍网络安全中常用的一种扫描工具Nmap&#xff0c;它被设计用来快速扫描大型网络&#xff0c;主要功能包括主机探测、端口扫描以及版本检测&#xff0c;小编将在下文详细介绍Nmap相应的命令。 Nmap的下载安装地址为&#xff1a;Nmap: the Network Mapper - Free Se…...

MVCC详细介绍及面试题

目录 1.什么是mvcc&#xff1f; 2.问题引入 3. MVCC实现原理&#xff1f; 3.1 隐藏字段 3.2 undo log 日志 3.2.1 undo log版本链 3.3 readview 3.3.1 当前读 ​编辑 3.3.2 快照读 3.3.3 ReadView中4个核心字段 3.3.4 版本数据链访问的规则&#xff08;了解&#x…...

designware IP如何被FPGA综合

DW的IP要被vivado等综合还是很麻烦的&#xff0c;而是用synplify等综合工具&#xff0c;然后再嫁接到vivado中也非常麻烦。本文提供一种解决办法。 1. 对DW的IP进行gtech综合。即使用DC工具对DW IP进行综合。而使用的综合库是gtech。脚本如下&#xff1a; set target_library…...

图像预处理-色彩空间补充,灰度化与二值化

一.图像色彩空间转换 1.1 HSV颜色空间 HSV颜色空间使用色调&#xff08;Hue&#xff09;、饱和度&#xff08;Saturation&#xff09;和亮度&#xff08;Value&#xff09;三个参数来表示颜色 一般对颜色空间的图像进行有效处理都是在HSV空间进行的&#xff0c;然后对于基本…...

C语言socket绑定本地端口和查询

查询 // 查询本地地址和端口&#xff08;在没有绑定的情况下&#xff0c;系统会自动分配一个端口&#xff09;struct sockaddr_in local_addr;socklen_t addr_len sizeof(local_addr);if (getsockname(sockfd, (struct sockaddr*)&local_addr, &addr_len) 0) {std::c…...

Centos7编译安装sudosh2

Centos7编译安装sudosh2 sudosh2简介安装sudoshCentos7编译安装sudosh2步骤 1&#xff1a;Debian安装 sudosh步骤 2&#xff1a;配置 sudosh步骤 3&#xff1a;查看会话记录重播会话注意事项 sudosh2简介 sudosh2项目地址: https://github.com/squash/sudosh2 虽然项目已经停…...

C#使用httpClient.PostAsync()界面卡死

背景&#xff1a;部分代码移植后运行到httpClient.PostAsync()时界面就卡死。 代码片段&#xff1a; 解决办法&#xff1a; 把HttpResponseMessage response await httpClient.PostAsync(requestUrl, content); 改为HttpResponseMessage response httpClient.PostAsync(req…...

基于深度学习的狗鼻纹身份识别

基于深度学习的狗鼻纹身份识别 1. 技术背景 根据GMI报告&#xff0c;2020年全球宠物护理市场规模超过2320亿美元。随着宠物经济的快速发展&#xff0c;宠物福利问题日益突出。在宠物管理、交易、保险、医疗等许多场景中&#xff0c;宠物识别是一个具有挑战性的问题&#xff0…...

面试题:Eureka和Nocas的区别

Eureka 与 Nacos 核心区别对比 一、功能定位与核心能力 ‌维度‌‌Eureka‌‌Nacos‌‌核心功能‌专注服务注册与发现&#xff0c;无配置管理功能‌:ml-citation{ref“1,3” data“citationList”}集成服务注册、发现、配置管理、动态DNS等‌:ml-citation{ref“1,3” data“c…...