Server:等顧客上門
Client:客人
Client端
import processing.net.*;
Client client;
void setup(){
size(300,300);
client=new Client(this,"120.125.70.34",7777);///接收端的IP
}
void draw(){
if(mousePressed){
line(mouseX,mouseY,pmouseX,pmouseY);
client.write(mouseX+" "+mouseY+" "+pmouseX+" "+pmouseY+"\n");
}
}
Server端
import processing.net.*;
Server server=null;
Client client=null;//等一下要上門的Client,只接受一位客人
void setup(){
size(300,300);
server=new Server(this,7777);///不用寫IP
}
void draw(){
Client temp=server.available();///開門看一下有沒有人來
if(temp!=null){//有人上鉤了....連線成功
client=temp;
}
if(client!=null){
String now=client.readString();///如果有送資料會讀到四個座標
if(now!=null)print(now);
}
}
Client端
import processing.net.*;
Client client;
void setup(){
size(300,300);
client=new Client(this,"120.125.70.34",7777);///接收端的IP
}
void draw(){
if(mousePressed){
line(mouseX,mouseY,pmouseX,pmouseY);
client.write(mouseX+" "+mouseY+" "+pmouseX+" "+pmouseY+"\n");
}
}
Server端
import processing.net.*;
Server server=null;
Client client=null;
void setup(){
size(300,300);
server=new Server(this,7777);
}
void draw(){
Client temp=server.available();
if(temp!=null){
client=temp;
}
if(client!=null){
String now=client.readString();
if(now!=null){
String[]xyxy=splitTokens(now);//新增這兩行讓Client和Server同步
line(int(xyxy[0]),int(xyxy[1]),int(xyxy[2]),int(xyxy[3]));
}
}
}
畫錯可以消除
import processing.net.*;
Client client;
ArrayList<PVector>points;
void setup(){
size(300,300);
client=new Client(this,"120.125.70.34",7777);
points=new ArrayList<PVector>();
}
void draw(){
background(255);
for(int i=0;i<points.size();i++){
ellipse(points.get(i).x,points.get(i).y,5,5);
}
}
void mouseDragged(){
if(mouseButton==LEFT) points.add(new PVector(mouseX,mouseY));
if(mouseButton==RIGHT &&points.size()>0) points.remove(points.size()-1);
}



沒有留言:
張貼留言