Silverlight发展历程(微软2021年已经停止支持Silverlight 5)

news2025/4/21 22:27:39

文章目录

  • Microsoft Silverlight 发展历程
    • 引言
    • 起源与背景(2006-2007)
      • 互联网技术格局与微软的挑战
      • WPF/E 项目的启动
    • Silverlight 1.0 的诞生(2007)
      • 正式命名与首次发布
      • 初步的市场定位
    • Silverlight 2.0:真正的突破(2008)
      • 技术飞跃
      • 开发工具的成熟
      • 市场扩展与战略合作
    • 扩展与成熟期(2009-2010)
      • Silverlight 3.0(2009)
      • Silverlight 4.0(2010)
      • 市场渗透与竞争态势
    • 转折点:战略调整与移动化挑战(2010-2011)
      • 移动互联网的冲击
      • 战略调整的信号
    • 最后的辉煌:Silverlight 5(2011-2012)
      • Silverlight 5.0 的发布
      • Windows 8 与战略转向
      • 企业领域的深耕
    • 衰落期:HTML5 时代的到来(2012-2015)
      • 市场环境的变化
      • 浏览器支持的削减
      • 微软战略的明确转向
    • 遗产与影响(2015 年后)
      • 技术遗产的转移
      • 影响与教训
      • 企业应用中的长尾效应
    • 技术特点回顾
      • Silverlight 的主要技术特点
      • 与竞争技术的比较
    • 结论:Silverlight 的历史意义

Microsoft Silverlight 发展历程

引言

Microsoft Silverlight 是微软在 Web 多媒体和富互联网应用 (RIA) 领域的一次重要尝试,它从诞生到消亡的过程折射出了 Web 技术发展的变迁和行业格局的演变。本文将详细回顾 Silverlight 的完整发展历程,探讨其技术特点、应用场景、成功与失败的原因,以及它在互联网技术发展史上的地位和影响。

起源与背景(2006-2007)

互联网技术格局与微软的挑战

2000 年代中期,随着宽带互联网的普及,Web 应用开始向更加丰富的媒体体验和交互模式发展。当时的 Web 技术生态主要由几个关键技术主导:

  • Adobe Flash:主导着 Web 动画、游戏和富媒体内容市场
  • Java Applet:在企业应用领域有一定市场
  • AJAX:刚刚兴起,代表了基于标准的 Web 技术发展方向

微软在这一领域面临严峻挑战。Internet Explorer 虽然是主流浏览器,但在富媒体和交互体验上完全依赖第三方插件,尤其是 Adobe Flash。这一情况不符合微软的战略利益,因为它:

  1. 使微软在 Web 平台的核心体验上依赖竞争对手的技术
  2. 无法充分利用微软在桌面软件和开发工具上的技术优势
  3. 使 .NET 平台无法延伸到 Web 富媒体领域

WPF/E 项目的启动

面对这一挑战,微软在 2006 年启动了代号为 “WPF/E”(WPF Everywhere)的项目,旨在将 Windows Presentation Foundation (WPF) 技术扩展到跨平台的浏览器环境。这一项目的目标是:

  • 创建一个基于 .NET 的跨平台 Web 富客户端技术
  • 提供比 Flash 更强大的媒体和图形处理能力
  • 与现有的微软技术栈(如 Visual Studio、Expression Studio、.NET Framework)无缝集成
  • 支持 XAML(可扩展应用程序标记语言)作为声明式 UI 描述语言

2006 年 9 月,微软在 MIX 06 大会上首次展示了 WPF/E 的原型,并计划在 2007 年正式发布。

Silverlight 1.0 的诞生(2007)

正式命名与首次发布

2007 年 4 月,微软正式将 WPF/E 更名为 “Silverlight”,这一名称反映了其作为 Web "银光"的定位,并于 2007 年 9 月正式发布 Silverlight 1.0 版本。

Silverlight 1.0 的核心特性包括:

  • 基于 JavaScript 的编程模型
  • 支持播放高质量的视频和音频
  • 支持 XAML 进行用户界面描述
  • 提供基础的 2D 矢量图形和动画支持
  • 支持 Windows 和 Mac OS 平台

这一版本的 Silverlight 功能相对有限,主要聚焦于媒体播放,尚未包含完整的 .NET 运行时支持,因此开发者需要使用 JavaScript 进行编程。

初步的市场定位

