位置: 编程技术 - 正文

Android Path和PathMeasure类的使用之获取圆弧上的坐标值

编辑:rootadmin

推荐整理分享Android Path和PathMeasure类的使用之获取圆弧上的坐标值,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

问题:

已知图中的中心圆点在屏幕上的坐标为(x, y),分别求出点1、2、3、4的坐标&#;!

解决方法:

可以利用Android的SDK自带类 android.graphics.Path和android.graphics.PathMeasure,

1)以圆点坐标(x,y)为中心画一个矩形RectF,

2)再通过Path类画一个度(—)的内切圆弧路径,

3)然后将该路径平分成3段,

4)再利用PathMeasure分别测量出各个点的坐标&#;

代码如下:

ps:简单介绍一下Path类的一些方法的使用和说明

1.addArc(RectF oval, float startAngle, float sweepAngle)

画扇形(弧线)。第二个参数为0时的位置是矩形右边1/2高度的点,为矩形底部1/2宽的位置,如此如此....正数为顺时针旋转,负数是逆时针旋转。第三个参数是图形绘制角度,上图第三个参数为,如果是-,那么图形倒过来。

2.addCircle(float x, float y, float radius, Path.Direction dir)

画圆。第一、二参数是圆心坐标,第三参数是半径,第四参数是顺时针画还是逆时针画(啥玩意?)。

3.addOval(RectF oval, Path.Direction dir)

画椭圆。

4.addPath(Path src, float dx, float dy)

Android Path和PathMeasure类的使用之获取圆弧上的坐标值

复制一份Path,包含被复制的src的一切,并向X与Y轴方向移动第二、三参数的距离。

5.addRect(RectF rect, Path.Direction dir)

6.addRect(float left, float top, float right, float bottom, Path.Direction dir)

画个矩形、四个参数对应与原点的相对距离的是个点。

7.addRoundRect(RectF rect, float rx, float ry, Path.Direction dir)

画圆角矩形。第二、三个参数为0时就是个矩形,为时,就是个椭圆。第二个参数指X轴方向的角度,决定了与参考矩形的横线交点位置,0-决定交点范围为 角点与线中点之间的某点。

8.arcTo(RectF oval, float startAngle, float sweepAngle)

等同于arcTo(RectF oval, float startAngle, float sweepAngle, boolean false)。测试发现:从之前的最后一点开始画线到画椭圆的开始点,接着画个椭圆。

9.arcTo(RectF oval, float startAngle, float sweepAngle, boolean forceMoveTo)

如果最后一个参数为true,那么等同于addArc(RectF oval, float startAngle, float sweepAngle)。

.cubicTo(float x1, float y1, float x2, float y2, float x3, float y3)

画贝塞尔曲线。前四个参数是两个控制点,最后俩个参数是终止点。起始点通过moveTo(float x, float y)或者setLastPoint(float dx, float dy)方法设置。关于贝塞尔曲线,可以去网上找找资料。某人的博客,关于此曲线。

.moveTo(float x, float y)

设置下一个图形的开始点。

.setLastPoint(float dx, float dy)

设置图形的最后一个点位置。如果画的是个封闭图形,而这个点不在图形线上,那么这个点与最后一个图形连上线完成封闭。如图,本来画了个圆角矩形,最后setLastPoint了一下。

.close()

关闭当前图形,如果最后一点不是开始的那点,那么从最后一点画线到开始点。简而言之,画三角型只需要画俩条线,再调此方法能三角型就完成了。

EditText获取焦点不自动弹出键盘设置 EditText获取焦点不自动弹出键盘设置带有EditText控件的在第一次显示的时候会自动获得focus,并弹出键盘如果不想自动弹出键盘,有两种方法:方法一:

Android Volley完全解析(一),初识Volley的基本用法 1.Volley简介我们平时在开发Android应用的时候不可避免地都需要用到网络技术,而多数情况下应用程序都会使用HTTP协议来发送和接收网络数据。Android系统

