1 定义 - ProjectOnPlane

 //
// 摘要:
//     Projects a vector onto a plane defined by a normal orthogonal to the plane.
//
// 参数:
//   planeNormal:
//     The direction from the vector towards the plane.
//
//   vector:
//     The location of the vector above the plane.
//
// 返回结果:
//     The location of the vector on the plane.
public static Vector3 ProjectOnPlane(Vector3 vector, Vector3 planeNormal);

2 使用方法

  • 参数1 方向
  • 参数2 平面的法向量

投影向量

var pj = Vector3.ProjectOnPlane(dir, normal);

返回值是一个投影向量,平行于指定的平面

3 效果演示

4 参考代码

using UnityEditor;
using UnityEngine;public class Pj : MonoBehaviour
{void Update(){project();}//方向向量目标点 看向点public Transform target,looker;//两点确定法线方向public Transform n1, n2;//跟随点public Transform sign;void project(){looker.transform.LookAt(target);//指向目标的向量var dir = target.position - transform.position;//平行于X轴平面的法向量 Y轴正方向向量 (1,0,0)var normal = n1.position - n2.position;//投影向量var pj = Vector3.ProjectOnPlane(dir, normal);//相对本对象位置进行变化sign.position = transform.position + pj;//绘制方向Debug.DrawLine(transform.position, target.position);//绘制投影Debug.DrawLine(transform.position, sign.position, Color.blue);//绘制法线Debug.DrawLine(target.position, sign.position,Color.red);}//绘制平面private void OnDrawGizmos(){//平行于X轴平面的法向量 Y轴正方向向量 (1,0,0)var dir = n1.position - n2.position;Handles.color = Color.yellow;for (int i = 0; i < 10; i++){var dis = i + 1;Handles.DrawWireDisc(transform.position, dir, dis * 0.1f);}}
}

5 工程包
链接

6 投影函数 Project

7 函数返回值
是vector向量 想X轴正方形进行投影,最终落在X轴的一个点

向量的平面投影 ProjectOnPlane相关推荐

  1. 几何向量:向量到平面投影和LookAt

    在研究所保密开发完后回来隔离两波,已经接近四五个月没碰外网电脑了,可以说是活成了原始人.       因为某些开发细节原因,需要实现向量投影和LookAt功能,记录一下.       首先实现向量到平 ...

  2. 第三课向量与平面直线方程

    向量 点积,加减什么的就不说了 叉积: 这个是叉积结果与原来两个向量的方向与模长的关系,其中模长为两者模长相乘后乘以夹角的sin值,方向符合右手规则,即四指从第一个向量的方向以最小的角度转向第二个向量 ...

  3. C++空间中一点到平面投影

    1.点到平面投影公式推导 2.C++代码 void projectCloudToplane( pcl::PointCloud<pcl::PointXYZ>::Ptr cloud_raw,c ...

  4. python——经纬度坐标和平面投影坐标的相互转换

    美赛建模需要使用到平面坐标系去做基于时间序列的运动范围模型,所以需要对经纬度进行坐标系转换,转换到XY坐标系下.同时,在机器人的路径规划等方面依然会经常使用到坐标系的转换,所以记录一下. 文章目录 经 ...

  5. 平面投影坐标转经纬度坐标

    平面投影坐标转经纬度坐标 本人在进行开发时,使用geotools的GeoTiffReader类读取卫星影像的顶点坐标,得到的是平面坐标,单位是米,打开arcGIS,加载影像,右下角会有坐标,在视图-& ...

  6. 空间几何-向量在另外一个向量上的投影计算

       u ⃗ \vec{u} u 向量在 v ⃗ \vec{v} v 向量上的投影分量 u x ⃗ \vec{u_{x}} ux​ ​的计算,其实就是 u ⃗ \vec{u} u 的模乘以 u ⃗ \ ...

  7. android立体3D效果_3D全息投影和平面投影有什么区别_广州全息投影

    随着时代的发展.科技的进步,3D全息投影已经融入到人们的日常生活当中,给人们带来全新的视觉体验,呈现亦真亦幻的虚拟影像世界,越来越多的行业肯定及选择全息投影技术.那么与传统的平面投影相比,3D全息投影 ...

  8. Cesium平面投影坐标系加载

    Cesium支持CGCS2000平面坐标系加载,自己扩展投影计算规则. 支持CGCS2000各类投影坐标,如EPSG:4547,EPSG:4528.各地区本地2000坐标系(如温州2000,苏州200 ...

  9. 向量在另一个向量上的投影

    向量在另一个向量上的投影 若v向量为单位向量,则结果为uv向量的点积* v向量. 即:某个方向力u,在v方向上的分量.

最新文章

  1. R语言使用ggplot2包的快速可视化函数qplot绘制分组箱图实战
  2. 分布式日志平台--ELKStack实践
  3. char类型怎么输入 c语言_c语言入门(一)
  4. wpa_supplicant中配置TTLS网络的phase2参数
  5. 最新2016年春运抢票12306买下铺攻略
  6. uniapp对接阿里云OSS前端直传
  7. 【对讲机的那点事】带你玩转摩托罗拉GP328对讲机读写频
  8. Excel VBA Dictionary excel vba 字典大全
  9. discuz全局数组变量 后台各项设置 完整版
  10. 怎么把ppt弄成链接的形式_如何将ppt转换成html网页格式
  11. 【100题】给定入栈序列,判断一个序列是否可能为输出序列
  12. Fcitx 小企鹅输入法3.0.0
  13. prometheus命令_Prometheus配置
  14. 喜讯:世界首款阿兹海默老年痴呆症治疗药将上市
  15. JDBC之mysql入门
  16. GiantPandaCV 2021年度总结
  17. 《C++语言基础》实践参考——考了语文数学的学生
  18. oleDB 更新 access 数据库
  19. freekan源码v3.8.4完美版 全自动采集+自动尝鲜+会员全局+后台模板
  20. js字符串转日期时间,并比较大小

热门文章

  1. socket通信函数
  2. wpf MessageBox 消息框
  3. 怎么在Excel2003版中查找重复值
  4. 2022全网最全Java面试题-小米社招面试经验java,面试题整理(一面二面)
  5. 个人工作邮箱怎么申请?工作邮箱有哪些?
  6. java mf文件怎么打开_安卓手机如何打开.MF文件?
  7. oracle创建表和序列
  8. 智能电动车无感解锁方案:设备篇
  9. 跨平台应用开发进阶(四十七)APP字体库文件处理方案
  10. 蓝鲸智云实现虚拟机交付(四)-配置平台自定义(CMDB)