Java 处理:圆弧代码仅创建圆。如何正确识别启动和停止值

Java 处理:圆弧代码仅创建圆。如何正确识别启动和停止值,java,processing,trigonometry,vector-graphics,curve,Java,Processing,Trigonometry,Vector Graphics,Curve,我需要在这段代码中创建一个“弧”。我一直在编写一些其他代码,这些代码成功地创建了一个圆,但我无法理解如何正确地实现“开始”和“停止”值 基本上,代码现在仍然创建了一个圆,我不知道该怎么做 这是一个更大的文件的一部分,但我不认为其余部分是相关的。让我知道我是否应该添加其余的 class UIArc{ float a, b, c, d, start, stop; public UIArc(float a, float b, float c, float d, float start, flo

我需要在这段代码中创建一个“弧”。我一直在编写一些其他代码,这些代码成功地创建了一个圆,但我无法理解如何正确地实现“开始”和“停止”值

基本上,代码现在仍然创建了一个圆,我不知道该怎么做

这是一个更大的文件的一部分,但我不认为其余部分是相关的。让我知道我是否应该添加其余的

class UIArc{
  float a, b, c, d, start, stop;
  public UIArc(float a, float b, float c, float d, float start, float stop){
    setArc(a, b, c, d, start, stop);
  }
  public UIArc(PVector p1, PVector p2){
    setArc(p1.x, p1.y, p2.x, p2.y, 90, 180);
  }
  void setArc(float a, float b, float c, float d, float start, float stop){
    this.a = min(a, c);
    this.b = min(b, d);
    this.c = max(a, c);
    this.d = max(b, d);
  }
  PVector getCentre(){
    float cx = (this.c - this.a)/2.0;
    float cy = (this.d = this.b)/2.0;
    return new PVector(cx, cy);
  }
  boolean isBetweenInc(float v, float lo, float hi){
    if(v >= lo && v <= hi) return true;
  return false;
  }
  boolean isPointInside(PVector p){
    if(isBetweenInc(p.x, this.a, this.c) && isBetweenInc(p.y, this.b, this.d))return true;
    return false;
  }
  float getWidth(){
    return(this.c - this.a);
  }
  float getHeight(){
    return(this.d - this.b);
  }
}
类UIArc{
浮动a、b、c、d、启动、停止;
公共UIArc(浮动a、浮动b、浮动c、浮动d、浮动启动、浮动停止){
设定弧(a、b、c、d、启动、停止);
}
公共UIArc(PVector p1、PVector p2){
setArc(p1.x,p1.y,p2.x,p2.y,90180);
}
无效设置弧(浮动a、浮动b、浮动c、浮动d、浮动启动、浮动停止){
这.a=最小值(a,c);
这.b=最小值(b,d);
这.c=最大值(a,c);
这.d=最大值(b,d);
}
PVector getcenter(){
float cx=(this.c-this.a)/2.0;
float cy=(this.d=this.b)/2.0;
返回新的PVector(cx、cy);
}
布尔值介于C(浮点v、浮点lo、浮点hi)之间{

如果(v>=lo&&v我假设圆弧的角度是以度为单位设置的:

但角度必须以弧度而不是度传递给函数。 用于将度转换为弧度

e、 g

类UIArc{
// [...]
无效设置弧(浮动a、浮动b、浮动c、浮动d、浮动启动、浮动停止){
这.a=最小值(a,c);
这.b=最小值(b,d);
这.c=最大值(a,c);
这.d=最大值(b,d);
this.start=start;
this.stop=停止;
}
作废提款(){
弧(这个a,这个b,这个c,这个c,
弧度(这个。开始),弧度(这个。停止));
}
}
setArc(p1.x, p1.y, p2.x, p2.y, 90, 180);