Silverlight 1.0 的市场定位主要针对媒体播放和基础的富互联网应用,直接挑战 Adobe Flash 在媒体播放和简单交互应用方面的主导地位。微软通过与内容提供商的合作,特别是在流媒体领域,试图快速建立 Silverlight 的市场份额。

Silverlight 2.0:真正的突破(2008)

技术飞跃

Silverlight 2.0(原计划命名为 1.1)于 2008 年 10 月发布,代表了 Silverlight 技术的真正成熟。这一版本的核心创新是集成了精简版的 .NET Framework,称为 “.NET Framework for Silverlight”,这使得开发者可以使用 C# 或 VB.NET 进行 Silverlight 应用开发。

Silverlight 2.0 的主要技术特性包括:

  • 集成 .NET 运行时环境,支持 C# 和 VB.NET 开发
  • 引入控件框架,提供约 20 种内置 UI 控件
  • 数据绑定支持
  • 强化的网络栈,支持 REST、SOAP、RSS 等服务
  • 引入了线性布局系统,支持复杂界面设计
  • 增强的媒体支持,包括改进的流媒体能力
  • Deep Zoom 技术,支持高分辨率图像的平滑缩放

开发工具的成熟

伴随 Silverlight 2.0 的发布,微软推出了完整的开发工具链:

  • Visual Studio 2008 对 Silverlight 开发的全面支持
  • Expression Blend 2 SP1,提供专业的界面设计工具
  • 丰富的 SDK 和示例代码

这套完整的工具链是 Silverlight 相对于 Flash 的重要优势,尤其对于已熟悉 .NET 开发的企业开发者来说,显著降低了学习曲线。

市场扩展与战略合作

Silverlight 2.0 的发布使微软能够拓展其在 RIA 市场的目标:

  • 与 NBC 合作转播 2008 年北京奥运会,成为 Silverlight 的首个重要应用案例
  • 与 Netflix 合作,为其流媒体服务提供技术支持
  • 积极推进在企业应用领域的应用

Silverlight 在 2008 年获得了显著增长,到年底已有约 1 亿台设备安装了 Silverlight 运行时。

年份Silverlight 版本主要新特性安装基数估计重要事件
20071.0JavaScript 编程模型,XAML 支持<5000万首次发布
20082.0.NET Framework 集成,控件框架>1亿北京奥运会,Netflix 采用

扩展与成熟期(2009-2010)

Silverlight 3.0(2009)

Silverlight 3.0 于 2009 年 7 月发布,进一步增强了其功能集,主要改进包括:

  • 引入离线应用支持和 Out-of-Browser 功能
  • 新增 GPU 硬件加速支持
  • 加入 3D 变换能力
  • 增强了媒体功能,包括 H.264 视频支持和平滑流技术
  • 引入元素绑定数据模型
  • 新增 40 多种控件和组件
  • 增强了业务应用开发能力,包括验证和数据表单支持

Out-of-Browser 功能是 Silverlight 3.0 的重要创新,它允许 Silverlight 应用在浏览器外运行,具有更接近本地应用的体验,同时保持 Web 应用的部署和更新便利性。这一功能反映了微软将 Silverlight 定位为连接 Web 和桌面的桥梁的战略。

Silverlight 4.0(2010)

2010 年 4 月,微软发布了 Silverlight 4.0,这被认为是 Silverlight 技术最成熟的版本,主要特性包括:

  • 增强的 Out-of-Browser 体验,支持更多本地系统集成
  • 打印支持
  • 网络摄像头和麦克风支持
  • 增强的企业功能,包括更好的数据绑定和富文本编辑
  • Google Chrome 浏览器支持
  • 支持鼠标右键和滚轮事件
  • COM 自动化支持,允许与 Office 应用集成
  • 通知窗口支持

Silverlight 4.0 明显加强了企业应用和 LOB(Line of Business)应用的支持,表明微软认识到 Silverlight 在企业市场比消费市场更有竞争力。

市场渗透与竞争态势

到 2010 年底,Silverlight 已安装在约 6 亿台设备上,安装率在北美地区达到了约 60-70%。然而,这一数字仍远低于 Flash 的 97% 以上的渗透率。

在市场竞争方面,Silverlight 面临的主要挑战是:

  • Adobe Flash 拥有绝对的市场主导地位和更广泛的开发者生态
  • HTML5 标准的快速发展,开始提供原生媒体播放和高级图形支持
  • Apple 设备(特别是 iPhone 和 iPad)不支持 Silverlight,而 iOS 市场快速增长
  • Google 通过推进 HTML5 和开源技术,间接与 Silverlight 竞争

