SVG data can also be used in processing, but note that some SVG files may not be supported by processing. Processing can only handle simple SVG graphics, so avoid using radial gradients or complex clipping masks. You can however extend the SVG capabilities of processing using the geomerative library http://www.ricardmarxer.com/geomerative/.
When exporting SVGs from illustrator, the following settings should produce working results. This does however depend on your version of illustrator.
PShape elShape; PShape warningShape; float rotAngle = 0.0; void setup() { size(600,600); // def. window size // Load the svg file elShape = loadShape("High_voltage_warning.svg"); warningShape = loadShape("Achtung.svg"); shapeMode(CENTER); // the zero point of the SVG object is in the middle smooth(); } void draw() { background(255); pushMatrix(); translate(width *.5,height *.5); rotate(rotAngle); shape(elShape,0,0,200,200); popMatrix(); rotAngle+=.01; shape(warningShape,mouseX,mouseY,100,100); }
In this example, 2D images (bitmap) are displayed and arrays are used. Here we use a 1. Dimensional array. To access an element of this array, we use these '[index]' brackets.
PImage[] imageList = null; // create an empty array void setup() { size(600,600); // def. window size imageList = new PImage[3]; imageList[0] = loadImage("./images/1.jpg"); imageList[1] = loadImage("./images/2.jpg"); imageList[2] = loadImage("./images/3.jpg"); } void draw() { background(255); pushMatrix(); translate(10,100); for(int i=0;i < imageList.length; i++) { image(imageList[i],0,0,140,140); translate(150,0); } popMatrix(); }
Exercise 9
Draw a 4th planet (4.jpg) and let this planet follow the mouse. Change the program (and the image file) so that the planet is shown without the white box surrounding it. What file types are best suited for this?