Android中canvas rotate中心点问题图解

news/2025/2/23 22:17:40

为什么80%的码农都做不了架构师?>>>   hot3.png

第一步平移:

canvas.translate(200, 100);


第二步旋转90度

(注意:x 和 y 坐标会一同旋转)

canvas.rotate(90);


第三步向x轴移动-100

canvas.translate(-100, 0);


第四步向x轴移动-100,向y轴移动200

canvas.translate(-100, 200-图片高度);


注意点:

1.旋转是针对于x和y坐标的(0,0)点的,x和y轴是会旋转的,

还有一个旋转方法是canvas.rotate(90,x,y);就是绕x,y点旋转

2.图片永远显示在canvas中的,图片相对于canvas是没有任何变化的

旋转90度示例代码:

Bitmap prograss_bg = BitmapFactory.decodeResource(getResources(), R.drawable.prograss_bg);
int x = prograss_bg.getWidth();
int y = prograss_bg.getHeight();
canvas.translate(x, y);
canvas.rotate(90);         
canvas.translate(-y, x-y);
canvas.drawBitmap( prograss_bg , 0, 0,new Paint());


转载于:https://my.oschina.net/jerikc/blog/269724


http://www.niftyadmin.cn/n/712291.html

相关文章

替代left join方法_义县游学电子教您一招:改变系统的快捷键映射为一个按键的方法...

01文章主题大家好,我是您的朋友义县游学电子科技.今天跟您介绍的文章主题是:改变系统的快捷键映射为一个按键的方法,原本需要按下ctrlA才能完成的全选功能,现在你只需要按下A键就能搞定了.是不是非常的省力而不麻烦.有了这个功能您…

一步一步学习Redis——五大数据类型(String、Hash、List、Set、ZSet)简要介绍

1.开篇 Redis支持五种数据类型:String(字符串),Hash(哈希),List(列表),Set(集合)及ZSet(sorted set:有序集合)。 2.Redis…

java 网关服务器_在java实现的mmo游戏服务器中,为什么要采用网关+场景+主服务器的设计模式?...

场景并不是必然调用,因为场景是不断切换的,你去这个场景了如果还调用其他场景,会额外消耗不少资源,所以场景是不能跟主服务器一样全局的。主服务器因为不管什么条件下都要调用,从你登录游戏开始,直到退出&a…

Centos6.5镜像下载

https://blog.csdn.net/sinat_36564972/article/details/81560395 安装linux虚拟机的时候要使用镜像 转载于:https://www.cnblogs.com/JBLi/p/10953165.html

Linux命令工具基础04 磁盘管理

Linux命令工具基础04 磁盘管理 日程磁盘管理中,我们最常用的有查看当前磁盘使用情况,查看当前目录所占大小,以及打包压缩与解压缩; 查看磁盘空间 查看磁盘空间利用大小 df -h -h: human缩写,以人类易读方式显示结果&am…

云服务互联网企业使用率最高

日前,运营商世界网发表的《2016年度中国云服务及云存储市场分析报告》显示,2016年,中国云服务市场规模达到516.6亿元,预计2017年中国云计算市场份额将达到690亿元以上。 报告显示,市场对云主机、云存储的需求量最大,云…

web前端学习(二十四)——CSS3浮动属性(float)、清除浮动属性(clear)的相关设置

1.CSS浮动 CSS 的 Float(浮动),会使元素向左或向右移动,其周围的元素也会重新排列。 Float(浮动),往往是用于图像,但它在布局时一样非常有用。 1.1 float属性(设置元素浮…

python求字符串的所有子集_Python刷题:用二进制方式求集合S的全部子集(二进制)...

题型叙述有一个集合S,规定复印出其全部子集,子集元素用分号分隔,在其中集合S自身和空集NULL都觉得是集合S的子集。比如,有一个集合S,它的內容为“S{"A", "B", "C"}”,那麼该…