3.4 Computer graphics

3.4 Computer graphics
Computer graphics software is a set of program,
by which an user works with computer graphics devices.
Sketchpad
1963 MIT
User works with graphics system:
1) interaction with graphical display
for creation and changing images on the screen
2) construction of the mathematical model and
work with model of the on-screen image
3) keeping models in computer's memory
Graphics system is called interactive,
if he lets in one working cycle alternately to draw by
computer and to enter graphical data by user.
Designers
workplace
Graphical
display
Application
DB
Application
program package
Graphics
package
Graphical
I/O
devices
Computer graphics - software
Windows on the screen
Shaft sketch
SHAFT
CYLINDER
CONE
AT 10,80
LINE 0,-20,0,20
LINE 0,-20,0,20
CYLINDER
LINE 0,20,70,20
LINE0,20,40,10
AT 80,120
LINE 70,20,70,-20
LINE 40,10,40,-10
CONE
LINE 70,-20,0,-20
LINE 40,-10,0,-20
END
END
END
Data structures for drawing a shaft
DEFINE SHAFT
LINE FROM (10.0)TO(10,20)TO(80,20)TO(120,10)
TO(120,-10)TO(80,-20)TO(10,-20)TO(10,0)
LINE FROM(80,20)TO(80,-20)
END SHAFT
CADS
KymData Ky
CADS
...
KUVATSMBT
TYOH
4 diskettes or CD
A:<enter>
CINSTALL<enter>
CONFIG.SYS
FILES=30
BUFFERS=20
+ protection module
§1
§2
OS manual
Start
CADS v. 5.20 *aloitusmenu * ................
Kuvan nimi ?
(Drawing name?)
F1:Asetukset F2:Tulostus F3:Help F4:Poisto F5:Dok
Settings
Plotting
Remove Doc
CADS * parameters *
Parameter to be changed?_
Q...Default text size
R...Raster division
Y...Fillet radius
N...Arrow length
A...Arrow angle
T...Raster display
D...Coordinate system
M...Automatic dimens.
I...Dimensioning type
U...Screen menu
L...Menu field width
K...Two instr. Lines
F3:help F7:exit
5.00 mm
5.00 mm
10.00 mm
5.00 mm
15.000
Yes
x-y coord. System
Yes
Machine drawing
Yes
8
Yes
F1
settings
- süsteemi ettevalmistus ja koef. valik
F2
plotting
- piltide väljastamise režiim
F3
help
- lühiinfo
F4
remove
- pildi kustutamine
F5
document
- pildile lisatava dokumendi sisu
F7
end
- CADS seansi lõpp
RETURN drawing directory – antakse piltide (jooniste) nimed
RETURN editing
- redig. jooksvat või uut pilti
CADS *settings *
Select setting function?_
K...Drawing directory path
S...Symbol directory path
T...Working directory path
I...Editor name
A...Drawing area size
M...Drawing scale
L...Input Device
P...Plotter type
R...Plotter line
N...Graphics card
O...
X...
...
F1 parameters
(c) KymData Ky
\KUVAT\
\SMBT\
\TYOT\
Pedit
x:380.0 Y:250.0
1:1.0
TABLET
HP7475
COM2
F3:help F7:exit
Basics of drawing
Cursor
Mouse
Graphic board (digitaizer)
Selection of operations:
a) from keyboard 3 characters
VVA
b) move the cursor to the menu,
make a click with mouse (mouse button)
c) choose operation from graphic board menu
Main operations:
- VVA line drawing
- JVA continuous line
- KAA arc-drawing
...
- MOK drawing a polygon
Texts
- TXT text
- TXK text size
Treatment of symbols
Treatment of domains
Levels of the picture
Zoom
PadLan language
Actual problems of
CAD
Ahto Kalja
1. Formal design methods for CAD
- Tallinn 1993
- Mexico City 1995
2. Artificial Intelligence in Design ‘94
- Lausanne
AID’96
- Stanford
AID´98
- Lisbon
AID´00
3.Design Computing E-Newsletter’s No 1-29
Actual problems of CAD
• CONCEPTUAL DESIGN, MODELS AND
LANGUAGES
• KNOWLEDGE AND DATA REPRESENTATION
IN CAD
• MACHINE LEARNING IN CAD
• CONCURRENT ENGINEERING,
RESOLVING CONFLICTS
• CASE-BASED DESIGN SYSTEMS
• CONSTRAINT PROCESSING IN CAD
• THEORETICAL REASONING IN DESIGN
• DESIGN BY GENERATION
• SHAPES AND OBJECTS IN DESIGN
• GREATIVE DESIGN, EXPLORATION IN CAD
• AGENTS AND WEB-BASED DESIGN
ENVIRONMENTS
1. Conceptual Design
...as that part of the design process in which: problems
are identified, functions and specifications are laid out
and appropriate solutions are generated through the
combination of some basic blocks. Conceptual design,
unlike analysis, has no fixed procedure and involves a
mix of numerix and symbolic reasoning.
(Navinchandra, 1992).
Conceptual design include three groups of operations:
A: GENERATE: select, create
B: EVALUATE: simulate, calculate, compare
C: DECIDE: accept, reject, suspend, refine,
patch
Synthesis: synthetic processes act to combine elements
of design information into new models
Analysis: using case-based reasoning or
classification in design decision-making
activities
Categorization of desing process models
•descriptive model=explains how design is done
•cognitive model=explains the designer’s behavior
(thinking process)
•prescriptive model=show how design should be done
•computational model=expresses a method by which
a computer can accomplish the design task
knowledge
RUK
This formula works
if you know R
S
solution
requirements
SUK
P<=>R
P
Set of properties
Comparison of sets of properties
Execution
phase of
design
Development
phase of
design
Analogies between language and design
Language
Design
Vocabulary
words
parts
Syntax
grammar
actions for
configuration
Uttarances
sentences
designs
Semantics
meaning
interpretation of designs
as performances
Prototypes model
* Is based on object-oriented paradigma
* Investigates:
- inheritance between design objects
- generation of the new prototype variants
new design objects as well
* Used languages:
CLOS, C++, Smalltalk
Ellectrical prop.
-nominal voltage:
-nom. frequency:
...
Physical prop.
- weight:
- heigth:
...
Environmental p.
-operating temp.:
-air flow:
...
Product
Three viewpoints an electro-mechanical product
2. Representation of knowledge and data
Specification of design
task
Knowledge
bases
...
Databases
...
Inference engines
*PRIZ-NUT type
problem solvers
*PROLOG and
extensions
*Inductive type
Expert system
shells
*Interactive graphics
processors
*DBMS-s
...
Solutions
Development of AI based software systems
(in CAD related areas)
A.
Frame-based languages
Quillion 1966, M. Minsky
KL-One, NETL, FRL, Units, KRL, KEE, SRL 84
B. Common Lisp
J. McCarthy 1956-58 MIT, only Fortran language is older
Franz Lisp, Interlisp, MacLisp,…
- efficiency
is high for Common Lisp compilers today, works good
in mixed mode (interp. and comp.) as well
- control structures
in addition to COND and GOTO exist a large set of conditional
oper., iterations (for lists) etc.
- data types
ration. numbers, floating-point numbers,
complex numbers, vectors, arrays, records,
files,…
- libraries
70 + 40 different f –ns
lists oper.
- typecontrol
dynamic and static
- parameters list
pos. parameters + keywords +
fakt. param.
- on-line documentation
- Lisp programing environments
editors, Emacs,
- interaktive interpretators
debuggers included
- parallel processing
C Natural language processing
As old as AI
Hot topic is natuaral language interfaces (english).
A good example is Language Craft.
It is using “case frame grammar”.
Case frame parser is using a large number of language
constructions etc.
D Prolog
Good for prototyping
CPE
Opening of the problem
Prob. defin./Realization of probl.
Change
Specification of subtasks
Change
Specification of concepts
Change
Conceptual design
Change
Detailed design
Change
Change
Coding
Software testing
Change
Knowledge testing
Change
Change the structure
Change the structure
Evaluation
Change
Maintenance/extension
New
problems
Developing software systems with knowledge bases
Selected problem
Feasibility of the problem
Knowledge accession
Interim results presentation
Evaluation with an expert
Knowledge present. in KB
Evaluation with an expert
End if costs exceed
significance of the results
Maintenance, appraisal rep.
Life cycle of expert system
3. Machine learning in design
Machine learning task is to identify and
save old projects specific
characteristic and accurate knowledge.
Problems to be solve :
• What is the benefit of machine learning
opportunities for solving design problems?
• Which facilities of machine learning should be
develop for solving design problem?
• Which are restrictions?
...
Machine learning benefits:
•a better understanding will appear: how to design;
•shows what kind of important decisions to make and
when;
•shows what factors are important for decisions
making;
•showss how these decisions follows as features of
product;
•arises reusable knowledge of good
production and technological opportunities;
•arises re-user experience about market situation;
•etc.
4. Concurrent engineering,
resolving conflicts
Concurrent engineering is an approach to design which
takes into account not just the functionality of a
product but also its manufacturability, testability, and
aspects from business such as finance, cash flow
analyses and marketing.
Concurrent engineering requires cooperation among
many experts from various disciplines who are involved
at various states of the product life cycle.
Negotiation protocol should provide the following
support to the team:
1. Collection of client preferences;
2. Detection of situations of potential conflict
between design decisions,
3. Collection of compromise solutions;
4. Evaluation based on the client preferences of
those solutions; and
5. Output of the best solution to the clients for its
execution.
5. Case Based Reasoning in Design
M1
r1
l2
E1
a
b
l1
tri
P1
T1
Annotation
+
Using oil MS-6 causes additional
system weigth 11.8% and
volume increasing 6.3%
Past research on CBR focused a number of issues:
• What information should the case contain?
(pertaining problem)
* How should the case memory be organized & where
new case should be placed? (comprehension problem
* What method should be used to retrieve cases from
the case memory... (indexing problem)
• How can a stereotyped retrieved solution be adapted
to the new context of the designed problem?
(adapting problem)
* How can cases be acquired from the domain experts
and put in the case memory?
More actual problems:
• how present and modify libraries of graphic cases?
• how to organize search between graphic cases?
• how to use Internet for developing and using graphic
cases?
• how to develop and use case libraries in multi users
situation
DESIGN BY GENERATION
This example uses five grammar rules:
1)S->lbs Li ls Ri rbs
2)Li->sli
3)Li->sli Lj
4)Ri->sri
5)Ri->sri Rj
Conclusions
• Creation of knowledge bases and inference engines
remains a very important area in CAD. Mainstream
is the creation of distributed systems.
• One novel direction is connecting interactive
computer graphics with knowledge bases.
• OO-programming paradigm has lost its novelty.
• The analysis stage is now overwhelming case-based
reasoning methods. His current focus is the using of
multimedia, and the using of graphical data-knowledge organization.
• Modelling design as a thinking process has
got fast development.
• Using Internet as a design environment expands
everywhere.