Web插件2010市场份额

转折点:战略调整与移动化挑战(2010-2011)

移动互联网的冲击

2010 年是移动互联网爆发的关键年,带来了几个对 Silverlight 战略性的挑战:

  1. Apple 公开拒绝在 iOS 设备上支持 Flash,并发表了著名的《关于 Flash 的思考》文章,为整个插件技术敲响警钟
  2. HTML5 标准快速成熟,开始提供原生视频播放和高级动画支持
  3. 智能手机和平板电脑市场迅速扩张,而 Silverlight 在这些平台上的支持有限

微软最初尝试通过 Windows Phone 7 平台推动 Silverlight 移动化。Windows Phone 7 采用 Silverlight 作为应用开发框架,试图利用现有 Silverlight 开发者生态系统快速建立移动应用市场。然而,Windows Phone 平台市场份额有限,未能为 Silverlight 提供足够的移动生态支持。

战略调整的信号

2010 年 10 月,在 PDC(专业开发者大会)上,微软首席软件架构师 Bob Muglia 在接受采访时表示,“我们的 Silverlight 策略已经调整”,并指出 HTML5 将成为跨平台解决方案,而 Silverlight 将更专注于 Windows 平台。这一表态被广泛解读为微软降低了对 Silverlight 的战略重视,引发了开发者社区的广泛担忧。

虽然微软随后通过博客文章澄清了对 Silverlight 的持续承诺,但这一事件被视为 Silverlight 命运的转折点,表明微软内部已经开始重新评估其插件技术策略。

最后的辉煌:Silverlight 5(2011-2012)

Silverlight 5.0 的发布

2011 年 12 月,微软发布了 Silverlight 5.0,这是 Silverlight 的最后一个主要版本。Silverlight 5.0 的主要特性包括:

  • 改进的媒体播放能力,包括硬件解码和 GPU 加速
  • 低延迟实时音频流支持
  • 3D 图形支持,基于 XNA 框架
  • 增强的文本渲染,支持 OpenType 字体
  • 改进的数据绑定调试
  • 远程控制支持
  • P/Invoke 支持,允许调用本地 C/C++ 代码
  • 改进的打印支持

Silverlight 5.0 是一个功能强大的版本,特别是在企业应用和媒体应用领域提供了丰富的能力。然而,与此同时,HTML5 技术也在快速发展,与 Silverlight 的功能差距不断缩小。

Windows 8 与战略转向

2011-2012 年,随着 Windows 8 开发的推进,微软的平台战略发生了重大转变:

  1. Windows 8 引入了 WinRT (Windows Runtime) 作为新的应用平台
  2. WinRT 应用可以使用 HTML/JavaScript 或 XAML/C# 开发
  3. Windows 应用商店被定位为新的应用分发渠道
  4. 微软开始明确向 HTML5 标准靠拢

虽然 WinRT 的 XAML/C# 编程模型借鉴了 Silverlight 的许多概念,但它是一个全新的平台,与 Silverlight 不兼容。这一战略调整表明,微软已经开始为"后 Silverlight 时代"布局。

企业领域的深耕

在公众关注度下降的同时,Silverlight 在 2011-2012 年在企业应用领域仍然保持了相对强势的地位:

  • 微软 SharePoint 2010 使用 Silverlight 增强用户体验
  • 多家企业软件供应商推出基于 Silverlight 的 LOB 应用
  • Silverlight 在内部网应用中获得广泛应用,特别是在需要丰富交互和媒体能力的场景
年份Silverlight 版本主要新特性市场状况重要事件
20093.0Out-of-Browser 支持,GPU 加速快速增长安装基数突破 3 亿
20104.0增强的企业功能,更多本地集成增长放缓战略调整争议
20115.03D 支持,媒体播放增强企业市场稳定Windows 8 战略公布

衰落期:HTML5 时代的到来(2012-2015)

市场环境的变化

2012-2015 年期间,Web 技术环境发生了深刻变化,对 Silverlight 形成了多重挑战:

  • HTML5 成为 W3C 推荐标准,主流浏览器提供了完善支持
  • WebGL 技术成熟,提供了强大的 3D 图形能力
  • CSS3 动画和过渡效果被广泛支持
  • JavaScript 性能大幅提升,ECMAScript 标准持续演进
  • 响应式设计成为主流,适应多种屏幕尺寸成为必要
  • 移动设备上网流量超过桌面设备

