#BASICS # doc snippet doc /** * ${1:Description} * * @author ${2:name} * @since ${3:`strftime("%d/%m/%y %H:%M:%S")`} */ ${0} # doc comment snippet docc /** * ${1:@private}$0 */ ${0} # class snippet class ${1:public }class ${2:`fnamemodify(bufname("%"),":t:r")`} ${3:extends} { //-------------------------------------- // CONSTRUCTOR //-------------------------------------- public $2 (${4:arguments}) { ${0:// expression} } } # package snippet package /** * ${1:Description} * * @author ${2:$TM_FULLNAME} * @since ${3:`strftime("%d/%m/%y %H:%M:%S")`} */ package ${0:package}; # function snippet fun ${1:void/private/protected/public}${2: static} ${3:name}(${4}) { ${5://if not void return null;} } ${0} snippet fn ${1:void }${2:name}(${3}) { ${4://if not void return null;} } ${0} # constant snippet const static final ${1:Object} ${2:VAR_NAM} = ${0}; # var snippet var ${1:private/public }${2:static }${3:String} ${4:str}${5: =}${0:value}; # var objects snippet obj ${1:private/public }${2:Object} ${3:o}${4: = new }$2(${0}); #loop for snippet for for (int ${2:i} = 0; $2 < ${1:Things}.length; $2${3:++}) { ${0:$1[$2]} }; #loop while snippet wh while (${1:/* condition */}) { ${0} } #break snippet break break ${1:label}; #case snippet case case ${1:expression} : ${0} break; #default snippet default default : ${1} break; #switch snippet switch switch(${1:expression}) { case '${3:case}': ${4} break; ${0} default: ${2} } #try snippet try try { ${0} } catch(${1:Exception} ${2:e}) { } #try catch finally snippet tryf try { ${0} } catch(${1:Exception} ${2:e}) { } finally { } #throw snippet throw throw new ("${1:Exception()}"); #ternary snippet ? ? ${1:trueExpression} : ${2:falseExpression} ${0} snippet if if (${1:true}) {${0}} # if ... else snippet ife if (${1:true}) {${2}} else{${0}} #get snippet get public ${1:String} get${2}() { return ${0:fieldName}; } #set snippet set public void set${1}(${0:String} new${1}) { ${1:fieldName} = new${1}; } #printIn snippet println println("${1:`fnamemodify(bufname("%"),":t:r")`}::${2:method}() "${3: +} ${0}); #println string snippet pr println("${0}"); #setup draw snippet setup void setup(){ ${1} } void draw(){ ${0} } #setup OPENGL snippet opengl import processing.opengl.*; import javax.media.opengl.*; PGraphicsOpenGL pgl; GL gl; void setup(){ size( ${1:300}, ${2:300}, OPENGL ); colorMode( RGB, 1.0 ); hint( ENABLE_OPENGL_4X_SMOOTH ); pgl = (PGraphicsOpenGL) g; gl = pgl.gl; gl.setSwapInterval(1); initGL(); ${3} } void draw(){ pgl.beginGL(); ${4} pgl.endGL(); getOpenGLErrors(); } void initGL(){ ${0} } void getOpenGLErrors(){ int error = gl.glGetError(); switch (error){ case 1280 : println("GL_INVALID_ENUM - An invalid enumerant was passed to an OpenGL command."); break; case 1282 : println("GL_INVALID_OPERATION - An OpenGL command was issued that was invalid or inappropriate for the current state."); break; case 1281 : println("GL_INVALID_VALUE - A value was passed to OpenGL that was outside the allowed range."); break; case 1285 : println("GL_OUT_OF_MEMORY - OpenGL was unable to allocate enough memory to process a command."); break; case 1283 : println("GL_STACK_OVERFLOW - A command caused an OpenGL stack to overflow."); break; case 1284 : println("GL_STACK_UNDERFLOW - A command caused an OpenGL stack to underflow."); break; case 32817 : println("GL_TABLE_TOO_LARGE"); break; } } #GL Functions snippet gl begin gl pgl.beginGL(); ${0} pgl.endGL(); snippet gl gl swap interval // specify the minimum swap interval for buffer swaps. gl.setSwapInterval(${0:interval}); snippet gl gl call list // execute a display list gl.glCallList(${0:list}); snippet gl gl gen buffers // import java.nio.IntBuffer; // import java.nio.FloatBuffer; // import com.sun.opengl.util.BufferUtil; // You might need to create four buffers to store vertext data, normal data, texture coordinate data, and indices in vertex arrays IntBuffer bufferObjects = IntBuffer.allocate(${1:4}); gl.glGenBuffers($1, bufferObjects); int vertexCount = ${2:3}; int numCoordinates = ${0:3}; // vertexCount * numCoordinates FloatBuffer vertices = BufferUtil.newFloatBuffer(vertexCount * numCoordinates); float[] v = {0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f}; vertices.put(v); // Bind the first buffer object ID for use with vertext array data gl.glBindBuffer(GL.GL_ARRAY_BUFFER, bufferObjects.get(0)); gl.glBufferData(GL.GL_ARRAY_BUFFER, vertexCount * numCoordinates * BufferUtil.SIZEOF_FLOAT, vertices, GL.GL_STATIC_DRAW); snippet gl gl bind buffer ${0:// A buffer ID of zero unbinds a buffer object} gl.glBindBuffer(GL.GL_ARRAY_BUFFER, ${1:0}); snippet gl gl delete buffers ${0:// Parameters are the same for glGenBuffers} gl.glDeleteBuffers(${1:4}, ${2:bufferObjects}); snippet gl gl depth mask // enable or disable writing into the depth buffer gl.glDepthMask(${0:flag}); snippet gl gl load identity // replaces the top of the active matrix stack with the identity matrix gl.glLoadIdentity(); snippet gl gl tex coord 2f // set the current texture coordinates - 2 floats gl.glTexCoord2f(${1:0.0f}, ${0:0.0f}); snippet gl gl vertex 2f gl.glVertex2f(${1:0.0f}, ${0:0.0f}); snippet gl gl vertex 3f gl.glVertex3f(${1:0.0f}, ${2:0.0f}, ${0:0.0f}); snippet gl gl translate f // multiply the current matrix by a translation matrix gl.glTranslatef(${1:x}, ${2:y}, ${0:z}); snippet gl gl rotate f // rotate, x-axis, y-axis, z-axiz gl.glRotatef(${1:angle}, ${2:x}, ${3:y}, ${0:z}); snippet gl gl scale f // multiply the current matrix by a general scaling matrix gl.glScalef(${1:x}, ${2:y}, ${0:z}); snippet gl gl color 4f gl.glColor4f(${1:red}, ${2:green}, ${3:blue}, ${0:alpha}); snippet gl gl clear color gl.glClearColor(${1:red}, ${2:green}, ${3:blue}, ${0:alpha}); snippet gl gl color 3f gl.glColor3f(${1:red}, ${2:green}, ${0:blue}); snippet gl gl push matrix // spush and pop the current matrix stack gl.glPushMatrix(); ${0} gl.glPopMatrix(); snippet gl gl gen lists gl.glGenLists(${0:1}) snippet gl gl flush // Empties buffers. Call this when all previous issues commands completed gl.glFlush(); ${0} snippet gl gl get error println(gl.glGetError()); snippet gl gl clear gl.glClear(${1:GL.GL_COLOR_BUFFER_BIT}${2: | }${0:GL.GL_DEPTH_BUFFER_BIT}); #frame operations snippet fr framerate frameRate(${1:30}); ${0} snippet fr frameRate frameRate snippet fr frameCount frameCount snippet fr saveFrame saveFrame("${1:filename-####}${0:.ext}"); #size snippet size normal size size(${1:200}, ${2:200}${0:, P3D}); snippet size opengl size size(${1:200}, ${2:200}${0:, OPENGL}); #PRIMITIVES #color snippet color color ${1:c}${2: = color(}${3:value1, }${4:value2, }${0:value3)}; #char snippet char char ${1:m}${2: = "}${0:char"}; #float snippet float float ${1:f}${2: = }${0:0.0f}; #int snippet int int ${1:f}${2: = }${0:0}; #boolean snippet boolean boolean ${1:b}${2: = }${0:true}; #byte snippet byte byte ${1:b}${2: = }${0:127}; #string snippet string String ${1:str}${2: = "}${0:CCCP"}; #array snippet array ${1:int}[] ${2:numbers}${3: = new $1}[${0:length}]; #object snippet object ${1:Object} ${2:o}${3: = new $1}(${0}); #curve snippet curve curve curve(${1:x1}, ${2:y1}, ${3:x2}, ${4:y2}, ${5:x3}, ${6:y3}, ${7:x4}, ${0:y4}); snippet curve curve 3D curve(${1:x1}, ${2:y1}, ${3:z1}, ${4:x2}, ${5:y2}, ${6:z2}, ${7:x3}, ${8:y3}, ${9:z3}, ${10:x4}, ${11:y4}, ${0:z4}); snippet curve curve Detail curveDetail(${0:detail}); snippet curve curve point curvePoint(${1:a}, ${2:b}, ${3:c}, ${4:d}, ${0:t}); snippet curve curve tightness curveTightness(${0:squishy}); #bezier snippet bezier bezier bezier(${1:x1}, ${2:y1}, ${3:cx1}, ${4:cy1}, ${5:cx2}, ${6:cy2}, ${7:x2}, ${0:y2}); snippet bezier bezier 3D bezier(${1:x1}, ${2:y1}, ${3:z1}, ${4:cx1}, ${5:cy1}, ${6:cz1}, ${7:cx2}, ${8:cy2}, ${9:cz2}, ${10:x2}, ${11:y2}, ${0:z2}); snippet bezier bezier detail bezierDetail(${0:detail}); snippet bezier bezier tangent bezierTangent(${1:a}, ${2:b}, ${3:c}, ${4:d}, ${0:t}); snippet bezier bezier point bezierPoint(${1:a}, ${2:b}, ${3:c}, ${4:d}, ${0:t}); #vertex snippet vertex vertex vertex(${1:x}, ${2:y}${3:, }${4:u}${5:, }${0:v}); snippet vertex vertex 3D vertex(${1:x}, ${2:y}, ${3:z}${4:, }${5:u}${6:, }${0:v}); snippet vertex vertex bezier bezierVertex(${1:cx1}, ${2:cy1}, ${3:cx2}, ${4:cy2}, ${5:x}, ${0:y}); snippet vertex vertex bezier 3D bezierVertex(${1:cx1}, ${2:cy1}, ${3:cz1}, ${4:cx2}, ${5:cy2}, ${6:cz2}, ${7:x}, ${8:y}, ${0:z}); snippet vertex vertex curve curveVertex(${1:x}, ${0:y}); snippet vertex vertex curve 3D curveVertex(${1:x}, ${2:y}, ${0:z}); #stroke snippet stroke stroke stroke(${1:value1}, ${2:value2}, ${3:value3}${4:, }${0:alpha}); snippet stroke stroke weight strokeWeight(${0:1}); snippet stroke no stroke noStroke(); #mouse snippet mouse mouse x mouseX snippet mouse mouse y mouseY snippet mouse mouse drag void mouseDragged(){ ${0} } snippet mouse mouse move void mouseMoved(){ ${0} } snippet mouse mouse release void mouseReleased(){ ${0} } snippet mouse mouse pressed void mousePressed(){ ${0} } snippet mouse mouse pressed? mousePressed snippet mouse mouse button? mouseButton snippet mouse pmouse X pmouseX snippet mouse pmouse Y pmouseY #key snippet key keycode? keyCode snippet key key key snippet key key released void keyReleased(){ ${0} } snippet key key typed void keyTyped(){ ${0} } snippet key key pressed void keyPressed(){ ${0} } snippet key key pressed? keyPressed #file snippet file load string loadStrings("${0:filename}"); snippet file save string saveStrings(${1:filename}, ${0:strings}); snippet file load bytes loadBytes("${0:filename}"); snippet file begin record beginRecord(${1:renderer}, ${0:filename}); snippet file end record endRecord(); snippet file save bytes saveBytes(${1:filename}, ${0:bytes}); snippet file create writer createWriter(${0:filename}); snippet file create reader createReader(${0:filename}); #time snippet time hour hour() snippet time milliseconds millis() snippet time year year() snippet time minutes minutes() snippet time month month() snippet time second second() #matrix snippet matrix reset matrix translate(${1:x}, ${2:y}, ${0:z}); snippet matrix print matrix printMatrix(); snippet matrix push matrix pushMatrix(); ${0:}; popMatrix(); #text snippet txt text data text(${1:data}, ${2:x}, ${3:y}${4:, }${0:z}); snippet txt text string data text(${1:stringdata}, ${2:x}, ${3:y}, ${4:width}, ${5:height}${6:, }${0:z}); snippet txt text size textSize(${0:size}); snippet txt text leading textLeading(${0:size}); snippet txt text width textWidth(${0:data}); snippet txt text descent textDescent(); snippet txt text ascent textAscent(); snippet txt font PFont ${1:font}; $1 = loadFont("${0:FFScala-32.vlw}"); #load font snippet txt load font ${1:font} = loadFont("${0:FFScala-32.vlw}"); snippet txt text font textFont(${1:font}${2:, }${0:size}); #math snippet math tangent tan(${0:rad}); snippet math atan atan(${0:rad}); snippet math atan2 atan2(${0:rad}); snippet math sin sin(${0:rad}); snippet math asin asin(${0:rad}); snippet math cos cos(${0:rad}); snippet math acos acos(${0:rad}); snippet math degrees degrees(${0:rad}); snippet math radians radians(${0:deg}); snippet math random seed randomSeed(${0:value}); snippet math random random(${1:value1}${2:, }${0:value2}); snippet math half PI HALF_PI snippet math 2 PI TWO_PI snippet math PI PI snippet math pow pow(${1:num}, ${0:exponent}); snippet math floor floor(${0:value}); snippet math sqrt sqrt(${0:value}); snippet math abs abs(${0:value}); snippet math sq sq(${0:value}); snippet math ceil ceil(${0:value}); snippet math exp exp(${0:value}); snippet math round round(${0:value}}; snippet math min min(${1:value1}, ${2:value2}${3:, }${0:value3}); snippet math max max(${1:value1}, ${2:value2}${3:, }${0:value3}); snippet math array max max(${0:array}); snippet math array min min(${0:array}); snippet math logarithm log(${0:value}); snippet math map map(${1:value}, ${2:low1}, ${4:high1}, ${5:low2}, ${0:high2}); snippet math normalize norm(${1:value}, ${2:low}, ${0:high}); snippet math constrain constrain(${1:value}, ${2:min}, ${0:max}); snippet math magnitude of a vector mag(${1:a}, ${2:b}${3:, }${0:c}); snippet math distance dist(${1:x1}, ${2:y1}, ${4:x2}, ${0:y2}); snippet math distance 3D dist(${1:x1}, ${2:y1}, ${3:z1}, ${4:x2}, ${5:y2}, ${0:z2}); #noise math snippet noise set noise noise(${1:x}${2:, }${3:y}${4:, }${0:z}); snippet noise noise detail noiseDetail(${1:octaves}${2:, }${0:falloff}); snippet noise noise seed noiseSeed(${0:x}); #material snippet material shininess shininess(${0:shine}); snippet material specular specular(${1:value1}, ${2:value2}, ${3:value3}${4:, }${0:alpha}); snippet material ambient ambient(${1:value1}, ${2:value2}, ${0:value3}); snippet material emissive emissive(${1:value1}, ${2:value2}, ${0:value3}); #light snippet light no light noLights(); snippet light light lights(); snippet light diretional light directionalLight(${1:v1}, ${2:v2}, ${3:v3}, ${4:nx}, ${5:ny}, ${0:nz}); snippet light point light pointLight(${1:v1}, ${2:v2}, ${3:v3}, ${4:nx}, ${5:ny}, ${0:nz}); snippet light falloff light lightFalloff(${1:constant}, ${2:linear}, ${0:quadratic}); snippet light normal light normal(${1:nx}, ${2:ny}, ${0:nz}); snippet light specular light lightFalloff(${1:v1}, ${2:v2}, ${0:v3}); snippet light ambient light ambientLight(${1:v1}, ${2:v2}, ${3:v3}${7:, ${4:x}, ${5:y}, ${0:z}}); snippet light spot light spotLight(${1:v1}, ${2:v2}, ${3:v3}, ${4:x}, ${5:y}, ${6:z}, ${7:nx}, ${8:ny}, ${9:nz}, ${10:angle}, ${0:concentration}); #camera snippet cam camera camera(${1:eyeX}, ${2:eyeY}, ${3:eyeZ}, ${4:centerX}, ${5:centerY}, ${6:centerZ}, ${7:upX}, ${8:upY}, ${0:upZ}); snippet cam ortho ortho(${1:left}, ${2:right}, ${3:bottom}, ${4:top}, ${5:near}, ${0:far}); snippet cam begin camera beginCamera(); snippet cam end camera endCamera(); snippet cam print camera printCamera(); snippet cam print camera projection printProjection(); snippet cam perspective camera perspective(${1:fov}, ${2:aspect}, ${3:zNear}, ${0:zFar}); snippet cam frustrum frustrum(${1:left}, ${2:right}, ${3:bottom}, ${4:top}, ${5:near}, ${0:far}); #transformations snippet trans rotate rotate${1:X}(${0:angle}); snippet trans translate translate(${1:x}, ${2:y}${3:, }${0:z}); snippet trans scale size scale(${0:size}); snippet trans scale scale(${1:x}, ${2:y}${3:, }${0:z}); #coordinates snippet coord ${1:model/screen}${2:X}(${3:x}, ${4:y}, ${0:z}); #effects snippet fx brightness brightness(${0:color}); snippet fx lerp color lerpColor(${1:c1}, ${2:c2}, ${0:amt}); snippet fx saturation saturation(${0:color}); snippet fx hue hue(${0:color}); snippet fx alpha alpha(${0:color}); snippet fx tint tint(${1:value1}, ${2:value2}, ${3:value3}${4:, }${0:alpha}); snippet fx notint noTint(); #pixel snippet px set pixel set(${1:x}, ${2:y}, ${0:color/image}); snippet px update pixel updatePixels(); snippet px load pixel loadPixels(); snippet px pixels pixels[${0:index}] snippet px get pixel get(${1:x}, ${2:y}${3:, }${4:width}${5:, }${0:height}); #geometric figures snippet geof triangle triangle(${1:x1}, ${2:y1}, ${3:x2}, ${4:y2}, ${5:x3}, ${0:y3}); snippet geof line line(${1:x1}, ${2:y1}, ${3:x2}, ${0:y2}); snippet geof line 3D line(${1:x1}, ${2:y1}, ${3:z1}, ${4:x2}, ${5:y2}, ${0:z2}); snippet geof arc arc(${1:x}, ${2:y}, ${3:width}, ${4:height}, ${5:start}, ${0:stop}); snippet geof point point(${1:x}, ${2:y}${3:, }${0:z}); snippet geof quad quad(${1:x1}, ${2:y1}, ${3:x2}, ${4:y2}, ${5:x3}, ${6:y3}, ${7:x4}, ${0:y4}); snippet geof ellipse ellipse(${1:x}, ${2:y}, ${3:width}, ${0:height}); snippet geof rect rect(${1:x}, ${2:y}, ${3:width}, ${0:height}); snippet geof box box(${1:width}, ${2:height}, ${0:depth}); snippet geof sphere sphere(${0:radius}); snippet geof sphere details sphereDetail(${0:n}); snippet geof set smooth smooth(); snippet geof set no smooth noSmooth(); #array operations snippet arrop normal split split("${1:str}"${2: , }${0:delimiter}); snippet arrop split Tokens splitTokens(${1:str}${2:, }${0:tokens}); snippet arrop join join(${1:strgArray}${2: , }${0:seperator}); snippet arrop shorten shorten(${0:array}); snippet arrop concat concat(${1:array1}, ${0:array2}); snippet arrop subset subset(${1:array}, ${0:offset}); snippet arrop append append(${1:array}, ${0:element}); snippet arrop reverse reverse(${0:array}); snippet arrop splice splice(${1:array}, ${2:value/array2}, ${0:index}); snippet arrop sort sort(${1:dataArray}${2:, }${0:count}); snippet arrop expand expand(${1:array}${2:, }${0:newSize}); snippet arrop array copy arrayCopy(${1:src}, ${2:dest}, ${3:, }${0:length}); #string operations snippet strop str str("${0:str}"); snippet strop match match(${1:str}, ${0:regexp}); snippet strop trim trim(${0:str}); snippet strop nf nf(${2:value}, ${3:left}${4:, }${0:right}); snippet strop nfs nfs(${2:value}, ${3:left}${4:, }${0:right}); snippet strop nfp nfp(${2:value}, ${3:left}${4:, }${0:right}); snippet strop nfc nfc(${1:value}${2:, }${0:right}); #convert snippet convert unbinary unbinary("${0:str}"}); snippet convert hexadecimal hex(${0:c}); snippet convert unhex unhex(${0:c}); snippet convert binary binary(${1:value}${2:, }${0:digits}); #image operations snippet image load image loadImage(${0:filename}); snippet image image image(${1:img}, ${2:x}, ${3:y}${4:, }${5:width}${6:, }${0:height}); snippet copy copy copy(${1:srcImg}${2:, }${3:x}, ${4:y}, ${5:width}, ${6:height}, ${7:dx}, ${8:dy}, ${9:dwidth}, ${0:dheight}); #containers snippet bg background(${1:value1}, ${2:value2}, ${3:value3}${4:, }${0:alpha}); snippet pg PGraphics pg; pg = createGraphics(${1:width}, ${2:height}${3:, }${0:applet}); snippet pimage PImage(${1:width}, ${0:height}); #UTILS #nofill snippet nofill noFill(); #fill snippet fill fill(${1:value1}, ${2:value2}, ${3:value3}${4:, }${0:alpha}); #red snippet red red(${0:color}); #green snippet green green(${0:color}); #blue snippet blue blue(${0:color}); #status snippet status status(${0:text}); #param snippet param param(${0:s}); #link snippet link link(${1:url}${2:, }${0:target}); #@param snippet @ @${1:param/return/private/public} ${1:parameter} ${0:description}