1importgenerativedesign.MeshasMesh 2 3 """ 4 part of the example files of the generativedesign library. 5 shows how to use the mesh class, if you want to define your own forms. 6 Modified to run with processing.py 7 """ 8 9defsetup():10 """ 11 Setup the drawing style 12 """ 13 size(1000, 1000, P3D)14 colorMode(HSB, 360, 100, 100, 100)15 noStroke()16globalmyMesh 17 myMesh=MyOwnMesh(this)18 myMesh.setUCount(100)19 myMesh.setVCount(100)20 myMesh.setColorRange(193, 193, 30, 30, 85, 85, 100)21 myMesh.update()22 23defdraw():24 """ 25 The processing draw loop 26 """ 27 background(255)28 # setup lights 29 colorMode(RGB, 255, 255, 255, 100)30 lightSpecular(255, 255, 255)31 directionalLight(255, 255, 255, 1, 1,-1)32 shininess(5.0)33 # setup view 34 translate(width/2, height/2)35 scale(180)36 myMesh.draw()37 38 39classMyOwnMesh(Mesh):40 """ 41 A custom python class that extend the original Mesh class 42 """ 43 44def__init__(self, theParent):45 Mesh.__init__(self, theParent)46 47 48 # just override this function and put your own formulas inside 49defcalculatePoints(self, u, v):50 A=2/3.0 51 B=sqrt(2)52 x=A*(cos(u)*cos(2*v)+B*sin(u)*cos(v))*cos(u)/(B-sin(2*u)*sin(3*v))53 y=A*(cos(u)*sin(2*v)-B*sin(u)*sin(v))*cos(u)/(B-sin(2*u)*sin(3*v))54 z=B*cos(u)*cos(u)/(B-sin(2*u)*sin(3*v))55returnPVector(x, y, z)

## Thursday, 29 November 2012

### Generative Design Sketch (How to subclass)

Here is an excellent example of sub-classing a java class from a vanilla processing library, and running it with processing.py. Currently you need to put the generativedesign library in the processing.py/libraries folder (but that might change to pick up the library from the sketchbook/libraries folder).

Subscribe to:
Post Comments (Atom)

## No comments:

## Post a Comment