如何使用android画函数曲线
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,这篇文章主要介绍如何使用android画函数曲线,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!//布局文件 //MainActivity类package com.avi.
千家信息网最后更新 2025年11月07日如何使用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安全错误
数据库的锁怎样保障安全
网络安全事件应急预案 卫计
网络安全学校日手抄报三年级
杭州软件开发价位
osgi框架 数据库连接
软件开发经理 招聘要求
数据库构建逻辑模型
网络安全技能竞赛上机
捷顺g3数据库怎么还原
福建汽车备件管理软件开发
服务器改成机械硬盘
天刀 少女数据库
怎么看服务器宽带是哪个运营商的
pg dump还原数据库
dig 指定服务器
我的世界国际版服务器已过期
陕西音乐教学软件开发
wenet能在服务器部署吗
md102 软件开发
软件开发平台云
为我国网络安全做出最大贡献的人
ad服务器高级管理
鹤壁网络安全会
服务器每天早上自己连不上网
计算机网络安全现状官方版
服务器fan
正规的浪潮服务器经销商
宝山区营销软件开发欢迎咨询
传奇数据库密码在哪文件
网络安全法的立法过程特点
怎么才能连接到一个服务器上