这些变化使得基于标准的 Web 技术能够提供与插件技术相当的功能,同时避免了插件的兼容性和安全性问题。

浏览器支持的削减

随着 Web 标准的发展,主要浏览器厂商开始减少对插件技术的支持:

  • 2013 年,Google Chrome 开始逐步淘汰 NPAPI 插件支持
  • 2014 年,Mozilla Firefox 宣布计划终止 NPAPI 插件支持
  • 2015 年,Microsoft Edge 浏览器发布,不支持 ActiveX 和 Silverlight
  • 2015 年,Google Chrome 完全移除 NPAPI 支持,使 Silverlight 无法在 Chrome 中运行

这些变化极大地减少了 Silverlight 的可访问市场,迫使开发者考虑替代方案。

微软战略的明确转向

这一时期,微软的战略转向变得更加明确:

  • 2012 年,微软发布 TypeScript,为大型 JavaScript 应用提供更好的工具支持
  • 2013 年,微软对 Office 365 进行改版,减少 Silverlight 依赖,增加 HTML5 支持
  • 2014 年,微软新任 CEO Satya Nadella 推动"移动为先,云为先"战略,强调跨平台
  • 2015 年,微软宣布 Windows 10 将支持托管的 Web 应用

最终,微软于 2015 年 7 月正式宣布 Silverlight 5 将是最终版本,并公布了产品支持的最终时间表,确认将在 2021 年 10 月完全终止支持。

遗产与影响(2015 年后)

技术遗产的转移

尽管 Silverlight 作为产品走向终结,但其许多技术概念和设计理念被转移到了微软的其他技术中:

  • WinRT/UWP:继承了 Silverlight 的 XAML 编程模型和许多控件设计
  • Xamarin:采用类似的 XAML 布局系统,允许 C# 开发跨平台移动应用
  • .NET MAUI:进一步整合了 XAML 和 C# 的跨平台应用开发模型
  • Blazor:重新实现了在 Web 平台上使用 C# 开发的能力,但基于 WebAssembly 而非插件

影响与教训

Silverlight 的兴衰为软件行业提供了一些重要教训:

  1. 标准的重要性:专有技术即使技术先进,也难以抵抗开放标准的长期发展
  2. 移动优先的必要性:未能及时适应移动浪潮是 Silverlight 衰落的关键因素
  3. 开发者生态的价值:尽管 Silverlight 拥有出色的开发工具,但其生态系统规模从未超过 Flash
  4. 平台战略的复杂性:微软多次调整的平台战略给开发者带来了困惑和不确定性

企业应用中的长尾效应

虽然 Silverlight 在公共互联网上的应用在 2015 年后急剧减少,但在企业内部网应用中,Silverlight 应用的淘汰和迁移是一个缓慢的过程:

  • 许多企业应用继续使用 Silverlight 直到支持期结束
  • 大型组织投入大量资源将 Silverlight 应用迁移到 HTML5 或其他技术
  • 金融、医疗和政府部门是最后淘汰 Silverlight 的行业

技术特点回顾

Silverlight 的主要技术特点

Silverlight 作为一项技术,有其独特的优势和局限性:

技术方面强项弱项
开发模型强类型语言,完整 IDE 支持插件部署,浏览器兼容性问题
图形渲染高质量矢量图形,硬件加速复杂场景性能不如 Flash
媒体播放高品质视频播放,平滑流编解码器支持有限
应用架构MVVM 模式,良好的代码组织复杂应用初始加载较慢
跨平台性Windows 和 Mac 支持移动设备支持有限,Linux 支持缺失
安全模型沙盒执行,代码访问安全性需要提升权限才能访问本地资源

与竞争技术的比较

Silverlight 与其主要竞争技术相比:

  • vs. Flash:开发工具更现代,媒体播放优越,但市场渗透率低,游戏开发能力弱
  • vs. HTML5:应用架构更成熟,性能更一致,但部署复杂,需要插件安装
  • vs. Java Applet:用户体验更佳,启动更快,但企业功能不如 Java 丰富

结论:Silverlight 的历史意义

Silverlight 虽然最终未能取得商业上的持久成功,但它在技术发展史上具有重要意义:

  1. 技术创新:Silverlight 推动了 Web 富应用开发模型的创新,影响了后续标准的发展
  2. 开发范式:XAML 声明式 UI 和数据绑定模型对现代前端开发有深远影响
  3. 微软转型:从专有技术向开放标准的转变,反映了微软战略的重大变革
  4. 行业教训:为科技行业提供了关于技术选择和平台战略的宝贵教训