安卓音频简析 Android音频分析1安卓音频系统框架ØMultimediaframework:多媒体框架负责封装了播放/录音类、连接安卓音频解码库进行音频软件解码以及连接高通OpenMaxIL接

标签: Android Path和PathMeasure类的使用之获取圆弧上的坐标值

本文链接地址:https://www.jiuchutong.com/biancheng/386755.html 转载请保留说明!

上一篇:Android开发:shape和selector和layer-list的(详细说明)(qt Android开发)

下一篇:EditText获取焦点不自动弹出键盘设置(edittext获取焦点弹出键盘)

  • 企业所得税研发费用加计扣除条件
  • 企业所得税相关分录
  • 增值税小规模纳税人购进货物支付的增值税直接计入
  • 为员工代缴社保材料
  • 报表中的存货是如何填报的
  • 政府补贴什么时候确认收入
  • 增值税零申报触发附加税零申报
  • 委托开发费用免所得税和增值税
  • 小规模纳税人销售不动产适用税率
  • 已认证未付款分录
  • 两所工资所得怎么扣税
  • 一次性工伤医疗补助金和一次性伤残补助金
  • 代付电费开具发票账务处理
  • 劳动保护费在企业怎么交
  • 发票购方税号是什么意思
  • 发票认证了但是没记账
  • 租赁合同印花税双方都要交吗
  • 税收分类编码如何填写
  • 个税负数怎么做账
  • 单位报销的发票
  • 关联企业之间借款的处理
  • 来料加工贸易是什么工作
  • 服务业的营业成本怎么算
  • 在windows7是一种
  • 鸿蒙系统如何删除桌面图标
  • 如何在电子税务局添加开票人
  • 桌面图标归纳
  • js16.vip
  • 审核过程中发现的问题应由被审核部门实施纠正
  • php add
  • thinkphp config
  • php 生成opcode
  • 哪种审计证据更可靠
  • 捐资民办学校可以盈利吗
  • 退回以前年度多交的附加税怎么做分录
  • 博客界面模板
  • 生产加工型企业需要办理哪些
  • phpweb漏洞
  • c语言中有哪些循环结构
  • 增值税发票超过3个月可以作废吗
  • 外账是代理记账吗
  • mysql数据类型怎么判断
  • 申请专利的费用主要包括
  • 个人提供劳务报酬如何交税
  • 餐饮毛利率多少为合理范围
  • 其他权益工具投资是金融资产吗
  • 新开企业如何开发票
  • 食堂辅助账的账务处理
  • 期末留抵税额怎么填报表
  • 收到工程款时会计分录
  • 银行存款支付业务招待费
  • 进项税额转出是什么科目
  • 纸质汇票什么时候能到账
  • 长期未用的定金可以退吗
  • 小规模纳税人增值税计算公式
  • 个人贷款打到公司账户存在什么风险
  • 坏账准备的会计分录例题
  • 股份有限责任公司是什么意思
  • 应计入财务费用的科目是
  • 企业装卸费抵扣怎么做账
  • 如何给初建单位发邮件
  • MySQL MEM_ROOT详解及实例代码
  • ubuntu怎么样
  • win8.1进入桌面
  • 电脑开机后显示xp界面后一直是黑屏状态
  • win7电脑连不上wifi怎么办
  • win8系统的应用程序在哪里
  • 全球知名的中文搜索引擎
  • 如何改进个人工作作风
  • bass表示什么
  • python函数enumerate
  • perl package
  • bat删除隐藏文件
  • vue是如何实现双向绑定的
  • 处理及遍历xml文件怎么做
  • Unity3D NGUI UIInput制作输入框屏蔽特殊字符(只允许输入正整数)
  • 最大的k个数python
  • 税务局税收风险排查总结
  • 干部任免审批表怎么填写
  • 江西税务局
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设