UVW 在C中的代码实现

UVW 在C中的代码实现今天聊聊 UVW 平台用 C 实现平移和旋转的功能 众所周知 UVW 平台功能强大 可以实现绕任意点旋转 本来我的工作就是视觉相关 对于视觉来说 UVW 平台在图像里面仅有一个旋转中心 因为相机位置固定 我们只求出平台的旋转中心就可以做视觉引导 进入正题 Talkissimple codefirst 下面 R x1 x2 y1 为供应商提供的固定参数 和购买的平台有关 需要咨询供应商获取 简单的理解就是把 XYR 方向的分量转成 UVW 对应的轴分量 XYR 分量可以叠加 amp

 ///  /// UVW 类型数据,通常用于XYR增量转UVW增量 ///  public class DataUVW { 
    #region Public-Members private double R { 
    get; set; } = 50; private double θx1 { 
    get; set; } = 90 * Math.PI / 180; private double θx2 { 
    get; set; } = 270 * Math.PI / 180; private double θy1 { 
    get; set; } = 180 * Math.PI / 180; public double V { 
    get; set; } public double W { 
    get; set; } public double U { 
    get; set; } #endregion #region Private-Members #endregion #region Constructors-and-Factories ///  /// XYR移动量转UVW移动量 ///  /// Y方向移动量 /// X方向移动量 /// 旋转角度移动量 public DataUVW(double MoveY, double MoveX, double Rotatetion) { 
    Rotatetion *= -1; double rad = Rotatetion * Math.PI / 180; U = R * Math.Sin(rad + θy1) - R * Math.Sin(θy1); V = R * Math.Cos(rad + θx1) - R * Math.Cos(θx1); W = -1 * (R * Math.Cos(rad + θx2) - R * Math.Cos(θx2)); // W = R * Math.Cos(rad + θx2) - R * Math.Cos(θx2); double tempX1 = MoveX; double tempX2 = MoveX; double tempY1 = MoveY; U += tempY1; V += tempX1; W -= tempX2; } ///  /// XYR移动量转UVW移动量 ///  /// 封装的XYR体类 public DataUVW(DataXYR _dataXYR) { 
    _dataXYR.R *= -1; double rad = _dataXYR.R * Math.PI / 180; U = R * Math.Sin(rad + θy1) - R * Math.Sin(θy1); V = R * Math.Cos(rad + θx1) - R * Math.Cos(θx1); W = -1 * (R * Math.Cos(rad + θx2) - R * Math.Cos(θx2)); // W = R * Math.Cos(rad + θx2) - R * Math.Cos(θx2); double tempX1 = _dataXYR.X; double tempX2 = _dataXYR.X; double tempY1 = _dataXYR.Y; U += tempY1; V += tempX1; W -= tempX2; } public DataXYR ToXYR() { 
    return new DataXYR(U, V, W); } #endregion #region Public-Methods #endregion #region Private-Methods #endregion } 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/202373.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月20日 上午7:17
下一篇 2026年3月20日 上午7:18


相关推荐

  • 获取服务器外网地址失败_外网访问服务器

    获取服务器外网地址失败_外网访问服务器获取服务器外网地址。

    2022年8月5日
    9
  • OpenClaw Skill 零代码自制教程(2026实测):10分钟上手专属AI技能

    OpenClaw Skill 零代码自制教程(2026实测):10分钟上手专属AI技能

    2026年3月14日
    3
  • 【懒人必备】智能窗帘机器人,告别手动拉窗帘——硬件设计篇

    【懒人必备】智能窗帘机器人,告别手动拉窗帘——硬件设计篇简介:智能窗帘机器人方案,无需专业人员上门安装,使普通窗帘秒变智能窗帘。概述随着智能家居的深入拓展,智能窗帘凭借成熟的技术和产品,逐步成为了智能家居家庭中的标配,在家装智能化市场有很高的应用价值。目前智能窗帘的产品主要以电动窗帘产品为主,该产品主要通过电机驱动实现对窗帘的操控,从安装上讲,该产品更适合前装市场,因为需要结合用户户型、门窗大小预留安装空间和电源接口。对于后装市场,往往需要专业人员上门丈量确认是否符合改装要求,大大增加了安装成本,因此目前市场上,出现的小型的窗帘机器人,完美解决的后装市场的

    2022年6月23日
    38
  • 树莓派串口调试助手_树莓派4b教程

    树莓派串口调试助手_树莓派4b教程原文链接:https://blog.csdn.net/itisyang/article/details/79968592最新的Raspbian串口连接没有数据输出使用ssh连接树莓派之后-sudoraspi-config-InterfacingOptions-Serial打开串口登录树莓派正常情况串口四根线连接:VCC-5VGND-GNDTX…

    2022年10月10日
    5
  • JAVA与C++的区别详解

    JAVA与C++的区别详解转自 微点阅读 https www weidianyuedu comJAVA 和 C 都是面向对象语言 也就是说 它都能够实现面向对象思想 封装 继乘 多态 而由于 c 为了照顾大量的 C 语言使用者 而兼容了 C 使得自身仅仅成为了带类的 C 语言 多多少少影响了其面向对象的彻底性 JAVA 则是完全的面向对象语言 它句法更清晰 规模更小 更易学 它是在对多种程序设计语言进行了深入细致研究的基础上 据弃了其他语言的不足之处 从根本上解决了 c 的固有缺陷 Java 和 c 的相似之处

    2026年3月18日
    2
  • I/O模型与Nginx详细配置、优化

    I/O模型与Nginx详细配置、优化

    2021年9月7日
    73

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号