Silverlight 的故事告诉我们,技术选择不仅仅是技术问题,也是市场、生态和战略的问题。在快速变化的技术环境中,适应变化的能力往往比技术本身的先进性更加重要。

虽然 Silverlight 作为产品已经成为历史,但它的许多理念和创新已经融入到了更广泛的软件开发生态中,继续以不同的形式影响着软件行业的发展。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

充电桩领域垂直行业大模型分布式推理与训练平台建设方案 - 慧知开源充电桩平台

没有任何广告&#xff01; 充电桩领域垂直行业大模型分布式推理与训练平台建设方案 一、平台定位与核心价值 行业首个垂直化AI平台 专为充电桩运营场景设计的分布式大模型训练与推理基础设施&#xff0c;实现"算力-算法-场景"三位一体闭环管理。 核心价值主张&am…

区块链交易自动化新时代:实战体验 Maestro 智能机器人

随着 DeFi 和链上交易生态的不断壮大&#xff0c;链上自动化工具的应用正逐渐从「量化机构」走向普通投资者和开发者。在过去的几个月中&#xff0c;我实测了一款基于 Telegram 的交易机器人 —— Maestro&#xff0c;它极大简化了链上套利、复制交易等流程&#xff0c;对我个人…

windows服务器及网络:论如何安装(虚拟机)

今天我要介绍的是&#xff1a;在Windows中对于安装系统&#xff08;虚拟机的步骤以及相关的安装事宜&#xff09;&#xff0c;事不宜迟&#xff0c;让我们来看看系统安装&#xff08;虚拟机&#xff09;是怎么操作的&#xff1a; 对现在来说&#xff0c;安装电脑系统已经是非常…

Hbuilder 上的水印相机实现方案 (vue3 + vite + hbuilder)

效果 思路 通过 live-pusher 这个视频推流的组件来获取摄像头拿到视频的一帧图片之后&#xff0c;跳转到正常的 vue 页面&#xff0c;通过 canvas 来处理图片水印 源码 live-pusher 这个组件必须是 nvue 的 至于什么是 nvue&#xff0c;看这个官方文档吧 https://uniapp.dcl…

TinyEngine 2.4版本正式发布:文档全面开源,实现主题自定义,体验焕新升级!

本文由体验技术团队李璇原创。 前言 TinyEngine低代码引擎使开发者能够定制低代码平台。它是低代码平台的底座&#xff0c;提供可视化搭建页面等基础能力&#xff0c;既可以通过线上搭配组合&#xff0c;也可以通过cli创建个人工程进行二次开发&#xff0c;实时定制出自己的低…

毕业答辩的PPT应该包括哪些内容?

一、PPT 模板的选择 1. 忌单调的白底黑字&#xff0c;应进行一些艺术设计&#xff0c;使人看着画面舒服&#xff0c;但不必过于花哨。总之&#xff0c;专业制作&#xff0c;符合技术人士的喜好。 2. 去掉不相关信息&#xff0c;如一些下载模板上的LOGO。把学校或部门的LOGO放…

Vscode --- LinuxPrereqs │远程主机可能不符合 glibc 和 libstdc++ Vs code 服务器的先决条件

打开vscode连接远程linux服务器&#xff0c;发现连接失败&#xff0c;并出现如下报错信息&#xff1a; 原因是&#xff1a; vscode 官网公告如下&#xff1a;2025 年 3 月 (版本 1.99) - VSCode 编辑器 版本1.97 官网公告如下&#xff1a;链接 版本1.98 官网公告如下&am…

安装部署RabbitMQ

一、RabbitMQ安装部署 1、下载epel源 2、安装RabbitMQ 3、启动RabbitMQ web管理界面 启用插件 rabbitmq数据目录 创建rabbitmq用户 设置为管理员角色 给用户赋予权限 4、访问rabbitmq

Qt实现文件传输客户端(图文详解+代码详细注释)

Qt实现文件传输客户端 1、 客户端UI界面设计2、客户端2.1 添加网络模块和头文件2.2 创建Tcp对象2.3 连接按钮2.3.1 连接按钮连接信号与槽2.3.2 连接按钮实现 2.4 读取文件2.4.1 连接读取文件的信号与槽2.4.2 读取文件槽函数实现2.5 进度条2.5.1 设置进度条初始值2.5.2 初始化进…

机器学习期末

