Designscript Origins Explanation Illustration - PDF - rec5ideIK6AEpbd1v
Designscript Origins Explanation Illustration - PDF - rec5ideIK6AEpbd1v
Robert Aish
1 Introduction
R. Aish
Director of Software Development, Autodesk
1
2 Robert Aish
2 Programming Language
Fig. 1 Comparing Imperative and Associative interpretation of the same program statements. It is
this change in the way you think that makes DesignScript worth learning.
Fig. 3 How DesignScript differs from a regular general purpose programming language
4 Robert Aish
that are relevant to the domain of generative design. More generally: A multi-
paradigm language combines different programming styles into a single language
and allows the user to select which paradigms or combination of paradigms are
appropriate. (See Fig. 4 )
4. host-independent DesignScript is intended to support the generation of geo-
metric models and is therefore designed to be hosted within different CAD ap-
plications and access different geometric, engineering analysis and simulation
libraries. For example, a DesignScript variable (based on specific class) may
maintain a correspondence with a geometric entity in AutoCAD and simulta-
neously with entities within engineering analysis applications such as Ecotect
and Robot.
5. extensible DesignScript can be extended by the user, by the addition of functions
and classes.
Fig. 4 The evolutionary tree for DesignScript (showing its precursors). DesignScript is a multi-
paradigm language embracing imperative, objected oriented, functional and declarative program-
ming concepts
3 Design Process
designer to develop his own geometric and logical framework within which many
different alternative design solutions can be easily generated and evaluated.
The development of DesignScript assumes that the designer wants to adopt this
more exploratory approach to design and that he appreciates that this may involve
some re-factoring of the design process so as to include a more explicit externaliza-
tion of particular aspects of design thinking, for example:
• Explicitly identifying the key variables that drive the design
• Building the geometric and logical dependencies between these driver variables
and the constructive geometry: potentially these dependencies can be complex
long chains.
• Defining appropriate performance measures that can describe the resulting de-
sign solutions
• Exercising the complete model (by changing the design drivers and observing
changes in the geometry and resulting performance measures) to explore more
appropriate solutions
• Changing the geometric and logical dependencies in order to explore more alter-
natives
4 Pedagogic perspective
Fig. 5 DesignScript as conceived as a composite learning curve spanning different types of mod-
elling and programming.
Fig. 7 The resulting wave roof is created by aggregating these orthogonal waves
5 Discussion
The three themes which are interwoven here (the programming language theme, the
design process theme and the pedagogic theme) all come together when we address
8 Robert Aish
Fig. 9 Draping (and offsetting) the wave roof from an underlying surface
Fig. 10 The control vertices of the underlying surface can be modified giving the effect that the
underlying surface is controlling the wave roof
the central issue: How can a computational tools invoke a computational mindset
and in turn contribute to design thinking?
Using DesignScript is a new way of designing with its own expressive possibil-
ities. But there is a level of understanding required to harness this expressiveness
and this suggests a level of rigor and discipline. The argument is that the experience
of learning and using DesignScript contributes not just to the expressiveness and
clarity of the resulting design but also to the skills and knowledge of the user.
In short,“a new toolset suggests a new mindset”.