安卓view坐标原点在哪里
Ⅰ OpenGL默认屏幕坐标系原点在哪
如果你用的是透视投影的话默认的应该是在屏幕的中心位置,如果用的是平行投影的话则要看你的glortho里面设置的参数了,如果是类似于 glortho(-320,320,-240,240,1,100)的话中心也在屏幕中心,这是你glVertex2d(0,0)就在中心,但如果 glortho(0,320,0,240,1,100)的话glVertex2d(0,0)就不在屏幕中心了,你可以试一试,当然glViewPort的设置也很重要,利用这个可以多视口显示。
Ⅱ 在Authorware的演示窗口中,坐标0,0位于哪里
位于屏幕的左上角。
在Authorware的演示窗口中,以演示窗口的左上角为坐标原点,演示窗口左上角的坐标为x等于0,y等于0。
而且一般用x文本框来确定水平坐标值,用y文本框用来确定垂直坐标值。
Ⅲ 什么是视口原点
窗口(比如对话框等)设备坐标的原点(以橡素为单位),默认位于窗口左上角。实际上就是窗口的DC(设备环境,与一个设备相关位图关联)中的一个位置。
逻辑尺寸与设备尺寸(像素为单位:屏幕上的一点)可以相同,也可以不相同,若不相同,绘图过程将自动进行缩放。为了提高数据的精度,绘图程序中往往用大数据表示尺寸。比如100逻辑单位对应1个橡素点,这等于精度提高到了0.01。 逻辑坐标系中的原点(0,0)将映射到视口原点。用SetViewOrg修改视口原点,结果就是向窗口绘制的图形位置发生变化。
弄懂了,其实很简单的,但我自己的感觉,初学者往往很难掌握。曾经我也花了很多时间弄过它。
Ⅳ 浏览器的原点位置在哪如何确定坐标 元素的绝对定位和相对定位的区别是什么请举个通俗的例子。
浏览器的原地位置就是你电脑窗口默认的左上角其实位置即0,0
通过dom.getBoundingClientRect()可以获取DOM到浏览器窗口左上坐标
function test(){
var o = document.getElementById("t");
var rect = o.getBoundingClientRect();//返回一个TextRectangle对象,包含left, top, right和bottom几个只读属性,以px为单位来表示边界框相对视窗左上角的位置。
var iLeft1 = rect.left-document.documentElement.clientLeft, iTop1 = rect.top-document.documentElement.clientTop;
var iLeft2 = o.offsetLeft, iTop2 = o.offsetTop;
while (o.offsetParent) { o = o.offsetParent; iLeft2 += o.offsetLeft; iTop2 += o.offsetTop; }
iLeft2 -=document.documentElement.scrollLeft;
iTop2 -=document.documentElement.scrollTop;
alert(iLeft1+"_"+iLeft2)
alert(iTop1+"_"+iTop2)
}
然后绝对定位和相对定位的区别就是一个不占据文档流一个占据,通俗点说就想一杯水一样一个是水上面的油之类的漂浮东西它是不占据实际物理区域的,你把它到在水面的那里它就飘在哪里,然后绝对定位就像你被子里面原先放的装饰物品之类的东西它占了水杯的物理位置的!
最后STAIC 就是默认属性,它是默认的定义后,就是说元素本身改是什么属性就是什么属性它由浏览器本身去决定
Ⅳ 在对Android的View对象使用setRotation方法时,View默认的锚点是其中心位置,请问怎样改变View的锚点位置
在Animator中需要通过View.setPivotX和View.setPivotY方法手动给View设置中心点。
imageView.setPivotX(10);
imageView.setPivotY(10);
//是指以ImageView为坐标系(10,10)位置
Ⅵ Android layout(int ,int,int,int)四个参数是如何确定一个view的位置的
ViewGroup.layout(int l, int t, int r, int b)这个方法是确定View的大小和位置的,然后将其绘制出来,里面的四个参数分别是View的四个点的坐标,它的坐标不是相对屏幕的原点,而且相对于它的父布局来说的。
如图所示:
l 和 t 是控件左边缘和上边缘相对于父类控件左边缘和上边缘的距离。
r 和 b是空间右边缘和下边缘相对于父类控件左边缘和上边缘的距离。
Ⅶ 请问窗口坐标,逻辑坐标和视口坐标,设备坐标的区别,谢谢!
应该说
窗口坐标 是相对于 视口坐标 而言
逻辑坐标 是相对于 设备坐标 而言
补充:
窗口坐标是基于逻辑坐标的.
视口坐标是基于设备坐标.
上面这两话是抄自网络的,我的理解是:
窗口坐标的单位长度与逻辑坐标的单位长度相同,也就是说,当你在窗口坐标上画图时,传递给画图函数的参数的单位是逻辑单位。但是当windows把图形输出到屏幕上时,并不是直接把图形按照它在窗口坐标上的位置输出到屏幕上的,而是先把它在窗口坐标上的值转换成视口坐标上的值(与此同时,也把逻辑坐标按照不同的映射模式转换成设备坐标)。下面举例说明:
由于 一般情况下,窗口原点是与视口原点相同的,(也就是说,位于屏幕上的同一个位置),为了体会不窗口坐标与视口坐标的转换,先用SetwindowtOrg(100,-300)将视口移到(100,-300),这相当于把 逻辑点(100,-300)映射到设备点(0,0) (注意:如果改用SetviewportOrg移动原点,则其原点的移动尺寸与映射模式无关,其300个长度单位等于9厘米)
(注:这个设备点也是相对于当前的DC而言,如果当前的DC是整个屏幕,那么设备点(100,-300)的原点就在屏幕的左上角,如果当前的DC是某个应用程序的客户区,那么设备点(100,-300)的原点就是应用程序的客户区的左上角,)
现在假设当前DC是某个应用程序的客户区,映射模式为 MM_LOMETRIC
(在这种映射模式下,设备坐标以0.1 毫米为一个长度单位,Y轴的正方向为向上,也就是说,屏幕上的左上角的Y坐标为0,下面的Y坐标均小于0),当使用语句:
MoveTo(100,-600);
LineTo(100,-800);//Y轴负方向向下,所以用负值
进行画图时,它的转换过程如下:
1)窗口与视口坐标转换,由于窗口坐标(100,-300 ),映射为设备坐标(0,0),所 以
窗口(100,-600)映射为视口(0,-300)
窗口(100,-800)视映射为视口(0,-500)
2)逻辑与设备坐标转换
由于是 MM_LOMETRIC 映射模式,设备坐标的单位长度为 0.1mm,而在输出时用的是视口坐标,所以视口坐标(100,-600)输出到屏幕上时,该点的位置
距客户区左边 0 厘米,距客户区上边 3厘米。这就是直线的起点;
再把直线终点的视口坐标(100,-800)输出到距客户区左边0厘米,距客户区上边 5厘米处。
以上就是全部过程
在不同的映射模式下,一个逻辑单位 对应 不同的 设备单位,
例如:在 MM_TEXT 映射模式下,设备坐标是以像素为单位的,
也就是说,如果你这时要用一个函数画一条直线,并且传递给它的参数大小为
100,(通常情况下,传递给函数的参数通常是视作逻辑坐标下的数值,也就是说,这里的100指的是逻辑坐标里100个单位长度.不过也不一定,用时请看具体情况,这个我也不大清楚),那么它将会在屏幕上画一条100像素长的线条,
如果是在 MM_LOMETRIC 映射模式下,设备坐标是以0.1 毫米为一个长度单位的,如果你这时要用一个函数画一条直线,并且传递给它的参数大小为
100,那么它将会在屏幕上画出 0.1毫米 * 100 = 10 厘米 长的直线,
当然,由于各种复杂的原因,画长的直线可能并不是刚好10 厘米长,但误差不会很大
至于窗口与视口坐标的问题,你可以看这里
http://ke..com/view/1522985.htm
补充:
我的理解是这样的,窗口坐标与视口坐标是与DC(即设备上下文)相关的,如果
DC是整个屏幕,那么窗口坐标的原点就是屏幕的左上角,如果DC是一个应用程序的窗口的客户区,那么窗口坐标的原点就是该客户区的左上角
Ⅷ android VIew中画正弦曲线时怎样自己定义坐标轴,怎样将原点设置到屏幕中心
获取屏幕大小就可以了,通过定义DisplayMetrics dm = getResources().getDisplayMetrics();
dm中就有屏幕大小的数据
Ⅸ 关于OpenGL默认屏幕坐标系原点在哪
原点当然是在屏幕正中间啦.
默认坐标系x从-1 到1 是从左到右.
y 从-1到1是从下到上