选择题 以下哪项不是机器学习的类型&#xff1f; A. 监督学习 B.无监督学习 C.半监督学习 D.全监督学习 D 哪一个是机器学习的合理定义? A、机器学习是计算机编程的科学 B、机器学习从标记的数据中学习 C、机器学习是允许机器人智能行动的领域 D、机器学习能使计算机能够在…

Python多任务编程:进程全面详解与实战指南

1. 进程基础概念 1.1 什么是进程&#xff1f; 进程(Process)是指正在执行的程序&#xff0c;是程序执行过程中的一次指令、数据集等的集合。简单来说&#xff0c;进程就是程序的一次执行过程&#xff0c;它是一个动态的概念。 想象你打开电脑上的音乐播放器听歌&#xff0c;…

【QT】 QT中的列表框-横向列表框-树状列表框-表格列表框

QT中的列表框-横向列表框-树状列表框-表格列表框 1.横向列表框(1)主要方法(2)信号(3) 示例代码1:(4) 现象&#xff1a;(5) 示例代码2&#xff1a;加载目录项在横向列表框显示(6) 现象&#xff1a; 2.树状列表框 QTreeWidget(1)使用思路(2)信号(3)常用的接口函数(4) 示例代码&am…

决策树:ID3,C4.5,CART树总结

树模型总结 决策树部分重点关注分叉的指标&#xff0c;多叉还是单叉&#xff0c;处理离散还是连续值&#xff0c;剪枝方法&#xff0c;以及回归还是分类 一、决策树 ID3(Iterative Dichotomiser 3) 、C4.5、CART决策树 ID3:确定分类规则判别指标、寻找能够最快速降低信息熵的方…

easyexcel使用模板填充excel坑点总结

1.单层map设置值是{属性}&#xff0c;那使用两层map进行设置值&#xff0c;是不是可以使用{属性.属性}&#xff0c;以为取出map里字段只用{属性}就可以设置值&#xff0c;那再加个.就可以从里边map取出对应属性&#xff0c;没有两层map写法 填充得到的文件打开报错 was empty (…

C# LINQ基础知识

简介 LINQ(Language Integrated Query)&#xff0c;语言集成查询&#xff0c;是一系列直接将查询功能集成到 C# 语言的技术统称。使用LINQ表达式可以对数据集合进行过滤、排序、分组、聚合、串联等操作。 例子&#xff1a; public class Person {public int Id;public string…

GCoNet+:更强大的团队协作 Co-Salient 目标检测器 2023 GCoNet+(翻译)

摘要 摘要&#xff1a;本文提出了一种新颖的端到端群体协作学习网络&#xff0c;名为GCoNet&#xff0c;它能够高效&#xff08;每秒250帧&#xff09;且有效地识别自然场景中的共同显著目标。所提出的GCoNet通过基于以下两个关键准则挖掘一致性表示&#xff0c;实现了共同显著…

QT常见输入类控件及其属性

Line Edit QLineEdit用来表示单行输入框&#xff0c;可以输入一段文本&#xff0c;但是不能换行 核心属性&#xff1a; 核心信号 信号 说明 void cursorPositionChanged(int old,int new) 当鼠标移动时发出此型号&#xff0c;old为先前位置&#xff0c;new为新位置 void …

Few-shot medical image segmentation with high-fidelity prototypes 论文总结

题目&#xff1a;Few-shot medical image segmentation with high-fidelity prototypes&#xff08;高精确原型&#xff09; 论文&#xff1a;Few-shot medical image segmentation with high-fidelity prototypes - ScienceDirect 源码&#xff1a;https://github.com/tntek/D…

如何使用Node-RED采集西门子PLC数据通过MQTT协议实现数据交互并WEB组态显示

需求概述 本章节主要实现一个流程&#xff1a;使用纵横智控的EG网关通过Node-red&#xff08;可视化编程&#xff09;采集PLC数据&#xff0c;并通过MQTT协议和VISION&#xff08;WEB组态&#xff09;实现数据交互。 以采集西门子PLC为例&#xff0c;要采集的PLC的IP、端口和点…

【cocos creator 3.x】速通3d模型导入, 模型创建,阴影,材质使用,模型贴图绑定

1、右键创建平面&#xff0c;立方体 2、点击场景根节点&#xff0c;shadows勾选enabled3、点击灯光&#xff0c;shadow enabled勾选 4、点击模型&#xff0c;勾选接收阴影&#xff0c;投射阴影&#xff08;按照需要勾选&#xff09; 5、材质创建 6、选中节点&#xff0c;找…