首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >计算矩形GIven原点、方向和大小的左上角和右下角。

计算矩形GIven原点、方向和大小的左上角和右下角。
EN

Stack Overflow用户
提问于 2011-10-20 07:43:45
回答 2查看 1.9K关注 0票数 0

我对此进行了搜索,但没有发现一个与我所追求的完全相符的问题。我希望用户能够定义一个纹理平面。我掌握的参数是:

A Vector2)

  • Direction (A Vector3)

  • Origin (A Vector3)

)

所以,我想要能够计算出矩形的4个顶点,给出上面的信息。所以,如果我想要一架面朝上的飞机,宽度和高度都是1000:

1000)

  • Direction = 0,1,0(Up)

  • = 0,0,0

因此,这将定义一个平面在X&Z轴上,朝上。我不明白的是,如何计算三维空间中的4个角,给出这些信息。我需要额外的信息,还是有更好的方法任意指定飞机?

编辑:当前代码

在以下代码中:

  • Size = 10000,10000
  • Center = 0,0,0
  • Normal = 0,1,0

Vector3 arb =新Vector3(1,1,1);Vector3 planeY = Vector3.Normalize(Vector3.Cross(Normal,arb));Vector3 planeX =Vector3.Normal(Vector3.Cross(Normal,planeY));planeX *= Size.X / 2;planeY *= Size.Y / 2;Vector3[] ret =新Vector34 { (Center - planeX - planeY),(Center - planeX + planeY),(Center + planeX - planeY),(Center + planeX + planeY) };

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-10-20 09:04:18

你的飞机还没有完全确定。你需要另一个向量沿着平面,所谓的“切线”向量。在上面的例子中,纹理的Y轴应该指向哪里?沿着X轴,沿着Z轴?或者是一个完全不同的用户定义的轴?你的切线向量是一个向量,它应该指向平面的X轴的总方向。

假设我们也有一个切线向量,它不需要沿着平面点。您可以按以下方式构造该飞机:

代码语言:javascript
运行
AI代码解释
复制
        Vector3[] vertices(Vector2 size, Vector3 center, Vector3 normal, Vector3 tangent)
    {
        Vector3 planeY = Vector3.Normalize(Vector3.Cross(normal, tangent));
        Vector3 planeX = Vector3.Normalize(Vector3.Cross(normal, planeY));

        planeX *= size.X / 2;
        planeY *= size.Y / 2;

        vertices = new Vector3[]
        {
            (center - planeX - planeY),
            (center - planeX + planeY),
            (center + planeX - planeY),
            (center + planeX + planeY),
        };
        return vertices;
    }

planeX和planeY是沿着平面本身的X和Y轴点的归一化向量。通过把这些乘以大小/ 2,我们得到了两个向量,它们从平面的中心到平面的边缘,在X和Y方向上都有。通过以不同的方式将这两者相加,我们得到了这四个角。

这是一个图表,这样你就能在脑海中得到一幅更好的画面。切线向量T在X轴上被“扁平”.

票数 1
EN

Stack Overflow用户

发布于 2011-10-20 08:33:54

这就像一个平面的定义一样好:你有一个点和法向量。您需要在平面上得到两个向量(A & B),并向原点添加一个(A *之一的大小值)才能得到第二个拐角。添加第二个向量(B *另一个大小值)以获得第三个角,并将两个向量*它们对应的大小值添加到原点以得到第四个角。

要得到第一个向量,计算法向量(方向)与任意向量(不等于方向)的交叉积。这将给你向量A,得到向量B,计算A的交叉积和方向。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7838582

