Showing posts with label DRAWING. Show all posts
Showing posts with label DRAWING. Show all posts

PorTraits



This started as an experiment on how to program and explore ways to replicate/replace images, with words.
The script replicates the image by attributing words to pixels, retrieving the color of the image in that precise pixel and scaling the word according to it's luminosity in at same area of the image.

In the 1st drawing, the script was written to array one single word along the whole image.
The word chosen was "fraude"(i.e."fraud" ).




For the 2nd drawing, the script is arraying 5 different words/sentences in a randomized way along the image.
The words are from the song "Liberdade", from 1974, and arrayed over another image.




RECENT EXPERIMENTS
This image was worked from picture taken with a Lomo FishEye.
Scanned, ran the script, printed in 12 A3 and pasted on the wall at home.
The script is displaying randomly 6 words of a certain sentence.




"Farvel Fred"
One of the farewell gifts for Fred, leaving BIG.



CNC STAMP



This is an Experiment on Parametric and Computational drawing.
It is exercise on translation and understanding of the "drawing" as a tool, in a parametric and computational realm. It departures from analyzing specific drawings done in the past 5 decades, and progressively stating how Thought (ie: understanding/manipulation of space, etc) evolves based on Technique.


EVOLUTION ON THOUGHT AND TECHNIQUE

From John Hejduks Bye House (Wall House 2) drawings (left image), through Eisenmans diagrams over the "House" series (center image), until RadioHeads House Of Cards Video-clip (right image), one realizes an evolution on understanding and representation of space.
This happens in parallel with the technological evolution of the technique itself, from a generic bi-dimensional representation of space into a high-resolution representation of it.
If Modernism shows an abstract flat understanding of space (easily observed in plans, elevations,etc), where 3dimensional relationships emerge out of over-positioning layers of the same bi-dimensionality, Eisenman explores already planes, grids and their geometrical transformations as non-parallel entities, where their intricate relationships start generating new typologies of space.
From flat to curved multi-directional frames, today we have another understanding of space, based on a technological outcome: Space is represented, at an interdisciplinary level, over arrays of points whose computational relationships generate geometries.

VOXELISM

The representation of this reality has a caricaturist degree, where it is represented an idyllic vision of a house and a tree in a field.
The drawing explores the current understanding of geometrical data, a reality based on a collection of points /Voxels and the parametric/algorithmic interrelation between these points, in order to build a geometry.

ISOMETRIC STAMPS

Technically, the drawing is build out of 3 elements, where the stamping process is explored.
Three different stamps are defined, one to each side of the voxel.

HACKING A MILLING

Hacking a milling machine allows the possibility of stamping with accuracy. The drawing is therefore computationally generated and fabricated. The following script draws the path for the milling machine to do the stamps progressively, passing from one stamping area (center point) to the next, and so forth.


SCRIPT
Option Explicit
'Script written by Joao N.P. Albuquerque
'Script copyrighted by
'Script version Tuesday, 13 April 2010 13:46:25

Call Main()
Sub Main()
Dim strCrv,i, diag, j,l
Dim arrCent, arrPt1, arrPt2, cent, centMov, vertLine, endPt, startPt, midPt
Dim crvDomain
'--------------------
'vector
Dim vertVec
'---------------------
strCrv = rhino.GetObjects("sel curves")

ReDim vertLine(Ubound (strCrv))
ReDim cent(Ubound (strCrv))
ReDim centMov(Ubound (strCrv))

Call rhino.print (Ubound (strCrv))

enableredraw(False)

For i=0 To Ubound (strCrv)

Call rhino.ObjectColor(strCrv(i*5),RGB(255,0,0))

crvDomain = rhino.CurveDomain(strCrv(i))

Call rhino.Print(ubound(crvDomain))
arrPt1 = rhino.EvaluateCurve(strCrv(i),0)
arrPt2 = rhino.EvaluateCurve(strCrv(i),crvDomain(1)/2)
diag = rhino.AddLine(arrPt1,arrPt2)
cent(i) = rhino.CurveMidPoint(diag)

vertVec = rhino.VectorCreate(array(0,0,3),array(0,0,0))

centMov(i) = rhino.PointAdd(cent(i),vertVec)
vertLine(i) = rhino.AddLine(cent(i), centMov(i))
Call rhino.DeleteObject(diag)

Next

ReDim startPt (Ubound (strCrv))
ReDim midPt(Ubound (strCrv))
ReDim endPt (Ubound (strCrv))


For j=0 To Ubound (strCrv)
startPt(j) = rhino.CurveStartPoint(vertLine(j))
midPt(j) = rhino.CurveMidPoint(vertLine(j))
endPt(j) = rhino.CurveEndPoint(vertLine(j))
Call rhino.DeleteObject(vertLine(j))
Next

For l=0 To ubound(strCrv)-1
Call rhino.AddCurve(array(startPt(l),midPt(l),endPt(l),endPt(l+1),midPt(l+1),startPt(l+1)))
Next

enableredraw(True)
End Sub