mirror of
https://github.com/processing/processing4.git
synced 2026-02-03 05:39:18 +01:00
This commit is contained in:
@@ -0,0 +1,88 @@
|
||||
import processing.core.*;
|
||||
|
||||
import java.applet.*;
|
||||
import java.awt.*;
|
||||
import java.awt.image.*;
|
||||
import java.awt.event.*;
|
||||
import java.io.*;
|
||||
import java.net.*;
|
||||
import java.text.*;
|
||||
import java.util.*;
|
||||
import java.util.zip.*;
|
||||
import java.util.regex.*;
|
||||
|
||||
public class MouseFunctions extends PApplet {
|
||||
|
||||
/**
|
||||
* Mouse Functions.
|
||||
*
|
||||
* Click on the box and drag it across the screen.
|
||||
*/
|
||||
|
||||
float bx;
|
||||
float by;
|
||||
int bs = 20;
|
||||
boolean bover = false;
|
||||
boolean locked = false;
|
||||
float bdifx = 0.0f;
|
||||
float bdify = 0.0f;
|
||||
|
||||
|
||||
public void setup()
|
||||
{
|
||||
size(200, 200);
|
||||
bx = width/2.0f;
|
||||
by = height/2.0f;
|
||||
rectMode(CENTER_RADIUS);
|
||||
}
|
||||
|
||||
public void draw()
|
||||
{
|
||||
background(0);
|
||||
|
||||
// Test if the cursor is over the box
|
||||
if (mouseX > bx-bs && mouseX < bx+bs &&
|
||||
mouseY > by-bs && mouseY < by+bs) {
|
||||
bover = true;
|
||||
if(!locked) {
|
||||
stroke(255);
|
||||
fill(153);
|
||||
}
|
||||
} else {
|
||||
stroke(153);
|
||||
fill(153);
|
||||
bover = false;
|
||||
}
|
||||
|
||||
// Draw the box
|
||||
rect(bx, by, bs, bs);
|
||||
}
|
||||
|
||||
public void mousePressed() {
|
||||
if(bover) {
|
||||
locked = true;
|
||||
fill(255, 255, 255);
|
||||
} else {
|
||||
locked = false;
|
||||
}
|
||||
bdifx = mouseX-bx;
|
||||
bdify = mouseY-by;
|
||||
|
||||
}
|
||||
|
||||
public void mouseDragged() {
|
||||
if(locked) {
|
||||
bx = mouseX-bdifx;
|
||||
by = mouseY-bdify;
|
||||
}
|
||||
}
|
||||
|
||||
public void mouseReleased() {
|
||||
locked = false;
|
||||
}
|
||||
|
||||
|
||||
static public void main(String args[]) {
|
||||
PApplet.main(new String[] { "MouseFunctions" });
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user