如何检查贝塞尔曲线的边界?

问题描述

我先创建了一个河流对象类型,然后绘制了一条带有贝塞尔曲线的河流:

var River= function(){
    this.end = [152,401];
    this.endControl = [263,304];
    this.frontControl = [300,453];
    this.front = [400,354];
    this.frontNode = [333,390];
    this.endNode = [229,365];
};
River.prototype.draw=function(){
    noFill();
    strokeWeight(15);
    stroke(0,94,255);
    bezier(this.end[0],this.end[1],this.endControl[0],this.endControl[1],this.frontControl[0],this.frontControl[1],this.front[0],this.front[1]);
};
var river= new River();
river.draw() 

添加一个绵羊对象类型并在我的画布上画了一些绵羊,我想在画布中移动它们。但是,我希望羊在到达河流边界时停止移动。 我正在考虑编写一个诸如“sheep.checkRiverBoundary()”之类的函数,但我不知道如何编写。如何检查贝塞尔曲线的边界?最好,我只想检查曲线,而不仅仅是围绕它的整个矩形。 我使用可汗学院 JS 课程提供的环境来编写代码。非常感谢回答这个问题的人。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)