Android模拟绘制极坐标方程

mac2022-06-30  123

零、前言

本着点动成线的世界真理,思考了一下,可以加入点的绘制来玩玩 有点就可以模拟坐标系,极坐标当然也阔以。 一个缺点就是重复绘制(因为绘制时点压点,然后看过度绘制一条红) 但是看极坐标方程是什么样子的,玩玩还是挺好的 绘图部分基于我的LogicCanvas绘图库:基础使用在此, 喜欢的话可以到项目的github上看看,顺便给个star

引入
allprojects { repositories { ... maven { url 'https://jitpack.io' } } } implementation 'com.github.toly1994328:logic-canvas-android:0.05'

一、看下几个效果:

极坐标绘图2.png 极坐标绘图1.png 极坐标绘图.png

二、绘制代码:

//ρ= a(1-cosθ) //ρ= a(1-sin3θ) //ρ=(e^(cosθ)- 2cos(4θ) + [sin(θ/12)]^5)*100 @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); Painter painter = PainterEnum.INSTANCE.getInstance(canvas); CanvasUtils.drawCoord(getContext(), coo, 50, canvas); CanvasUtils.drawGrid(getContext(), 50, canvas); for (int i = 1; i < 500; i++) { float ang = (float) (i); float rad = Logic.rad(ang); float c = (float) (100 * (1 - Math.sin(rad))); // float c = (float) (100 * (1 - Math.cos(3*Logic.rad(ang)))); // float c = (float) (Math.pow(Math.E,Math.cos(rad)) - 2 * Math.cos(4 * rad) + Math.pow(Math.sin(rad / 12), 5)); painter.draw(new ShapeDot() .ang(ang).c(c).b(4).coo(coo) .fs(Color.parseColor("#F05617"))); } }

就酱紫


后记、

1.声明:

[1]本文由张风捷特烈原创,转载请注明 [2]欢迎广大编程爱好者共同交流 [3]个人能力有限,如有不正之处欢迎大家批评指证,必定虚心改正 [4]你的喜欢与支持将是我最大的动力

2.连接传送门:

更多安卓技术欢迎访问:安卓技术栈 我的github地址:欢迎star 简书首发,腾讯云+社区同步更新 张风捷特烈个人网站,编程笔记请访问:http://www.toly1994.com

3.联系我

QQ:1981462002 邮箱:1981462002@qq.com 微信:zdl1994328

4.欢迎关注我的微信公众号,最新精彩文章,及时送达:
公众号.jpg

转载于:https://www.cnblogs.com/toly-top/p/9781893.html

相关资源:JAVA上百实例源码以及开源项目
最新回复(0)