UNIVERSIDADE F E D E R A L D E SANTO CATARINA CURSO DE POS-GRADUACAO EM ENGENHARIA MECANICA
E D ITO R GRAFICO PARA P R O J E T O MECÂNICO
DISSERTAÇÃO SUBMETIDA A UNIVERSIDADE FE D ER AL DE SANTA CATARINA PARA A OBTENÇÃO DO GRAU D E MESTRE EM ENGENHARIA MECANICA
M A UR ÍCIO KÜSTER
F L O R IA N O P O L IS - SC MAIO DE 1909
EDITOR GRAFICO PARA P R O J E T O MECÂNICO
M AUR ÍCIO KU5TER
E 5TA DI5SERTAÇA0 FOI JU L G A D A ADEQUADA PARA OBTENÇÃO DO TITU L O D E
MESTRE EM ENGENHARIA
E S P E C I A L I D A D E ENGENHARIA MECANICA, AREA D E CONCENTRAÇAO PROJETO, APROVADA EM SUA FORMA FINAL P E L O CURSO D E POS-GRADUAÇAO
EM E N G E N H A R IA MECANICA. P r o f . E d i s o n d a R o s a , M.Eng. O c l e n t a d o r P r o f . A r n o B l a s s , P h .D . C o o r d e n a d o r do C u r s o B A N C A EXAMINADORA :
fZ,
P r o f . E d i s o n d a R o s a , M.Eng. P r o f . C l o v i s S p e r b d e B a r c e l l o s , Ph.D.A m i n h a f a m í l i a , q u e t a n t o me a p o io u e i n c e n t i v o u n e s t a l o n g a j o r n a d a .
A G R A D E C IM E N T O S fio p r o f e s s o r E d i s o n d a R o s a , p e l a o r i e n t a ç ã o p r e s t a d a d u r a n t e o d e s e n v o l v i m e n t o d è s t e t raba lho . Ao C N P q , p e l o a p o i o f i n a n c e i r o c o n c e d i d o d u r a n t e g r a n d e p a r t e d a r e a l i z a ç ã o da d i s s e r t a ç ã o . A C o o r d e n a d o r i a do Curso, e a o s p r o f e s s o r e s do D e p a r t a mento d e E n g e n h a r i a M ec â n ic a da UFSC que, de a lgum a forma, c o n t r i b u í r a m p a r a o d e s e n v o l v im e n t o d e s t e trabalho. A to d o s o s c o l e g a s da p ó s - g r a d u a ç ã o q ue me a u x i l i a r a m na e l a b o r a ç ã o do t r a b a lh o e, p r i n c ip a l m e n t e , p e l a a m iz a d e p r e s e n t e em to do s o s momentos. Em e s p e c i a l , a o s a m i g o s e c o l e g a s F e r n a n d o e E d u a r d o ( " M i n e i r o " ) , p e l a a m iz a d e e in c e n t i v o que n u n c a me faltaram . A os c o m p a n h e i r o s do GRANTE, p r o f e s s o r e s , a l u n o s e f u n c i o n á r i o s , e s p e c i a l m e n t e a o s g r a d u a n d o s A l t e m i r , R o g é r io ("R ato "), A r i m a e M a r c e l o , p e l a im p o r ta n t e c o n t r i b u i ç ã o na e l a b o r a ç ã o do programa.
IN D IC E RESUMO . . . . ... ... . ... i v ABSTRACT . ... ... . . . . ... v C A P IT U L O 1 - INTRODUÇflO 1 . 1 . I n t r o d u ç ã o ... ... ... 1 1 . 2 . H i s t ó r i c o ... . 3 1 . 3 . S o f t w a r e d e a p o i o â p ro gram aç ã o ... .. 5 1 . 3 . 1 . L i n g u a g e n s g r á f i c a s ... 5 1 . 3 . 2 . E x t e n s ã o ãs l i n g u a g e n s d e program ação . . . . 6 1 . 3 . 3 . B i b l i o t e c a s g r á f i c a s ... ... .. 7 1 . 3 . 4 . E d i t o r e s g r ã f i c o s ... ... 0 1 . 4 . E d i t o r g r á f i c o p a r a p r o j e t o m e c â n ic o ... 10 C A P IT U L O 2 - A ESTRUTURA DO PROGRAMA 2 . 1 . I n t r o d u ç ã o ... ... 12 2 . 2 . 0 G. K. S ... ... .. 13 2 . 3 . Uma e s t r u t u r a a l t e r n a t i v a ... 17
2 . 3 . 1 . Arm azenam ento d e d a d o s ... 19
2 . 3 . 2 . A e s p e c i f i c a ç ã o IGES ... 2 0 2 . 4 . A e s c o l h a d a e s t r u t u r a ... ... 23
C A P IT U L O 3 - A ARQUITETURA DO S ISTE M A 3 . 1 . A I n t e r f a c e ... .. ... ... ..29 3 . 2 . O E d i t o r ... ... ..31 3 . 3 . O a m b i e n t e g r á f i c o ... ... .. 32 3 . 3 . 1 . Função d e p o s i c i o n a m e n t o ... 33 3 . 3 . 2 . Função d e i d e n t i f i c a ç ã o ... .. 3 4 3 . 3 . 3 . Comandos d e c o n s t r u ç ã o ... 35 3 . 3 . 4 . Comandos d e m a n i p u l a ç ã o ... .. 30 3 . 3 . 5 . Comandos d e m a n ip . d e b l o c o s ... 39 3 . 3 . 6 . Comandos d e c o n t r o l e d e p a r â m e t ro s ... ..4 0 3 . 3 . 7 . Comandos d e v i s u a l i z a ç ã o . ... ...43 3 . 3 . 0 . Comandos d e a p o i o ...45 3 . 3 . 9 . Comandos d e r e p r o d u ç ã o ... ..46 C A P IT U L O 4 - 0 ARQUIVO GRAFICO 4 . 1 . I n t r o d u ç ã o ... ..40
4 . 2 . Arm azenam ento d e i n f o r m a ç õ e s ...40
4 . 3 . E s t r u t u r a do a r q u i v o ... ... ..49 4 . 4 . A e s p e c i f ic a ç ã o do a r q u i v o ... .. 51 4 . 5 . Montagem do a r q u i v o ... .. 52 C A P IT U L O 5 - PROJETO DE MOLAS 5 . 1 . I n t r o d u ç ã o ... .. 50 5 . 2 . F o r m u l á r i o b á s i c o ... ... .. 59 5 . 3 . C r i t é r i o s d e p r o j e t o ... ... .. 61
5 . 3 . 1 . Mola com p e s o mínimo ... ... .... 62
5 . 3 . 2 . Mola com co m p rim en to mínimo ... ... .. 63
5 . 3 . 3 . Mola com d i â m e t r o e x t e r n o e s p e c i f i c a d o . . . 65
5 . 4 . A i n t e r f a c e p a r a o e d i t o r . ... 66 5 . 5 . Um p r o j e t o d e mola ... ... .. . 69 5 . 5 . 1 . Mola com p e s o mínimo ... 7 0 5 . 5 . 2 . Mola com d i â m e t r o e x t e r n o e s p e c i f i c a d o . . . 72 5 . 5 . 3 . Mola com d i â m e t r o i n t e r n o e s p e c i f i c a d o . . . 7 4 C A P IT U L O 6 - C 0N C L U 5 0 E 5 6 . 1 . C o n c l u s õ e s ... ... .. 77 6 . 2 . R e c o m e n d a ç õ e s ... 78 REFERENCIAS B I B L I O G R Á F I C O S ... 81
APÊNDICE 1 - ALGORITMOS DE PROGRAMAÇÃO
A l . l . Mapeamento window-viewpari ... ... 8 4 A l . 2. A d e f i n i ç ã o do t e x t o ... ... ... 9 0 A l . 3. T r a ç a d o d a l i n h a em d i s p o s i t i v o s t i p o r a s í e r . . . . 91 A l . 4. T r a ç a d o do c í r c u l o em d i s p o s i t i v o s t i p o raster .. 95 APÊNDICE 2 - EXEMPLO DO ARQUIVO GRAFICO ... ... 98 APÊNDICE 3 - S A I D A GRAFICA DE RESULTADOS
A 3 . 1 . T r a ç a d o r g r a f i c o C p l o t t e r ) ... 1 0 4 A 3 . 2 . Im p r e s s o r a m a t r i c i a l ... 1 1 0
iv RESUMO O E d i t o r G r á f i c o p a r a P r o j e t o M e c â n i c o ê um s i s t e m a d e s e n v o l v i d o p a r a s e r c o n e c t a d o a a p l i c a t i v o s na ã rea de p ro jeto m e c â n i c o . 0 o b j e t i v o do t r a b a l h o § a u t i l i z a ç ã o dos r e c u r s o s g r á f i c o s d i s p o n í v e i s n o s m ic r o c o m p u t a d o r e s tipo IBM-PC c o m p at í v e i s , p a r a t o r n a r m a i s e f i c i e n t e s os p ro gra m as de projeto, a c o p l a n d o a p a r t e g r á f i c a ãs r o t in a s de c á lc u lo e d im e ns io n a m e n to . T o r n a - s e p o s s í v e l , e n t ã o , o p r o j e t o de um c o m p o n e n te m e c â n ic o d e s d e a e n t r a d a de dados, até s u a s a í d a em forma de d e s e n h o p ara a f a b r i c a ç ã o .
C om o e xe m plo foi e l a b o r a d o um programa p ara d i m e n s i o n a m e n t o de molas h e l i c o i d a i s de com pressã o. Este program a c a l c u l a a m o l a d e fo r m a a minim izar o parâmetro e s c o l h i d o p ara prpjeto. 0 r e s u l t a d o n u m ér ic o é c o n v e r t id o em e lem en to s g e o m é tr ic o s b á s i c o s , c o m o l i n h a s , a r c o s , c í r c u l o s , e t c , q u e s ã o g r a v a d o s num a r q u i v o , c h a m a d o a r q u i v o g r á f i c o . E s t e a r q u i v o ê in t e r p r e t a d o p elo E d ito r p ara g er ar o d e s e n h o da mola na tela de vídeo ou n os d i s p o s i t i v o s g r á f i c o s d e s a í d a , c o m o im p r e s s o r a s ou t r a ç a d o r e s g r á fic o s .
ABSTRACT
T h e G r a p h i c E d i t o r f o r M e c h a n i c a l D e s i g n i s a s y s t e m d e v e l o p e d to b e c o n n e c t e d to o t h e r a p p l i c a t i o n p r o g r a m s f o r m e c h a n i c a l d e s i g n . T h e p u r p o s e of t his work is to make u s e of t h e IBM-PC c o m p a t i b l e m ic r o c o m p u t e r s ’ g r a p h ic pow er in o r d e r to g i v e m o r e e f f i c i e n c e fo r t h e d e s i g n p r o g r a m s , c o u p l i n g t h e g r a p h i c s w i t h t h e c a l c u l a t i o n a n d d i m e n s i o n i n g r o u t i n e s . It’s t h e n p o s s i b l e to d e s i g n a m e c h a n i c a l component s i n c e the data i n p u t t i l l i t ’s o u t p u t , a s a d r a f t i n g for the manuf a ctu rin g.
A s a n e x a m p l e , it w a s c r e a t e d a p r o g r a m f o r h e l i c a l c o m p r e s s i o n s p r i n g s d e s i g n . T h is program c a l c u l a t e s the s p r i n g fo r m i n i m u m v a l u e s of c e r t a in d e s i g n param eters. The n u m e r i c a l r e s u l t s a r e a r r a n g e d in b a s i c g e o m e t r i c e l e m e n t s , l i k e l i n e s , a r c s , c i r c l e s , e t c , w i t c h a r e s a v e d in a f i l e , c a l l e d g r a p h i c f i l e . T h i s f i l e i s i n t e r p r e t e d by t h e E d i t o r in o r d e r to d i s p l a y the s p r i n g d r a ft in g on the s c r e e n or in an output d e v i c e a s a p r in t e r or a plotter.
CftPITULD 1
IN T R O D U Ç Ã O
1.1. I n t r o d u ç ã o
I m a g e n s e d e s e n h o s sem pre foram a s formas m ais n a t u r a i s d e c o m u n i c a ç ã o e n t r e o s s e r e s humanos. Da mesma forma, os e n g e n h e i r o s u t i l i z a m - s e d e i n f o r m a ç õ e s g r á f ic a s , na forma de d e s e n h o s , p a r a s e c o m u n i c a r . Um d e s e n h o ou g r ã f ic o s u b s t it u i, com v a n t a g e n s , e x t e n s o s r e l a t ó r i o s n u m é r i c o s ou t a b e l a s de d i f í c i l i n t e r p r e t a ç ã o . G j a r g ã o p o p u l a r "um d e s e n h o v a le m a is que mil p a l a v r a s " mostra c la r a m e n t e o poder do s r e c u r s o s g r á f i c o s na c o m u n i c a ç ã o .
A C o m p u t a ç ã o G ráfica, s u r g i d a com o a dve n to do s co m p u ta d o r e s , v e i o a f a c i l i t a r a g e r a ç ã o e t r a t a m e n t o de im a ge n s . Os r e c u r s o s d e t r a t a m e n t o f a c i l i t a m a a l t e r a ç ã o d e i m a g e n s p r e v i a m e n t e g e r a d a s , q u e p e r m i t e m a g e r a ç ã o d e d e s e n h o s d e m e l h o r q u a l i d a d e e em menor tempo que em p r o c e s s o s m a n u a is , e m e s m o a s o l u ç ã o d e p r o b l e m a s q u e n ã o s e r i a m p o s s í v e i s p e l o s p r o c e s s o s t r a d i c i o n a i s . P o d e - s e d e f i n i r a C o m p u t a ç ã o G r á f i c a c o m o o c o n j u n t o d e a l g o r i t m o s , t é c n i c a s e m e t o d o l o g i a s p a r a
Introdução - 2
t r a t a m e n t o e r e p r e s e n t a ç ã o g r ã f i c a d e i n f o r m a ç õ e s , a t r a v é s da c r i a ç ã o , a r m a z e n a m e n t o e m a n i p u l a ç ã o de f i g u r a s , u t il iz a n d o - s e c o m p u t a d o r e s e d i s p o s i t i v o s p e r i f é r i c o s g r á f i c o s [16].
O s e f e i t o s c o m b i n a d o s d o s aum en to s do s c u s t o s d o s m ate r i a i s , d a e n e r g i a e outros c u s t o s g e r a i s , que afetam a d v e r s a m e n te a in d ú s t r i a , bem como a n e c e s s i d a d e de uma maior q u a l i d a d e do p r o d u t o e r e d u ç ã o d o te m p o d e d e s e n v o l v i m e n t o , em v ir t u d e da c o m p e t i t i v i d a d e d o m e r c a d o , t r o u x e r a m uma ê n fà s e bem maior no p r o j e t o . D e s t a f o r m a a C o m p u t a ç ã o G r ã f i c a tem h o j e o s e u p r i n c i p a l campo de a p l ic a ç ã o na e n g e n h a r ia , em s i s t e m a s de a p o io a o p r o j e t o e f a b r i c a ç ã o , c h a m a d o s S i s t e m a s de . CfiE/ CfíD/ ÇOM.
S i s t e m a s d e s t e t i p o e s t ã o s e n d o c a d a vez m ais e m p r e g a d o s p ara r e d u z i r o t e m p o d e d e s e n v o l v i m e n t o e melhorar a q u a l i d a d e do s projetos.
No B r a s i l a i n d a há m u i t a d i f i c u l d a d e p a r a a a p l i c a ç ã o m a i s e f e t i v a d a C o m p u t a ç ã o G r ã f i c a e m e s m o d e S i s t e m a s p ara
CfíE/CfíD/CftM. Pode-se citar coroo um dos p r i n c i p a i s p ro b le m a s a y f a l t a de p e s s o a l e s p e c i a l i z a d o , que devê- se ã a u s ê n c i a de c u r s o s d e C o m p u t a ç ã o G r ã f i c a no c u r r í c u l o d a s e s c o l a s . O u t r o p o n t o i m p o r t a n t e , t a l v e z o p r i n c i p a l o b s t á c u l o para o d e s e n v o lv im e n t o da Com putação G r ã fic a no país, é a fa lt a de o p ç õ e s em term os de c o m p u t a d o r e s e d i s p o s i t i v o s g r á f i c o s no m ercado n a c io n a l . Soma- s e a i n d a o f a t o da S.E.I. t e r f e i t o , a t é p o u c o t e m p o a t r á s , s é r i a s r e s t r i ç õ e s para a im portaçã o d e s t e tipo de equ ip am ento , o q u e t o r n a v a muito e le v a d o o c u sto de S is t em as de CftE/CfiD/CfiM,
Introdução - 3
i n d u s t r i a l . H o j e t e m - s e um a a b e r t u r a m a i o r por parte da S.E.I. no que d iz r e s p e i t o a e q u ip a m e n t o s e s p e c í f i c o s p ara CfíE/CfiD/CfíM,
t o r n a n d o p o s s í v e l que a lg u m a s i n s t i t u i ç õ e s de e n s i n o e p e s q u i s a , bem como a lg u m a s i n d ú s t r i a s a d q u ir a m e q u ip a m e n t o s d e s t e tipo.
1.2. H i s t ó r i c o
0 Com putação G r á fic a com eçou a dar s e u s p r im e ir o s p a s s o s n a d é c a d a d e 5 0 , co m o s u r g i m e n t o d o s p r i m e i r o s d i s p o s i t i v o s g r á f i c o s , c o m o o t e r m i n a l g r á f i c o (1951), os t r a ç a d o r e s g r á f i c o s ou plotters ( 1 9 5 3 ) e a s c a n e t a s l u m in o s a s ou light pens (1950).
A s p r i m e i r a s i n i c i a t i v a s d e a p l i c a ç ã o da Computação G r á fic a na i n d ú s t r i a a p a r e c e r a m na d é c a d a de 60, com o t r ab a lh o de p e s q u i s a d e a l g u m a s i n d ú s t r i a s d e g r a n d e porte. Na m a io r ia d e s t e s c a s o s e s t a v a p r e s e n t e um d o s g r a n d e s f o r n e c e d o r e s de c o m p u t a d o re s : IBM, C o n t r o l D ata ou DEC.
0 g r a n d e p a s s o p a r a o a v a n ç o da Com putação G r á fic a foi d a d o no Massachusets. Institute of Technology - M1T , em 1962,
com a a p r e s e n t a ç ã o d a t e s e d e d o u t o r a m e n t o d e I v a n E. Suth erlan d, "Sketchpad : a man-mac hins' graphical communJcat i o n s system". S u t h e r la n d mostrou que g r á f i c o s podem s e r d e s e n h a d o s e m a n i p u l a d o s na te la de um term inal de vídeo tipo CRT, com a u x í l i o d e um a c a n e t a l u m i n o s a . E s tav a então v i a b i l i z a d a a c r i a ç ã o d e p r o g r a m a s g r á f i c o s in te r a t iv o s , e aí s,urgiú a Computação G rá f i c a I n t e r a t i v a . A té então o que s e tinha eram p ro gr a m as g r á f i c o s p a s s i v o s , ou s e j a , o s d e s e n h o s era g e r a d o s de uma sõ vez, a p õ s um c e r t o p ro c e s s am e n t o , sem in t e r v e n ç ã o do p ro je tista. P a r a
Introduçã o - 4
m o d i f ic a ç ã o do mesmo era n e c e s s á r i o a lte r a r os d a d o s de en tra da , r e p r o c e s s a r e r e f a z e r o d e s e n h o . A id é i a de Com putação G r á fic a I n t e r a t i v a é d e q u e o u s u á r i o p o d e i n t e r v i r n a c o n s t r u ç ã o do d e s e n h o e v i s u a l i z a r o r e s u l t a d o i m e d i a t a m e n t e . P o r e x e m p l o , p o d e - s e a l t e r a r a p o s i ç ã o d e um a l i n h a no d e s e n h o sem q ue o m e s m o t e n h a q u e s e r r e d e s e n h a d o . A p e n a s a l i n h a e s c o l h i d a é a lte r a d a . A t u a n d o também n e s t a área de p e s q u i s a v a le s a l i e n t a r o t r a b a l h o d e s e n v o l v i d o n a G e n e r a l M o t o r s , o DAC-I, s is t e m a g r á f i c o c r i a d o p a r a e m u l a r e m e l h o r a r os métodos t r a d i c i o n a i s de p r o j e t a d e a u t o m ó v e i s . T a m b é m o tr ab a lh o do s p e s q u i s a d o r e s da L o c k h e e d - G e o r g i a C o m p a n y , com a a p l ic a ç ã o de t é c n i c a s g r á f i c a s i n t e r a t i v a s p a r a a d e f i n i ç ã o d e f o r m a s g e o m é t r ic as , q ue s e r v i riam como e n t r a d a de d a d o s p ar a p ro g r a m as de a n á l i s e de e s t r u t u r a s p e l o M é t o d o d e E l e m e n t o s F i n i t o s , e pro du ção de p ro g r a m as p e r f u r a d o s em f i t a s p a r a m á q u i n a s f e r r a m e n t a s d e c o m a n d o numérico. S e g u i n d o e s t e s e s f o r ç o s p i o n e i r o s , m u i t o s p e s q u i s a d o r e s d e o u t r a s i n d ú s t r i a s e u n i v e r s i d a d e s d e s e n v o lv e r a m s e u s p ro je to s d e p e s q u i s a em C o m p u t a ç ã o G r á f i c a . Cada grupo d e s e n v o l v e u um s o f t w a r e a p l i c a t i v o p r ó p r i o p a r a s e u s c o m p uta do re s e p e r i f é r i c o s . Em v i r t u d e do a l t o c u s t o d e d e s e n v o l v i m e n t o do s o f t w a r e g r á f i c o , s u r g i u a n e c e s s i d a d e de p a c o t e s g r á f i c o s d e u s o geral, p ara a u x i l i a r o program ador de a p l i c a ç õ e s a prover r e c u r s o s g r á f i c o s em s e u s a p lic a t iv o s .
Introdução - 5
1.3. S o f t w a r e d e a p o io à ‘ p ro g r a m aç ã o
M u i t o s s o f t w a r e s d e a p o i o ã p r o g r a m a ç ã o f o r a m d e s e n v o l v i d o s , d e m odo a e l im i n a r a n e c e s s i d a d e do p ro g r a m ad o r d e a p l i c a ç õ e s s e r também um e s p e c i a l i s t a em Computaçãp G rá fica. A l g u m a s m a n e i r a s d e s e p r o v e r e s t e s r e c u r s o s ao p r o g r a m a d o r f o r a m m a is e x p l o r a d a s , en tre e l a s r
- l i n g u a g e n s g r á f i c a s .
- e x t e n s õ e s ãs l i n g u a g e n s d e pro gram açã o j á e x i s t e n t e s , im p lem en tan do - se r e c u r s o s g r á f i c o s . - b i b l i o t e c a s d e s u b r o t i n a s g r á f i c a s ou p a c o t e s g r á f i c o s d e u so g e r a l . - e d i t o r e s g r á f i c o s . 1.3.1. L i n g u a g e n s g r á f i c a s No i n í c i o do d e s e n v o l v i m e n t o d e fe r r a m e n t a s g r á f i c a s de a u x í l i o ã p r o g r a m a ç ã o , a c r i a ç ã o d e l i n g u a g e n s g r á f i c a s f o i b a s t a n t e p e s q u i s a d a . F o r a m d e s e n v o l v i d a s a l g u m a s l i n g u a g e n s d e s t e t i p o p a r a f i n s e s p e c í f i c o s , c o m o p or e x e m p l o t r a b a l h o s a r t í s t i c o s , a n i m a ç ã o p a r a v í d e o e c i n e m a , e t c , p a r a o s q u a i s e s t a s l i n g u a g e n s a p r e s e n t a r am-se como uma boa solução. E n t r e t a n t o , n o d e s e n v o l v i m e n t o d e a p l i c a t i v o s na área de e n g e n h a r ia , c o m o p o r e x e m p l o p r o g r a m a s p a r a a n á l i s e d e e s t r u t u r a s , q u e e n v o l v e m m u i t o s c á l c u l o s e r e c u r s o s c i e n t í f i c o s , e s t a s l i n g u a g e n s t o r n a r a m - s e i n s u f i c i e n t e s . ü s p e s q u i s a d o r e s q u e v o l t a v a m s e u s e s f o r ç o s p a r a a c r i a ç ã o d e l i n g u a g e n s g r á f i c a s
Introdução - 6
r e c o n h e c e r a m a n e c e s s i d a d e do s m e lh o re s r e c u r s o s de p ro g r a m aç ã o e n c o n t r a d o s n a s l i n g u a g e n s p a d r ã o . D e s t e m o d o m u i t o s d e l e s voltaram s e u s e s f o r ç o s para a im plem entação de r e c u r s o s g r á f i c o s n a s l i n g u a g e n s já e x i s t e n t e s .
1.3.2. E x t e n s ã o d a s l i n g u a g e n s de p ro gram aç ã o
0 e x t e n s ã o de l i n g u a g e n s de programação, im plem entando- se à s m e s m a s r e c u r s o s g r á f i c o s foi, du r an te muito tempo, a m a n e ir a m a i s p r o c u r a d a p a r a p r o v e r r e c u r s o s g r á f i c o s a o s p r o g r a m a d o r e s d e a p l i c a t i v o s . PI i n t e r f a c e com o p r o g r a m a d o r f i c a b a s t a n t e s a t i s f a t ó r i a , s e n d o que o co m p ilado r se e n c a r r e g a da c h e c a g e m de e r r o s , e o c ó d i g o f o n t e f i c a b a s t a n t e c la r o e e le g a n te . Hoje, a m a i o r i a d o s c o m p i l a d o r e s , p r i n c i p a l m e n t e p a r a c o m p u t a d o r e s p e s s o a i s CPC-XT, AT ou 3 8 6 ) , a p r e s e n t a m b o n s p a c o t e s g r á f i c o s e m b u t i d o s n a l i n g u a g e m . E n t r e t a n t o , n e m s e m p r e o m e l h o r c o m p i l a d o r Ce a m e l h o r l i n g u a g e m ) p a r a a p a r t e g r á f i c a i n t e r a t i v a d e um p r o g r a m a ê t a m b é m o m e l h o r p a r a o d e s e n v o l v i m e n t o do a p l i c a t i v o em questão. £ o c a s o q ue o c o r r e f r e q u e n t e m e n t e co m p r o g r a m a s d e a n á l i s e d e e s t r u t u r a s p o r E l e m e n t o s F i n i t o s , g e r a l m e n t e e s c r i t o s em FORTRAN, c u jo s pré e p â s - p r o c e s s a d o r e s p a r a e n t r a d a e s a l d a de r e s u l t a d o s d e v e r ia m s e r p r e f e r e n c i a l m e n t e e s c r i t o s em l i n g u a g e n s como P a s c a l ou C, q u e a p r e s e n t a m e x c e l e n t e s r e c u r s o s g r á f i c o s e fá c il in t e r a ç ã o com o u s u á r io do programa.
Introdução 7
1.3.3. B i b l i o t e c a s g r á f i c a s
E x i s t e m h o j e d i s p o n í v e i s n o m e r c a d o v á r i o s p a c o t e s g r á f i c o s p a r a a p o i o à p r o g r a m a ç ã o . E s t e s p a c o t e s p o d e m s e r b i b l i o t e c a s d e s u b r o t i n a s g r á f i c a s f o r n e c i d a s em c ó d ig o fonte, p a r a s e r e m a d i c i o n a d a s ao fonte do a p lic a t iv o , e c o m p i l a d a s por a l g u m c o m p i l a d o r e s p e c í f i c o , ou e n t ã o b i b l i o t e c a s d e f u n ç õ e s g r á f i c a s já c o m p i l a d a s , g e r a l m e n t e com v e r s õ e s p a r a d i v e r s a s l i n g u a g e n s d e p r o g r a m a ç ã o , que podem s e r l i g a d a s ao a p l ic a t iv o , ta m b é m jã c o m p i l a d o , p or m e i o d e um l i g a d o r (.linker'), q u a n d o
s e r á g e r a d o o c ó d ig o e xe c u t á v e l.
Q u a n d o a s s u b r o t in a s são f o r n e c i d a s em c õ d ig o fonte, tem- s e a p o s s i b i l i d a d e de a l t e r a ç ã o d a s mesmas, v is a n d o um melhor a p r o v e i t a m e n t o p a r a o fim e s p e c í f i c o a q u e s ã o d e s t i n a d a s . E n t r e t a n t o , a m o d i f i c a ç ã o d o s f o n t e s i m p l i c a em um g r a n d e c o n h e c i m e n t o não só da e s t ru t u ra do p ac o te gráfico, como também d e C o m p u t a ç ã o G r á f i c a , p o r p a r t e do p r o g r a m a d o r do a p l ic a t iv o . A lém d i s s o , e s t a s b i b l i o t e c a s são g e r alm e n t e c o n s t r u í d a s p ar a um c o m p i l a d o r e s p e c í f i c o , n ã o s e n d o p o s s í v e l s u a u t i l i z a ç ã o com outros c o m p il a d o r e s . Um exem plo d e s t e tipo de p aco te é o Graphix T oo lbo x, f o r n e c i d o p e l a B o r la n d , p a r a se r u t il iz a d o jun tam e n te
com s eu c o m p ila d o r TurboPascal.
A s b i b l i o t e c a s g r á f i c a s p a r a u s o ger^al, f o r n e c i d a s em c õ d i g o o b j e t o , jã c o m p i l a d a s , g e r a l m e n t e n ã o a p r e s e n t a m p o s s i b i l i d a d e d e m o d i f i c a ç ã o , ou e n t ã o é bem re s tr it a . Contudo, s ã o b a s t a n t e f á c e i s d e s e u t i l i z a r , d e v e n d o o p r o g r a m a d o r de
Introdução - 0
a p l i c a t i v o s c o n h e c e r a p e n a s s u a e s tru tu ra e a c ham ada de c a d a f u n ç ã o co m s e u s p a r â m e t r o s . A s b i b l i o t e c a s d e s t e t i p o m a i s c o n h e c i d a s s ã o p r o p o s t a s p a r a p .a d r o n i z a ç ã o , no s e n t i d o d e e n c o n t r a r uma n o r m a p a r a o i n t e r f a c e a m e n t o g r á fic o . Hoje são d i s p o n í v e i s v e r s õ e s d o P H IG S (.P r o g r a m m e r ’ s H i e r a r c h i c a l In te r a c t iv e G r a p h ic s System), q u e é o b j e t o d e e s t u d o p a r a p a d r o n i z a ç ã o em d e s e n v o l v i m e n t o na ISO e ANSI; o CGI (.Computer G r a p h ic s J nterface), também em e s t u d o p e l a ISO e ANSI; e o GKS (.Graphical K e r n e l S y s t e m ), q u e f o i a d o t a d o c o m o n o r m a i n t e r n a c i o n a l p e l a ISO em 1985 e como norma a m e r ic a n a p e la ANSI, também em 1905, e está s e n d o tr a d u z id o p ara o p or tu g u ê s p e l a C o m i s s ã o d e E s t u d o do GKS. "C E - 2 1 :2 0 3 .0 1 " da ABNT, p ara torná-lo o p a d r ã o b r a s i l e i r o . 1.3.4. E d i t o r e s g r á f i c o s O s E d i t o r e s G r á f i c o s s ã o p a c o t e s de s o f t w a r e i n t e r a t i v o s q ue permitem ao u s u á r io e r ia r d e s e n h o s de e n g e n h a r i a com a u x í l i o do c o m p u t a d o r , v i s u a l i z a r d e t a l h e s com f u n ç õ e s d e zoom , e i m p r i m í - l o s em p e r i f é r i c o s d e s a í d a g r á fic o s, como im p r e s s o r a s m a t r i c i a i s ou t r a ç a d o r e s g r á f i c o s (plotters'). Além dis s o , podem
fu n c i o n a r como f e r r a m e n t a s para e n t ra d a e s a í d a g r á f ic a de d a d o s em p r o g r a m a s a p l i c a t i v o s de e n g e n h a r ia , a t r a v é s de uma i n t e r f a c e de c o n v e r s ã o e n tre os a r q u i v o s do a p l i c a t i v o e do editor. N o r m a l m e n t e , o s E d i t o r e s G r á f i c o s s ã o u t i l i z a d o s a p e n a s co m o f e r r a m e n t a s p a r a d e s e n h o . D e s t a f o r m a , s ã o c o n s t r u í d o s v i s a n d o d a r a o u s u á r i o um g r a n d e número de f u n ç õ e s e r e c u r s o s
Introdução
g r á f i c o s , c o m o v á r i a s c o r e s ou t i p o s d e l i n h a s , d i f e r e n t e s e s p e s s u r a s d e t r a ç a d o , e t c . A s s i m , t o r n a - s e n e c e s s á r i o o a r m a z e n a m e n t o d e m u i t o s p a r â m e t r o s p a r a a d e f i n i ç ã o d e c a d a e n t i d a d e g e o m é t r i c a d e f i n i d a , o que por s u a vez torna o a r q u i v o d e d a d o s g r á f i c o s b a s t a n t e g r a n d e e c o m p le x o . A e s t r u t u r a ou e s p e c i f i c a ç ã o d e s t e s a r q u i v a s é f e i t a então de forma a melhor c o n t e r t o d o s o s p a r â m e t r o s q u e d e f i n e m c a d a e n t i d a d e g r á fic a . D e s t e m o do , c a d a f a b r i c a n t e d e s i s t e m a s d e s t e t i p o a dota s u a p r ó p r i a e s p e c i f i c a ç ã o p a r a o a r q u i v o d e d a d o s , e e s t a e s p e c i f i c a ç ã o ê f e it a de modo a perm itir uma r á p id a r e c u p e r a ç ã o do s da do s, sem p r e o c u p a ç ã o com a p o s s i b i l i d a d e d e c o m u n ic a ç ã o do s i s t e m a com o u tr o s programas.
Um e xe m plo de a p l i c a ç ã o de um edito r g r á f ic o como f e r r a m e n t a de a p o io â pro gram açã o e s c l a r e c e a in d a m ais s u a u t i l i d a d e na e n g e n h a r ia . Um programa típ ico p ara d im e n s io n a m e n to de e n g r e n a g e n s tem, c o m o r e s u l t a d o f i n a l , a s d i m e n s õ e s d a e n g r e n a g e m c a l c u l a d a . e s ta tab e la de d i m e n s õ e s pode se r c o n v e r t id a p ar a uma t a b e l a cJc? c o o r d e n a d a s , d i s p o s t a s s e g u n d a a e s p e c i f i c a ç ã o de um e d i t o r . Com a c h a m a d a do editor, pode-se então v i s u a l i z a r numa t e l a d e v í d e o a e n g r e n a g e m c a l c u l a d a , e a in d a o b s e r v a r d e t a l h e s com f u n ç õ e s de zoom. Tem-se também a p o s s i b i l i d a d e de m o d i fic a r
o d e s e n h o , ou i n c l u i r m a i s d e t a l h e s , u t i l i z a n d o os r e c u r s o s de e d i ç ã o do editor, e por fim g e r a r uma c ó p ia do d e s e n h o em papel, i m p r e s s a por um d i s p o s i t i v o de s a í d a gr á fic a. As f u n ç õ e s do e d i tor podem aum entar a in d a s e e s t a s in fo r m a ç õ e s g r á f i c a s forem i n t e r p r e t a d a s , e u t i l i z a d a s p ar a a g e r a ç ã o do p ro gram a em l i n g u a
Introdução - 10
g e m e s p e c i f i c a q u e a lim e n ta a m á quina de com ando num érico, r e s p o n s á v e l p e l a u s i n a g e m da peça. 1.4. E d i t a r G r á f i c a p a r a P r o je to M e c â n ic a A n a l i s a n d o a s c a r a c t e r í s t i c a s do s s o f t w a r e s p ara a p o io ã p r o g r a m a ç ã o d e a p l i c a t i v o s m e c â n i c o s , c h e g a - s e a c o n c l u s ã o de q u e , e s p e c i a l m e n t e p a r a a a p l i c a ç ã o e s p e c í f i c a em p r o j e t o m e c â n i c o , a s a í d a g r á f i c a g e r a d a em um e d i t o r g r á f ic o é m ais i n t e r e s s a n t e . In d e p e n d e n t e da v i s u a l i z a ç ã o da p eç a p ro je t ad a , um e d i t o r p o s s u i a s f e r r a m e n t a s n e c e s s á r i a s p ara que o p r o j e t is t a r e a l i z e p e q u e n a s a l t e r a ç õ e s no d e s e n h o d a p e ç a , i n c l u s ã o d e d e t a l h e s , l e g e n d a s oú a n o t a ç õ e s e, p r i n c i p a l m e n t e , u m a c a p a c i d a d e d e r e p r o d u ç ã o do d e s e n h o com total co n tr o le s o b r e a e s c a l a d e d e s e n h o , folhas, tamanho do papel, etc.
D e s t a f o r m a , p o d e - s e c r i a r um s i s t e m a d e p r o j e t o co m c a p a c i d a d e p a r a d i m e n s i o n a m e n t o d e uma p e ç a a p a r t i r d e um p r o g r a m a d e c á l c u l o , p e r m i t i r s u a v i s u a l i z a ç ã o com d e t a l h e s , e a in d a r e p r o d u z ir s e u d e s e n h o em p ap el a de qu ado , já pronto p ar a a l i n h a d e f a b r i c a ç ã o , tornando o p r o c e s s o de projeto m a is r á p id o e e f i c i e n t e . S e r á e n t ã o d e s e n v o l v i d o um e d it o r g r á fic o cuja p r i n c i p a l c a r a c t e r í s t i c a é a f a c i l i d a d e d e c o m u n i c a ç ã o c o m o u t r o s s o f t w a r e s , p e r m itin d o a fá c il montagem de s e u s a r q u i v o s a p artir d e d a d o s g e r a d o s p o r p r o g r a m a s a p l i c a t i v o s . E s t e s a r q u i v o s t a m b é m d e v e m s e r f a c i l m e n t e i n t e r p r e t a d o s , d e m o do a d a r
In tro du çã o - 11
c o n t i n u i d a d e no p r o c e s s o de f a b r i c a ç ã o é s e r v i r como a lim e n t a ç ã o p a r a s i s t e m a s de m a n ufa tura a u x i l i a d a por com putador (CfíM'). Além
d i s s o , é p r e v i s t a um a b o a i n t e r f a c e d e s a l d a g r á f i c a em d i s p o s i t i v o s g r á f i c o s d e s a í d a , c o m o t r a ç a d o r e s g r á f i c o s ou i m p r e s s o r a s m a t r i c i a i s .
C A P IT U L O 2
A ESTRUTURA DO PROGRAMA
2.1. I n t r o d u ç ã o
Um s i s t e m a p a r a p r o j e t o m e c â n i c o a u x i l i a d o p o r c o m p u t a d o r , do t i p o q u e s e p r e t e n d e c o n str u ir , d e v e p o s s u i r um e d i t o r g r á f i c o como módulo cen tral, e a p o s s i b i l i d a d e de l i g a ç ã o com o s v á r i o s m ó d u l o s d e c á l c u l o d is p o n í v e is . Pode-se d e f i n i r t r ês c l a s s e s de u s u á r i o s p ar a um s is t e m a d e s t e tipo : - o p e r a d o r e s do s is t e m a ( d e s e n h i s t a s ou p r o je tis ta s ). - p r o g r a m a d o r e s de a p lic a ç ã o . - p r o g r a m a d o r e s do sistem a. ü o p e r a d o r do s i s t e m a d e v e te r a c e s s o s o m e n t e á s i n f o r m a ç õ e s que permitem o pe ra r q u a l q u e r módulo de a p l i c a ç ã o ou o edito r g r á fic o . Não e x i g e nenhuma e x p e r i ê n c i a de program ação.
0 p r o g r a m a d o r d e a p l i c a ç õ e s d e v e ter a s i n f o r m a ç õ e s n e c e s s á r i a s p a r a a l i g a ç ã o de s e u a p l i c a t i v o ao edito r g r á fic o , p r i n c i p a l m e n t e q u a n t o à s r o t i n a s d e g e r ê n à i a e c o n t r o l e do e d i t o r . é e s s e n c i a l q u e o p r o g r a m a d e a p l i c a ç ã o p o s s a s e r c o n s t r u í d o e i n t e g r a d o ao e d i t o r s e m q u e o p r o g r a m a d o r d e a p l i c a ç õ e s t e n h a q u e s e p re o c u p a r com os d a d o s de b a i x o nível,
A E s tru tu r a do Program a - 13
d e t a l h e s do s i s t e m a g r á f i c o ou r o t i n a s d e m a n i p u l a ç ã o d e p e r i f é r i c o s . M o d i f i c a ç õ e s do s i s t e m a d e v e m s e r i n c l u s i v e e v i t a d a s p ar a não p erm itir a i n c o m p a t i b i l i d a d e e n t r e s i s t e m a s no futuro.
0 e d i t o r g r á f i c o d è v e então perm itir o a c e s s o a o s d a d o s g e r a d o s p e l o s m ódulos dé a p l i c a t i v o s , a m a n ip u la ç ã o d e s t e s d a d o s s o b a forma de de s e n h o , e a s a í d a d e s t e s d a d o s na forma de uma c ó p i a i m p r e s s a , ou um a r q u i v a m e n t o em d i s c o p a r a p o s t e r i o r u t i l i z a ç ã o . P a r a a r e a l i z a ç ã o e f i c i e n t e d e s t a s t a r e f a s f o r a m e s t u d a d a s d u a s e s t r u t u r a s p ara o s is te m a, q ue sã o a e s t r u t u r a do GK S CGraphical Kernel SystemV e uma e s t r u t u r a a l te r n a t i v a , m ais
l i v r e . T a m b é m q u a n t o ã e s p e c i f i c a ç ã o do formato do a r q u i v o de d a d o s ou a r q u i v o g r á f i c o f o r a m a n a l i s a d a s a l g u m a s a l t e r n a t i v a s e n v o l v e n d o p a d r õ e s e t é c n i c a s de armazenamento. 2 . 2 . 0 G .K .S . 0 GKS (.Graphical K e r n e l Sy stem 3 1115,16,17,24,25] é um p a c o t e g r á f i c o c u j a e s p e c i f i c a ç ã o f o i a p r o v a d a c o m o p a d r ã o i n t e r n a c i o n a l p e l a ISO (International Standard OrganizationJ em
1 9 0 4 , e p o r d i v e r s a s o u tr a s e n t i d a d e s n a c i o n a i s de p adr o n izaç ã o , c o m o a D IN e ANSI. A ABNT tem um a c o m i s s ã o t r a b a l h a n d o n a t r a d u ç ã o d a n o r m a p a r a o p o rtu guê s, de modo a tornar o GKS o
p a d r ã o g r á f i c o b r a s i l e i r o .
0 p a c o t e g r á f i c o GKS ê um n ú c l e o d e f u n ç õ e s g r á f i c a s
A E s tru tu ra do Program a - 14 g r á f i c o , c o m o a g e r a ç ã o , r e p r e s e n t a ç ã o e m a n ip u la ç ã o de f i g u r a s ( i m a g e n s ) g e o m é t r i c a s e não g e o m é t r ic a s ( c a r a c t e r e s de texto), o c o n t r o l e f u n c i o n a l d e d i s p o s i t i v o s d e e n t r a d a e s a l d a g r á f i c a c o n e c t a d o s a o s i s t e m a , m a n i p u l a ç ã o d o s r e c u r s o s de e n t r a d a do s i s t e m a , a e s t r u t u r a ç ã o d e f i g u r a s em p a r t e s m a n i p u l á v e i s i n d e p e n d e n t e m e n t e , e o a r m a z e n a m e n t o d a s i n f o r m a ç õ e s g r á f i c a s p a r a u s o p o s t e r io r . 0 p a c o t e ê c o n s i d e r a d o um n ú c l e o de um s is t e m a g r á f ic o s o b r e o q u a l s i s t e m a s g r á f i c o s o r i e n t a d o s p a r a d e t e r m i n a d a s a p l i c a ç õ e s s e r ia m c o n st r u í d a s , sem q ue o pro gram ador d e s t e s s i s t e m a s t e n h a a n e c e s s i d a d e de co n he c im e nto , a n íve l de h a r d w a r e o u i n s t r u ç õ e s d e m áquina, do s d i s p o s i t i v o s g r á fic o s . E s t e n ú c le o ê a c e s s a d o p o r in t e r m é d io de f u n ç õ e s e x p r e s s a s ná lin g u a g e m de p r o g r a m a ç ã o d o programa. 0 e s f o r ç o de e s p e c i f i c a ç ã o do GKS i n
c l u i n ã o sõ a e s p e c i f i c a ç ã o f u n c i o n a l do núcleo, mas também d a s e s t r u t u r a s e f u n ç õ e s do n ú c l e o e x p r e s s a s em d i v e r s a s l i n g u a g e n s d e p ro g r a m a ç ã o .
□ GKS p o s i c i o n a - s e e n t r e o p r o g r a m a de a p l i c a ç ã o e os
d i v e r s o s p e r i f é r i c o s g r á f ic o s , q ue são norm alm ente a c e s s a d o s v ia s i s t e m a o p e r a c i o n a l . P a r a t o r n a r e s t e s p ro g r a m a s i n d e p e n d e n t e s d a s c a r a t e r í s t i c a s e s p e c í f i c a s e d o s c ó d ig o s de c o n tr o le d o s p e r i f é r i c o s , a e s p e c i f i c a ç ã o GKS in t r o d u z iu uma s é r i e de c o n c e i t o s
e m o d e l o s . A t r a v é s d e s t e s m o d e l o s ficam d e f i n i d o s , p ara o p r o gram a de a p l ic a ç ã o , p e r i f é r i c o s v i r t u a i s que s e comportam de uma m a n e i r a u n i f o r m e . D e s t a m a n e i r a , o program a de a p l i c a ç ã o trata
A E stru tu ra do Program a - 15
um v í d e o da mesma m a n e ir a que um tr a ç a d o r grá fico . As e s p e c i f i c a ç õ e s c o m p le ta s d e s t e s p e r i f é r i c o s fic a m com o GKS.
□ s c o n c e i t o s e m o d e l o s i n t r o d u z i d o s p e l a e s p e c i f i c a ç ã o
GKS, d e m o d o a c r i a r um a m b ie n te de p ro gram aç ã o co m p letam en te
i n d e p e n d e n t e de d i s p o s i t i v o s são :
S a í d a g r á f i c a : a s f i g u r a s c r i a d a s n o s i s t e m a s ã o f o r m a d a s p o r e l e m e n t o s b á s i c o s c h a m a d o s p r i m i t i v a s g r á f i c a s de s a í d a . Cada f i g u r a p o s s u i a s i a s s o c i a d a uma s é r i e de a t r ib u t o s (c o m o c o r , tipo de lin h a, etc) que controlam o a s p e c t o v i s u a l de s u a e x i b i ç ã o . S i s t e m a s d e c o o r d e n a d a s : o GKS t r a b a l h a co m t r ê s s i s t e m a s , d e c o o r d e n a d a s . 0 p r o g r a m a de a p l i c a ç ã o e x p r e s s a a s e n t i d a d e s g e o m é t r ic a s em um s is t e m a de c o o r d e n a d a s que p od e s e r c a r t e s i a n o ou p o l a r . E ste s is t e m a r e p r e s e n t a a s c o o r d e n a d a s do m u n do r e a l ou c o o r d e n a d a s do u su á rio . □ GKS faz a t r a n s fo rm a ç ã o p a r a um s i s t e m a d e c o o r d e n a d a s n e u t r o , c h a m a d a s c o o r d e n a d a s n o r m a l i z a d a s , q u e s ã o d e f i n i d a s se m pre no in t e r v a l o C0,1). Enfim e s t ã o a s c o o r d e n a d a s do d i s p o s i t i v o , c a r a c t e r í s t i c a d e c a d a p e r i f é r i c o c o n e c t a d o a o s i s t e m a . Se f a z n e c e s s á r i a o u t r a t r a n s f o r m a ç ã o p a r a a r e p r e s e n t a ç ã o d a s e n t i d a d e s g e o m é t r ic a s no d i s p o s i t i v o s e l e c i o n a d o .
E s t a ç ã o d e t r a b a lh o : o padrã o GKS foi c o n c e b id o de forma
a s e r a p l i c á v e l a o s d i v e r s o s t i p o s d e a m b i e n t e s g r á f i c o s e x i s t e n t e s , o que é de fu nd am en ta l im portância, tendo em v i s t a a
A E s tru tu ra do Program a - 16 g r a n d e v a r i e d a d e d e d i s p o s i t i v o s d e e n t r a d a / s a í d a o f e r t a d o s a t u a l m e n t e . A s s im , o c o n c e i t o de e s t a c ã o de trabalho , tomado em s u a f o r m a m a i s s i m p l e s , ê t i d o c o m o u m a s u p e r f í c i e d e v i s u a l i z a ç ã o e d i s p o s i t i v o s l ó g i c o s d e e n t r a d a / s a í d a . E s t e c o n c e i t o a b s t r a t o d e e s t a ç ã o d e t r a b a l h o é d e s c r i t o f u n c i o n a l m e n t e a t r a v é s d e u m a t a b e l a d e d e s c r i ç ã o d e d i s p o s i t i v o s a s s o c i a d a . Por s e r um c o n c e i t o l ó g ic o e não f ís ic o , o u s u á r i o do s i s t e m a p o d e a c e s s a r q u a lq u e r d i s p o s i t i v o g r á f ic o d e m a n e i r a uniform e. S e g m e n t a ç ã o : a s f i g u r a s c r i a d a s p e l o s p r o g r a m a s d e a p l i c a c ã o podem se r e s t r u t u r a d a s em p a r t e s que, como uma u n i d a d e c h a m a d a , p o d e m s e r m a n i p u l a d a s in d e p e n d e n t e m e n te . Cada u n i d a d e tem s e u s p r ó p r i o s a t r ib u t o s . D e s t e modo, uma s a í d a g r á f i c a p od e s e r a r m a z e n a d a s o b a f o r m a d e s e g m e n t o s , tanto lo c alm e nte , na p r ó p r i a e s t a c ã o d e t r a b a l h o em q u e f o i g e r a d a (.UDSS - Workstation D e p e n d e n t Segm ent S t o r a g e 3, ou p o r m e i o d o a r m a z e n a d o r d e s e g m e n t o s i n d e p e n d e n t e da e s t a ç ã o de t r a b a l h o CícU SS — Workstation Independent Segment Storage), que p e r m it e a
t r a n s f e r ê n c i a de se gm e n to s e n tre a s e s t a ç õ e s de trabalho.
E n t r a d a s g r á f i c a s : p ara manter a c o m u nic aç ã o do o p e r a d o r da e s t a ç ã o d e t r a b a l h o com o program a a p l ic a t iv o , o GKS prevê,
a l é m d a e n t r a d a d e d a d o s g e o m é t r i c o s , c o m o um p a r d e c o o r d e n a d a s , o u t r o s d i s p o s i t i v o s l ó g i c o s de e n tr a d a que in c lu e m e n t r a d a s a l f a n u m é r i c a s , d e s e l e ç ã o C b o t õ e s ) e de v a l o r e s r e a i s C a l a v a n c a s e p oten ciõ m etro s). E s t e s t ip o s de e n t r a d a s podem se r
A E stru tu ra do Program a - 17 u t i l i z á v e i s d e t r ê s m o d o s : p o r a m o s t r a g e m , p e d i d o ou f i l a de eventos. M e t a r q u i v o C m etafiley : p a r a e v i t a r a p e r d a d a s i n f o r m a ç õ e s g e r a d a s a o fim d e um a s e s s ã o d e tr a b a lh o , o GKS p r e v ê a e x i s t ê n c i a d e um m e t a r q u i v o , um a r q u iv o s e q u e n c i a l de i m a g e n s , q u è p e r m i t e o a r m a z e n a m e n t o a l o n g o p r a z o d e s t a s in fo r m a ç õ e s e s e u p o s t e r io r uso, s e ja no mesmo program a ou a i n d a em o u t r o s i s t e m a . D s m e t a r q u i v o s s ã o t r a t a d o s p elo GKS como
c a t e g o r i a s e s p e c i a i s dé e s t a c õ e s , de trabalho.
0 GKS b o ú n i c o p a d r ã o a n í v e l d e r o t i n a s g r ã f i c a s a d o t a d o i n t e r n a c i o n a l m e n t e . E x i s t e m o u t r a s p r o p o s t a s , c o m o o
C O R E e o PH 1G S, n ã o o f i c i a l i z a d a s . 0 P H I G S CP ro gram m ers Hierarchical Interactive Graphics System) tem tido uma a c e i t a ç ã o
c r e s c e n t e , em v ir t u d e de s e r t r id im e n s io n a l, ao p a s s o q u e o GKS
é lim it ad o em d u a s d im e nsõ e s.
2.3. Uma e s t r u t u r a a l t e r n a t i v a
A u t i l i z a ç ã o de uma e s t r u t u r a s e g u i n d o um padrão, como o c a s o do GKS, t r ã s uma s é r i e de v an t a g e n s , como a p o r t a b i l i d a d e d o s i s t e m a c r i a d o e f a c i l i d a d e d e c o m u n i c a ç ã o e n t r e p r o g r a m a d o r e s q ue u tilizam a mesma estru tu ra . Entretanto, como o p r o p ó s i t o d o s i s t e m a é r o d a r em a m b i e n t e D O S , em m i c r o c o m p u t a d o r e s do t i p o PC-XT, uma e s t r u t u r a m ais l i v r e pode t r a z e r m a i s v a n ta g e n s , como o melhor ap r o ve ita m e n to de to do s os r e c u r s o s q u e a máquina pode dar.
fi E s t ru t u r a do Program a - 10
D e [16] tem-se a d e s c r i ç ã o de uma e s t r u t u r a m o du lar p a r a s i s t e m a s d e p r o j e t o a u x i l i a d o p o r c o m p u t a d o r . D e um a f o r m a g e r a l , e s t e s s i s t e m a s a p r e s e n t a m c i n c o m ódulos p r i n c i p a i s , como m o s t r a d o no d ia g r a m a da f ig u r a 2.1. F i g u r a 2.1 - Uma e s tr u t u r a modular. - D i á l o g o s : é o módulo r e s p o n s á v e l p e l a e n t r a d a d e d a d o s e e x i b i ç ã o d e r e s u l t a d o s , t r o c a d e comandos e m e n s a g e n s e n t r e o s i s t e m a e o o p e r a d o r .
H o d e la m e n t o g e o m é t r i c o : é o módulo que contêm a s f u n ç õ e s d e c r i a ç ã o e m a n i p u l a ç ã o d a s e n t i d a d e s g e o m é t r i c a s .
- M étodos a p l i c a t i v o s : são os p ro gra m as e s p e c í f i c o s d e a p l i c a ç ã o , quer s e ja m p ro g r a m a s d e c á l c u l o , a n á l i s e ou s i m u l a ç ã o f í s i c a d e c om portam entos.
- D a d o s : c o r r e s p o n d e a t o d a s as á r v o r e s , p o n t e i r o s e d e m a i s e s t r u t u r a s que devam s e r d e f i n i d a s , o r g a n i z a d a s e p r e e n c h i d a s , d e form a a p o s s i b i l i t a r o m odelam ento d o s o b j e t o s a se rem p r o j e t a d o s .
- S u p e r v i s ã o : c o r r e s p o n d e a o s p ro gra m as d e g e r e n c i a m e n t o e c o n t r o l e d o s d e m a is m ó du lo s e d a i n t e r a ç ã o com o u s u á r i o , d e
A E s t r u t u r a d o Program a - 19 form a a g a r a n t i r a i n t e g r i d a d e do s i s t e m a e a s u a boa u t i l i z a ç ã o . 2.3.1. A r m a z e n a m e n t o d e d a d o s E s t e t i p o d e a r q u i t e t u r a p a r a p r o g r a m a s d e CfíD n ã o i m p l i c a n a u t i l i z a ç ã o d e um a e s t r u t u r a d e d a d o s p r é - d e f in i d a . D e s t e modo, tem-se l i b e r d a d e p a r a e s c o l h e r a que m ais c o n v ie r . A p r i m e i r a e s t r u t u r a que s e pode p e n s a r para o arm azen am en to d a s i n f o r m a ç õ e s de um d e s e n h o ê uma l i s t a s e q u e n c i a l , onde os d a d o s s ã o a r m a z e n a d o s na ordem em que são in t r o d u z id o s. Um a r q u i v a no f o r m a t o A SC II d e c a r a c t e r e s , c o n t e n d o uma l i s t a s e q u e n c i a l , é a f o r m a m a i s s i m p l e s d e a r m a z e n a m e n t o , m a s q u e l e v a g r a n d e d e s v a n t a g e m em t e r m o s d e v e l o c i d a d e d e a c e s s o ãs i n f o r m a ç õ e s p ara o a r q u i v o form atado com a rm azenam ento binário.
Nu m a e s t r u t u r a d e d a d o s tipo l i s t a s e q u e n c i a l , os p o n to s q u e p o s s u e m d u a s ou m a i s l i n h a s a e l e s c o n e c t a d a s s ã o a r m a z e n a d o s m a i s d e um a v e z. D e s t e m o do , p o d e r i a - s e s a l v a r e s p a ç o s e f o s s e m a r m a z e n a d o s o s p o n t o s s e p a r a d a m e n t e de s u a s i n t e r c o n e x õ e s , em d o i s a r q u i v o s s e p a r a d o s . E s t e m é t o d o f o i a n a l i s a d o C 1 6 ] , c h e g a n d o - s e ãs s e g u i n t e s c o n c l u s õ e s :
- p ro d u z uma boa r e d u ç ã o no volume d e d a d o s .
- a c e s s o l e n t o p a r a um volume d e d a d o s m u it o g r a n d e .
- c o m p l i c a e d i f i c u l t a a g e r a ç ã o d o a r q u i v o g r ã f i c o a p a r t i r d e p ro gr a m as a p l i c a t i v o s .
- i n f l e x í v e l , p o r q u e d i f e r e n t e s t i p o s d e d a d o s são d i f í c e i s d e serem a c r e s c e n t a d o s .
A E s tru tu r a do Program a - 20 □ u t r o m é t o d o u t il iz a d o p ar a e c o n om izar volum e d e d a d o s é r e a liza r - o a r m a z e n a m e n t o d e " m a c r o s " ( s e q u ê n c i a r e p e t i d a d e d a d o s ) a p e n a s um a v e z. O s m a c r o s podem s e r a r m a z e n a d o s em um a r q u i v o de "d e s e n h o de m a c r o s " e r e f e r e n c i a d o por um c ó d ig o na e s t r u t u r a d e d a d o s , e s p e c i f i c a n d o n ã o a p e n a s o s m a c r o s u t i l i z a d o s , m a s s u a p o s i ç ã o , e s c a l a e â n g u l o d e r o t a ç ã o p a r a i n s e r ç ã o no d e s e n h o . E s t e m é t o d o t r a z , e n t r e t a n t o , a l g u m a s d e s v a n t a g e n s : - a e d i ç ã o do c o n t e ú d o d e um macro s e t o r n a d i f í c i l q ua n do f o r p o s i c i o n a d o em um d e s e n h o .
- o tempo d e e x i b i ç ã o ê um pouco aumentado, p o i s ê n e c e s s á r i a a a p l i c a ç ã o d a s t r a n s f o r m a ç õ e s ( r o t a ç ã o , e s c a l a m e n t o ) a n t e s d e s u a e x i b i ç ã o . - a l o c a l i z a ç ã o d e um p o n t o ou i d e n t i f i c a ç ã o d e um e l e m e n t o d e n t r o d o macro r eq u e r e m r o t i n a s c o m p l i c a d a s d e b u s c a , p o i s só há r e f e r ê n c i a s ao b l o c o e não a o s e l e m e n t o s que o compõe. 2 .3 .2 . A e s p e c i f i c a ç ã o IGES
0 IG E S (.1 nitial Graphics Exchange Specif ication') é uma
e s p e c i f i c a ç ã o i n t e r n a c i o n a l q u e d e f i n e f o r m a t o s p a d r ã o d e a r q u i v o s p ara t r a n s m is s ã o de in fo r m a ç õ e s do b a n c o de d a d o s de um s i s t e m a CfiD p ar a o b a n co de d a d o s de outro s is t e m a CfíD, v i s a n d o
A E s tru tu ra do Program a - 21 A e s p e c i f i c a ç ã o IG E S é u t i l i z a d a c o m o p a d r ã o p a r a t r a n s f e r ê n c i a d e i n f o r m a ç õ e s g r á f i c a s en tre s i s t e m a s d i f e r e n t e s , p a r a a g e r a ç ã o , p or um s i s t e m a CfíM, d e c ó d i g o s d e c o m a n d o n u m é r i c o p ar a a f a b r i c a ç ã o de uma p e ç a p ro je t ad a em um s i s t e m a CfíD, ou e n t ã o c o m o a r q u i v o p a r a a r m a z e n a m e n t o d e d a d o s d e s i s t e m a s CfíD. Um s i s t e m a q u e u t i l i z a e s t a e s p e c i f i c a ç ã o tem
m u i t a s f a c i l i d a d e s em termos de c o m u n ic a ç ã o com q u a l q u e r outro s i s t e m a d e CfíD ou s i s t e m a s CfíM, uma v e z q u e e s t e s s i s t e m a s
a p r e s e n ta m s e m p r e pré e p õs- p 'ro cessado res / G E S .
Um a r q u i v o no formato e s p e c i f i c a d o p e lo IGES ê uma l i s t a
d e e n t i d a d e s q u e v i s a m a d e f i n i ç ã o d e um p r o d u t o . E s t a s e n t i d a d e s e s t ã o d i v i d i d a s em três á r e a s :
- e n t i d a d e s g e o m é t r i c a s : são em número d e 20, in d o d e s d e e l e m e n t o s s i m p l e s como l i n h a e a r c o d e c í r c u l o , a t é e l e m e n t o s com p lexo s, d e uso m a is r e s t r i t o , como B - s p l i n e s r a c i o n a i s . - e n t i d a d e s de a n o t a ç ã o : c o r r e s p o n d e m ã i n f o r m a ç ã o u s a d a p e l o p r o j e t i s t a p a r a d e s c r e v e r como o p r o d u t o d e v e s e r f a b r i c a d o . E s t a s e n t i d a d e s sã o d i m e n s õ e s l i n e a r e s , r a d i a i s , a n g u l a r e s , l i n h a s d e c e n t r o , e t c . - e n t i d a d e s de e s t r u t u r a : s ã o u t i l i z a d a s p a r a c o m u n i t a r a e s t r u t u r a d e ba n co d e d a d o s d e um s i s t e m a CfíD/CfíM p a r a o u t r o . I s s o a s s e g u r a que i n f o r m a ç õ e s l ó g i c a s , como a a s s o c i a ç ã o d e e l e m e n t o s p a r a form ãr uma peça, não s e percam numa t r a n s f e r ê n c i a v i a IGES.
A E s tru tu ra do Program a -
22
A s i m p l e m e n t a ç õ e s a t u a i s d i s p o n í v e i s do IGES u t il iz a m um
a r q u i v o com f o r m a t o A SC II n o r m a l , com 8 0 c o l u n a s por r e g is t r o . Este a r q u i v o contêm c i n c o tip os de dado s, que são :
- i n t e i r o s - v a l o r e s de ponto flu t u a n te - c a d e i a s de c a r a c t e r e s - a p o n t a d o r e s - c o m a nd o s de l in g u ag e m A e s t r u t u r a d e d a d o s do IG E S ê d i v i d i d a em c i n c o s e ç õ e s p r i n c i p a i s .
A s e ç ã o de in í c io p rovê um pró lo go para. o arquivo.
A s e ç ã o g l o b a l c o n t ê m i n f o r m a ç õ e s que d e s c r e v e m o prê- p r o c e s s a d o r e i n f o r m a ç õ e s n e c e s s á r i a s p a r a o p p s - p r o c e s s a d o r m a n i p u l a r o a r q u i v o IGES, t a i s como p re c is ã o , v a l o r e s m áximos e
m í n i m o s do d e s e n h o , e s c a l a , u n i d a d e s , etc.
A s e ç ã o d e d i r e t ó r i o c o n t ê m a s e s p e c i f i c a ç õ e s de c a d a e n t i d a d e do d e s e n h o , . ou s e j a , s e u n ú m e r o , um a p o n t a d o r q u e a ponta p ar a o lo c a l onde e s tã o s e u s parâmetros, e s e u s a t r ib u t o s Ccor, t i p o d e l i n h a , e t c ).
A s e ç ã o de d a d o s de parâ m etro s contêm o s p arâ m etro s d a s e n t i d a d e s IGES. 0 número de parâ m etro s d e p e n d e de c a d a e n t id a d e ,
s e n d o q u e s ã o a r m a z e n a d o s , t o d o s o s p o n t o s e i n f o r m a ç õ e s e s p e c í f i c a s d a s e n t i d a d e s q ue constam da s e ç ã o de diretó rio .
A E s tru tu r a do Program a - 23
A s e ç ã o d e t e r m i n a ç ã o ê form ada por a p e n a s um r e g i s t r o que i n d i c a o fim do arquivo.
2 .4 . A e s c o l h a d a e s t ru t u ra
Na e s c o l h a da e s t r u t u r a a d o t a d a p a r a a c o n s t r u ç ã o do e d i t o r g r á f i c o , s e r á t o m a d o c o m o f a t o r m a i s i m p o r t a n t e a e s t r u t u r a d e a r m a z e n a m e n t o d e d a d o s , ou s e j a , o f o r m a t a do a r q u i v o g r á f i c o , é p o r m e i o d e s t e a r q u i v o q u e o e d i t o r s e c o m u n i c a r á co m o s p r o g r a m a s a p l i c a t i v o s de p ro jeto m ecâ nico, e a s s i m c o n s t i t u i r o s i s t e m a i n t e g r a d o de projeto de c o m p o n e n t e s m e c â n i c o s .
□ u t r o fator que d e v e s e r le v a d o em c o n s i d e r a ç ã o é o fato d e o e d i t o r e s t a r s e n d o d e s e n v o l v i d o èm a m b i e n t e a c a d ê m i c o .
N e s t e m e i o e s t ã o s e m p r e s u r g i n d o n o v a s id é i a s , n o vo s m étodos e a l g o r i t m o s p a r a t o r n a r r o t i n a s g r á f i c a s m a i s e f i c i e n t e s . D e s t e m o do , é i m p o r t a n t e c o n s t r u i r um p r o g r a m a abe rto e modular, de forma q u e n o v a s algo ritm o s p o s s a m s e r fa c ilm e n t e im p le m e n ta d o s e te s ta d o s , e mesmo que p e s s o a s d i f e r e n t e s possam dar m an uten ção e p r i n c i p a i l m e n t e c o n t i n u i d a d e ao trabalho.
T a m b é m p a r a f u t u r a s e p o s s í v e i s u t i l i z a ç õ e s d o e d i t o r , c o m o p o r e x e m p l a p r é e p õ s - p r o c e s s a d o r e s p a r a p r o g r a m a s d e a n á l i s e p o r E l e m e n t o s F i n i t o s , q u e n e c e s s it a m de a l t e r a ç õ e s na e s t r u t u r a d o p r o g r a m a e t a m b é m em s u a e s t r u t u r a de dado s, é i n t e r e s s a n t e q ue o programa perm ita e s t a s a l t e r a ç õ e s sem q ue um e s f o r ç o m u i t o g r a n d e de v a s e r d is p e n d id o . No c a s o de p r o g r a m a s
A E stru tu ra do Program a - 24
d e a n á l i s e , t e r - s e - ia que a l t e r a r a e s tru t u ra de d a d o s p a r a que f o s s e m a r m a z e n a d o s , a l é m d a g e o m e t r i a do objeto de e studo , de
]
s u a s v i n c u l a ç õ e s , e s f o r ç o s , c o n e c t i v i d a d e do s elem ento s, etc.
R e s u m i n d o o s r e q u i s i t o s n e c e s s á r i o s do editor, temos que t a n t o s u a e s t r u t u r a do p r o g r a m a q u a n t o a e s t r u t u r a d e d a d o s d e v e m s e r o m a i s f l e x í v e l p o s s í v e l , d e m o do a a t e n d e r a s m o d i f i c a ç õ e s q u e t o r n a r i a m s e u campo de a p l i c a ç õ e s m a is amplo. E s t a f l e x i b i l i d a d e q u a n t o a s a l t e r a ç õ e s d e v e e s t a r n e c e s s a r i a m e n t e a l i a d a a um a m o d u l a r i d a d e q u e p e r m i t a um a m a n u t e n ç ã o e n o v a s i m p l e m e n t a ç õ e s d e m a n e i r a s i m p l e s e e f i c i e n t e . P a r a t e n t a r s a t i s f a z e r o s r e q u i s i t o s d e c o n s t r u ç ã o do editor, fo i e s t u d a d o o GKS. Q GK5 ê um n ú c le o g r á fic o que contém
f u n ç õ e s p a r a a c r i a ç ã o e m a n i p u l a ç ã o de e n t i d a d e s g e o m é tr ic a s , uma e s t r u t u r a d e d a d o s p a r a a r m a z e n a m e n t o e p r o c e s s a m e n t o de i m a g e n s g e r a d a s , e p r o t o c o l o s d e c o m u n i c a ç ã o para os d i v e r s o s p e r i f é r i c o s g r á f i c o s u t i l i z a d o s c o m o e n t r a d a / s a í d a . D e s t e modo, a c r i a ç ã o do e d i t o r f i c a r i a l i m i t a d a a c o n fe c ç ã o de um mõdulo g e r e n c i a d o r , q u e f a r i a a s c h a m a d a s ãs r o t in a s do GKS, a p a r t ir d a i n t e r p r e t a ç ã o d e c o m a n d o s do u s u á r i o . P o r s e r t a m b é m um p a d r ã o g r á f i c o i n t e r n a c i o n a l , t o r n a - s e m a i s f á c i l p a r a q u e p r o g r a m a d o r e s d i f e r e n t e s p o s s a m r e a l i z a r a m a n u t e n ç ã o d o programa, ou mesmo a im plem entação de n o v a s funções.
A e s t r u t u r a d o G K S a p r e s e n t a , e n t r e t a n t o , v á r i o s i n c o n v e n i e n t e s . I n i c i a l m e n t e , a Q n ic a v e r s ã o p a d r o n iz a d a do GKS
A E s tru tu r a do Program a - 25
d i s p o n í v e l é u m a l i g a ç ã o p a r a a l i n g u a g e m d e p r o g r a m a ç ã o FORTRAN. 0 FORTRAN é uma lin g u a g e m que a p r e s e n t a ótimos r e c u r s o s p a r a a p r o g r a m a ç ã o c ie n t í f ic a , mas com p o u q u í s s im o s r e c u r s o s na p a r t e d e i n t e r f a c e com o u su á r io . Como o e d it o r é um p ro gram a e s s e n c i a l m e n t e i n t e r a t i v o , q u e d e p e n d e m u i t o d e u m a b o a c o n v e r s a ç ã o co m o u s u á r i o , é m a i s r e c o m e n d a d o o u s o d e l i n g u a g e n s como o P a s c a l ou C, que fo rne c e m m ais r e c u r s o s n e s t e se n tido .
A e s t r u t u r a d e s e g m e n t o s do GKS o t o r n a r í g i d o e i n f l e x í v e l p a r a c e r t o s t i p o s de m udanças. A e s tru t u ra do e d ito r f i c a r i a e n t ã o a m a r r a d a a e s t e t i p o d e e s t r u t u r a , q u e p e r m i t e m u i t o p o u c a l i b e r d a d e p a r a n o v a s a p l i c a ç õ e s . A e s t r u t u r a de d a d o s também é i n f l e x í v e l , b a s e a d a n o s c o n c e i t o s de m e ta rq u ivo e s e g m e n t a ç ã o . C om o o e d i t o r i r ã r o d a r em m á qu in a s tipo PC-XT e AT, a e l a b o r a ç ã o d e a l g o r i t m o s e s p e c í f i c o s p a r a e s t e h a r d w a r e c e r t a m e n t e f o r n e c e r á s o l u ç õ e s m a i s e f i c i e n t e s q u e a s r o t i n a s g r á f i c a s do GKS, q u e s ã o f o r m u l a d a s d e um a m a n e i r a b a s t a n t e g e r a l , p a r a a t e n d e r e m o r e q u i s i t o de i n d e p e n d ê n c i a do h ar d w a r e . D e v i d o ã p e r f o r m a n c e d o s m ic r o c o m p u ta d o re s não s e r muito boa, a e f i c i ê n c i a ou v e l o c i d a d e d a s r o t i n a s g r á f i c a s é e s s e n c i a l p ara um bom de s e m p e n h o do o pera do r s o b r e o s is te m a, p o i s se o s is t e m a fo r m u i t o l e n t o em s u a s r e s p o s t a s , o tr a b a lh o s e tornará muito c a n s a tiv o . Os c ó d i g o s e x e c u t á v e i s g e r a d o s sem o GKS também s e r ã o
m e n o r e s , o q u e p o u p a r á e s p a ç o em d i s c o e p r i n c i p a l m e n t e em memória, q ue ê bem lim itada n e s t e h ardw are.
A E s tru tu r a do Program a - 26
P o r t o d o s e s t e s m o t i v o s , o p t o u - s e p o r a b a n d o n a r o GKS
co m o f e r r a m e n t a para o d e s e n v o l v im e n t o do editor, e u t i l i z a r uma b i b l i o t e c a g r á f i c a em c ó d i g o f o n t e , juntam ente com a l in g u a g e m d e p r o g r a m a ç ã o P a s c a l . C om o o P a s c a l é um a l i n g u a g e m muito d i f u n d i d a em m i c r o c o m p u t a d o r e s , e n c o n t r a m - s e h o j e v á r i a s b i b l i o t e c a s d e f u n ç õ e s e r o t i n a s p ar a os m ais d i v e r s o s f in s . No c a s o e s p e c í f i c o d e r o t i n a s g r á f i c a s , tem-se o Graphix Toolbox,
p a c o t e d e r o t i n a s f o r n e c i d a s em c ó d i g o f o n t e p a r a s e r e m c o m p i l a d a s p e l o c o m p ilado r Turbo P a s c a l. Como são f o r n e c i d a s em c ó d i g o f o n t e , p o d e m s e r a l t e r a d a s e a d a p t a d a s p ara u t i l i z a ç õ e s m a i s e s p e c í f i c a s , ou m e s m o s u b s t i t u í d a s p o r a l g o r i t m o s m a i s e f i c i e n t e s . F ic a a c ar go do pro gram ador a d e f i n i ç ã o da e s t r u t u r a do programa, uma vez que o Graphix não p o s s u i nenhuma e s t r u t u r a
p r é - d e f i n i d a .
S e r á c o n s t r u í d a um a e s t r u t u r a modular, c o n form e p ro p o sto p o r C163, s e n d o o s m ó d u l o s p r i n c i p a i s : módulo de g e r e n c ia m e n to , q u e s u p e r v i s i o n a o flu xo de d a d o s e in fo r m a ç õ e s en tre o s d e m a is m ó d u l o s ; m ó d u l o d e i n t e r f a c e com o u s u á r i o , r e s p o n s á v e l p e l a e n t ra d a de d a d o s e comandos, troca de m e n s a g e n s e m a n ip u la ç ã o de m e n u s ; m ó d u l o d e m o d e l a m e n t o geom étrico, onde e s t ã o a s r o t i n a s d e c r i a ç ã o e m a n i p u l a ç ã o d a s e n t i d a d e s g e o m é tric as; e o módulo d e d a d o s , r e s p o n s á v e l p e l o a r m a z e n a m e n t o d o s d a d o s g r á f i c o s t a n t o n a m e m ó r i a q u a n t o em d i s c o . O s m ó d u l o s d e a p l i c a t i v o s m e c â n i c o s s e r ã o i n c o r p o r a d o s a o e d i t o r m a i s t a r d e , e s e c o m u n ic a r ã o com o mesmo a t r a v é s do a r q u iv o gráfico.