unity 控制点 贝塞尔曲线_简单介绍,如何绘制Bezier曲线

本文介绍了贝塞尔曲线的基本概念,并通过VB代码展示了如何在Unity中绘制3阶贝塞尔曲线,包括曲线的数学原理和绘制函数的实现。
摘要由CSDN通过智能技术生成

Bezier曲线简介

Bezier曲线,又有人叫贝赛尔曲线,贝兹曲线,在计算机绘图中经常被用到,由于前些天事件要用到这个,所以就研究了下。

有了参考资料,其实也不是很复杂。

曲线的介绍(转自维基百科,见本文的最下方)

初一看还是有些复杂的,其实贝兹曲线的绘制方法很简单,仔细看看一阶贝赛尔曲线,

一阶贝赛尔曲线上的由两个点确定  P0 和P1,当t在0--->1区间上递增时,根据式(1)

会得到多个点的坐标,其实这些的点就是一条直线上的点。

B(t) = (1-t)P0 + tP1--------------------------------------(1)

即:

B(t).x = (1-t)P0.x + tP1.x

B(t).y = (1-t)P0.y + tP1.y

二阶贝赛尔曲线由3个点确定,它可以理解成是这样的一阶贝赛尔曲线:确定该一阶贝赛尔曲线的两个点是变化的。

这两个点(设分别为Pm,Pn)是怎样变化的呢,这两个点又分别是(P0,P1)确定的一阶贝赛尔曲线和(P1,P2)确定的一阶贝赛尔

曲线上的点。

于是有了2阶贝赛尔曲线的公式

Pm(t) = (1-t)P0 + tP1

Pn(t)  = (1-t)P1 + tP2

B(t)  = (1-t)Pm(t) + tPn(t) = (1-t)^2 P0 + 2(1-t)tP1+ t^2P2

以此类推可以得到3阶贝赛尔曲线,是不是很简单?

怎样绘

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值