android Draw Rect 坐标图示以及DrawOval的椭圆坐标说明
2011-05-21 21:30
239 查看
Java
代码
1. //绘制矩形
2. canvas.drawRect(new
Rect(150, 75, 260, 120), mPaint);
3. //设置裁剪区域
4. canvas.clipRect(10, 10, 280, 260);
我对它们的参数有些疑问
我不知道
android
它是怎么在一个
Canvas
对象上
绘制出一个矩形?
newRect(150,75,260,120)
里边这些参数
的数字指明了什么那些值?
android
绘制一个矩形以哪里为坐标原点?
---
》我现在就告诉大家
是以屏幕的左上角。
好
我们现在
就带着疑问来
看看
android
到底怎么在画布上
绘制一个矩形
先说这句
Java
代码
1. new
Rect(150, 75, 260, 120)
这个构造方法需要四个参数这四个参数
指明了什么位置
?我们就来解释怎么画
这个
矩形
这四个
参数
分别代表的意思是:
left top right bottom
上下左右呗。啊,不是
是
左
上
右
下。
下面给大家解释
left
:
矩形左边的
X
坐标
150 ---->
图片中的
A
点
top:
矩形顶部的
Y
坐标
75 ---->
图片中的
B
点
right :
矩形右边的
X
坐标
260 ----->
图片中的
C
点
bottom
:
矩形底部的
Y
坐标
120 ------->
图片中的
D
点
说白了就是左上角的坐标是(150,75),右下角的坐标是(260,120),这样就好理解了
不知道大家到这里
能不能马上就能想象出
这个矩形应该在屏幕的什么位置
我是不能
就在纸上画了画
下边来张图
我模拟器的
屏幕是
320*480
我也是
画一个大概的位置
主要是明白
那几个点在什么地方。
在图中
我分别以
A B C D
代表
那四个点
图片中红色的部分就是我们要画的矩形。
canvas.clipRect(10, 10, 280, 260)
这个裁剪画布的方法
的参数含义和
我们
newRect(150, 75, 260, 120)
的参数含义是一样的。
这里向大家说明一个问题
接着说吧
还是上边这个矩形
Java
代码
1. new
Rect(150,75,260,120)
我们应该怎么把它放到屏幕的右下角,就是和屏幕的右侧和下侧都挨上
坐标是多少?我的屏幕是
320*480
按道理这个矩形的坐标应该是
(210,435,320,480)
这其实
应该是正确的结果
,但是如果把坐标改成这个
你运行一下
其实
这个矩形就消失在了屏幕上。
刚开始我困惑至极
也不知道怎么回事,后来发现
我们屏幕的
状态栏
和
标题栏
一共占了
50
正确的坐标应该是
(
210,385,320,430);
我们还是来看张图
那个绿色的矩形
就是我们想要的效果。
这个时候它就在屏幕的右下角。
这里还是有疑问,就算
状态栏
和
标题栏
占去了
50
但是矩形最下面那条线
的位置应该还是
480
啊
!
这是没错的啊
怎么会变成
430
了
很好
我也不知道是怎么回事
我怀疑
是坐标原点
下移
坐标原点
在
状态栏和标题栏的底线。
我这里只是猜测,如果有高手知道
还请告知。谢谢。
哦
对了
这里有一个不错的例子
介绍
怎么获取
状态栏
和
标题栏的
高度 http://blog.csdn.net/pilou5400/archive/2010/11/18/6018422.aspx
大家
可以去看看。
=======================================================================================
其中椭圆的坐标,如下:
canvas.drawOval(new RectF(15,15,140,70),paint);
其实跟矩形的坐标是一样的,这些坐标定义了一个矩形,然后只是在这个矩形中画了一个椭圆而已,如下:
代码
1. //绘制矩形
2. canvas.drawRect(new
Rect(150, 75, 260, 120), mPaint);
3. //设置裁剪区域
4. canvas.clipRect(10, 10, 280, 260);
我对它们的参数有些疑问
我不知道
android
它是怎么在一个
Canvas
对象上
绘制出一个矩形?
newRect(150,75,260,120)
里边这些参数
的数字指明了什么那些值?
android
绘制一个矩形以哪里为坐标原点?
---
》我现在就告诉大家
是以屏幕的左上角。
好
我们现在
就带着疑问来
看看
android
到底怎么在画布上
绘制一个矩形
先说这句
Java
代码
1. new
Rect(150, 75, 260, 120)
这个构造方法需要四个参数这四个参数
指明了什么位置
?我们就来解释怎么画
这个
矩形
这四个
参数
分别代表的意思是:
left top right bottom
上下左右呗。啊,不是
是
左
上
右
下。
下面给大家解释
left
:
矩形左边的
X
坐标
150 ---->
图片中的
A
点
top:
矩形顶部的
Y
坐标
75 ---->
图片中的
B
点
right :
矩形右边的
X
坐标
260 ----->
图片中的
C
点
bottom
:
矩形底部的
Y
坐标
120 ------->
图片中的
D
点
说白了就是左上角的坐标是(150,75),右下角的坐标是(260,120),这样就好理解了
不知道大家到这里
能不能马上就能想象出
这个矩形应该在屏幕的什么位置
我是不能
就在纸上画了画
下边来张图
我模拟器的
屏幕是
320*480
我也是
画一个大概的位置
主要是明白
那几个点在什么地方。
在图中
我分别以
A B C D
代表
那四个点
图片中红色的部分就是我们要画的矩形。
canvas.clipRect(10, 10, 280, 260)
这个裁剪画布的方法
的参数含义和
我们
newRect(150, 75, 260, 120)
的参数含义是一样的。
这里向大家说明一个问题
接着说吧
还是上边这个矩形
Java
代码
1. new
Rect(150,75,260,120)
我们应该怎么把它放到屏幕的右下角,就是和屏幕的右侧和下侧都挨上
坐标是多少?我的屏幕是
320*480
按道理这个矩形的坐标应该是
(210,435,320,480)
这其实
应该是正确的结果
,但是如果把坐标改成这个
你运行一下
其实
这个矩形就消失在了屏幕上。
刚开始我困惑至极
也不知道怎么回事,后来发现
我们屏幕的
状态栏
和
标题栏
一共占了
50
正确的坐标应该是
(
210,385,320,430);
我们还是来看张图
那个绿色的矩形
就是我们想要的效果。
这个时候它就在屏幕的右下角。
这里还是有疑问,就算
状态栏
和
标题栏
占去了
50
但是矩形最下面那条线
的位置应该还是
480
啊
!
这是没错的啊
怎么会变成
430
了
很好
我也不知道是怎么回事
我怀疑
是坐标原点
下移
坐标原点
在
状态栏和标题栏的底线。
我这里只是猜测,如果有高手知道
还请告知。谢谢。
哦
对了
这里有一个不错的例子
介绍
怎么获取
状态栏
和
标题栏的
高度 http://blog.csdn.net/pilou5400/archive/2010/11/18/6018422.aspx
大家
可以去看看。
=======================================================================================
其中椭圆的坐标,如下:
canvas.drawOval(new RectF(15,15,140,70),paint);
其实跟矩形的坐标是一样的,这些坐标定义了一个矩形,然后只是在这个矩形中画了一个椭圆而已,如下:
相关文章推荐
- android Draw Rect 坐标图示以及DrawOval的椭圆坐标说明
- Android draw Rect 坐标图示
- android Draw Rect 坐标图示
- android Draw Rect 坐标图示
- android Draw Rect 坐标图示
- android Draw Rect 坐标图示
- android Draw Rect 坐标图示
- android Draw Rect 坐标图示
- android Draw Rect 坐标图示
- Android Canvas类介绍和Android Draw Rect 坐标图示
- Android View(一)-View坐标以及方法说明
- Android界面坐标图示和Rect(矩形)简介
- Android View(一)-View坐标以及方法说明
- Android View(一)-View坐标以及方法说明
- android 滑动出现删除按钮 - swipelistview 入口方法以及简单布局说明
- android 没有main函数,怎么找到程序执行入口呢?以及activity主要生命周期的方法说明
- 关于Android Canvas.drawText方法中的坐标参数的正确解释
- Android 自己画View -- drawable.draw 以及 drawText