Você está na página 1de 82

PARA.

Carvalho Lima

senhs basicos pa I a

r '~_ _ ,

, rti..Iid;'ora

I Aleph j

Todo 0 direito de reproducio de qualquer texto ou programa deste livr~ , estritamente reservado ~ Ed i tor a ,At EPH '.

EXPEDIBNTB:

Coordena,cao Edito'ri,al:

Coordenacao Diddtica:

Pr,oducao Edl t or iel :

Edjtoracao:

e 19,09 - ED I TORA Al [PH

Arts,/! Capa:

Rev i sao.~ _

PierluiQi Pia22i

Betty Fromer PiS:Z2i

Ro'sa lCoganF'romer BenriQue de F'iQuer,edo LU2 Renato da Silvia Oltveir,a

Ana Lucia lmtico &. Figueredo ,Mathi as Aug ust Gruber

ALEPH

Publi.c,Bcoes e Assesso,ria, Pedag,6gica L tda;;

Av. nr ii Luis Miglia,no ,1110 ,

057~O Sao Pa,ulo - SP (011) 843-3202 Ca iX8: ',Data 1 20. 707' - CEP 0149:8

~;tWfl

·A.leph

C.d,o. d. Catal'oge'QAo nil PubUea 960 (C JP) Interno elena I {CAma.ra Br, •• U.lr. do Lliv:ro, SP, Bra .n)

_y

lima~ L~cio P. CarvQlho.

Desenhos b~sicos no MSX I l~cl0 P. Carvalho Lima. -- sic Paulo: Aleph, 1989. -- (S~rie did~tica)

1, Des~nhD por computador 2. MSX (Computadores)

I. TItulo. II. S~rie.

89-0445

CDD~001.6420 -;001 .64

'Ind'I,ce:B pate. catalogo sistematico:

1. Desenhc eletra~ico : CDmputadores ; Prugramas Processamento ~e dadO$ 001.6425

2. MSX : Computadores : Pr"ocessamento de dados 001.64

INTROW,,140 CAPITULO 1 Voce! B S6urat

5

,... ., .. , ""'!'

8'

C:APfTULP 2:

Os meter 1.050;,9 ceninnos dli SCRr;r;oN······ . 3

,- ,,- - _' _.,y..[; "!II! I!! ,. .. _ _

13

CAPITULO l

£1 nh{J~ Il·et as r " " _ •

16

G:APiTULO 4

Expel" tenc: as com ret as

. 2.1

CAP:lTUto 5 Cfrculas

. _ _ ~ ~ .2'0

CAPrrIlLO Ii Cor .. . . "

C'lPtTULU 7

Um f)OUC_O ae [1"1 gD'llomet r t tJ

.. . " . . . 32

tAPITUtO 8 fJesenhef

47

Soluco,es (I-e PI',o,blem85. Masc.ar,as die tel,iiI'S

. . _. 55 64

"J trv to t escb because wnetner or not I succeed in t,eaching others, I invB'riably succeea in teaching JlPfSB'lf. n If

"The true delight te in ttie finding out rather tne» in the knowing ." **

tsaac AslllOv

Aos meU;B netos , meu orculho e minha esper anca, com mui to car inho.,

*' "Bu tent 0 ens i ner sos outroe poraue ~ se j a OU na'o bem sucedido, au invariavelmente cOnSigo ensinar 8 mim mesmo."

:t* "0 verasaeiro prezer estd e'll1 extrsir 0 mAximo do conhecimento. ,.,

As possibl11d'aeJes. ora.f.icas do MSXsao ba,stante eofi.sticadas IllaS It p·ara uti lizti"'las convementenente, cer .... tOB re.quis'i to's, previos. sao lndispenB~vei.B.. Em primeiro luoar, e, n.'ecess~rlo ter .no,c;o,esadequad.IB da li.nguagem BASIC. ,Be voce j~ leu ttBASIC . ' .. , SEM DOlt" £1'0 ,meu p,reza .... 1"0 c1Dl.90 Nll~oIlMa.rtello" estarli capa,citado a c()rapr~en-' der e la~p 1 i car 0 ·co.ntelldo deste 1 i vro .

. E;m segundo 1 uoar . ., , p.reci .99' que v,oc~ Be habitue ,(1 conarderar a tela, de seu monitor como se f8sse um pa,pel 19uadri.culado hell miudirdlo (papel .11 iltetrad~o,por exem'" plo)r II lato porque 'qual,quer ponto de SEn.! desenno sera dlefi.nidopor doi~numeros:o pr.imeiro \ndica a coluna e o ,5.eiQundo a linha Qnde se Iecal iza 0 ponto em questlo .. A tela possue 256· cetunas, contadaa da esquerda para a di-

reita e 192 linhasr contad.as de cimapara balXo~ ,If im..-

portsnte l.embr,ar- que 0, D1.1meto da pri,mell"i., cdluna1, be'm como 0 da pri~elra Ilnha • 0 e n~a l~

Finalmenl.e t a uma cer ta altura dOB aco,ntec:imentoB, VQC@ vai prectsar a4'<luirir uaas not;oes Ilui to eleraent,ares~ de 't;rigonomatr18, pata,poder' calcul ar 0 taDl .. anho de ar-:

CO'S'r desenhar cer tae curvas e executar a 1 gUllS trueues

indll sp'ensfivejL5.. Na-o se assU'ste co. 0 nome pompo,ao

"TRlOONOMETRIA". Significa, ape,nas~, lI!edida de lngulos e 'emui to',maiB fac:i 1 do que pare'ce.

144 • .e clare, limJ.tiH;~!oes '1,0 tlpo de desenboQue vocs poclera exeeutar ~ So.mbr'ea.~o.B 'perfeitos,sensa<;io de releVOl nio se obt@11 com facl1idad,e, elJbo:ra cer tes 8rtista.s 'da mii'Quina de escrever co,nsi1t!hlm verdadeiroB mi lagres com os poritos. fa caracteres a sua dis,posi~ao·. CQID mui ta paci@;ncia e imsginacio" vo~t pod~eraobter resultados comp,ara,vei 3. Oi,mpo,rtante, porell, ~ 'que hac uaa .lnfinld·a~ de de (Jutras dEld'~nb.o,s pOBsiveis, c:uja exeCUC;,aQ ser~ 1 i .... mitad'i.,ap.enas, pela sua criatividade e c.apaciaade de usar os recut-SOB veldadeir amente mer ivel 3 do. seu fiSK.

EKaline ·0,5 tr@s ·@x:eap}.os seguintes, e:X'fH:ut,adoB Icom as t~4cnica9 mais b"elcas .. 0 primeir'Q poderia i Iuatrar a capa dest e 1 i vro ~ 0 se9undo , uaa das i 1 ustrat;oe',s de um

5

texto sobre navros a vela e 0 tercerro "... Bem " ... .Po.-m der ra ser una - casa no seu bairro, Ou, COlt algumas modi'" fica';loes s mi stras r a, ceaa do vi Lao de uma histor ia ,em qu~drinho,s, .. ou tlinda . ~., " Voe@. f! quem .decide.

6

BAR- en

",. ,.. 1""1'

,I, .~; .1.,' ,I, ,

1 11 I, _l ,I,

.11:.[11" l'

,.I .I

d, t _I J' JI j ,

_II I'" -.'

,ODClD'DD,DD,CJDCJDDOCJDCJDDCJC1[

g'- gr'

. . I .'

. , :

I ,

jJ-'- D[1'" 1·lo".,I".F.',d', ,. '

, .£ [.1'1, :r I I_,'

, ", I~£ 11' 'I

- " ", •• '1" '

= -' L_f ~ ~:

1- I I' I ~I I

Em cada capitulo voe@ vai encontrar um ou m,ais pro .... btemas para serem reso l vidos, apl rcando os conhecrnentoa adquiridos,. No fini do 1 i vro estario exemplos de como re-solv8-1os. It muit:o provcIvel que ,i solut;a,o encontrada par voc! nlo coincida exatamente com 0 eKemp.l.o dado .. 6til1o ! Voe@ descobriu que het ya,rias lIan-eiras de fazer a meslla eorea .. Compare as' ,d;uas solut;,oe's curdadoeanente e 'Qecida qual e ,i lIais simples ,D,U a qu.e maia Ibe agrada: OU

,a que IDe parece maLs logica ..

Entio ? Vamos experimentar ? Ligue 0 seu computado'r e maos a obca !

7

1

Be voc@ amda nao sabe t seurat foi um pintorf'ran'" c@s que, em. fins do seculo passado criou a. tecnrca do "pont i Ihi sao" ~ Consist ia em ap'l lear cores pur as em mi - nuscula3 pinceladas, ou "pontos':-, deixando a cargo dos olhos do observador a' sua fusao num quadro de grande beleza .

. Em SCQEEN 2, que ~ a tela de alta resolutlo do seu MSX, disP,omos, coao foi ai to na tntrcducao, de 256 co lunas e 192: linhas, que def inen nada maia, nada menos, do que, 4.9~ 152 pontce (au "pixels" se qui serisos empregar 0 terao teem co) ,. csda um deles pode ser colocado na tela pelo conando PSET aecuido de doi s mlnercs 1 col ocados entre par~nteses e separados par uma virgula, que representaa, respectivamente, ·a GO luna. ea. Lmha onde se encontra. o ponto , EKamine '0 pro.g:raminha secumte:

10 'R.ot] na L 1: PON10S

20 COLOR IrlS~l5~SCREEN ~

3:0 PSET (100~a0) :PS[H 11"0780) :PSETfi20.~80) 40 P5ET(11'rge)~PSET(i10.100):PSET(li0rl1i' i0,tG'OTO 100

Antes de executa-Jo procure conpreende-Jo , Em 30 temos tr~s pontos, dispostos horizontalmente, ei tree col unae di ferentes 71 :aa@ na I'll.esma. li nha (8·01. Em 40 teaos trea ponto:!), di,spos,tos vert i cal.aente t na mesma: coluna (110) f m.as em tr~s 1 mhas diI'erentetL, 0 coaando COLOR,

em 2'0, sera. dt scut i.do mai B tarde, no cap! tulo referente a cor; acora basta di zer que serve para t ornar a tela branca e os pontos - necros.; Com i sso e Ies ficdID mai s vi srvera. se voce duvrda (0 que emu] to aaudave l}, expe-

r 1 men t e Q me·s,mo proor ana :om i. t i nd 0 esse conando. .

Agora execute 0 programa e veja 0. que acontece. Os pan t as sao bem ml ud i nhos , nao l' Fa ca exper i @nci as eor conta pr6pria at~ entender hem 0 espirito da eoi~a.

6

Oepols, con ima·'ginAC;io e pa:ci~ncla (HAJA PACIi,NCIA ! )1, VQ,C'@, pode'1'"a ut i.l i sar os 49" 152 pontos da te La e produz ir um bela qUaaro, ,oigno de um ',Seurat~ nSeurat~ que voe@

conseeue o? '

Brln,cade 1 ra.sa parter voce certanente concordar a comig,'o que pentos i~1()Ia'Qos Rao const r tuen ,at aelhor mil""" nei ra ,de fa'z,er desenhos num, coacutadcr ~ Im.agine s6 0 tamanho do program,a I Apesar disso, si,Q mui to uters p,ara preencher cer t as areas com pelo menos um ar renedc die soabreado, Per outre lade" podemos tr acar 1 inhas cont inuas au mterronmdas de forma bast.ante econo,mjca. 'Para. iS90 basta atr rbui r um. valor veri avel a UIn,a das duas eoordenadasf hotizontal (colunas)' au verfical (linhas),

conferee a neceaardade . Expertmente: '

V:lu? Em 30 temoB u;ma serie de-pontos colocados nas colunas5C1 a 150 ,ao Ionco do' 1 mba 50;. em 4.0 teaos uaa s~rie de pontoa CDlocaaos nas linhas 60 a 150~ ao 100go da col una 50.. Os pontos, flcaram tao juntinho:s que 0 resul tade fal. 0 t.racado de duas retas t uma hor izental e' outra ver t i cal ,

Se voce quiser tra~ar'uma 1inba pontilhada, ~ necessarioPttHJrallar um esp·a~o entre os pontos ~ Isto, se Ia.'z ad lcionando ao coeando FOR .. ~ TO ... ~ 0 com and 0 STEP, . seaui.do do numeFo de espscos desei ado ~ EKP'erime,nte acrescentar ,a retina. anterior:

50 FOR C=1,6t TO 250 STEP 5: PSETn::T5-t0 ) :HEXT C 60 fO~ L:61 TO 151 STEP il~'SET'160~LI~NEXT L

Percebeu a diferenca quando Be usa STEP 1 E a diferen~a ne ntJ:IQerlO de espacoe ? Qeja Que" agora." suas POSBlbi li dadeade desenho aumentaram mui to. Ale.m de p,ontoe voce pode tr acsr retas cheiasQu mterronpl daa. Cons,equ@ncia- logica: e,m@nd,ando l mhas e pos.siv:eJ tra,;ar fi-

9

guras geom~tricast desde que n~o possuam curvas au '1inhas inclinadas~ NAo h~ uma forma de traca-las com esta te.cnica. Mas nao desanime. Tudo, hem ~.~ 7 qua:se tUdo e posaive 1 nUlD c,omputador. Procur ando sempre se acha um je i to ~ \1eja., por exenpl o , 0 proorana eecumte:

~ ,1, fo t' '. i 3 ~

Iv fl.O :iflCli " .'- ~

')on. S" C' 'R- EC' EU '1

L£,;1'Jl' ",_-"I~ to

3LA C·~~t.I.

',", -,J~

M .. !j'S!-T {!" I;:A, "'V f r. \fw.T~tr.1

50 C=C+[

60 IF c< 1~0 THiEN' 4,0 70, L=S@

80 PSE1( 50, U 9'0 L=t +£

100 IF L(150 THEN 80

'1 II. ~D,'\ 'f r, '1 liCi '-!lJt! 'iJoJ i \.l C;'U'-'

Entendeu a que foi feito ? Vejamos: em 30 foi estabe Iecrdo um valor para a co luna ,. Em 4.0 pro'gramam05 um ponto localizado na coluna 50 (C=50) e na linh~' 50. Se ficas·se'mos t:H)r ai t 0 resul tado aer i a apenes um ponto , Mas, em 5'0, - estabe leceaos que 0- valor de C "aulDentaria, de 1. (usande 2 ou Jlai 5 r a ret s deixar i arie .ser cant mua) e ell 60 estabel'ecemos que J sendc C Dlenor do 150 t a matrut;a.o em 40 ser i a executada novamente , Assim:, um novo ponto fai acrescentado e depois outro e mais outrot at~ atingir 0 valor de 150. be 70 a lOO~ fizemos a mesma coisa, 66 que na vertical. VIT6RIA ! Temos uma nova t~cnica para tracar retas a partir de pontcs. 86 que continuam sendo horizontais ou verticais. Nada de retas incli nadaa. 'Calma !Tudo a seu tempo. Expe:rt,m~nte., accra, eont i nuar 0 prccr ama da secuin te mane"! r a;

He C::.50:L~50 120 PSEHG,U 13@ C=C+Ht:;;;L +1

1.40 IF C<i50 THfN 120

E finalmente temOB uma forma de tr acar re tas mcl rnadas. Para mudar a inclinac~o ~ 36 mudar 0 valor do incremento .. Veja que, neste caso , a. reta obt rda sera sempre interrolPPida, poi S 0 increnentc dB. co l una 011 1 mha e maior do que 1. Mas, a verdade ~ que vocA poder~, agora,

10

tr acar ret as em todas as di recfies , bastando para rsso alterar os incre~entos ou 0 sinal (+ au -) dos me5mo~.

Outra m~neira de tra~ar retas inclinadas ? ~ claro que existe. Na realidade h' maneiras bem mais f~ceis. Acontece qua agora estamoB estudando t~cnicas que utiliz:am PON'TOS apenae ,. t raul to importante expl or ar 0 maier ndmero possivel de variac5es de cada t'cnica. Isto ·ser& nui to uti 1 nai.a tarde ~

Novamente fa9a experiAncias. Muitas ~xperi§nciaBr audando coordenadas, var i avers so ruterval os e mcr eaentos; procure combinar pontos, linhas continuas e pontilhadas em tcdas as di.recdes. Em. outras paJavras: PES~ QUISE ! PerQunte-se "0 que aconteceria s~ ... ? U e experimente. Voc@ vai ter uma percle· de surpresas~ 56 issi,1I p-oae,ra adqui ri r ,13! desenvo l tur a necessar i.a para. a:proveitar ao m~ximo os recursos ar~ficoB do Beu MSX.

Para estimular (au talvez fundir) a sua cuca, ten-

te ·

,;.. .

1. Fazer um quadriculado de porrtoe J daque les que ·a cente usava no jOQQ de preencher quadr adoa,

2. Tra,ar uma s~rie de linhas paralelae horizQntais e vert i cars ~

.3. Fazer um quadriculado de linhas conttnuas.

4 ~ Tr acar 1 i nhas con t muae e ponti Ihadas, em var i as di.re~loe5, a partir de um ponto dado (128.96 por exemp}.o., ~ 0 centro da t@la).

o resultado ~ 0 que est~ na Fig~ 1.1. t claro que condenser 0.6 cuatro prchl eaas nuaa um ca tela· mas voce n~o deve ficar amarrado a isso. fa~a cada um individualmente, em v~rios tamanhOB e post;5es. 0 exemplo dado no fim do livro apenas rlemonstra 0 mecanisme do processo e nao deve ser utilizado como uma receita de bolo ..

Agora, ponha pregulca de lado· e , usando pontos, P.rocure fazer uns desenho5 maiselabora.oos. Dara urn pou-

co de trebalhc maJ51 a desenvo l tura que voce vai adqui r i r

ser' compensadora~

11

12

/J

... ~;o;~........... /"

··········· .. ·······:~'::;;t:···.··.····· ".".

.... \', ... , ....

. ' \

. .

.

. . .

. .

11

as MIS'TERI10'SOS CAMINHOS D __ .. SC'REEN 3

z

N~o sei se eatas coisas ainda existem. Nos meUB tempos de esco La pri.maria, f az iaaos um tr abalho chamado "t ece l.aoen' rii Recebiamos uma folha de pape l col or ido, com uma ser ie de cortes par al e Ios, e una COol er;ao de t i.ras de cores diferentes e da mesma largura que 05 espatos entre os cortes do papel. 0 trabalho ~ansistia em tazer desenhos, passando as t i ras , com. i nt erval os var i ados, pelos cortes do pap'e 1. Em BUlla ~ faz i aaos rea Im:ente um tr abalbo de tecelagem em que 0,5 'desenhos a,pareciam for:mados por quadradinhos co!oridos, dispostos segundo a imagina~io de cads um. E, como era,m born toe alguns daqueles desenhos !

SCREEN 3 , a tela de baixa resolucio do MSX. Ao inv!es de, pontos, como na ,SeRE'EN '2, teaos quadr admhos como na t ece i a gem .. E C'1 ar 0 que 0 s de senhos f i cam. ben menos detalhados, POlS a. laao oe cada. q,uadradinho corresponde a quatro upixelsn• Isto significa que dispo~os, apenas? de 64 colunas e 48 linhas~ Todauia, para desenhar na SCREEN 3" usance as: mesnas coordenadas da SCREEN 2 ~ i, sto

e" 256 co lunas e 192 l inhas .. Assi,m sendo , se nao toaar-

aos um·as tan t as precs U'c; 5s·s , os resul t ados iRodem. eer ex ~ tranhissimos .. -Nada. nielhor que uma exper i encra par'a ilu.str ar este .fato. Experi.m·'ente executar, na SCl{,E.EN 3 f a primei.r,a roti na do Capitulo 1 (Rot" 1" 1), aque l a que d'e'""' senhava urn T t be.m reeul ar , a part i r de pont.oa ..

Veja so 0 que aconteceu ! os espacos entr-e 05 quadradinhos n~o slo mais iguais e 0 noss~ T ficou trancho. apeaar da 'recular idade das coordensdas .. Nissa, reside a .d~f1culdade principal no emprego da tela ~e baixa resolu~~o. Para explicar 0 que aoontece~ temos que comecar pelo· coaeco ,

J'a, vi nos que cada 1 ado de UII quae r ad i nho d a SCR.EEN 3 equivate a ,quatro pontes da SCRE:EN 2. A"seim sendo, a. ptt'metr.a col una. ocupa AS QUATRO P'RIJMEIRAS CO LU.NAS DA

13

SCREEN 2. Tanto faz atribuir 0 valor 0, It 2 ou 3,' pois oquadradinho estara sempre no que serta a col una 0 da SCREEN 3" 0 mesmo racrocfmo aplic.a~,se a nuaer acao das 1 mhas , Se digi tarnos PSET (128,96) t p()r exeapl o , as. colunas ocupadas ser~o 128, 129, 130 e 131 e as linhas 5er~o 96r 97, 98 e 99. Qualquer combinac~o desta colunas eli nhas dar a exa t amen t,e 0 mesmo resu 1 t a.d 0: um quad r ad i ~ nho Iocal t z ado no centro da tela. Par,a. ca.daquadradiriho dB SCREEN 3, pbrtanto, temos nada mais nada menos do que 16 conandos diferenteEh dando 0 m'esmo' resul tado. Agora, exercendo seu saudave 1 e inal i enave 1 dire i to de' dtivrda t EXPEBIMENTE, EXPERIMENTE E EXP'ERIMENTE ate que a coi sa fique bem clara na sua cabeca , A,ssiml' por exemplo:

'10 'Rot ina 2.1: COMPAR AC~O ENTRE SCREEN 2 E SCREEN 3

20 SCREEN 2 '

3~ PSET ( i 28.9'6) : ~SET ( 128 .99) ~ PSET ( 1 ;31 ~ 96) : PSET ( 131.,99)

100 GOrO 100 -

Veja que, no. SCREEN 2, temos quatro pontos na t@la, corr espondentes ·CiOS val.ores extr eaos das col unas eli .... nhas. Nao h,a" neceasrdade de dig i tar'mo,s 05 val or-es i ntermediarios,. Agora. nude ,a rot ina pa.ra SCREEN 3 e ve ja 0 qUe acontece. Convenceu-se?

Observe que ficou f4cil deduzir a reqra para localizar, com precisao, os quadradinhos d.a SCREEN 3: suas coordenadas deven ser mttl t ipl os exatos de 4.,. Assim voce n~o se atrapalha. Sempre ? Bem ... . Voc@ j4 deve ter ouvi do d i. z erque t oda reer a tem sua excecao , Ve j a 0 que acontece ell alguns casos.Querendo uma. linha continua VOG@ j a. saoe que d eve usar ,0 coaand 0 FOR .,.. TO . ~ ~ . Querendo uma linha pontilhada acrescente 0 comando STEP. Aqui e que coaecsa as conpl i cacbes. STEP 1 f 2' 7 3 ou 4, de nada adiauta·m. A lmha continuara sendo cont mua. Voc@: certamente compreende porque. STEP B pl'"oduzLra uma l1nha interrompida, al ternando quadr adi nhos com esp'a<;os do mes:mo taaanho , Com S~EP 12, 16, 20, sempre terence es,pacos cada vez aaiores ma,s 5:e'mpre rcuais una soa outros, uma vez que os intervalos s~o mdltiplos exatos de quatro. E se nao forem, 0 que acontecer ia ? Trate de descobr i r por ai mesmo e veja a qua.ntidade de padro,es intereseent es Clue. voce pode obter ,princi.p,aJmente se

14

comblnar linhas horizontais e verticais. Procure fazer UJD,a eSP~cie de tabel,a pa,r,a naQ pr ecrsar descobr rr tude cada ves que for desenhar . Qualquer COl sa cono ,:

11 'Rot, ina 2,2 21 SCREEN 3

31 FO'R-C=12 TO 120 STEP ~HPSET{C,2')::NEXT C, 4,0 FOR C=f2 to 120 STEP 6:PSEJ(C,,30) :NExr C 5:. F,OR 1::'= 12 TO 120 'STEP' 7': PSEl (C, 4.) : NEXT C 61 ' ••• Cant inlJe au_,£'rst.ando osintervalos • iii 1,01 G010 i Ie

Eseas caract.er Iatrcas pecul raree contr rbuee .ui to .p,ar,a que SCREEN' 3 se ja pouee e,gpl.orada.. No fundo. de! t rabalho e' as pessoaa t@m uma cer ta preguic;a de dar t ratoe: a bola. T'enbo a cer teaa de Que esse naa e 0 seu cast) e que. pe lo contr ari o , voci est~ anaicso p,ara descobr rr novas e fa,scinantes maneiras de uaar a tela, de barxa resolu~ao,,,

No, mai 9,. tudo funci ona COiU.IO em SCREEN 2' e voce po-' de faz'er quadriculados com l mhae cheree oQU pontilhadas, t r a car pa.r ale 1 as" etc ~, d a aesna forma.

Finalmente, usa car acter rst rca propria:, lDui to interessante: cada quadradinho poderj ser colorido INDIVIffiTALM:ENT:E:, 0 que nao, acontece na SCRE:E'N 2. Como color i r ser a discutiolo .ma.is tarde , no Cap.ttulo, referente 11 cor.

Uma outra corea que voc'~ deve exper iaentar : fac;.a um. desenho em ,sCREEN 2 e , easeaui da, execute-o em, 3 . As, veses os resul tados sao' aurpreendentes , pr i nctpal.aerrte ap6s peqU'enas adapta~i5e,B.. Aqora". maoa a obr a , Vamos fazer-tecelagem!

Depoll B que se exerci tar bast ante, veja se consecue desenhar um ta.bule i ro de ,xadrez e uaa espec:l'e de erade (F fg.. '2" 1 ')I •

pin 2 1

'.:i' • •

15

LINHAS RE:TAS,

No ca:pitulo anterior vimos que l:!pos81vel tr acar Lmhas retas em qualquer di.re~ao', a partir de pontoe, de f~6rma raz,oavelm,ente e·con6mi.ca .. O MSX, ecntudo , di.8Poe de um conando pr6priopar.aeste f'im -: , 0 que torna' as COifJ.a:S mui to m.ais f'ceis. Basta', para . i,s.so, definil" 0 ponto inlcia.l eo final da linha desejada (j(ls,abemo5 como se olefine um ponto r doi s ndme.rOB entre par@nteses,. Bepara~ dos per uma. virgulaJ ~ Sepa;re OBi do-is POnt'c.B por um tr aco e, ao inves de PSET, U8e~o comalldo LtNE .. Assill.:

10 fRoHna 3~1~REIAS PARA TOD05 OS LAD0S 20 SCREEN 2

30 lINt: (50~· 50)- (j S·0. 50) 40 LINE(SI,50)-(!50,J2el

'50 LINE(50,160)-CI30.60) 610 tIKE (200r. 40)'~ (200, t60' 100 60TO 1ii0 '

Ex,perlilentou 1- QeJa que,. a9Qra, temos li,nhas elD todas as dlrec:fies, usande, para cada uma, Ci.penas um co·~ aando 1.0 1. nvt!:s de t,r@~s.. Bem mais econ6mi <:;:0 nia-?

Com este co.l1ando', voc@ podera fazer ,. COil mais ra,Pi:dez , as mesmas coisas que fazia com os pontos: tracar paralelas: e fazer qua.dricula..dos~ Ii instrutivQ examinar a tt!cnica de tracar paralelas" p()i.s ela segue umQi, reera eeral com numero,sas aplica<;i5es. Vejamo,s;

10 1Rot ina 3 .. 2 :,R'ETA8. PARAlELAS Oiet mto 1)

20'· 5,CREEN 2 .

30 fpAR~LEL.AS ~JERHCAIS

40 FOR C=50 TO 150 STEP' 10:l1NE\C •. 50)·~(.Cr'Hr0HlJ[Xr C 5j7PARALEL,AS HOR IZOtU AlB

60· FOR L;50 TO i50 STEP 10:LIl~EJ~0.U-B:e0rLH~EXI L i0'0 GOTO te,

16

iii

Ana 1 i se be. 0 que f 01 fe 1 t.o , 'Em 40 estabe 1 ecell,os 'l0Ei valor vaci4vel para-as cclunas, com u.espa(;'o de 10 'pon-' toe, entre ela,s e usamos este valor tanto para 0 ponto i.nicial. coao para 0 final .. Alteram,os, apenas r 0 valor da,e 1 mhas. Resul tado: retas paralela.s ver t rcara. 0 mesmo foi fe,ito na ecnstrucac das paralelas hori sontare .. No cruzamento del as:' um quadri cul aida ~

Percebeu a importlncia desta tecnrca ? 'Blanos per .... mite ccnstrurr fam11i,as de retas ,que, de acordo colt a nossa ventade poderao ser pa,ralelas ou n,io. Fart;amos VI leque:

i& 'Dt~na 3~3:lEQUE 20 SCREEN 2

30 FOR, Ci=50 10 160 STEP 15:lIHE (CL,2i)"'( 100112&)

401 NEXT :1:1

iet BOlO 10i

E,nt~ndleu 0 esptrito da co,isa? Agora. teaos UI1:a aerie d,e ponto,s ,iniciais na 1 inha 20 e um 96 ponto fi.nal na Lmha 120 .. R'e'sultado: tim leque. Tente, agora,. ao mvE§s de um unico ponto final, fazer lOla sErte de ponto9, meno.r do que a sf!rie· inicial e com a col una central CQ,mctdmdc. Ass'im:,

Beaul t ado mtereesante nao ? Veja como 4< produt iva f.az,er experi@ncias ! Fa'c;a uma p,o,r~ao delas com par alelas, quadriculados, leques de todos O,S tipos e taaanhos. Mtsture essas cor sas tcdas e observe os pad.r oes 1 i ndos que se formam no entrecruzaeentc das 1 mhas 'I E veja que desenhos aparenteme'nte, complicad;i;s;simos podem ser exeeutados com dois. au tr@s coaandoe apenas ..

.17

AqUl val UlDa, rec,omenda~lo" .Ao tazerexperH!nci.ZlB, voe@: ·certamente descobr.i.rti srdtihas que merecem. ser Quardadas ~ £ indi6pen~a\1el que voc8 aa anote pais (l:stoeu diQo POl" e.xpertiileias pr,6pria). frequentemente. quando vociS Q:ul zer repeti -la,s nao;vai consecuir, &. nle ser ,que tenha a. memoria die; ul\a manida. deelet'antes.

Nao: sei Be vocfr'ellill'OU, ma.a €I rot ina ',dras par.alelil9 que apreaen tanos '&6 tei class if iea.da como Me'toa 0 1 ~ Aqu i vai 0 M~to·da 2:

10 fRat ina 3~5~RETAS PARALElA6 (M~t odo 2) .20 SCREEN 2

301 lPARALElAS' VERTiCAlS

40 FOR [;",,50 TO :150 STEP 10:lINE(C.50)~STEP(:0~:~0HHEXl C 50 fiPARALEtAS HOR IZONTAIS

60 FOR L:;S0 TO 150 STEP i0=lINE (50"U~STEP (50~0) :NEXT L 10,3 GOI0 100

A d i f.@ren~.a esta em que ~ neste, metoda, oprimei re pa~r de coordenadaa nOB fO[flece. os pontos i.ni ctai.s das ratas e 0 seQund"o p,ar nee Ga 0 TAMANHO das ·mesm.as ao lonlQo das co 1 unas au 1 iaham ccrreseonden tea. Aabosos m~todo5 daoexatamente 0 mesmo resul taO,o. De,pe'nde exc lu,si vamente de sua vontade usaf' um iOU- outre 1I;~todo ~

Asextrell i dades das re tasfe i tas eoa pontoa podr am ser eaendadas para desenhar fiQUf,as geoDu.~tricas .. S! c:la~ r 0' que 0 JDe.SlUO pod,a ser fe i to agar'a ~ com Ita 1. or lac i li dade ainda. pois nao hi! necesardade de repetir as eecrdensdas de cada ponto, final {que seri a ·0 hlicial CIa. pr,6xi,m,a ret.a) todas as vszes ~ :Pa.ra ver como se faz exp.erime·nte;

Que tal ? Melhorou bastante naio ?VocA aeora tem um. jei to de t.racar qualquer figura geometricd, -par m.ats

·18

complicada ~ue seja .. Ainda t! umpouco trabalhoso mas vo"c@ j~ se imaginotl fazendo iS90 com pontos l'

Para. facilitar ainda mais as coisas, 0 MSX tem co ... mandos especlais para tr-a'c;ar quadrados e retlngulos ~ Para i ssc, ba.sta. deterninar os pontes extreaos de um"a. di(i·gonal, precea,@-los com LINE e adicionar B ap,6s duas

virgulas. Assim: -

l0 'Roi j. na 3.7: Q~ABRADCS E RETANGULOS

200 SCREEH 2

3t LINE(51.5')-(t00r100'f~B 40 LIWE(150750)-(20',iB0)rrB 1:0i sero 10~

Experime:ntou 1 Sistem,a a,centsmieo nao ? Em 30 tenos UlD quadra,do e em 40 um r@tAnguio .. executados da aanerra m,ai,s, simple,s posslv'el" Mast - por que DUAS v:frgula.s 1 Quando coaecarnoa a color-it' nOS50S desenhoa, voc@ vat ver que 0 numero, da cor dese iada devers ser colocado ap6s-os par@<nteses e separado deles par uma. viroula~ Em segulda, nova virgula e 0 coDtando B para quadrado ou retingulo. No nOB.SO caso atual , a cor nao foi especificada mas, como 0 cOJDPutador e burro; ele es:pera DUAS v'irgula.!. Be vocs puser uma !ItS, ele vat pensar ,que B e 0 numero ,aa cor, Como B. conaiderada C'OlD'O variavel" tea valor 0 '(cor trensearente l J, a 1 inha nao sera tr acada na tela. 0 cOIllPutador nlo pensa, quem pensa e 'voc,i!

'Por falar em pensar , pense \ill p,oue~ agor,a~ na varredade de elementos, que voce jui. pcssue ,par·a construi r desenhoe qu'er abatr'atos quer figurativos.. Pare de ler por uns tempos e experimente, fazer ,alguDl,a, corea eom os conheci aentos Que ad'quiriu. Que t ipo de iluutra(;ao 'Vo-c@ far i a para a capa deste ]" ivro ? sera que voce consecue desenhar uaa nave espacial so '-;CO.JD 1 inhas retas ? E (I, man sao daquele crent rsta lOlJCO 7 Tente ! EX~PERIMENTE !

E.. como B,empre:., l1II, probleminha pa.r a voce reset ver ;

conatrua uma casa simple,B, coso a da 11ustra'c;ao seoumte (Fig .. 3.1). Deliberadamente· coloq~uei LIma f'lleir-a de ja .... nelas. £las n~o devea ser d:esenhadas una a uma e sim empregandoc valcres variciv'B"ia para. a.s ce'lunas ou 1 i nha, conforae 0 caso ,

19

J,' fi z ,estarecomen4,acao sntea, mas vale a pena repetir~ N,ao riqUe pres,o' ao forma.to e tananho da Fig~ 3~1. o que 'lltlPorta .t§ uti 1 tzar os recureos expl ic-ado.s no correr do capitulo: retas em v4riaa direC6es, retas emenda<la,s, quad r ados @ ['"'etin-Qui os. Masnao de rxe de :f a zer uma. fileira de janelas.

20

EXPERIENCIAS CIOM RETAS

4

Agora que vo,c@ ja esta hem a vontade com. as linhas retas, vamos f,a:z'er al·o,uma,B experi'@n.c:ias. Primeirall1ente tente bol.ar uma rotma para raser quadrado,s ou retAnQU'" 105 corrcentr rcos , rato .~, uns dentro dos outros.. Filei!., v'oc@ diril. t so usar LINE .. ," '" B par,a draconars cada vez majores (ou menore,s. se for 0 caso) , B,em, a,ss:im, Dao vale .. Qualquer um. ecapaz de fazer i ssc ... Alem do mais',. dA ua trabalhio enorae ~ 0 que 'quere,mos ~ uma rot ina e .• ,que os quadradce ~ejaJII fei tOB autoaaticanente ii conse'lui u ? at imo, ! Vej,a Be, confere com a rot ina que vamos

estudar: .

Exper i,me'D tou ? Que ta 1 ? Esta reconhecendo a teemca ? Ja usaaos a190 parecrdo pa,ta tracar retaa di aconars a pa,rtir de ponto5 (Rot. 1.3" li,nhaa 110 ..... 140), lemb.ra .... se ? A d i f erenca e que, ago}; a, ao mves de PSET " usaaos L,IN'E ..... "B.Vej.amos como, as coi sas funcionam neste caso.

Primeira:mente" 'ell 30,t eatabel eceaoe um valor inici· ... al pa,ra a coluna (C) e outro para a l mha (L);. Assim, em. 40. um doe extreaos de nossa di a,go'.nalest·,ar a ex,atame'nte no centro da tela (C,L ~ 128r96): E 0 outro extremo l' Veja que el e ca.i exatamente no Inesmo Iuaar , pois subtraimos eeL do dobro de seu valor inicial.E:m outras pa-lavras, nosso primeiro quadrado ~, na realidade. um ponto, Acontece que, em 50, program,amos um mcreaento para os va loree de C' e L l~ r em 60 ~ deterniuaacs que. enquanto o valor de 'L for inferior a 150., um novo qij.adrado tum,

21

pouco maior, deverci ser tra~ado@ Consequencia 6bvi.a: uma ser i e de quad r ados concentr i cos 6 EXJ)er i mentef a21@"'l os em var ros pontos da tela e coa tamanhos diversoe, Regra geral p,ara oaquadredca = subtr ai r Ge' 1 do DOBRO de seu valor 0, 0 coaando em 50 deternina 0 TAMANHO do quad·rado .. E cl sre que ao inves de coaecar por um ponte no centro do desenho, voc@ poderia coaecar pelo quadrado de' fora:

10 'Rot i ria 4.2! QUADR A~DOS CONCENlR! COS f MEt odo 2J

2'0 SCREEN 2

30 C~78':'L=46

Aa LTUE(~ l)-{'~6-C~ 1c'9~-l~' t

"lI~ ,.!. rr '~. • r..J ' ,~, Co .), r P

50 C=C+S:L=Lf-5

60 IF l{15@ IHEN4~ 100 GOTO li0

Entend:eu a diferenc;a ? Ex.perimente~ em qua 1 quer das rctinas, fazer um incremento maior e usar SCREEN 3;0

IValDOS ver, ag.ora,. 0 Q.ue acontece quando fazeaos algumas lIodifica..;,oes neates proQramas:. N'a. rot ina 4. .. 1 (a que coaeca per um ponte) I' ao mves de aubtr arr C de 256 faca.~o de 36·6. Quesurpresa he m ? 0 desenhc 'e totalmente outr~ e, al~m disso, seu centro dealocou-se para a drret ta. 0 q,ue tera acontectdo '? Veja bem: a prtmeira diagonal que' antes era, na real idade , apenas um ponte f pasaou a ser , agora, uma linha que var de (128,96) at~ ~(228, 96). D',a.i par di ante vao sendo construidoe RETANGULOS que vao progressivamente ~ncurtando na direca.o ho .... rizonfal at~ cheear num quadr.ado e , dai pa.ra diante, vao se aloneando na di re~,ao vert i cal ~ ate cneear so 1 imi te imposto - em 60 .. Dis5,O r eaul ta 0 desenho que sur ciu na teIa, sabendo como a ccrsa funcrona, tente cotoca-Io no centro da tela. .e e'lD outr as posi-;oes 6 Novamente, faca i ncremento5 majores e experimente usar SCREEN J.

Vamos· elm frente l Em 30 I' f.aca C;;78 e em 40 (C,L)-(256-C,96). desta forma mantendo constante 0 valor de L~ Para desvirc1-lo faca C=128" V=46 e I' em 60 fa.~a L< 96, obtendo a.ssim um belo telhado para uma casa. Tente reproduz r-Lo em outros tamanhos e outros pontoe da tela ~

-Com estes exemplos voc@ ,pode- verificar que as pos,8 i b i 1 i dades, de var i a~ao sao nuaeros t 56 i mas, dependendo

22

r

J

apenas de sua pac:i@n.cia e compre,ensao dOB metodo!, para ,eJt;,plor.~-las ao mciximo" Nao se esqueca 'do coneelho que dei anteriormente ,:' anote cadi. variac;ao pois sera. ,au). to, d.if.:fci..l lem'brar-'se de todas etas i!

Vamosfa·zer. ainda, uma ser ie de experi,@:nclast para dar maior in.fase ao que' acabaaoa de di'zer,. Repare, a medrda que for prossecuindo que todos 08 desenhos secuea o esquem,a b4sico, jet nosso conhecido, de esta.belecer va~ lores iniciais para C e 1. (no ca$O presente est.e valor aer ii, sempre 0) 'r var i and 0 as coerdenadas das Lrnhas e OB i ncreaentos. COl1e,c,e a,S,B i m :

Que tal? Bonita moldura .n.~o ? Percebeu que de 40 a 70 cada Lmha desenhou UBI canto da moldura ? Ueja que em 80 os incrementoB sio. di ferentes p,ara eeL ~ lato pa,r que" CQJDO a tela. tem 256· x 192 "pixels";o mcrenentos i'Quais descentrar.iaa '0 desenho .. Te,nte ..

Quer tim espac;o central maior r '4c.il .. (EXP' ~ 2) :

Experimente

40 liNEfC,I)-(0,95-L)

50 lINE(C+12Sr0)-(256~L) bl lI~E(CFi92):(0f95+l)

70 lINE(C+l2B~192)-(2567i92-L)

~ ~

f

90 U' C< i2'S THEN 40

Tamb~m acho 'Q' prim·eiromais. born to, mas se voc~ tiver mui to 0 QUe eserever l~ dentr'o ~ este E!, mai s prc1tico ~ Compl ique UI1 POUCO as coi sas (EXP. 3)::

2,3

4,0! lrNE·~ C .r }-(2'56-,C T 0) 50, LINE (C~l) - (2'56~C i 92) 61 LINE(C7L)-(0r192-L) 70, lUiJ[ (C 1 L }'-(250" i 92-L}

~ .

90 IF C{256 THiEN 40

Ve ja que, aeor a" usamos dU8S 1 i nhas de proQ,r ama para cada canto (superioresquerdo e inferior di£"eito} .. tente conpreender 0 Ilecanismo e preencher oacutr os cantOB (lIP ~ 4,) ~ 0 resul tado vale a fena l €ansado de dese .... nhos sl mtf tr i cos ? Tudo be. '" Vamos a EXP'. 5:

40 LINE(CrL)-{256-Cr192)

~0 LINE'C~l)-(256.192-l)

60 LINE(256-CrLl-(0,192-L)

18 LINE[CYI92-L)-(256-C~')



9' IF [(256 THEN 40

Agora troque a linha 70 para tazer a EXP.6:

70 LINt {C ,'0} -le, i9~-l)

M',ai s uma par a final i 'zar fEXP ~ 7) :

4'·LINE(C,0)-(128,l) 50 LINE(C,.U- rc, 95;

60 LINE'C~i92)-(128fL)

.



90 IF l(192 THEN 40

E as,aim par ,diante ... Qaal terando cocrdenadas , mcresentoa, Blistu:rando rot.mas de outros ca,p1tuloB e t ~ claro, anotando tudo 0 que fiz,er. Voc@ jCi, deve ter percebrdo que, embor aos desenhos poa,samser muito diferent ea, as, rot i nas s,ac mu ito p,arec i dae E '0 idea 1 e vo,c! t azer uma es.p~cie de drctonar io r anotando 0 que acontece, para cada Ilnha de programac~o~

Di vrr ta- se com, asr-et as . Par ma.l s que eu d@ explicac;oes esta ~, na realrdade , a umca man,eira de, aprender.

24

Se voc@ nio conseguiu acertar a experiincia nQ 4 (Fi-g" 4. .1), ve ia coso se faz no, fim do 1 ivro .. Experime,nte ,. tambem, reproduarr a Fig. 1 da int.ro(Ju~ao e ve.ra como' um desenho a.parente,ment'e complicado pode ser feito COli um Dtlmero reduzrdo de, instrucoe,s .. E se voce est iver realmente disPdsto, procure desenhar a barca da Fig. 2 da introd'U~io ..

Fig. 4.1

25

1.r.a~ar crrcul os e aind~, aai s facil do que quadrados ou retlngiUlos" Usa~se ocomando CIRCLE f segutdo da especificac:ao de um ~ponto que e ,0 centro. Depots, coloGa~se o tanenho do raio p separ ado dos 'p,e,r@nte,sl!s ;por uma vrr-

qula. Assim: .

10 lR at i fi~ :;, HeiR CUt es

2~ SCREEN 2

30 CIRClE(3:0~30). 20' 2(;'0 Boro 2;00

Que tal '1 Simples, nao' ? Veja quec:oll urn llnic:o comando voci pede colocar um c!rculo, de <Qualquer tamanho, em Qualquer ponte da tiel a .

P,ara flfZ'er ctrculos conc@ntric03 tenho ac:erte'za de que voc@ 'nan tera qU;alque~problelQa. Como diria 0 aqente 85 ~ e .s6 usar ,0 velho tru(Jue aa coordenada variaved qUe, neste case r ~o rai.os

40 FOR R=i TO 2.0 STEP ::;

i:'/A, "Ht,r"l t:'{or'l 3l1)' ~ .• ~JE'li'T .[) "",,~(f ~; i r-:i ,""LI; o:~ ~ "IV - T r.;. ~ f'tl6.~ J J\

E 1 enen tar r meu care Wa tson. E se v'Oc& qu i ser fazer uma. sequ8ncia de e ir.cu los. , 0. velho truque continuafuO'ci onendo , 36 que a variavelagora ser,aa co.luna au a linha, dep€lodendb de voce querer uma sequ@n,cia horizont.al ou ver t i c"a:l :

E para tr acar una a.equ@ncia na draconal , tamb~m va-

mos Year uma tecnica jii conhecida~ i2t C~80·:L;80·

1'34 C~'InCLEc,~ l' ~A

'V _..' ~. \ ~ 1 } ~':"~

148 C=Cti0:l=Lt5

i5~ IF C<230 THEN 130

Tudo be.m simples ! Variando suas cocrdenadas voe@ poder-' fa'zer errculca grandes, pe'quenoB, concentr iccs.

entr'el acadoa na hor iacnt al , na ver t rcal ou di aconal •

Misturandiois,s~o tudo com pontes e Lmhas que j~ aprendeu a f aser t 0 ndm'ero de desenhos di fer entes e ,simp} eaaente enorme .. Trate de se exercttar baatante, at~, adquirir facilidaCie na conetrucao de desenhos de todos os t ipos ,

Nao pense , eatr etantc, que, as nossas poa.sibil rdades e,st&o es go t adas. Ainda. hci mui ta co i sa a ser f e ita, cceo, por exemplo, tra'qar a:egm;ent,os de clrculo,s:r elfpses e outr ae curvaa, a1.e·m de coebma-I as entre si , Para, ccnseguirmoB faz,er' 1980, porem, vai ser preci.so fazer.llos uma pausa para. adquirir uaaa no'~5·eB da tal de trreonoIletria~

Mas a.ntes disso talvez voc:~ queira aprender alouma corea relativa l cor ,pa'r'! que oa desenhoa que conseautu fazer ate aeor a f i quem 81a is boni to! • lDa.i.s e.x:pres.sl vos .. Muito hem, t.rataremosentao dacor no proximo capitulo, d,eixa.nd,o a trioonometria pi'ra de~pols"

Kste ca.pitulo , bem s:lmples .. Vamos deixaro problema' de costume par a QUando vo-c@ est i ver enf ronhado na trigon,ometria " .. ,

21

6

CDR

Noc MSX VOC@ dis~p5e de 16 cores diferentes., nuaeradas de 1 a IS:

o - TranBParente 1 ~ Preto'

2 - Verde m«!di'o 3- Verde claro 4. - Azulesc'uro 5 - Azul cl aro

6 VerDe 1 he escuro

7 Ci,ana

8 -Ve,rmelbc m'di.o :9 ~ Wermelhoclaro 10 ~ Amarelo escuro 11 - Altareio el aro 12 ~ Verde escuro 13- Magenta

14 Cinza.

15 - Br-anco

o Onao 4, propr i. anente, uma cor t sendo tr ansparen .... te, mas ~ bas tante lit i 1 em cer tas ecasr Cies •

Hil va.ria.~B, maneiras de utl1.1,zarmoB as cores, It pessival t por exemplor determlnar previamente, a cor do desenhe e'm 81 (prilleir<> plana),. ,(I eer do fund 0 "segundo plmo)e das ma~rg,en!L Para rsto , basta digi tar COLOR, seouido (los ntlm.eros cor respondentes lis cores, deerejada,s:. respe'ctivamen te ,par a 0 desenho ., para 0 fundo e para as margens. .Sell esaas especifica~oes.,' as cores usadas p~lo MSX serlo 15,4.,4, (HOTBIT)ou 15,,1,1 (ExpertJ ~ Isto Slg'nif.ica que: 0 desenho sera. embranco aebre fund;o azul escure au. pr-eto", Wia aparec@lI as narcens POi3 @tas tema mesma cor Clo fundo~ Lembra-se quando, no-Capitulo 1, digi tamoB COLOR 1,15,15, fazeng:o 0 fundo e as, margens brancaa p,araque os pontos. em preto, fic.ass,em mais, vis1veis (Rot. 1.1) ? Be voc@ <;Iul.ser um d@senho con liDbllS aLmarela.!'J, fundo azul 'e margens veraelhaa, tecl e COLOR 11,4 t 8 ~ T-omec:uidado para naa se esquecer das vt'rgulas ~

Experimente tazer alguns desenhos, quadrados, retanoulos au ctrculos , coli d"iferentes combina~oes para se

f ami 1 tar i zar bea com as cores ~ r

&1 cl aro que voc@pod·e eo ler i r cads Linha mdrvr-

28

d~ualmente. Basta' ce locar 0 ntlmero da cor ap,6s as par@n.~ teses, separade deles par uma virgula::

10 10tina 6~i:LIHHAS COlORIDAS 20 COLOR i, is, 1·5:SCREEH2

30 lINE(30.30}-(130~:30)

48 lINE'30(40)-(130f40),6

~4 LIUE'ft~ rAr ~~'3'~ e~' 1~

...It] '. :", .. 'Jv nF'I\II1- . ~ ;'iJ ~ J'f;i .,. c;

200 GOlO 2&0

. Repare que em 30 r COIIO ni,o especificamoB a cor, a linha e desenhada em preto, como determinado ell 20 .. Para quadrad-os e retAng·ulos., a te·cnica e a aesaa , s6 que, de~ pOi.s do Ddmero' da cor devemoB cofocar uma virgula e, d"epols, a letra B" Vac:! jli sabia 'draso, mas e se .. pre bom

re1 embr ar ~ Ad i. ci one ao - progr ama acimia: -

60 L IN'E (30· T60 ,. -;( a.e T t 10), T 4 , B

70 L'INE(2ir12@1-{13:0,150),1319

Se v'cet! qui.ser pre·enc:ber 0 quadrado OU retlnoulo COlD aCQr, basta -colocar um F apos 08:

B0 lINE(150,30)-(200,80}~3fBF 90 LINE(150r9')-(200ri80),B,8F

An tes que eu me esqueca: se vccs ussr SCREEN 3 I cada quadradinhopode ser co'lor rdo INDIVIDUALMENTE, mesm,o se esti verea enccstados una nos, outros ~ Jate t! imposs!'" ve 1 em SCREEN 2.. A t'cni ca par a co 1 oC'i r 0"8 quad r ad inhos ~ a m'esma:: depois da "local iza~ao do mea-mo entre parinte .... sea precedrdos pel0 coaando P'SET coloeue uma v!rgula e 0 nnaero da cor dese.iads. Cuidlado com ,as coordenad-as! Se nao prest.ar aten~aoc voce! val. supe'rpor quadradinhos e fazer uma treaenda .ccnfusao com as cores. C·omoe.xerclcio, tente fazer linhas .·com quadraainhos· de cores al ternadas ou um tabul.erro de xadrez com quaclr ados verae lhos e amarelos.

Outra forma d'e preencber desenhos t sejam el es 'qua.drados r'et.inoulosou 'figuras fechadas, feitas em~nd,ando retaa, e ut.i lilando 0 cosandc PAINT', securde de um ponto que fique D,ENTRO ,DO DE,sENHO e col.ocando , em seguidat 0 nllmero da cor. Ass i.m :

29

Percebeu a uti 1 i dade do coaando PA.INT ? Pode ser uaado em qualquer- desenho que tenha um contorno fechado, ror ,mais irregiular q.ue se ia .. Repare que., em todO.B os casas, a. COl" p.ara preencher ~ SEMPRE iQual • <20 contorno.

No ease do's crrcul os , coloea-se 0 nuaer o da cor apds 0 raro, seearadc dele por una vrreula, se voc~ nao mdrcar uma cor especifica, ,0 crrculo tera a cor determinada em 20 OU, se esta. indicacao tamb~m faltar, a cor "default.", rsto t!, a det eramada pela programa'~ao jci embutida. no co'mputador (IS) .. Para preencb@--los e mdtspens,iivel usar PAINT:

it fR.o,t ina 6·~3:COLORnmQ CfRCULOS

'"in. r'l\lO·R~. 11:" A:t"0 I."'''''-!']EE- W'I ~';:f ,,"v ' 1. _J~~"'oi:l'I.;-""- 11'1::.

30 CIRClEf30T3,0',20

40 CIRCLE(100,90),S9f6

50 CIRC.LE(190·71~0) .30, 10:PAINT (190 I 100,) ~ i 0 20e GorO 2,.'

Ueja que as' reg,ras para 0 preenehreento permane.c.em

selllPre as meS1l4S .. Nunca se esque<;a de las e r par rsao r

vale a pena repe t i-I as: - .

1) ,A cor deve ser IGUAL II do contorno ,

2) A·s ecordenadas de'vem estar DENTRO do eontorno ..

3) 0 conterno ·~ev·e ser COMPLETAMENTE fechado ..

A meeservancta de quaJquer uma destas re·gtr-ii.,s· leva a deeaetrea, Um furo de um umco ifpixel" no contorno faz COil que a cor vaze e ee es;par.rame por toda a te la, se voc! duvida, experimente f.azer um·a rotina desrespe.i tando as noraas e veja 86 0 que acontece !

Esta ~. novamentet uma boa hora para VDC@ fazer uma inte,rrU'P~·ao aaior em seus estudes e tenter aplic:ar 0 que ja aprendeu de forma. um tanto mais e Iaborada, Vol te atr.4s.jreveja. algumas das rotinas gue ja @xperimentotl e tr ate de color i-I as liAs. experi ~nciasr do Ca.P! tulo 4. pre;s .... tam-seadmiravelmente a este ti.po de exercrctc. It cl aro que v.ee@ nao. deve limi ter-se a el as. E.xperimentecois,ae novae. Hi.sture deslenhos e 'coree. EXPERIME:NTE! . SEMPRE !

Antes· de ternmsraos eate c'ap:£tulo, hti mais um,a corsmha que vo'c@ pode fa.zer L Bxperimente 0 secui nte:

1~ ~D~L~.~ L A·C~ft~S' rAMn-I~NTPC . tI fIj Ot ! fti!! C .. "t· !il'l! 1.., Oo!!'!n!.JM~~ ~. to ....

20 COl~1 Ir1S~15:5CREEN2 ~~ T~i+'4~?~n~-TT~Cl

.J'!lI .. ;1.. ~I~",,~ !J..1.1i:.1

40 fOR R=0 TO 50 STEP S=GIRClEH28 F 96) r'R "T

I:'fj llEV'" ~. J~ 1"( I; i i\

2~0 BOlO 30,

:g,spetaCyla:f ni,Q ? TemOtS. accra cores que mudam t,onstantemente, q;te que a Q@nt@ interrompa 0 pr,o.gr ama !. Isto e cOIlSeqUillCia da instrut;ao dada. em 30 que determna que 0 num:ero atr ibuido a cor (usamo.s a letra T par-a a cor. asslm nae> ha confusio como C: usado para de.si.gnar as colunas) seja ~epetido, nio em ordemt mas aleatoriamente. Para. que 1550 p05sa funcionar, determinaIDOS, em ,50, 0 ret.orno a 1 inha 3,0, onde um·a nova cor seca i nt rodus ida ..

g 6bvla.qae, pata que este eapftulo pO~5a ser explorado ao maximo, ser i a ,1l6ce,s,sar'io:p idealmente., que ;0 seueomtor fcesa col.or ido. It pauLo prova'vel que i5S0 accnteca. Nao ha,. todavra, mot ivo para desespero., Masmo COli um moni tor branco e p,reto; h' va.ria~a@s na mtenaidade da imagell.. p·er·ml t indo resultadcs be. interes,santes .. Bet, tambem" a. a1 ternat iva de v.oc@ .11!gar 0 seu MSX na te levi sio, color ida. da sal a. . Mas n,a,o faea iSBO' na hera da

novela ..... . .

Vamo·sao no·.!USO probleJla .. R.edes,etlhe 0 tabul etrc de xadrea do capitulo z. ed, ,que &1 ternando Iquadrai30B verneIhos com quadrados amarelos. Redesenhe, tah1'Dem, d. CRl¥&a do c,apttulo 3: faea ,0 te Ihado vermelho II as parede,ff amarel aae as po,rta,se janelaB ezui s fpreste be;m a:t~n~ao DO quefilaz 11 pois e·ste pt'oblema emeio aercto) .

31

7

UMPOUCO,DE TRI'GDNIOMIET'RIA

Ger a Im.en tecost uma- Be d iv i d i r um -le ir cu 10 e;m 360 grau~· ~ Be imlig inernos 0 c'i rcul 0 como 0 aostr ador de tim re16gio, a co.ntagem cOlme~a, cClm 00" correspondendo as 3 horae e continua, no se;ntioo ANTI~HOR4RIO, de fo,rma que 900' corr'espoada as 12'horas., 18,0'0 ~s <1, 2.700 ~s: 6 e 3600 novaaente ls 3 horas. ~ important@: lemhrar 18. dire~io da ccntacen euando tracaraca arcee de crrcul.o POlS, se inverteraos 0 proce.sso, tereaos areas nas p,osic;oes mais extr avaean tea.

Acontece t por~m, que 0 nosso conputador nicomede areca em. gr-aus e aim emRADIANOS. Um circuloc,ompleto t.e,m 6, 28 ra.dlanos~ Rate n'tnnero 'determi,nad,opela divisiao da ci rcunferenci a (au pel" !me t.ro doc:l reul 0) pelo seu raio~Uoc! deve le,mbrar~Be que di.vidindo a crrcunferenci.a pelo diimetro, obtelD-ee 3,14.16 qUe t! 0 valor de PI. ~(,H)01 ume~rculo completo., tendo 6,28 radianos terci, obviamente~ 2PI radianos .. E'mba,ra 6~,28 nie) se'ja 0 valor eza to ( 21x3 ,.1416~6, ;2 8,3 2) t e auf i c1 e'D teaente prec i. so' -para qualquer deseriho no Cbmp1ltador~ Nan ~xiBti.ndo-, que eu sarba" tranafer idoree graduados em. radi anos, Boment!! em graus p tereaos que fa,zer a neces;B·aria con.versa:o, .. If £..1.cil~ Se 3600 correspondem a 6.28 raciano'S, 0 nmn@ro. ~e radiance para qualquer arco medido, em graus :s~ra dado

pels. 'express,ao:· ' '

rea I; grau's ]I. 6,281360 au rea « graus' x 0" 0174

ASBill., 100 :: :0,174 rad: 4,50 c' 0,,785 rad; 900 = 1, . .57 rad e assim par diante.

Dado ,eate passo inicl,al n'Q triQ:onometria, voI telROS um POUCO lao c:oma,n([Jo CIRCLE ~ Ate agar-a t alem do centro, raioe cor, nio e .. s.pecificamos mals nada., 0 coaando coapleto, entretantc , inc::lue 0 I;Hlnto Ini ci al do arco , 0 ponto final e a relat;a,o entre odiimetro vertical e 0 horizontal ~ IPa,ra lim crrculo eompleto teriamo,!S:

32

~i CIRCLE(C~L}~R?T.I~6~29~t

C , a coluna e L a linha onde se localiza 0 centro:

R • 0 raio; T ~ a cor; 0 ~ 0 In!cio do area; 6.28 0 tim do, .arco e 1 a ,relacao entre O,S diimetros (obviallent,e 1,- 9uai 9 J' neste easol . col.ecandc 2: ao inv',s de 1, fare'mos 0 dlimetro vertical duas vezes maior que 0 horizontal ~ B,e-' sui tado: uaa el ipse com 0 dilmetro Iliaior na vertical e que sera tanto maia aloncada quanta major for a f'elac,ao entre 08 ,diAmetros~, Querend,Q uma el ipse horizontal, e ad inver-ter, a relaca'o: 1/2 t 1/3" etc .. Nao se esqueca que nosso HSX f,oi programado em ing.lis e por'tanto, em valo ..... res fra,ciontirio-~" usa-se um ponte e ni,o uma vf'rgula. As,6~m, usamos 6.28 e nao 6,28.. A vtrgula t"elD outras fun .... ~'oes ..

Como &empre, pare um pouco e experlnente tracar elipses de v~rio,s tipos e tamanh6s ... Combine elip,e:e,s vee .... t icare e noriaontara C'OlD crrculoa, quadrados e tudo '0 mais ,QU'e voe.@ puder inventar .. Use - cores (lifer-ente,s au cambiantes. 0 ntlmero de desenbos que voc@ pooer.j obter ~ pcaticamente infinito~

Para. traear areoe au ctrculoS1. inc:ompletos e necessCirio especific.ar, em, radi anos; 0 :cOlle~o e· 0 ,fim dos mesmos. Um exempl0 sera mais eecl arecedor do que pa.la~ vras:

Perc:ebeu como ,Be faz ? Na pr'tica, 0 id;eal ~ vo,c@ fazer seu desenhc num papel mil imetrado. medi.r os ingu'" los coa um trans.feridor e depo i s t.ransforaa-Loa 'em radi.anos ~ De prefer@ncia. use UID tr ansrer rdor circular, 0 que f aclli ta !lui t10 ailed i da d,e ,~ngu los super rores a. 18'0,0; l'ocali:zados na p1arte inferior do crrculo .. ,Para facilitar a 'm.edida, des anguloB" ~ lit i 1 tracer 1 i nhas quevao, do

Jl

centre aos extremos 60S arcos ~ Nao se esqueca. ,que, var i - ando a rela't;io entre 03 dilimetr,os vocs poder"tr tambE!m, tracer arcoa de elips,e~s ~

COimbinando a·reo,s e 1 Inhas, VQC@ poa'er,il fa,ze'f des'e'" nhos bem detalhados, desde que' tenha ,a. paci@n<:ia necesear ra para cal cul ar, previ aaente tedcs os ingulos,. COltO iDici,a~ao, ex,perimente fazer umguadl"ado com oe cantos arredond'ad',os, exeeutando a rot i ns segui nte :

1& 'RoU 111. 7' .2:CANTOS AiRiEOONBADOS '

20' SCREEN 2

30 LINE {100,50 )-,(' 150 r50} :lINE~SI0 ,7'')~fS:07 120) ":tINE( 170 ~ nH-'( 1707 i20j:lINE

ff00ri4e,-f150,i40)

4_& CI-~~LE7Ji5-A ~0} 2-& 1~ 0 1 ~, ~

'!?" __ ,n, -~ :.v,.j·., -tiT ..if! 'i.Ji ~J.

i:'f,\ cc r- Elr'LE ( i bolA 71'A, '1r:1. -r .1:' 1 ~7' 3- i 4 f

,.;!rJ' '. [\;!,; - ~. 'vt.! tV,.' 1 ':"(i' r .I.. J " • ,j 7". ' . "

~0 CIRCLE(110,120)~217i5r3~1414~7rl 71 CIRCLE(1511il0Jr20r15r4.1,6~2atl 20,0 GOTO 200

Vej.& como unimo:s as extreaicade das retas CO.ID quartos de circulo, conSe9uindo 0 resultado desejado .. Tente. por si mesmo, tazer outr as combinat;oes" com areas diverBOB e em POSi~ae5 diferentes ~ Observe a Fige, 7 .L, que , uma das ilustraciies de \IJD, texto sabre navies a vera, '00- de i sse fo i foe i to. Na rig!.. 7. 2 r temoa um br asio de araaa be,in ,ma.is el aborado mas executado com a Iteam,a tecnica ..

,AEtTA

,34.

Fjg. 7.2

Que tal 1 Is t~cnica funcion.a nio ? ,',J.oc@ percebe que embora nao POSSaJDQS executar um quadro digno de uma pinaeoteca temos elementos r,a~oclveis para fazer desenhosbem Llustrat.ivos, De acordo com sua prefer'8nc'i,i, serci PO,s,stvel 'compor jog,os de aventuras ou ilustrar tex,'" tOB de forma bastante - eficiente.. 'Basta compreend,er 0 mec'anismo da (!;oisa e exercttar sua ima.ginac;ao- ..

Vamos. aOlora" 'examinar um outre a,ape,etc da tti'gonometria, UBI tantomais complicado mas ,absolutamente indispenstivel para as nossos desenhos. Examine a Fig. 7 .. 3 ..

Fig" 7.3

Temo,s iqui um crreulo, C'OIl as indic,acoes dOB eraua, ccntedoa, como ja sabemo,s, no sent rdo anti -horarrc ii A rata OP representa 0 raro .. Vamos supor , de mrcro, Que 0 ponte P e,st~ Iocal i zao:o, a O!o. g cl aro qua nestaa condi _, ~oe,s, 0 Angulo que 'O'p faz com 0 dilmetro hO.rizontal t§ nulo, igual a 0 .. A lIedida que 0 ponto P se deslocaao Ionee do crrculo, a reta. OP vai fazendo com 0 di!metr-,o um I.ngul() ead,a vez aaior , v.amos" aU,por ,. tambt!m, que 0 rare se ia igual' a 1 .. ,N'a:o importa 1 0 que ~P,ode eer 1 centimetr~, 1 metro, 1 quilolDetro ou 1 ana-luI (neste

, \11 t imo csso dever i amospo,stul ar r ta.mbem, um Uni ver 50 eucl rdeano, mas nao vam9S pensar meso) ~ Yeja que, com. 0'

3S

dealocanento do ponto Pta perpendi cul.ar PHi r cujo valor era 0 no inicioi-vai tambem aumentando ate atingir 0 ma~ ximo de .... ? Se voc@ pen sou em 1" acertou em chero ! continuando 0 dealocaaente de P" 0 segmento PM pasea a diminuir atE§ 0, ao at inOlr 1800., ~ 1 'em ,2700 e novamente

.0 em 360,0" '

E dai 1 ~ 0 qu'e· vocs deve estar se per cuntando a estaa 1 tur a .Ca 1 aa , um peuco de pac i@:ncia . Logo vcceeetar,a em cond i (;oes de aprecrar toda a be:!eza da tr i 90,"0- metria. Repare que 0 valor do seQmento PM e sempre uma tracao do raio,' checando no maxim'o a iguala-lo, mas nunca a ul trapas9,c( .... 10. voce podera deter:minat.- iseo,experimentallDente, fazendo desenhoB num papel mililletrado e me'dindo dtretsaente 0 tamanho de PM. De,pols div'ida-c pelo raro, TJeri.fique que, para cada anglflo.f e.ste valor ,~ o mesmo, QUALQum QUE SEJA 0 TAMANHO DO RAIO. A este valor, i no 1 aso 1 uvelmen t,e 1 i. gada ao va lor do §ngu 1 0 (ou do arco conpreendrdo por el e) , damos 0 nome de SENO. F ezendo 0 rare igiual a 1 to-valor de PM e, i eual ,80 seno. Fica mui to facil - construrr waa, tabelaem que anobaace os senDs c:orresponaentes a.. cada ingulo (BlaS nao Be preocupe, voc@; nao preciaa,ra ter esse trabalho pois ha t.abelas mui to completas p,ara i SBO) ~ As,eim:i toda Vez que, conhe-

cendo 0 raro quiz,ermos saber 0 tamanho de 'P.M9 ~ a6

mUl tinl ica-Io palo sene do lngulo que ele fa.z com a horizontal.

CampI i cado ? Aparente,mente siltL Mas conpenaa voe@ ma tutar um pouco sobre 0 -assun to ate compree,nd.@-lo perfeitamente, uma ves que, tendo uma fo.rm,a, de determinar 0 valor de PM, voce tera, tambem:, una f.orma, de determina.r uma. das coordenadas do ponto :P na tela. de seu moni tor ,. Vceja bem. Di gamos que 0 centro do crrcul.o esteja. l ocal.rsade em (12·8',96.) e que atribuimos, ao raloa valor de 50. Qu.ando 0 an1gulo A for igual 'm 0, 0 ponte P estara na coluna 128 pois 0 seno de 0.0 e o. Isto, multiplicado pelo raro (50), cent inua sendo Oe, port-anto, 128 + 0 ~ 12'8. Para um ,Ingulo de 900, a sene e' 1. Assim, 50 Multiplicado, por 1 e igual a 50, partanto, 1.28 ... 50 =: 178 que e ,a c'oo:rdenada de p quando 0 !ngulo e de 900 . Para. um :an-Quia de 180Q, voltamosa coluna 128 e para 2700 0 p.onto P estar -' na col una 78 "retornando a coluna 128 nos 3600 ~ Para os ,ingulos intermeOitar-i,os o racrocmro .E! 0 mesmo.

36

'E a outra coordenada v VamosraClOClD,ar mai.s um pou,CO com '0 auxi 1 ro da Fi c, 7 .. 4.

Comece, outra 'Ie!, com 0 Angulo A 19ual a 0 .. Consi-

d'e::re·a· n.OV"·:II o ·ea .... m· en t 0'" . 'p'l"\ oua 1, .( ..... seu t ananho ? ).,c·er,-

. I; '_' . '1:1 :,IL liiI, ',_". ~'G,. '~", _-,' "X Ii! \l.',' - 'C v ~,~, -,"', .. I '_'.~'. iii .H,_,.·,_.L

tou !, ~ 1... E 0 que accntece -ao comE!:'«;arll,os a dealocer ,0,

ponte p &0 longo do crrcuro nosentidoanti~borario ? Ace~tou de novo ! Ele vai diminuindo ate 0: nos' 900, aumenta at~ 1 .DO·S 1800" cat a 0 80vamente em 2700. 'I volta a 1 nos 360·0 .. Faz, exatament-eo Orposta do S6gmento P'M .. Dividindo f2 pelo rq,lo ,; tg"b~n1 teremos uma fra9ao consta:ote para cada valor do Angulo 1 so que vari ando no sen .... t ido inverse ao do sene, A esta ff"a~a,o damas 0' . nome de COSSENO .. Hal tiplicandcf -0 coaseno do §.ngulrO pel.o rare ~ temos 0 t amanho de P2 e t C'onsequ.entellen'te" a forma de:

determinara outre coordenada do ponto po ea 1 mha) .

usando '0 mes,mo racrocmro ja descr i to para a coluna ~

Percebeu 0 al cance do queac'abamos de d i ecutir ?

Temo·,s, 1000 '(le mfero, uma for:ma de tracsr , eoa pontoa, ef rcul.os e elip·ses .. Bate's wntos poderiQ servi r (':'011.0 vertices' 'de pol.tgOno.B ou de eatr'e l as , centro de novos c~tctulog ~u eli.p~efi' .. perl1i tmdo obter uma grande varie .... dade de f lC}qras Intfn'~e'ss·anteJS;o

37

Vamos:. entao, explorar all pouco eetas pOBsibl1 ida-

.des e, tallbemll lID pouquinho lI,ais da: trigo.nometria,. ,Preliminarmente,contudo" e preciso lembrar de alga lmpor~ tante .. Calculando as coordenadas de P destat6rm.!, tude Se passa como se a tela tl¥esse .. 90rr-laO lUltl rotac;ao de 900, de foraa que GO f rca eabarxo , 9()Oa q,l.relta, 1800 em. ci ma e 3600 novaaente em 'baixo. Todos OB ai&senhoB ,. portu,nto, comeea.r.a.o 'na parte inferior da tel.a. Isto em nada interfere - com 0 nOB'SO trabalho" ~a:s e sempre bom a oente ter plen,a consc'l@ncia do que esta fazendo,~· Compre"'" end i,do est e ponto vam.os so ,progr 8ma :

10 FRot .. ina 7 ~3:APl TCAC~:ij DE SEMfr5 E CoSSEr~O:S

30 PI=4*ATN(iJ~SCREEN 2

40 FOR A~e Tu2*Pl STEP PI/6

50 '5Er(5'~21~SIN(A)t5'~2'~COS'~)) 6,0 PS[T ( i b~+40'lSIN{ A; :r ~@+20~COS (A) )

7t CI~CLE\~0.j<l0*SINf: fj) • i~'0+2~ICuSLq} ~ ~ Hi

:i!:l.i'iI H r "'''I' it Il:lfJ~E.;..i'\~ 11

200 GOTB 200

Va.mos anali sar 0 ,que foi fei to fazendo r~fer@;ncia it Fig. '7 ,,"5, ~ :

30 - De·finim-o,s Q valor de PI ~ pOlS nao consta da me:m6r ia do MSX ~ Pod-er i amos" simpl esmente f t er fei to': PI~

'.3·8

r

3.1416 mas, esta :form,a ti, teoricamente. lIais precis,a .. ATN'(l) sionif,ica "arce cuja tano,ente E!, igual ,a 1·. 'Ya Fig ~ 7.S, a taneente do Ingulo A • repr',e sent ada pel 0 ,e,e'Q,mento 'GN, perpendicular' ao di&metro horizontal, . que ,aomeca e',m N (00) e' termina. ao encontrar 0 pr-olongamento do rare iI Seu valor varia de 0 (quand,Q' 0, 0 lnoulo t! 0) a i-nfini to" quando 0 ,0 ingulo atinge900; de infini t.oa 0 ~ em 1800; de 0 a senos infinlto e,m 2700 e de Ilenos mf ini to a 0 acs 3600. Fazendo '0 rero i9ual a 1. " _ quando a tancente tambem for iouai a 17 0 ,se'gmento 00, sera a dia,g'onal de um quadrado de lados iguais a 1 , dividindo 0 arco Ne em duas ,Partes i guais.. Ora, 0 area NC tem 9'0,0 e cada metade tem 450, que Ii a Quarta parte de 1800. Mas, em redi anoa. 1800 e 19u,al a. PI,,, Looo, 0 "arco ,cuja tansente Ei igual a 1" tem PIl4 radi,aptGlB. Dat a ~xpres:,s,ao em

30 ser : PI=4*ATN (1) ., .

4.0 - Nesta 1 mha, faze.os, 0 Angulo A var rar de 0. a 2*PI radranos, rsto f!, de 00 a 3600, descrevendo um cfr-: culo ·colllPleto, com mtervatce de PI/l2, 0 que dii UBI: tototal de 24: pontes .. Be vocs prefer ir fa;a ST'EP 2*PI/24 que ja mclur t di.retamente 0 ndmero de pontoe ,

SO --Aqui eatabelecenos as coordenadas dOH pontos ..

Para as, col unaa ecaanos ao val or da co luna central (50) o 'valor do segmento PM., Pa.ra ·as linhae,' somamos 0 valor do s'egmento PQ a. 5,0, que e' a 1 mna ·central .. VeJa que 20 e 0 tamanho do raio que, multipllcado palo 8eno e pelo coaseno de A nos dar a , respect ivaaente P'M e PO (nao se esque~a da rotacao de '900 na> tela do monitor).

Compreend'eu be·m ? se nao entendeu tudo direit.inho vol te atras quantae vezes ,fore-,m necessar-ros. g m.eio' ma'cant e fazer i.fU:1,O maEL, de outra forma, voce jamais aprender4 ~eja l~ 0 que for~

Se voc@ Pf'eferir uma el lP'se, ao mves de um cfrcule , use um valor dife.rente para. cada coordenada .. Assim:'

Com i sto YOC@ aumentouo raro hor i aontale di,minui u o vertical. Alterando os r aros de m.aneir'a adequada, VOC@ ter~ elipses de todos os·tipos.

3,9

Que tal Bubsti turrnos os pontes per crrculoe nlo muito ·gra.ndes ? g sd uear as coordenadas dos pontos como 0 'centro dOB crrcul os:

70 CIRClE(S0t21*SlN(A).126t20*COSCA)}ri0

Se vae@ apertar UIl poUCO os crrculos una contra oa outrcs .(fazendo, em 40, PI/24. ou PI/4,8) e:", al'm dt sso trao,sformar 0, crrcuto numa ·ellPse - ,5.U ,CIRCLE: (128+80*SIN (A) ,,'96+40*COS(A). voc@ ter,il uma, esp6ci'e de pneumAtico (ou "tOr-ON se pre,ferir usar 0 nome tecmco) • Unindo es centros dos crrcutcs auma el ipse. central teremos al eo

p,arecido corauma e·stac;ao espacial:

90 FO'R' A~0 TO 2*PI STEP P 1/24

50 PSET(5tt20*SIN(A)~S0+20*COS{A}) 60 PSET(160+40:*SIN{A},5Q+20*COS(A)

70 CIRCLE(50+20*SIN(A)T12e+20*CDS(A)) ,10 90 NEXT A

200 GfHO 200

Que tal 1 Estcl ccaecando a apreci ar as vantaeens e recur see da tr reonoaetr ra ?' Espero que si.lt.. As nocdes que mtroduz tacs aqui sio as mt'ni.mas indisp.ens,aveis para exeeutar crrculcs e elipses mas" e e·vidente que a aplicat;a.o de senos e cosaenos nao se 1 tlDi ta a 1850. :£ po,s,sivel fazer mais,.mui to mai!:l..

Raciocine comi go. As duaacoordenadas de um ponte local izado num crrculo sa.o: C+R*SIN (A) eL+R*'COS (A) J,()nde Ceo' mtaero da co luna , L 0 da 1 mha, B 0 raio e A '0 anguloque 0 raro faz com a horizontal ... Quando, e,specificamo.s, 0 valor de A (em: FOR ,A=O 'TO 2*PI STEp· Pl/12 J por exemplo) t determinaIlO,!, tambem e nuaero de pontoe que q:ueriamoB desenhar (PI/12.: 24 pontes) .. Fica mais f'aci 1 fazer 2*PI/24.. Se fi'zermos 2*PI/24 tereaos 24 po·ntos J se 2*PI/6 ,serao 6 pontos easslm par diante. Ora. neste 111 timo caso, ee unrraos estes pontes po,r. I mhas r tereaos Ult hexagono, isto e, uma figura geometrica regular', com 6, Lades .. A medida que aumentarmos 0 den.ominador da ex'pressio, 0 numero de Lades tamb-em aumenta, ate que 0 nosso pc)l!gono (rate (L una figura com mui toe I ados) , acaba ae confundindo com um circulo que, se voce entendeu a. ,exp 1 i cat;ao • f! WI· po 1 ~ gono com umnume.ro tnf rm to

40

d'e Iados. E. resUllo, 0 menor pol:loo,no, e Ull tril,ngulo e 0 malar, um circulo.

J,cl. que , assi.., ValQ,OEJ ,exper i'mentar fazer um hex,cig:o,~ no (6 lados):

J'c1_ eetou .imaginando que voc@ f reou grl1ado com esta rotma. Tem uaas cotsas novas JDl.stu[',adas com as que vocl Ja. conhece , t cl aro que tem, 'pais vaaos experillentar uma coisa nova .. Mas nio se afll.Ja. Tudo (ou pelo menos gUise tudo) tem uma e,xplic,a(;io 16'gic.a .. Vamos destr-inchar eata nova rot ina ~

Ate a 11 nha 4; 0, tudo bem.. NcAa het aada qu,e voc@ nio conheca.Em 50 e 60 t.a.mbem nio h' difi.culdades~ Apenas subst-i tuimQs a expressao de cada coerdenada PDr X e·! ~ Ma,a II em 70" intcro4uzimo9 um coman(io esquisi to, aSErim como e esquisi to 0 comando ,em SO e, ptor ainda , 0 da 1 inha 90,. Nesta linha eatJa todo 0 secrede do desenho dohexag,ono~ Ii . faci 1 deentender a.' coordenada fX t Y) em 80 ~ Mas o que slgnlflca (XO,YO) ? Qu.ando.Be faz iSSQ, 0 inicio da l mha e des 1 acado par a· ,0 ponto onde es t i ver 0 cur sor ~ Da.! ele vai para 0 ponto (X',Y) , .. 1.ogo que se di,gita RUN., p:ira executar 0 proqraaa. 0 cursor estara Iocal rzedo e·m

(0,0) e, se omi t rrace 7'0, teremos usa retaque vai do canto superio,r eSQuerdo da tela ate ·0 ponte i ni ci al de nosao h.exagono .:. F'ica hor-rivel ! Comas instr'uciles70 e 90, Buprimlmos "estaretaextranhaeo ·hex&ooDo f'icar& perfei to r PO,~fB. cada vez que 0 computa,dor executa a ordem :N:EXT A F o· va lor de X e Y var i a de acordo com a i ns.tru~ao

41

Exper i.m:ente 8'xecutararot ina supr imi ndo a mstruc;a.o 70,. Depoil experiilente,e. ,40, dl vid ir ,2*'PI por J, 4., S, 8 ,I ,~~ ~ A,onteceu a 1 GUlla co i sa err ada. ! Ne~ sempre o polioono fl,ca complete. .. lalta UIl pea;,llcinbo~,TeoricB.~ .ente nao dever ia .accntecer •• aaaccntece 'e 06,s temo,9 ,que dar um jei to: ell, 4.0 fazer A varrar de <0 a 2 OJ 2:*PI ~ COlt iSBo resolvemos 0 problemae podemos trat;ar polfgo~ nOB de ;gualquer tamanho ee,., ,dificuldadelJ:.

VOce coneordara comigo,entretanto, qUe',e mnto macan te ter que fa,zer wnel al ter a,c~o na rot 1 na cada vez que qu:iser desenhar UIIPol 1'oonO dlferente'. se:r(lque nao ha UBI j,etto de tazer uma sd rotina que permita esecutar po 1 i gonos coa QUALQUER ndmero de 1 ados? Cl are que h.j,~ COIlO su jt1 di.sse , tudo E§ ,po,ssivel. Expe~rimente:

10 7Rotina 7.5~'OLiGONOS

20 INPUTNNdlero de l~dos:Y;N

~ - . - {tf . ,"

301 INPUT Tamanho des lados:" ~T

40 PI=4iATNf D

!i0 SCREEN 2

60 FOR A=0 10 Z~2*Pt 'STEP 2*PI/N 70 X~12'8f'T"SirN{~ A}: Y='96+ T*tOS~A) 80 IF A=,0 THEN 100

91 LINE'XI,Y0)-(X~Y)

i00 X0=X:Y0=Y

Ht NEXT AI

2001 GOTO 200

Entao J funcionou ? 6timo ! Hi-a vou analLsar estcl rot ina pois estoucerto de ,que vael! jiipodet' fazl!~lo flOrsl. mesmo~ QlIer: tent,ar Ilais alguma corsa ? Uma esplr'a 1" porexem,plo:

ii fRet i IlaJ 7 ~ 6: [SPIRAL

20 SCREEN 2

3:0 p I=4*rnW( U

49 FOR A:=:0 TO i0lfPI STEP 2*Plf48 5i X~12'8+S*SnHA) H=96+B'f:CilS{A) 6i IF A=@ THEN fl

l@ LINE (X~fY0),-(X, y) 80 B::i!Bt~2

'90 Xr@=Xf:Y0=Y 1,00' NEXT Ai 2~e BOlO 2'00

·Veja que e uma tot inamui to. pare·cida com a des poItgonos. A,-dfferen.;aestcl no va.lor de B, Clue faz com que e centro se c),es!oque a. cads volta. 0 incremento, de S, espec:ificado em SO"(ietet]uina 0 af.asta:mento, entre -aaespiras"" Ell :(0 d@termi.namos :0 nllmero de eSPlr,as (2:*PI para cada uma) e os mtervalos entre, os ve'rt i.ces {I embraBe 1)~ Um ttrculo e um poligono de numero infinito de Iados, ~30 que depois de 48 Iados nao da maiS para pere·e~ her a di ferenca,

Voc@ tambem pode -{al.@r a espiral tom pontes ao in"as de l mhas ou, me preferir I' com ,pequenos cfrculos au pequena,s el ip;secB, ~ t ao!nibstl tui r a. instrucao LINE,. em .50 J pela inst["uc;ao adeq'uada,. PSET au CIRCLE, contorae 0 easo ..

Experimente f par exe.lDPlo" fazer: 10 tRot ina :7 ~7

49 FOR ~;:0 TO i0fPI STEP 2fPI/48

50 X';:i.2S~ (25+8) IS I N {A} = Y~96+ {5+B } *COS( A) 6'0 C.l R CtE ( X , f) ~ B r 7 , 1';]

7'~' ~:;;B'+i

80~~EXT A

90· 60T090

'1A . .'i.! " ?'l T {it ~1'Ko.

~ti~ UVI'1J ':'.'I:i"ti

CHOCANTE ! F'ol a expressio qUe maull nato usou ,quando· viu 0 resul tado oesta .. rot ina p·sla primeira ve'z ~"Parece uaa £.i lei.rade hoaenatnhos ! .: n ,E nao eque pa,rec:e mesmo ! Par at v.oc@ v! que ~ ,passivel, de forma mui to, :slmples r obter resultados eurpreendentea .. g so ir expe~rilltentando, poi~ b4 uma enorme quantidaae de cereas que vocs po~der a f azer ~ Nao pense ,que 0 emprego de senos e cossenOB fica limitado ao desenho de pol {,gonos (de trianQulo,s a cfrculos) . As,sim, por exenpl o, ha uma curva ondul ada Que util iz,a a propriedade do sene Q~ var rar de .a a .1 f a o novaraentEh. d,aia +L, vol tando a 0.., COUio representa 0

1 sene, est a curvs chama-ae sendrde au amusdrde .. Veja:

10 'atina 1.B:SINUSOIDES

;2,0" SCREEI~ 2

43

30 PI~4j!fAn~\i)'

40 FOR A:;;~ 10 8,*,PI SlIP2*P!i24 ~0' C=ii*A

60 l:;20*S [N (A)

7~l'Ie!:'Tfr.i, fl~flt' ~"Ev'lf 'A ,'U f;:,l .. , ''''f!:,. .I.~:v}.1'l ."",1 ,M

200 GOlD .2010

curva simpatic,a BaO ? Pode ser aprovei tada em indme-roa desenhos diferentes ~ Em 5'0 mul tlplicamos, 0 valor <leA, por 10 para d.a!" uma di'mtU1Sao adequada~ Confo,rme as necessrdades do desenho este valor pociera ser aai.or ou menot"' saaarcr, as ondas ficario mais l.a,rgas e se Il:endr aai s estrei tas. EJD 60, multipl icamo3 a valor do seno de A (que deterama a f·ormada curve) per 20, pol,s 0 sene e s,emp'fe aener do que 1 <voce j4 sabi.a disso). Var'iarido este valo:r as ondasflcarao mais au menoa profundas. Ex~ perimente. Be voc@ qui ser umasinus6i(h~; vertical e so trocar C par Le vice e versa.

Querendo queela se desvi e da vertreal t use ,0 velho truque do incremento. Assim:

'10 lRDt i l'Ia 7. 9 :,SINUSOI~EVERTICA-L DESVIADA

'I' ~ 'III

Agora tr ansforae tudo Duma escadar i a aaic:ionando: 75 LINE(C+lti+I~LJ-'C+12~+lrL+3Ir7B

F ai;a var i ac;o,es. HUG@ a POS 1 cao CIa curva, altere cs incremento (experimente faze-los negativos), altere 0 1"nlm.ero· de ciclos (eada crclo corr'esponde OJ 2*PI) , a ampI i tude e a. profundidad-e cas cndas, Una os pont.os da: curva a pontes em vctrias parte,s. da t.el a, Em resuao: fa~a PESQUIB.AS ! !, 'Vamos fi,car por aqui pais, case centrarre t este capitulo jamais ter4 fim I

Antes depassar adiante, entretanto, trate de reso 1 ver oa ,problema.s ~

1 ~ Desenhe uma estrel.a como a do lade escuerdo da Fig~ 7.6. Repare que um dOB lados de ceda pOllta eomcrde

com 0 ralO do circuloque Clrcunscreve a estrela ..

"

2 - Desenhe uma estrej a cone a do Iado direi to da Fi9. 7.6, onde as pontas sia Sim~tricas·~

3 - DeBenh:e tun oioha (Fig., 7 ~ 7) ~ repere Que os raroa dOB crrculos Que, formam, 0 g 1 obo var i am com 0 sene ~

4. - Desenhe uma cornucopia (au um berr an te :.se VQC@ tem tend@ncias a boiadeiro) como a da Fig .. 7 .. 8 ..

5 - Para todos os proble~as propostos at. agora~ vccs encontra :i,ndica'coes, raz,oBvelmentepre{:isas r das teem cas que poder i.o ser uti 1 i zadas, baatando jiar a. i sao que t enha entendrdo 0 texto. Esteprablema (4" diferente. Uoc@ vai ter que mventar uma tecmca .. Desenhe tim mOB .... trader deRAIDAR na sua formamals simples: um crrculc com, um rare que se dealoca no sent ide horar ro como ,0 ponteiro de um re16gio ..

N,a"o ee preocupe em f·azer osde.senhos exat amente iouai,B as fiour-as, quanto a posicao ou tamanho.. 0 qu·e importa 6 que voc@ compreenda a t~cnica para execut4-1o.

I

"

~.'~::.'"" ... ·l~.-,".-:-

"y .. ~ •. ~

~ .. ~,

~:;...--j··~71·· '. . •. " \ \' .. ~ -.......::::.. -~

- J',,\ '

- " -

Li'

FlfJ.l.6

I i

45

4.6

Fig. 7.7

Fig. 7.8'

8

DE,SENHE ! .t 0 equivalente·, 'ea portuQu@s, do coaan .... do DBAW. caracter rst ica impo·rtante do MSX, p'erlDcite uma serie de aplic.ac;oes., Pa.ra sua utiliza(;ao adequada. ent.retan.to, , necessaria compreend@·~lo hem, pois apreeenta

varias, modal idades diferentes. . r-

Eseencialmente, 0 coaando DRAW consf ste em, (leterminar que 0 coaputador trace uma reta, da posi.;.ao corrente do cursor e coa um ntimero especificado de pontoB" na air et;~o que dese jarmo·6 .~ Vamos coaecar COlD as d i r e<;oes ba.,;o srcas, simbolizad.as par letras:

R - para a direita (Right) L - para a esquerda (Left) u- para cima (Up)

D - pa~a baixo (Down)

Assim,se quisermos um.areta para a di re i ta, con 50

"pixels"' de comprimento, digi taaoe DRAW"B.SO"'. S'B r alem

di.S5,O'r qUlsessel10s que areta continua.sse 50 "pixels" para baixo, 3'0 pa.ra ,a 'esquercla e 100 para craa, a. mstru~ao aer i.a: DRAW"R5·0 D50 LJ,O UIO·O" .. Os espacos entre as direc;6es podem aero sup,t"imidoB~ Experimente:

Repare que 0 desenho ests local i zado proximo so canto superior esquerdo da tela~ lsto porque, nao haven .... .0'0 uaa determina~ao ·ex,pressa,. &0 pa5;sar para SCREEN 2, 0 cursor est.a em (0 pO) e af coneceu 0 nOB90 desenho , terninando , e cl aro , ell. (20,30,). Nao acredite em minha paIavr al F,a~a as contas .. Agor.a" apaoue o deaenho digi tando CO'NTROL + STOP" Em seguida diglte "RUN par,a roda-lo novamente. SurPresa ! 0 desenho nao esta mai"s no aesao Iusar

47

e silt um POU(:O ma:is· aba:uto .8 um POUCQ, mal,S p·ara a difeita ... Rep! ta o proceeeo. Mats \DOa vea e outr a e mais 'OU:tra, se voce eont inuar fa zenda ' isso, 0 desenho vat deaaparecer ap6ssuc~3Sivos d~s'locamentos p·ar·a baixo!' para a direita. Sabe porque? ~ claro gue silP~ Cada vez que ~ ex,e,cutad.o,· 0 dtU3e,nho com.ec;a na tll tima. p'o9i~ao do cursor : (20.,30) p (4.0, r 50) t (60 f '0) J .. ~,.~ e assilJ 8UC€!,5,Sl vamen te '. Par a ev i tsr ·1 fU3·'O 'p d,eterlli ne UJI ponto de part 1. da ,. acrescentanso, ,em 30r 0 conando P.s.ET" s,eguido das coordena.das que voc8PFeferir~ Pront.o ! Um novo m~todQ de tracar retae hor izontai s ou verticaisem qualque,r ponto da tela ~ \1oc& hci die perguntar: "que ext,ensioPQde ter a ser i e de instru~oes entre as a:BPas ?" ~ No max i.mo ate 25S caracteres. De'poiS e ·precisocontinuar com um novo comando~ Veja que rsso nOB penlite fazer comp;OSi~ae5 bastante extensaa, sem necessrdade dee usar LINE para cada

ped·aco do aesenho~, .

outra corea interessante. Digamos que vocs desenho qualquer e quer rtlPeti~10 em outre pon;to 1 a. Mao h4 necessr dade de ,di..gi. tar toda aqu-e:l a Basta voe@ Bubstitu;(~la por umav.arf4.vel STRING':

ii, 7R.TIt ~ lUI. 8 ~2::REfrn~5ES

20 SCREEN 2:

31 A$~uRil 011 LII Ule" 40 P SET( 50 ~ '50) :DRAW A$: 50 PStT(601i00~JDP.AW #1$ 6 ~ P Sf J ( 1501 T 9@) : DRAW Ai

fez um da. tel i.nha.

• 11 II

P-rciti co 0:8.0 ? 0 desenho do exem,plo e mui tosimpl tU~l.

Mas V(H:!: j.4 se imag'i.nou tendo que repetlr WI) que foe,s,e bem (:lom,pli ·ellde?

CQ,mo de costume, fa~a expe·ri@nciae ate ficar ventade ~ Mas nao s@ esque~a.: 0 desenao Be,rripr-e Be onde @st4 0 cur sor . SeVQCe nlio qui eer que e 1 e cada repetl;io, trate de f~x'-lo com PSET~

A esta. al tur a t ,B@: voe@ pr at i cou bast.ante, j" deve est ar cansado de her i eon ta i sever t i ca i. s a.pena.s ~ At 1 Ita I deccn t as i ate 1 i mtt a ,dem·1 is os nOSSl}5 anse 1 os art i at i -

bem a iOleia mude a

4.8

cos~ Que tal umas retas inclinadas? Nada 'Tem.OB m.a..is UDS coaandos a nossa di5P·osi~~a.o:

, -

'.

malE!

facil~

E para cima·e para a direita

F ~ para, baixo e para a diretta G para baixo e para a eequerda H - para cima e para a esquerda

Mao V10U insultar=a eua inteli.~incia dando ex@mplos.

Use esta . s instru:~l5es exataaente como fez com as outres .. Experimertte,. fazendo coisaa maia compl rcadas ~

J4 se.], .. Ainda esta fal tando a1guma. eei.sa. Estas nevss unstrucdee 86 permi'tem reta'.5· com ums ,inc} ina.~·iQ, '(le 450e assim" amds fica.mos mui. to 1 iLmi ta.'c) os ~ .Bem, tr acar retas com Outras inclina~5es tamb6m ~ f~cil mas, para iS50 vamos: p'rectsar de outro eonando: McO.' El.epo.B.sue du .... as al ternativas. Na primeira digi tamofh aepoi.s Qe DRAW, M seguido de duas coordenadas que representam o p.onto final da reta que desejamos trj,ar e que comecar4 onde 'est 1 ver 0 cursor no momen to ~ N:ote que E! um coaandc a.bs,ol uto ~ Qualquer que se ia aposl~ao do curscr, 0 ponto fi.nal sera SEMPRE 0 ·esp'ecifl'cado pel as coordenadas ~ Nunca se e.!ique~a dapos i <;ao ante s do coaando PIO i a, se 0 fize'r os resultados serao bell extr avaeantes .. E.x.perimen~ te local i sar Q cursor nun ponte qualquer da tel a, com 0 coaando PSEr ou com UBI. desenhe do qual v't1,ce conheca 0 ponte final ~ Bai tr ace uma seri-e' die; retas (e·mendadas 'U$as a.soutras, natu:ralm,ente) r em tQdasas' direl~oea

possiveis ... Assim,por ·exemplo; .

10 ~ ROT U4A' e •. 3 ~ Cm'iANDCM[ Ale 5 O~ iJT ~ !

20 SCREEN· 2

30 P8E T (he ,11 Q )

j.(Ij I'1rn;'i.Jf"'l>"~h';l l.l!::t"·H1 1-'0 "~;I]; 3''1.'"·!'i'' ,f'.;11. ,liJil.l\I; t~.&P ~~ !!I1l.MW- fil :~~ ~ O·~ f1_ ~fl!' t/ M)l,t/:o ~ M1:d1 ~ k;j~ ~'!ciV do ~ 'I.{

2" GOTO 200

Funcioria h@m nio ? Repare que a s4rie ~e instruc5es en t re as aapas nao t@·m qua l(luer esP,E&c i e de slepa.r,a.~io '" Ate mesmoo intervale entre etas pods ser .suprimido. Vo .... c@ pode" t ambem ,f.azer aqu 1. a' Dlesma cor sa que fez na ]3:0- tina 8.2 e substi tuir UII,a sequE!nclii de inetrll~.o,es per lima vari'vel STRING e repet:('~1a 'em eutrcs ponto.s da tela quantas vezes qui.s.er. g m@;smo mui to c6modo.

49

A outra al ternativa. para 0 comando M conai ste ,em[ fixar 0 ndmero de "pixels" que 0 cursor deve percorrer~' tr a~ando uma reta a partir de sua po,sic;ao corrente ii AssiIL, POl' exemplo,; se ele est iver no ponto (100,100) e quisermos uma, reta ate o ponto (10,,150) r devenos digital'; DRAW"M-30,+50". Entendeu? Subtraimos 30 de 100 pa~ ra que 0 nmn.e,ro da co luna passe pa.ra 70 'e adrcronanaoe .so' a 100 par-a que 0 .num'ero da 1 mha suca para, 150., Para se familiariza.r hem: com 0 processo, exPerime,nte:

1& liD 4.' -. e ;!I "1"il.MA!>1D- II NI .' ''10 ~ j.' -" V III.OL Hhl Q • .., ·!JV!1I"lIT· ... ' n tr i i a~ nlD.r

20 SCREEN 2

30 PS·E:T (1S0r 60')

A,0 ,D·D ..... t.IIll'U_7r,. +·i~<'l!, 't.i~3;'JI -'3"" M" ~~~ -.d1A "'-1'3'& -3"" u+~3·G. _;:"a.,tt

~. l'iFl\.il II i'll, .. llV n ,1!7, .I. ~ IrT.J.~)~;T.!. V n "'Or' 'f1 n ..... 1:1" ;J'U

200 GOTO 2001

E cl aro que VQC@, pode usar uma, var iavet STRING no 1 ug1ar de umase'r i e de i nat l'u~5es" Pode , tambem, mi stur alae a. vontade, n,aa so com. outros coaandos DRAW mas c'om qualquer um doe outroe que aprendeu ate agora.

As POB:S i hi 1 i dade,s de' DRAW a i .nda nao termi nar am .Ha~ v'6ril ocasioes, em que set:a. necesear ro al terar a, posi~ao do curser sem tracer 1 inha al Quma ~ j so. colccar um. B antes da instrucio. Se, ao in.ves de um B, . voc~.colocar um N, 0 tr aco ,sera desenhado mas G cursor' vol ta.ra a po~ si~ao inicial e dai comet;a-ra 0 proximo trac;o .. Analise- a rot ina seguinte, onde u.samos todos os camandos DRAW explicadosate agora, misturadoB coa LINE' e CIRCLE:

ie 1Rot~n'i S.,5:COM.AINDOS H, (abso,lut.os i tE'ht J\,'Os,)., B £ Ny ccmbin:ados (Oill L.INE € 'CIRCLE

20, SCREEN 2

~4 LTUE/~~ 6A'-'O~ .~~\ B .:I'lli I ,l,,:ll:. h.h.J ~ ., .. ~ l' -l!;h.! r 11"tt!' ,f 1 f .

"·0 A· r_~/l\M'r"" U1t U'+"l0 .,~ 'M+'J.~ +",,:'A M .AlI. .tin~DDM.1 All

'Af . .1';;;;;;; Oi,.,.!'V.,O,,'q n· £.1, 1 .. -~¥J fl'~, !..\I:,.. r..V n-~'O ~" Ii _ f\t'lW 'J.

50 B$:!lSM120r100 R6 iL4 U20 R2 D20 B~123,,90 NGi0 WL15 NH10 N1l15 t4El~ N'R15 NFHft : [}R A'W B~

6. CIRCLE(123180)r15,,5.5~3.9fi 20t 1301Q 2'00

Vejamos. Em 40 conatrutnos 0 CQrpQ da casa.. Depo] s voc! coloca porta, e janela,s., 0 cursor ficou Iocal iaado no ponto (BS, 100). Em 4.0, leva.o,s· 0 cursor, ,gem tracer

50

linhas, at' (50,60) peloB coma.ndos B e M (abscluto) e, ell cont.muacao, ccnatrumoe <0 telhado com coaandos M (re}.atlvos). Em SO fabricamos 0 trofircoe os ramoe daque- 1a espt!icie de' irvore utillzando, ,para estes III t mos, coaandos N 'que fazem o cursor vol tar ao ponte de partida a. cada instrucio nova .. Finalllente, em 60 fechaaos a copa da ~rvor·e co. CIRC'LE. Repare que nao .E§ um ctrculo conpleto, coaecande em 5.5 r'ad'ianos (lIS.} e te·rmina.ndo em. 3,9 radianoe (225)~

Proc:ure apl rear estes ccaandos t odos ,', al teran.do a. f,orma do coree da casa, do, telhado e da arvore , Experi'me,nte fazer com que ela se ..pa.rec;·a, ,mai s com uma arv'Q,r'e' de verdade ou, se ficar mui to dlf1,c:il t t,ransforme-a num moinho de vento ~ ~ .

Tambt!m e pos!;I:Cvel empregar variaV'eis em ,c:onjunto com DRAW, 0 que facilita muito, 0 nosso trabal.ho quand,o teaos necessrdade de uma ,sequ@'Dei a de desenhca, Di 'ga.mos ,que v,oe!! desenhou uma casa e agora quer col.ocar uma cerca. S 'fieil fazer:

fA ~nn~I~'A B' l~C~DrA

'1':' ~ '" t '. i'<H _" ~I' ,·.el'l.,-,"'

I;1lt C::("'D,i:;"i:"N'! :1

-=:.'IfI ,,,,l;-f\.I1:.,!;;.,. ~

~A F~C C-ta T~ l~a ~J'EP ~A 1oi~·\l·.1!j. .·-;:ttl ,v LrJ~1 :::'I .n: ~' l~

4'~ An nD~A ~n ·U~· L7·~

w M'~' .I~~ ~O : r~f~ I ; •

50 PSET(C.10JrDRAW A$ 60 NEXT C

70 sere 71

Ora'! 'Voc@: vai drzer que, pa·r·a fa.zer i sso, nao be§. necessrdade de DRAW" voc,a pade faaer exateaente a mesma co i sa eon LINE ... ;, ,j B I, Cl arc que pode, desde qu·e seu desenho fique limitado a,guadrados. e retAngulos .. Ma.s se o carpmterro que fez a cerca era capr i choeo e resolveu ternmar OS topoaen pon ta ? Qual e ,a sol u~a,o ? usar DRAW, f,azendo:

40 Ag.,='''D50 RB U50 H4 64/1

P·er,cebeu: a. ,vantagem de DRA,W '1 Torna pos·slvel a Be'" quincia de desenhos que podem aer bem complic:ado,s .. E tem. mai.s .. A s.equ@ncia nao precrsa ser obr rcatcr i esente num,a linha reta ~ Pode ser - UJl1 crrculo , uma el ipse au curvas

51

aai s cQmplexas. a medida. que voe! Be iProfundar na tr-rgono.metri.a, ~ Veja, po.rexemplc" qu'e bela coroa CIt eatre-

las: - .

10 ~R0TlnA 8 J~ CORo·A DE ESTR{;LAS 2:0 SCREEN 2

30 PI=4*ATN(i)

40 FOR A=@ TO' 2~PI 'Siu .2lPI/12

~& v~ll·~+t~ICT~(A~~v=~i+~~~t~ciAJ· ..it.' A .[. W ,J'fJ .aJlf!! i 7' <;} "J~' I.r\;l~n H

,60 A$:;;IJR t2 [8 D12 FS: u 2 G8 U12 Hst' 70 PSET\ X r Y) =DRtiW ~I

B0 NEXT A

200 GOlO ~e0

Entendeu 0 IU!.can i sao da co 1 sa ? Rep,.) re que usaaos ·P·SET para determ.inaro PiONTO INICIAL de cada repeticao. An tea: hay! amos usadoas coordenadas X e Y para 1 ecat i z ar o CENTRO de novos c;(rculos~ g preciso nao esquecer desta peqUena diferenca poLs se nio 0 fizermos nosso dese~ nhe pode flcar um peuco .fora da posicao dese iada,

outr a mane ira de usar var iilvei s e empreganao. una reptesenta.c;.io a.lfa.-numerica das m.esu.s atraves do conan·do· SXR$ .. Asslm:

As.equencla. das instrucoes e d i fere:nte. Voc@ est a.be.lece a dire~ao (entre aspas) e adicio·na a' eXP'ressao alf.a~num~rica da. vari~vel (com OU sew 1nCFEunentos, conforme a·s necessidades) .. os resultados' s10 co.pensadore!l~

Use este tecnicae experimente fazer uma. espiral de 1 OB·ang,os , de helCagrOnGs au outraa Ercuras geometri.cas di~ tadas pela. sua f~rti I imagina<:ao .. As possibi 1 ida.:dies sa,Q pr a t i caaents tnf in i tas, .pr i ncipalmente Be voc@ mi stur at' es.ta t~cnica .. com otltra.s que jei dominou~

52

!

g claro que voc~ pode colorir feitos com DRAW~. so preceder BUdS Ietra C acom,panhada donumero da cot ~ cada linha indivtdualaente:

OS seus desenhoa mst.rucbes le,om a voc~ pode colorir

Nada de especial a coaeatar a,gui .. Hao' erero que voc! tenha al;uma lhlvida a respe.i to de como usar as CO~ .res neste caSLO ..

Ag,ora temos uma IDattucio dlferente. Se' vo.c@ achou que seu des:enno f i COU Ilui to cgrand e ou EAui to. peQ'ueno I! nao preci,Ba tl:o,car todos os nUmerlos ~ Ba,sta preceder a. ser i.e de instru~5''eEf cam a Ietr a is, seouida de UDl iutm.ero a:e 1 a 8. Dividindo este nt1me:ro port vo,e! tera 'Q fator de redu«;a.o ou auaento de seu desenho ~ Obviam@'nte S4 sera 0 tamanho noraal pois 0 fator f'icara' ·igual a 1,. Experimen"'" te fa,zer i.sso na Rotrna 8 .. 9,. col ocando est a nova mstru .... C'ao logo apos as aspas., precedendo as outr as:

Um,! \ll t ima instrut;io para ter.'lJinar 0 conando DRAW • Precedendo as instru~o'es con a. letra. A segu:ida. de 1, 2, ou l" vocs fara g,l,r.ar' seu desenho de 90, 18,0 ou 270, respect i. vamente .. ·,\0 faravol tar- a posi ~ao or i smal . Nao deixe (H~: reparar que a rota<;io, E§ fel. tao em tome 0,0 ponto inicial do de~enho. No casb da rotina 8~9, em torn~ de

(129~. 96) • '.

AQo,ra procure reectverce crcbl emas p,ropostos.: uma,

1 espi ral de Iosancos fProb .. 8.1). una espiral de h.ex&Qono!,

(Prob@8~2) e a casa da Fig. 8~1 (Pr6b.8.3). Quanta casa n'aa ? d queela,s. prestam-s.e admiravelmente para a. i Iustra~~ao de empreg,Q .das t~cnlca.s de eada capitulo A .N1esta

5J

dl tima procu:re util.izar ao m.itximo os ensmsaentce do capitulo 8" embora seJa possfvel desenha-La com outr as t'cni c,a,B ~

Fjg~ 8.1

54

_,

SDLUI(:OES DE

,PR'OBLEMAS

capitulo 1

10 'cAPiTULO! - PROB~ ill D(DESENHOS COM PONTOS}u '"'ij}, srI:) EEN- 2"

,~t' ' I,.rj.\, ' ,

25 'G~adriculado d2 pontos

30 FOR C=20 TO 68 STEP B:FOR l=f0 TO 58 STEP 8fPSET(C~L):NEXT L~NEXT C

35 FParlle)~s vertiEai~ ,

4~ FOR C=75 TO 123 STEP B:FOR L=10 TO 58:PSETCC,L):NEXT L=NEXT C 45 'Paralelas horizo~tais

50 FOR C=128 TO i73=FOR L=10 TO sa STEP 8:PSET(C~L):HEXl L:NEXT C

55 '.'l .!Ii. .. d h·

, \JUaOlr I ,CIJ 1 all C:! Ul

63 FOR &=180 TO 22B STEP 8:FOR L~10 TO ~B:PSET(C,L}:MEXl L:NEXT C 70 FOR C=1B0 TO 228:FOR L=10 TO 58 STEP B~PSET(CfL)~NEXT l=WEXT C 75 YReti5 ern todas as diretie5(algu~as, pel0 menDs))

,80 C::128~L;:110

n~ P-~ET-(C- L'·C- r+1-·f !£CIIF crt~0- THE~ '9~

?v ;J'. 'r 1 I' I ~v .. L = _ T ~ • _ _' I.".J _ : "'"1 C "fJ

100 C=12S:l=110

11& PS-E'T(C L)IC-r+c "L-L 1·TF' r(-1~a THEu 1i4

,'U' ',' IeI' ,r,i ..... '~ ~II ~""';ol W ',j~ 'CI't"_ V

i20 C=12'B::l=i10

.4j '7l':i PS-'-ET r r 'L' I ("-C' ,J;, ~ -IIl .... l+· I "' I'!:' ("11 ~& TH'E~~ .( '3'1':1

.I. IJ 'Q' __ , . l_ \!" - I lIlt'"' . T ;; t:I. _- -')l II 'Po t. 'I .JV I" _I~ J. '}'

1+1 C~12B:l=11e ,

1~0 PSET(C.l):C=C-~5:L:l-2:IF L)60 THEN 150

1 LI'l i" .... 1 "0, Ii 'l-11- a

Olf} ~ .. ," ',c;,o '" _ ,- _V

170 PSET(CYL};C;C-2~L~l+2:IF C}S0 THEN 17e 181 C:=i2e~L;110

, 190 PSET(C~l}~C=C-2:L=L-.2:IF C}~0 THEN 190

'1&1':1. r'- .. t !l'8"" .' - i illt. ~,,,,'U 1.J-.!I.L~l~., v

~~~ p~~T~/r l),Ir._~+~~l~lL ··I'F r;~04 THE~ 21'0

'::"J.'I!i\I' ;:;lie:. U""T "~, ... ,-I:"",,,, .. ,-, T,".," __ u.,c,·'V·"l _,1'1,0.,,'

.'"I3~ . 'HIE· ~ ~ oF., , r''1l:'E: 191 \ B " v L.lrr d!ll'~}- :t..1JJ,'/ FF '

250 Goro ,250

55

o pr10.CeS30 pode ser urn pouco tr aba Iho so mas e bem '9 imp 1 es :No case d as 1 i nhas 1 nc I i nadas ,. ve j,a 'que e PI ecisoestabelecer as coordenadas inicia.s de cad a linha. No case pr'esente , todas cceecaa no, mes,mo ponto (128. 110). Alem disso e necessaria estabelecer 0 incremento f! ond e a. 1 i nha d eve te.rmi oar (0 que ae f az pe 1-0 coaando IF .. '. 'TH'lEN ... j , 0 desenho foi col ocado centro de uma .moldur,a, deeenhsde com a mesma tecmce de tr scar Lmhas com, PSET,. Voc@: vera, m,ai.s tarde; que h4uma - forma, b@'.m .mai.s simp! es de se obter 0 lftesmo r esul tado ~

capitulo 2

10 1CAPiTUld 2 - PROB. 2.1 eXADREl E GRADE) ,20 SCRE.Et4 3

25 7Xadrez

3~' FOR C=40 TO 100 STEP8:FOR' L=6' TO 12~ STiEF S;:PS'ET(C.U ;:NEXT L,C 40 FOR C=44 TO 96 STEP 6:FOR L=64 TO il6 STEP 8~ PSIHC,U :NEXTL .c 45 'Holdura do xadr€z

50 FOR C=36 10 100:PSEHC,56):PS:EHCf120.)Ut!EXT C%FOR 1.=5~ TO 120::pg·ET(361 U :PSEt {U0 tl HNE~.l L

e]:: ~'G d

.JJ Fa E"

6,0 FOR C=i50. TO 210 STEP S:FOR L=,M3 TO 120 STEP B~PSEhC,.U:NEXT i.c 65 ~HoldYra d~ gradE

7& ro'!} ,i" 1- 4" TO '11ii; .Or-ET I'C' ;'" ,[I,SI"'''' (C i"l~) -lIE' X'T C '·F ..... n L ... ' TO~ i'JIo·· "'SEc 'T-' i 14 v r :" ~,= . b .. (. 'fr" r ;j I \ T';;:O·). t . t j . :,~ t7 . 'q{ ,': .' . ~J!\' .:: ~ 0 . : ,.,"~. r _:_ '.. _

6,L):PSET(210rL):NEXT L ii0 80TO 100

Aqui ~ empr,egamos a mesm,a tecnrca que no 'Capitulo anterior par·a tracar linhaspontilbada,s .. - A diferenc;a ~ que fOl neceasar io l evar em conta.CJue cada ponte (ou quadrat1inho. ja que estamoB em BCBEEN" 3) tea quatro :"Plxels·jf de Lado , 0 xadrez ,e;, na real rdade , a. combi.na{;,ao de duas grades d,@f.asadas de um quadradinho em coda drreca.o. Sim,plea". nio ? .Nao se esque<;a de tudo a que· voce a,prendeu at!! a.gora e tudo 0 que aprender (I a. qui pa.ra diante aplica-se, com rar as exce~oeSia SCREEN 3" m.as se voc@ esquecer do que fal ,explicado quanto :~s diteren~ cas nas eoordenadas oa reaul tado f in.ai IS poderaa ser muito extravagantes.

56

capitulo 3

10 ~CAPiTUlC 3 - PROB. 3~1 (CASA) 2'0 SCREEN' 2

25 'Telhado aUo

3li. lINE (" '1':- iC',I1;' - f I:. a.' 1 ,1). '\ ,; L- Hi·E t 81:' C'.r;. 1 ii- LIN E- ·1 '1 t' C' A , _ fI • ., - i. ':'1Jr ,,J'I!h - ~ 'iJ ,,h . 'fI1 10 - -0, ft -, - ;J,...it} , I, . _.:_ -" 1:..;.1 , J 'fI ,~

35 !Corpo da casa ('incluindo mol dura da porta)

"0 -LliiE.f1& 1:1 ~ 's,a ~~ _ .iLlIolE- -( SA 1"\11,) i L'IlI:'E- ,'''lit.. fI,\ \ .1, TN·E _ I ")1- fA. ~ C'/l) -LIiiE t t '""if, _ 'I~ ~,",'II.,,j, i~\'fJ,.JJ.1. -!r'_-'~/T711{j-i _".:_- ~'~~lfJfILl - -;'~'_W,.tJ,-;I_I' ,!'f--'\O._,l

f 15;0} ~LH4f-( 651105 )~LINE -( 45:7 1:05}, ~Ln~[~~(,4~ l' 15,0) :.LINE -{ 3'0 r 150) :LIN'E- (30,51 )

45 'T!lh~do infErior

~a lI.-lrIS-4 ~~)_(~.~ Rft, D ..II:'! _ f'i'i~ ~ .. t,JJ f. J.,J ~ C! 7 .I' n D

55 'JanEla su'trior e porta

60 lINE{ 45 ,58) ~i 65 r '0) 1 r B ~'LINE'( 47 r 60).-{6:3,8a) r.fB :'LU~E (477107 )-( 63,150)' r ,fB 65 ~jan~las inferior!5

71 FOR [=87 TO 197 STEP 30:l1NE(Cl1'S}-(C+1B~135)fTB:NEXT [1FOR C=B9 TO 1 99 STEP 3-0 '; L! Nt (' C 7107 ) - ( C t i 4 T 1 ~;3) n B :t;fXT C

100 60TO 100

Te:nho a certeza de que voc@ nao teve problemas para desenhar a. casa e que tambem nao fi cou anarr ado ~ POS 1 - ~Io e ao tamanho daFig. 3~1. 0 importante e que tenha coepreendrdo ,0 mecanismo da coraa, principalmante a mane i ra de faz,er repeticoes de um desenho, como no case das janela,B infer,iores ..

capitula 4

Ie 'CA:P' ITUL04 .: P,ROS. 4~ i( E'XPEfUiNCIA ~Q 4) 20 :SCREEN 2:

30 C=t:L;;0

40' LI~E (C rL) ~~255-C ri) : LItlE (C .. i 91 =U -(255-;£ ,,191 ) 50 lINEfCrL)-(255-C,191):LINE(255-C1L)-(255,i91-L) 6i LINE(C,L}-(0f19i-l)!LINE(~55~C~L)-(0,191-l)

70 LIUE{C7l}-(255f19i-L):LINE'Cri91~L)-(255-C,0) 80 C=C+S=t=L *6,

1 90 IF C{2~6 THEN' 40

1a.tl L'ttllE' 'Ii. F.' '2- C'''C' • IJ.( -, BflV'_ nt.l!PJ r ~n'-,~ .,hlt 17 ,if n'

2'0'0; BOlO 210

F4cil ? Claro que ,~ Experimente colorir as linhas.

57

Bem simpleB~ Poucas instru~oes definindo tIll desenho

aparentem,ente campI i cado, .

5,8,'

1

t

BAJA PACI£NCIA ! ,Bealm,ente e uma rot rna bastante' l onsa e mon6ton,&. 1\0 aesao tempo e extracrdmar t aaente ,B,imples ! Foi' mtredusrda deliberadam'ente para ,1,1ustrar a vant asee de se f,a:zer 0 deaenho num pa,pel quadr i cul.adc antes de ,elaborara rot ma. Oesta forma voce obter a, antecipaaamente, todas as suas coordenadas e 0 problema reSume-se na escolha da forma mais econ6mica de executa~ 10. ,g dbvio que h,a. outraa ma.neiras de se f azer ames:ma co i sa empregando'~" por exenplc t 0 coaando "DRAW" e sues varia<;oes, 0 que voc& aprenderct no Capitulo 8.

Na real idade" cre ic que a sua naror duvida nada tell a ver COlD 0 desenho , Esta nease esqulsito noae de lII'velame redondo" apl icado a ve las evrdenteaente retancula,res. .Ma,s, esse e realmente ,0 terao usedo , Um; navro ap'arelhado c.om "ve l as redondas" echamado de "navrc redondo" '"

59

capitulo 6

10 'CAPiTULO 6 - PROSI 6~i CXADREZ COlDRIDO) 20 SCREEN 3

25'Fu1Ido ~mar£10

30 LINE(36,56)-(100,120)"BF 3S ~Qliadrado5 v~rMElhos

40 FOR C=40 TD 1001 STEP B~rOR L=60 TO 1.20 STEP 8,:PSEHC ~U ,8!NEXT LC 50 FOR C=44 TO 96 STEP B=FOR l;;:;64 TO 114 ScTEP e~PS'tT~ c. U rtHNEXT i.c

55 rmolduri do xadrez (Pfeta) -

60 lINE(36r56)-(i00,i20)rrB

100 Gf)TO 100

Como voce percebeu. n~o h4 necessidade de pintar os quadrados am,arelos. B,a.sta. fazer 0 fundo ama,relo e pintar os quad.rados vermelhos e a. m.oldura por c uaa. t craro que tambem e poss,ivel pinta,r os quadrados individualmente e, em certas oca~i5es 15$0 sera necess4rio. Repare. tambem,. que ao usar cores ,e prefer rve 1 fazer 0 fundo oranco. Usamof$ 0 coaande COL.OR 1,15',15. 0, fundo e a margem ficam. brancose os desenhoB pretoB, se a cor n.ao for especlflcada.

60

uS.amosa,qui tecni ca ld~:ntlca. a que fal emprega.da para colorir a tabuleiro de xadrez, pintando tbdo 0 corpo da casa e aplicando as janelas e a porta per Clma.

capitulo 7

No caso da l~ estrela, um dos ladoB de cada ponta corresponde ao raio 00 cfrculo que a circunscreve, 0 que faz, COlD Que a estr ela nao se ra enmetrica. oarecendo uma ~erra circular com os dente§ compridos. Diminuindo 0

t aaanno e aumentando 0, nllmero dOB dentes voce tera uma serra perfei ta , Pa,ra que a estrera fique regular, e preciso determinar o~ pontos extremos externos (X e y). e os pontos internos (Xl e' tIt X2 e 12) t· iqualmente afastados

61

dos raios que passam por X e Y (+PI/12 e -PI/Ill. Diminuindo este ,a:fa,stamento (par a PlIo OlJ PIJ3), voce obt era estrelas entrela<;adas.Experimente ir a.uinentando 0 numero de ponta,s aern al t.erar 0 aiastamento.

it 'CAPiTULO 7 - PROBS. 3 e 4 (GLOBO E CORNUCdPIA)

Fq, "'C-REr"'u ~

r!~ ~~_. ·it.n: L

30 iJN,E~~~0;~(i26.i9i). rB:lINE(130,,~2-{255~i·tU ff8 40 PI~4tAnH U

41=. 7r';1"'b.l'I. 'wi !J ,l i.! '"'

5:0 C::0

60 FOR A=~ TO P I STEP ,2~P 1/48 70 R'"'40*Sl f~ ~ A)

ae CIRCLE {[:+40,. 96 } • R

90 C=:C+2=NEXT A

'9-1:' f ""'''rnu''!'' ~,E'; ; -.. " .", 1,;j~;J II; ,~v" iL«

100 R=2

110 FOR A:.:0 10. 4.5*PI STEP 2*PI/48 12~ C=20*SIN(A}:L=i0~A

~~d ~7~P! ~1~AJ+~ 'L·~a\ D J.~f.l' '-' I Ili I.tLl;. \ '::~'v !" f' 1's.tJ ,d\

l'~ ~--R ~·I~ D'?A TH~M ~A0 l':l~ ~- T,;;!Ll" !'Ii- .. tt'r ,tn: let'

150 NEXT A=GOTO iii 200 ~CTO 200

No desenno do ,globo I 0 r aro dos ct rcul.os que 0 compoem va:riam com 0' sene de A (mul tipl rcado par 40. par,a

que tenha um val.or s i qru f i cativo) ~. 0 cent.r o deat es cf r>

cul os des Ioca-ae ao Loneo d,a Lmha 90, partindo da colunil 4[0 t com urn mcreaento de 3 pontos de cads vez ... Quanto ~ cornuc6pia, temos uma B~rie de c1rculos crescentes cu ioe centres dispoem-se a.o Ionco de uaa amusdrde , com afa.stamentos detenninados em fun~&o do valor de PI. 0 :nUmelI"O de ondul acfies da cornucopia e oe,ternfinaew 110.

62

Percebeu '0 truque 1 N'al inha 80 desenhaaos uma 5-6- r i e de raros que vao do centro do crr cul o aos pontos do mesmo, determinadoB na linha 70: 0 desenho fica dando vol tas po i a, na linba lOO,ao·inves de fix.a-lo como de costume f remet&m,o .... '1o de vo l ta ~ 1 inha 60. 0 r esul tado ser i.a umi circulo recheadc de raroa se na,Q fOBs@- a cont rnuac~o da linha 80 onde. para cada raio desenhado, imediatalDent@ surge outro que 0 apa,(JCl, uma vez ,que tem a cor' do f'Undo (4:) ,. ',0 resul tado E uma i I usao de' m,QV i aento . Para que eate se fa'eel no sentrdo hor ari o tnver teaos , na linha 70, as pOBi~aes do seno e do cosseno.

·capftulo 8

o problema aqui ~ ia~ntico ao da espiral de quadrados descrito no Capitulo 8. Realmentet a-anica diferen~a ~ ajustar as dire~ae3 e 03 incremento5 para obter a tigura desejada_ Experimente fazer 0 desenho dOB hexAgonos na SCREEN 3 .. De-pais tente modific.ar 0 doa Iosansos para o m,eSDlO fim ~

63

Aqui a casa fOl desenhada: usando, princlpalmente, OS recur sos de DRAW . 0 corpo da easel toi desenhado em 30 e' 0 cur ear f i.cou, portanto t em (lBn, 130). Para desenhar o te lhado des Iocaacs 0 cursor para (180,80) sem t.racar uma reta, usando 0 ccaando B antes das mat rucoea que o definem (em (0). As janelas superlores sio retangulcis. A sf§rl,e de portae (desenhadas em 80 sem a parte sueer ror) ~, encraaca por um arco de aspecto mourisco" obtido com uma. meia eli.pse hem, acentuada (em 120) ~

A P8'rt tr da prdxima pli,gina, existsl1I' var,ias totnes com 0 tormato de vdrias SCREENS de quedi.5P'ollloS' no MSX_

US,(J-as para preparar rascu.nhos dOB S8'US desennos (eB,SaS, bercos, bra,soesJ naves espec iet«, etc).

DepOiS oo rescunno pronto, iica,rA su it o 1IIi!l.is f4ci 1 local ieer es coordena,das (ponto5 X e Y) onde serio dados oS comand05~

64

.1

]

4 I

J '

1 I

--

1

,

Você também pode gostar