zoukankan      html  css  js  c++  java
  • 坐标系空间转换问题

      最近在学3D管线,从view到screen变换的时候,涉及到顶点坐标空间的转换,是极简单的问题,看下图:
     
      黑色屏幕上存在坐标系0(红色)和坐标系1(黄色),坐标系1空间有一点P(x1,y1),问这个屏幕像素点P在坐标系0下的坐标?
      肉眼就可以看出来答案:是(m+x1,n-y1)。
      难的是严谨的数学推理,一步“因为”一步“所以”的推导出结论。我大概是退化了,花了两个小时才想出来一种思路。

    ---------------------------------------
    已知在坐标系1下,P点坐标(x1,y1),即:P点相对O1点向上偏移y1,向右偏移x1(记做条件1);
    已知在坐标系0下,O1点坐标(m,n),即:O1点相对O0点向下偏移n,向右偏移m(记做条件2);
    由条件1,,2得:P点相对O0点向下偏移(-y1)+n,向右偏移m+x1,故P点在坐标系0下为(m+x1,n-y1)。
    -----------------------------------------

    折腾了一上午,觉得我对坐标系的理解太浅,天天在用,翻转它,平移它,细细去想却不知道自己在干什么。点的坐标(x0,y0),本质应是相对于坐标原点的x正向偏x0和y正向偏y0,上面的推导就用的这层原理。

  • 相关阅读:
    CSUFT 1002 Robot Navigation
    CSUFT 1003 All Your Base
    Uva 1599 最佳路径
    Uva 10129 单词
    欧拉回路
    Uva 10305 给任务排序
    uva 816 Abbott的复仇
    Uva 1103 古代象形文字
    Uva 10118 免费糖果
    Uva 725 除法
  • 原文地址:https://www.cnblogs.com/weiweishuo/p/2998642.html
Copyright © 2011-2022 走看看