如何使用android画函数曲线
发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,这篇文章主要介绍如何使用android画函数曲线,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!//布局文件 //MainActivity类package com.avi.
千家信息网最后更新 2025年01月19日如何使用android画函数曲线
这篇文章主要介绍如何使用android画函数曲线,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
//布局文件//MainActivity类package com.avi.myapplication5.app;import android.app.Activity;import android.os.Bundle;public class MainActivity extends Activity{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); }}//DrawActivity类package com.avi.myapplication5.app;import android.content.Context;import android.graphics.Canvas;import android.graphics.Paint;import android.util.AttributeSet;import android.view.MotionEvent;import android.view.View;/** * Created by Administrator on 14-4-18. */public class DrawActivity extends View implements View.OnTouchListener{ float PI=(float)Math.PI;//PI=3.1415那个什么的每次调用(float)Math.PI太麻烦,自定义一个。 float canvasWidth,canvasHeight;//画布宽、高 float width,height;//自定义长宽 float left,up;//自定义左上角位置 public DrawActivity(Context context, AttributeSet attrs) { super(context, attrs); } @Override protected void onDraw(Canvas canvas){ super.onDraw(canvas); //开始一定要先调用Init()初始化参数。我自定义的参数没有默认值。 Init(canvas); Render(canvas); } @Override public boolean onTouch(View view, MotionEvent event) { return false; } //初始化全局参数。 //建议不要在其它函数里更改在这里初始化的参数,以免得不出正确结果 void Init(Canvas canvas){ //获取画布宽、高 canvasWidth=(float)canvas.getWidth(); canvasHeight=(float)canvas.getHeight(); //自定义长宽 width=2*PI;height=2*PI*canvasHeight/canvasWidth; // 自定义左上角位置 left=-width/2;up=height/2; } //渲染画面。 //画图步骤在这里。 void Render(Canvas canvas){ //新建画笔 Paint paint=new Paint(); //画网格线。 paint.setARGB(255, 255, 0, 0); DrawGrid(canvas,0.3f,0.3f,paint); //画坐标线。 paint.setARGB(255,0,0,0); DrawCoord(canvas,paint); //显示横、纵坐标轴名称和原点名称。(重要提示:这里就是你想要的新东西) paint.setARGB(255,100,100,100); DrawCoordName(canvas,paint,"t","f(t)","O"); //画曲线 DrawCurve(canvas, paint); } //画网格线。 //要先画网格再画坐标,不然网格线会把坐标线覆盖掉从而看不到坐标线 //dx,dy: void DrawGrid(Canvas canvas,float dx,float dy,Paint paint){ //画纵向网格线 //左侧 float x=0; while (x>left){ canvas.drawLine(PX(x),PY(up),PX(x),PY(up-height),paint); x-=dx; } //右侧 x=0; while (x up-height){ canvas.drawLine(PX(left),PY(y),PX(left+width),PY(y),paint); y-=dy; } } //画坐标线。 void DrawCoord(Canvas canvas,Paint paint){ //画x,y坐标 canvas.drawLine(PX(left),PY(0f),PX(left+width),PY(0f),paint); canvas.drawLine(PX(0f),PY(up),PX(0f),PY(up-height),paint); } //(重要提示:这里就是你想要的新东西) //显示横、纵坐标轴名称和原点名称。 void DrawCoordName(Canvas canvas,Paint paint,String xAxisName,String yAxisName,String originName){ //设置文字大小 paint.setTextSize(40f); //在适当位置显示x,y,O名称 canvas.drawText(xAxisName,PX(left+width)-30f,PY(0f)+30f,paint); canvas.drawText(yAxisName,PX(0f),PY(up)+30f,paint); canvas.drawText(originName,PX(0f),PY(0f)+30f,paint); } //画点函数。使用自定义坐标。 void DrawPoint(Canvas canvas,float x,float y,Paint paint){ canvas.drawPoint(PX(x),PY(y),paint); } //(重要提示:所有你想画的曲线都在这里进行。) //画曲线函数。 //使用画布坐标。所以要调用PX(x),PY(y)把自定义坐标里的量(如x,y)转换成画布坐标。 void DrawCurve(Canvas canvas,Paint paint){//绘制曲线 paint.setARGB(255,0,0,255); for(float x=left;x 以上是"如何使用android画函数曲线"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
坐标
函数
画布
曲线
网格
名称
参数
标线
重要
位置
提示
东西
内容
原点
就是
左上角
篇文章
系统
纵坐标
适当
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库字符型字段是什么
网络安全传输协议设计
电脑服务器一直连接中怎么回事
天津数据库空投箱工程
真人交友软件开发
怎样设置软件开发者选项
如何构建网络安全防护
737装导航数据库
智能化服务器供应商
对网络安全
数据库技术名词
汽车车载网络技术相关书籍
数据库表单中怎么添加数据
天津通信软件开发价钱
网络安全怎么防范摄像头
广东创新服务器厂家
软件开发当前形势及发展趋势
app怎么远程和服务器连接
软件开发公司申请税收优惠
我的世界高人气服务器手机版推荐
深圳智慧园区软件开发怎么样
电站网络安全装置作用
南京电商erp软件开发
贵阳戴尔服务器代理商
mis软件开发怎么样
深圳所有的软件开发公司排名
数据库三级结构模式由内到外
频谱分析仪软件开发
网络安全宣传活动方案记录表
交通安全网络安全签名活动