Android使用Catmull_Rom插值算法画光滑曲线图

本文介绍了如何利用Catmull-Rom插值算法在Android平台上绘制光滑曲线。算法核心思想包括四个关键点的使用,并详细说明了如何在B点和C点之间生成平滑曲线。在工程实践中,提供了`Catmull_Rom.java`类的源代码链接,供开发者下载参考。
摘要由CSDN通过智能技术生成

一、算法核心思想
1、每次插值需要四个基础点(暂假设为A、B、C、D)。
2、根据已知的四个基础点,插值算法每次只能实现在中间两个点间画出光滑的曲线(此处就是B点和C点)。
二、工程代码
1、“Catmull_Rom插值算法”画光滑曲线的类(Catmull_Rom.java)

</pre><pre name="code" class="java">package com.example.test;

import java.util.ArrayList;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Paint.Style;
import android.graphics.Path;
import android.util.AttributeSet;
import android.view.View;

public class Catmull_Rom extends View {
  private final Paint mGesturePaint = new Paint();
  private final Path mPath = new Path();

  private ArrayList<Point> point = new ArrayList<Point>();
  private ArrayList<Point> save = new ArrayList<Point>();

  public Catmull_Rom(Context context) {
    super(context);
  }

  public 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值