Processing 如何创建点、显示点并将其存储在某种数组中
我想创建点,然后将它们存储在数组中。我这样做是为了在之后通过我的数据点进行线性回归。因此,我需要能够循环使用我的所有点 我在网上找不到任何类似的东西进行处理,因为我不能真正做到这一点,我需要你的帮助。以下是我的方法,但它似乎不起作用:Processing 如何创建点、显示点并将其存储在某种数组中,processing,storage,point,clicking,Processing,Storage,Point,Clicking,我想创建点,然后将它们存储在数组中。我这样做是为了在之后通过我的数据点进行线性回归。因此,我需要能够循环使用我的所有点 我在网上找不到任何类似的东西进行处理,因为我不能真正做到这一点,我需要你的帮助。以下是我的方法,但它似乎不起作用: ArrayList<dataPoint> dataPoints = new ArrayList<dataPoint>(); void setup(){ size(1000, 1000); background(255); } v
ArrayList<dataPoint> dataPoints = new ArrayList<dataPoint>();
void setup(){
size(1000, 1000);
background(255);
}
void draw(){
for (int i = 1; i == dataPoints.size(); i++) {
// An ArrayList doesn't know what it is storing so we have to cast the object coming out
dataPoint Point = dataPoints.get(i);
Point.display();
}
}
void mousePressed() {
dataPoints.add(new dataPoint(mouseX, mouseY));
}
class dataPoint {
float x;
float y;
dataPoint(int tempX, int tempY) {
x = tempX;
y = tempY;
}
void display() {
strokeWeight(10);
stroke(255,0,0);
point(x,y);
}
}
ArrayList dataPoints=new ArrayList();
无效设置(){
大小(10001000);
背景(255);
}
作废提款(){
对于(inti=1;i==dataPoints.size();i++){
//ArrayList不知道它正在存储什么,所以我们必须将对象抛出
数据点=数据点。获取(i);
Point.display();
}
}
void mousePressed(){
添加(新数据点(mouseX,mouseY));
}
类数据点{
浮动x;
浮动y;
数据点(int tempX,int tempY){
x=tempX;
y=tempY;
}
无效显示(){
冲程重量(10);
冲程(255,0,0);
点(x,y);
}
}
我希望有一个程序来创建点并将它们存储在一个数组中(或类似的东西,您可以循环使用)。您的大部分代码都是有意义的,我只能发现两个陷阱,它们可能会阻止您循环使用所有点并可视化它们:
for(int i=0;i
请记住,Processing/Java中数组索引从0开始(同样,最后一个索引不是数组的
size()
,而是小于1,因此可以更具体一点吗?你说这不起作用是什么意思?你期望代码做什么?它做了什么?
ArrayList<dataPoint> dataPoints = new ArrayList<dataPoint>();
void setup(){
size(1000, 1000);
}
void draw(){
background(255);
for (int i = 0; i < dataPoints.size(); i++) {
// An ArrayList doesn't know what it is storing so we have to cast the object coming out
dataPoint Point = dataPoints.get(i);
Point.display();
}
}
void mousePressed() {
dataPoints.add(new dataPoint(mouseX, mouseY));
}
class dataPoint {
float x;
float y;
dataPoint(int tempX, int tempY) {
x = tempX;
y = tempY;
}
void display() {
strokeWeight(10);
stroke(255,0,0);
point(x,y);
}
}
ArrayList<PVector> dataPoints = new ArrayList<PVector>();
void setup(){
size(1000, 1000);
strokeWeight(10);
stroke(255,0,0);
noFill();
}
void draw(){
background(255);
beginShape();
for (int i = 0; i < dataPoints.size(); i++) {
PVector point = dataPoints.get(i);
vertex(point.x,point.y);
}
endShape();
}
void mousePressed() {
dataPoints.add(new PVector(mouseX, mouseY));
}