User:Natasa Siencnik/prototyping/turtle: Difference between revisions
(53 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
[[Category:Prototyping]] | [[Category:Prototyping]] | ||
[[Category:Turtle Graphics]] | |||
=The Radiant City= | =The Radiant City= | ||
Line 6: | Line 7: | ||
<br /> | <br /> | ||
=== | ===About=== | ||
[[File:Corbusier_City_03.jpg | 500px]]<br /> | [[File:Corbusier_City_03.jpg | 500px]]<br /> | ||
Le Corbusier Radiant City | Le Corbusier Radiant City model<br /> | ||
<br /> | <br /> | ||
[[File:Corbusier_City_01.jpg | 500px]]<br /> | [[File:Corbusier_City_01.jpg | 500px]]<br /> | ||
Streets and elevated pedestrian area<br /> | |||
<br /> | <br /> | ||
For a number of years French officials had been unsuccessful in dealing with the squalor of the growing Parisian slums, and Le Corbusier sought efficient ways to house large numbers of people in response to the urban housing crisis. He believed that his new, modern architectural forms would provide a new organizational solution that would raise the quality of life for the lower classes. His Immeubles Villas (1922) was such a project that called for large blocks of cell-like individual apartments stacked one on top of the other, with plans that included a living room, bedrooms and kitchen, as well as a garden terrace. | For a number of years French officials had been unsuccessful in dealing with the squalor of the growing Parisian slums, and Le Corbusier sought efficient ways to house large numbers of people in response to the urban housing crisis. He believed that his new, modern architectural forms would provide a new organizational solution that would raise the quality of life for the lower classes. His Immeubles Villas (1922) was such a project that called for large blocks of cell-like individual apartments stacked one on top of the other, with plans that included a living room, bedrooms and kitchen, as well as a garden terrace. | ||
Line 22: | Line 24: | ||
</span><br /> | </span><br /> | ||
<br /> | <br /> | ||
===Scripting Progress=== | ===Scripting Progress=== | ||
=====Python : Script <i>radiant_city.py</i> | =====Python : Script <i>radiant_city.py</i> Step #1===== | ||
<source lang="python"> | <source lang="python"> | ||
from TurtleWorld import * | from TurtleWorld import * | ||
Line 62: | Line 65: | ||
</source> | </source> | ||
===== | =====Python : Script <i>radiant_city.py</i> Step #2===== | ||
<source lang="python"> | |||
from TurtleWorld import * | |||
import random | |||
world = TurtleWorld() | |||
bob = Turtle() | |||
bob.delay = 0.01 | |||
print bob | |||
#building WALL | |||
#l for long wall | |||
#s for short wall | |||
def wall(l, s): | |||
fd(bob, l) | |||
lt(bob) | |||
fd(bob, s) | |||
lt(bob) | |||
fd(bob, l) | |||
rt(bob) | |||
#building SKYSCRAPER | |||
for i in range(4): | |||
wall(50, 20) | |||
#wait_for_user() | |||
</source> | |||
[[File:Screenshot_20110608-1.png]]<br /> | |||
=====Python : Script <i>radiant_city.py</i> Step #3===== | |||
<source lang="python"> | <source lang="python"> | ||
from TurtleWorld import * | |||
world = TurtleWorld() | |||
bob = Turtle() | |||
bob.delay = 0.01 | |||
print bob | |||
#building WALL | |||
#l for long wall | |||
#s for short wall | |||
def wall(l, s): | |||
fd(bob, l) | |||
lt(bob) | |||
fd(bob, s) | |||
lt(bob) | |||
fd(bob, l) | |||
rt(bob) | |||
#building SKYSCRAPER | |||
def skyscraper(): | |||
for i in range(4): | |||
wall(50, 20) | |||
#building GARDEN | |||
def garden(): | |||
for i in range(4): | |||
fd(bob, 140) | |||
lt(bob) | |||
#changing position for building garden() | |||
def position_garden(): | |||
pu(bob) | |||
fd(bob, 60) | |||
rt(bob) | |||
fd(bob, 60) | |||
rt(bob) | |||
rt(bob) | |||
pd(bob) | |||
#changing position for building skyscraper() | |||
def position_skyscraper(): | |||
pu(bob) | |||
fd(bob, 60) | |||
rt(bob) | |||
fd(bob, 95) | |||
pd(bob) | |||
#building GROUP OF SKYSCRAPERS with GARDEN | |||
def row(howmany): | |||
for i in range(howmany): | |||
skyscraper() | |||
position_garden() | |||
garden() | |||
position_skyscraper() | |||
row(3) | |||
#wait_for_user() | |||
</source> | </source> | ||
[[File:Screenshot_20110608-2.png]]<br /> | |||
=====Python : Script <i>radiant_city.py</i> Step #4===== | |||
<source lang="python"> | |||
from TurtleWorld import * | |||
world = TurtleWorld() | |||
bob = Turtle() | |||
bob.delay = 0.01 | |||
print bob | |||
#building WALL | |||
#l for long wall | |||
#s for short wall | |||
def wall(l, s): | |||
fd(bob, l) | |||
lt(bob) | |||
fd(bob, s) | |||
lt(bob) | |||
fd(bob, l) | |||
rt(bob) | |||
#building SKYSCRAPER | |||
def skyscraper(): | |||
for i in range(4): | |||
wall(50, 20) | |||
#building GARDEN | |||
def garden(): | |||
for i in range(4): | |||
fd(bob, 140) | |||
lt(bob) | |||
#changing position for building garden() | |||
def position_garden(): | |||
pu(bob) | |||
fd(bob, 60) | |||
rt(bob) | |||
fd(bob, 60) | |||
rt(bob) | |||
rt(bob) | |||
pd(bob) | |||
#changing position for building skyscraper() | |||
def position_skyscraper(): | |||
pu(bob) | |||
fd(bob, 60) | |||
rt(bob) | |||
fd(bob, 95) | |||
pd(bob) | |||
#building GROUP OF SKYSCRAPERS with GARDEN | |||
def row(howmany): | |||
for i in range(howmany): | |||
skyscraper() | |||
position_garden() | |||
garden() | |||
position_skyscraper() | |||
row(3) | |||
#wait_for_user() | |||
</source> | |||
[[File:Screenshot_20110608-3.png]]<br /> | |||
=====Python : Script <i>radiant_city.py</i> Step #5===== | |||
<source lang="python"> | |||
from TurtleWorld import * | |||
world = TurtleWorld() | |||
bob = Turtle() | |||
bob.delay = 0.01 | |||
print bob | |||
#building WALL | |||
#l for long wall | |||
#s for short wall | |||
def wall(l, s): | |||
fd(bob, l) | |||
lt(bob) | |||
fd(bob, s) | |||
lt(bob) | |||
fd(bob, l) | |||
rt(bob) | |||
#building SKYSCRAPER | |||
def skyscraper(): | |||
for i in range(4): | |||
wall(50, 20) | |||
#building GARDEN | |||
def garden(): | |||
for i in range(4): | |||
fd(bob, 140) | |||
lt(bob) | |||
#changing position for building garden | |||
def position_garden(): | |||
pu(bob) | |||
fd(bob, 60) | |||
rt(bob) | |||
fd(bob, 60) | |||
rt(bob) | |||
rt(bob) | |||
pd(bob) | |||
#changing position for building skyscraper | |||
def position_skyscraper(): | |||
pu(bob) | |||
fd(bob, 60) | |||
rt(bob) | |||
fd(bob, 95) | |||
pd(bob) | |||
#building group of skyscrapers with garden | |||
def row(howmany): | |||
for i in range(howmany): | |||
skyscraper() | |||
position_garden() | |||
garden() | |||
position_skyscraper() | |||
#changing position for next row | |||
#i know that this is not the right way to do this :( | |||
def position_row(): | |||
pu(bob) | |||
bk(bob, 465) | |||
rt(bob) | |||
fd(bob, 155) | |||
lt(bob) | |||
pd(bob) | |||
#building the RADIANT CITY | |||
def city(howmany): | |||
for i in range(howmany): | |||
row(3) | |||
position_row() | |||
city(3) | |||
wait_for_user() | |||
</source> | |||
[[File:Screenshot_20110608-4.png]]<br /> | |||
=====SVG-File with Python extension===== | |||
<source lang="python"> | |||
#building WALL | |||
def wall(l, s): | |||
pd() | |||
fd(l) | |||
lt(90) | |||
fd(s) | |||
lt(90) | |||
fd(l) | |||
rt(90) | |||
pu() | |||
#building SKYSCRAPER | |||
def skyscraper(): | |||
for i in range(4): | |||
pd() | |||
styles['fill'] = rgb(0, 0, 0) | |||
wall(50, 20) | |||
pu() | |||
#building GARDEN | |||
def garden(): | |||
for i in range(4): | |||
pd() | |||
fd(140) | |||
lt(90) | |||
pu() | |||
#changing position for building garden | |||
def position_garden(): | |||
pu() | |||
fd(60) | |||
rt(90) | |||
fd(60) | |||
rt(90) | |||
rt(90) | |||
pd() | |||
#changing position for building skyscraper | |||
def position_skyscraper(): | |||
pu() | |||
fd(60) | |||
rt(90) | |||
fd(95) | |||
pd() | |||
#building group of skyscrapers with garden | |||
def row(howmany): | |||
for i in range(howmany): | |||
skyscraper() | |||
position_garden() | |||
garden() | |||
position_skyscraper() | |||
#building the RADIANT CITY | |||
def city(howmany): | |||
for i in range(howmany): | |||
row(3) | |||
city(1) | |||
</source> | |||
[[File:Screenshot_svg_natasa.png | 300 px]] Screenshot | |||
[[File:Radiant_city_20110608.svg | 500 px]] SVG-file | |||
<br /> | |||
<br /> | |||
=====Questions===== | |||
How can I change the position of the turtle (row) in a better way?<br /> | |||
> start with garden (Baupazelle) and situate the building within it<br /> | |||
> think about street (width) as a variable (Platzhalter)<br /> | |||
I tried to fill the color of the garden but it didn't work.<br /> | |||
> solved (garden has to be made before the skyscraper)<br /> | |||
<br /> | |||
===Useful Links=== | ===Useful Links=== |
Latest revision as of 12:39, 14 June 2011
The Radiant City
TURTLE GRAPHICS WITH LE CORBUSIER
About
Le Corbusier Radiant City model
Streets and elevated pedestrian area
For a number of years French officials had been unsuccessful in dealing with the squalor of the growing Parisian slums, and Le Corbusier sought efficient ways to house large numbers of people in response to the urban housing crisis. He believed that his new, modern architectural forms would provide a new organizational solution that would raise the quality of life for the lower classes. His Immeubles Villas (1922) was such a project that called for large blocks of cell-like individual apartments stacked one on top of the other, with plans that included a living room, bedrooms and kitchen, as well as a garden terrace.
Not merely content with designs for a few housing blocks, soon Le Corbusier moved into studies for entire cities. In 1922, he presented his scheme for a "Contemporary City" for three million inhabitants (Ville Contemporaine). The centerpiece of this plan was the group of sixty-story, cruciform skyscrapers; steel-framed office buildings encased in huge curtain walls of glass. These skyscrapers were set within large, rectangular park-like green spaces. At the center was a huge transportation hub, that on different levels included depots for buses and trains, as well as highway intersections, and at the top, an airport. He had the fanciful notion that commercial airliners would land between the huge skyscrapers. Le Corbusier segregated pedestrian circulation paths from the roadways and glorified the use of the automobile as a means of transportation. As one moved out from the central skyscrapers, smaller low-story, zigzag apartment blocks (set far back from the street amid green space), housed the inhabitants. Le Corbusier hoped that politically-minded industrialists in France would lead the way with their efficient Taylorist and Fordist strategies adopted from American industrial models to reorganize society. As Norma Evenson has put it, "the proposed city appeared to some an audacious and compelling vision of a brave new world, and to others a frigid megalomaniacally scaled negation of the familiar urban ambient."
In the 1930s, Le Corbusier expanded and reformulated his ideas on urbanism, eventually publishing them in La Ville radieuse (The Radiant City) of 1935. Perhaps the most significant difference between the Contemporary City and the Radiant City is that the latter abandons the class-based stratification of the former; housing is now assigned according to family size, not economic position.[7] Some have read dark overtones into The Radiant City: from the "astonishingly beautiful assemblage of buildings" that was Stockholm, for example, Le Corbusier saw only “frightening chaos and saddening monotony.”[1] He dreamed of "cleaning and purging" the city, bringing "a calm and powerful architecture"—referring to steel, plate glass, and reinforced concrete. Though Le Corbusier's designs for Stockholm did not succeed, later architects took his ideas and partly "destroyed" the city with them.
For full text see Wikipedia [[1]]
Scripting Progress
Python : Script radiant_city.py Step #1
from TurtleWorld import *
world = TurtleWorld()
bob = Turtle()
bob.delay = 0.01
print bob
#cruciform skyscraper
fd(bob, 50)
lt(bob)
fd(bob, 20)
lt(bob)
fd(bob, 50)
rt(bob)
fd(bob, 50)
lt(bob)
fd(bob, 20)
lt(bob)
fd(bob, 50)
rt(bob)
fd(bob, 50)
lt(bob)
fd(bob, 20)
lt(bob)
fd(bob, 50)
rt(bob)
fd(bob, 50)
lt(bob)
fd(bob, 20)
lt(bob)
fd(bob, 50)
rt(bob)
wait_for_user()
Python : Script radiant_city.py Step #2
from TurtleWorld import *
import random
world = TurtleWorld()
bob = Turtle()
bob.delay = 0.01
print bob
#building WALL
#l for long wall
#s for short wall
def wall(l, s):
fd(bob, l)
lt(bob)
fd(bob, s)
lt(bob)
fd(bob, l)
rt(bob)
#building SKYSCRAPER
for i in range(4):
wall(50, 20)
#wait_for_user()
Python : Script radiant_city.py Step #3
from TurtleWorld import *
world = TurtleWorld()
bob = Turtle()
bob.delay = 0.01
print bob
#building WALL
#l for long wall
#s for short wall
def wall(l, s):
fd(bob, l)
lt(bob)
fd(bob, s)
lt(bob)
fd(bob, l)
rt(bob)
#building SKYSCRAPER
def skyscraper():
for i in range(4):
wall(50, 20)
#building GARDEN
def garden():
for i in range(4):
fd(bob, 140)
lt(bob)
#changing position for building garden()
def position_garden():
pu(bob)
fd(bob, 60)
rt(bob)
fd(bob, 60)
rt(bob)
rt(bob)
pd(bob)
#changing position for building skyscraper()
def position_skyscraper():
pu(bob)
fd(bob, 60)
rt(bob)
fd(bob, 95)
pd(bob)
#building GROUP OF SKYSCRAPERS with GARDEN
def row(howmany):
for i in range(howmany):
skyscraper()
position_garden()
garden()
position_skyscraper()
row(3)
#wait_for_user()
Python : Script radiant_city.py Step #4
from TurtleWorld import *
world = TurtleWorld()
bob = Turtle()
bob.delay = 0.01
print bob
#building WALL
#l for long wall
#s for short wall
def wall(l, s):
fd(bob, l)
lt(bob)
fd(bob, s)
lt(bob)
fd(bob, l)
rt(bob)
#building SKYSCRAPER
def skyscraper():
for i in range(4):
wall(50, 20)
#building GARDEN
def garden():
for i in range(4):
fd(bob, 140)
lt(bob)
#changing position for building garden()
def position_garden():
pu(bob)
fd(bob, 60)
rt(bob)
fd(bob, 60)
rt(bob)
rt(bob)
pd(bob)
#changing position for building skyscraper()
def position_skyscraper():
pu(bob)
fd(bob, 60)
rt(bob)
fd(bob, 95)
pd(bob)
#building GROUP OF SKYSCRAPERS with GARDEN
def row(howmany):
for i in range(howmany):
skyscraper()
position_garden()
garden()
position_skyscraper()
row(3)
#wait_for_user()
Python : Script radiant_city.py Step #5
from TurtleWorld import *
world = TurtleWorld()
bob = Turtle()
bob.delay = 0.01
print bob
#building WALL
#l for long wall
#s for short wall
def wall(l, s):
fd(bob, l)
lt(bob)
fd(bob, s)
lt(bob)
fd(bob, l)
rt(bob)
#building SKYSCRAPER
def skyscraper():
for i in range(4):
wall(50, 20)
#building GARDEN
def garden():
for i in range(4):
fd(bob, 140)
lt(bob)
#changing position for building garden
def position_garden():
pu(bob)
fd(bob, 60)
rt(bob)
fd(bob, 60)
rt(bob)
rt(bob)
pd(bob)
#changing position for building skyscraper
def position_skyscraper():
pu(bob)
fd(bob, 60)
rt(bob)
fd(bob, 95)
pd(bob)
#building group of skyscrapers with garden
def row(howmany):
for i in range(howmany):
skyscraper()
position_garden()
garden()
position_skyscraper()
#changing position for next row
#i know that this is not the right way to do this :(
def position_row():
pu(bob)
bk(bob, 465)
rt(bob)
fd(bob, 155)
lt(bob)
pd(bob)
#building the RADIANT CITY
def city(howmany):
for i in range(howmany):
row(3)
position_row()
city(3)
wait_for_user()
SVG-File with Python extension
#building WALL
def wall(l, s):
pd()
fd(l)
lt(90)
fd(s)
lt(90)
fd(l)
rt(90)
pu()
#building SKYSCRAPER
def skyscraper():
for i in range(4):
pd()
styles['fill'] = rgb(0, 0, 0)
wall(50, 20)
pu()
#building GARDEN
def garden():
for i in range(4):
pd()
fd(140)
lt(90)
pu()
#changing position for building garden
def position_garden():
pu()
fd(60)
rt(90)
fd(60)
rt(90)
rt(90)
pd()
#changing position for building skyscraper
def position_skyscraper():
pu()
fd(60)
rt(90)
fd(95)
pd()
#building group of skyscrapers with garden
def row(howmany):
for i in range(howmany):
skyscraper()
position_garden()
garden()
position_skyscraper()
#building the RADIANT CITY
def city(howmany):
for i in range(howmany):
row(3)
city(1)
Questions
How can I change the position of the turtle (row) in a better way?
> start with garden (Baupazelle) and situate the building within it
> think about street (width) as a variable (Platzhalter)
I tried to fill the color of the garden but it didn't work.
> solved (garden has to be made before the skyscraper)
Useful Links
http://pzwart3.wdka.hro.nl/wiki/Turtle_Graphics
http://pzwart3.wdka.hro.nl/wiki/Vector_graphics
http://en.wikipedia.org/wiki/Le_Corbusier