|
|
- // Spray Can Tool
-
- var width=100, dotSize=1, rate=6;
-
- macro 'Spray Can Tool - C123D20D22D24D41D43D62D82Da2C037L93b3D84Dc4L75d5L757f Ld5dfLa7d7LabdbLa9d9LacdcLa7ac' {
- setLineWidth(dotSize);
- radius=width/2; radius2=radius*radius;
- start = getTime();
- autoUpdate(false);
- n = 25*exp(0.9*(10-rate));
- if (n<=5) n = 0;
- while (true) {
- getCursorLoc(x, y, z, flags);
- if (flags&16==0) exit();
- x2 = (random()-0.5)*width;
- y2 = (random()-0.5)*width;
- if (x2*x2+y2*y2<radius2) {
- x += x2;
- y += y2;
- drawLine(x, y, x, y);
- if (getTime()>start+50) {
- updateDisplay();
- start = getTime();
- }
- }
- for (i=0; i<n; i++);
- }
- }
-
- macro 'Spray Can Tool Options' {
- Dialog.create("Spray Can Options");
- Dialog.addNumber("Spray Width (pixels):", width);
- Dialog.addNumber("Dot Size (pixels):", dotSize);
- Dialog.addNumber("Flow Rate (1-10):", rate);
- Dialog.show();
- width = Dialog.getNumber();
- dotSize = Dialog.getNumber();
- rate = Dialog.getNumber();
- if (rate<1) rate = 1;
- if (rate>10) rate = 10;
- }
|