复制
相关文章
jQuery 基本语法
jQuery,一个 JavaScript 库,极大地简化了 JavaScript 编程,很容易学习。它是一款同prototype、Note.js等一样优秀的js开发库类,特别是对css和XPath的支持,使我们写js变得更加方便!如果你不是个js高手又想写出优秀的js效果,jQuery可以帮你达到目的!
阳光岛主
2019/02/19
3.9K0
jQuery 基本语法
JavaScript - 测试 jQuery
为了引用某个库,请使用 <script> 标签,其 src 属性设置为库的 URL:
陈不成i
2021/07/21
6120
jQuery 的基本使用
​ jQuery的官网地址: https://jquery.com/,官网即可下载最新版本。
梨涡浅笑
2022/05/08
2.9K0
jQuery 的基本使用
Jquery基本用法总结
选择器 $("#mydiv") 通过ID $("p#myp") 选择id=myp 的所有p元素(组合型) $(".mydiv") 通过 class="mydiv" $("p.myp") 选择class=myp 的所有p元素 $("p").eq(1) 获取匹配的集合中的第二个元素 这个元素的位置是从0算起(与[i]的区别是eq获得的还是jquery元素,而[i]获得的是dom元素) $("div:first") 选择第一个div $("div:odd") 选择奇数行div $('div:visible')
欢醉
2018/01/22
7040
jQuery 的基本使用
jQuery的官网地址: https://jquery.com/,官网即可下载最新版本。
清出于兰
2020/10/26
2.6K0
jQuery 的基本使用
jQuery的基本操作
jQuery就是一个js的库· 主要分为两部分:            1·寻找元素         (选择器,筛选器)            2·操作元素          (CSS的操作,属性的操作,文本的处理) 选择器 基本  #id    #id //用于搜索的,通过元素的id属性中给定的值 描述:(查找ID为myDiv的元素) HTML代码: <div id="notMe"><p>id = "notMe"</p></div> <div id="myDiv">id="m
Wyc
2018/09/11
7.6K0
jquery调用javascript方法
本来想找个“优雅”一点的方法,类似C#在调用C++方法时候的Invoke之类的。没找到,后来想想,其实也没必要,直接写就好了,算最优雅了吧。只是少了VS的Intelligence,有点不习惯罢了。
_淡定_
2018/08/24
1.7K0
JavaScript进阶内容——jQuery
我们在前面的文章中已经掌握了JavaScript的全部内容,现在让我们了解一下JavaScript库
秋落雨微凉
2022/10/25
5.5K0
JavaScript进阶内容——jQuery
JavaScript|jQuery基础语法
jQuery 是一个 JavaScript 库,它极大地简化了 JavaScript 编程。jQuery是一个轻量级的"写的少,做的多"的JavaScript库。
算法与编程之美
2020/07/28
8000
JavaScript|jQuery基础语法
JavaScript 框架学习(JQuery)
参考: http://www.w3cschool.cc/jquery/jquery-tutorial.html
lpe234
2020/07/28
7.8K0
JavaScript 动画_jquery 动画
回调函数原理:函数可以作为一个参数。将这个函数作为参数传到另一个函数里面,当那个函数执行完之后,再执行传进去的这个函数,这个过程叫做回调。
全栈程序员站长
2022/11/04
2.4K0
javascript(一):javascript基本介绍及基本语法
什么是javascript? javascript是一种直译型脚本语言,是一种动态类型、弱类型、基于原型的语言。(所谓“脚本语言”:指的是它不具有开发操作系统的能力,只是用来编写大型运用程序的脚本!) javascript本身不提供任何与I/O(输入输出)相关的API,都是靠宿主环境提供! 常见的宿主环境:1.浏览器;  2.服务器,即Node项目。 宿主环境是浏览器,提供的额外API主要是三类:1.浏览器控制类(操作浏览器);2.DOM类(操作网页的元素);3.web类(实现互联网功能) 如果宿主环境是N
用户1149564
2018/01/11
8120
javascript(一):javascript基本介绍及基本语法
jquery基本选择器
关于基本选择器包括  “*” ,“.class”,"element","#id","selector1  selementN" "*" 选择器,可以找到文档中的所有的元素,包括  head  body $(function(){    $("#test").find("*").css("border","3px solid red");       //找到 #test 这个元素下面的所有的 元素 }); ".class"   选择给定样式类名的所有的元素。 $(function(){   $(".myc
用户1197315
2018/01/19
4120
jQuery基础--基本概念
js库:把一些常用到的方法写到一个单独的js文件,使用的时候直接去引用这js文件就可以了。(animate.js、common.js)
eadela
2019/09/29
8410
jQuery 介绍 以及基本使用
JavaScript库:即 library,是一个封装好的特定的集合(方法和函数)。从封装一大堆函数的角度理解库,就是在这个库中,封装了很多预先定义好的函数在里面,比如动画animate、hide、show,比如获取元素等。
星辰_大海
2020/10/09
4.7K0
jQuery 介绍 以及基本使用
抛弃jQuery,拥抱原生JavaScript
Why not jQuery 1. 模式变革 jQuery 代表着传统的以 DOM 为中心的开发模式,但现在复杂页面开发流行的是以 React 为代表的以数据/状态为中心的开发模式 应用复杂后,直接操作 DOM 意味着手动维护状态,当状态复杂后,变得不可控。React 以状态为中心,自动帮我们渲染出 DOM,同时通过高效的 DOM Diff 算法,也能保证性能。我们在 React 应用实践中也发现,大部分当你想直接操作 DOM 的时候,就意味着你可能做错了。 2. 不支持同构渲染 重构就是前后端运行同一份代
前朝楚水
2018/04/03
1.2K0
抛弃jQuery,拥抱原生JavaScript
javascript-继承之jquery
jquery 截止到当前已经 3.3.1 版本了,如今随着各种浏览器的盛行,前端的框架层出不穷,jquery 独步天下,老夫写代码只用 jquery,拿起代码就是干的辉煌时代已经过去了。
chuchur
2022/10/25
1.1K0
javascript-继承之jquery
jquery学习 --Day2 (jquery的基本使用)
jquery学习 --Day2 (jquery的基本使用) 区分DOM对象和jquery对象 DOM对象:用原生JS获取过来的对象是DOM对象 Jquery对象:用jquery的方式获取过来的对象是jquery对象,实质:通过$把DOM元素进行了包装(伪数组形式存储) DOM对象 <div> fdsahfsjdiofdsfkas </div> <script> var div = document.querySelector('div'); console.dir(div);
meowrain
2021/04/22
8260
jquery学习 --Day2 (jquery的基本使用)
JQuery $.axaj的基本格式
总是忘了,保存以备后用。 $.ajax({ url: '', //请求的url地址 dataType: "json", //返回的格式为json async: true, //请求是否异步,默认true异步,这是ajax的特性 data:inData,//参数值 type: "GET", //请求的方式 beforeSend:function(){}, //请求前的处理 success: func
李家酒馆酒保
2018/08/22
6480
jQuery VS JavaScript原生API
如今技术日新月异,各类框架库也是层次不穷。即便当年漫山红遍的JQuery(让开发者write less, do more,So Perfect!!)如今也有被替代的大势。但JS原生API写法依旧;并且有时候只不过小写一个Demo,或者产品中只有少量的前端效果或DOM操作,就去花时间&空间引入jQuery,或者React?不免有取宰牛之刀以杀鸡之嫌。 在jQuery的温柔乡里,是否还能记得原生她javascript原生?如果仅为使用个选择器($)或者类似的东西,是否真的有必要加载jQuery?故此了解下JS常
晚晴幽草轩轩主
2018/03/27
1.6K0

相似问题

基本Javascript jquery

31

jQuery/Javascript基本对象属性

31

基本的Jquery/Javascript计算

12

基本javascript jquery json api

11

jQuery/javascript基本逻辑问题

31
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文