OldComp.cz

Komunitní diskuzní fórum pro fanoušky historických počítačů


Právě je 28.03.2024, 15:39

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 100 ]  Přejít na stránku 1, 2, 3, 4, 5 ... 7  Další
Autor Zpráva
PříspěvekNapsal: 09.05.2020, 22:33 
Offline
Profík

Registrován: 15.01.2014, 20:08
Příspěvky: 782
Bydliště: Šlapanice
Has thanked: 129 times
Been thanked: 97 times
Nevěděl by někdo algoritmu nebo programu (ideálně BASIC pro 8bity) pro „čárovou“ grafiku viz obrázky níže. Snažil jsem se něco najit ale nedaří se mi nic kloudného najit. Našel jsem akorát ve VTM programek ale ten je psán v PACKALu a s PACKALem vůbec nekamarádím.


Přílohy:
obr2.jpg
obr2.jpg [ 75.94 KiB | Zobrazeno 11980 krát ]
obr1.jpg
obr1.jpg [ 62.62 KiB | Zobrazeno 11980 krát ]

_________________
Ne všichni jsme měli z češtiny za jedna, aneb jsem dyslektik a dysgrafik.

http://www.sapi.cz/
Nahoru
 Profil  
 
PříspěvekNapsal: 09.05.2020, 22:52 
Offline
Profík

Registrován: 21.10.2018, 08:27
Příspěvky: 559
Has thanked: 278 times
Been thanked: 139 times
Pokud nejde o stejné obrazce, tak třeba inspirace zde:
https://www.google.com/url?sa=t&rct=j&q ... ppKrJf30ya


Nahoru
 Profil  
 
PříspěvekNapsal: 09.05.2020, 22:54 
Offline
Óm Nejvyšší
Uživatelský avatar

Registrován: 07.07.2019, 22:14
Příspěvky: 3766
Has thanked: 269 times
Been thanked: 452 times
Není to přesně ono ale myslím že by to mohlo pomoct. Příšerka z vývoje PMDGRAFu :-) PMD 85 Basic N=8,x=50,y=60,r=30 výstup Obrazec 1.

Kód:
30 DIM P(50),Q(50)
40 GCLEAR : SCALE 0,100,0,100
50 PRINT "VLOZ POCET VRCHOLU N:";
60 INPUT N
70 PRINT "VLOZ STRED OPSANE KRUZNICE (X,Y):";
80 INPUT X,Y
90 PRINT "VLOZ POLOMER OPSANE KRUZNICE:";
100 INPUT R
105 GCLEAR
110 PI=3.1415926
120 FOR I=1 TO N
130 J=PI/2+I*2*PI/N
140 P(I)=R*COS(J)+X
150 Q(I)=R*SIN(J)+Y
160 NEXT I
170 GOSUB 200
180 END
200 FOR I=1 TO N-1
210 FOR J=I+1 TO N
220 MOVE P(I),Q(I)
230 PLOT P(J),Q(J)
240 NEXT J
250 NEXT I
260 RETURN


a potom asi bližší tvým potřebám toto. Přesnost výpočtu určuje počet čar a rozsah úhlu od - do oblast kam se bude vykreslovat. Výstup Obrazec 2. Důležitý je řádek 120, kde se definuje odkud se čáry vykreslují...:

Kód:
0 REM Vysec kruhu
10 GCLEAR
20 SCALE 0,255,0,170
30 PRINT AT 3,3 "Napis na kolik stupnu presnosti pocitat"
40 PRINT AT 4,3"1=nejvic,180 nejmene a jaky polomer."
50 Z=.01745329:PI=3.14159265
60 INPUT O:INPUT R:H=O*Z
70 PRINT AT 5,3"Zadej souradnice X a Y v rozsahu 0-255 a 170"
75 PRINT AT 6,3"a od jakeho stupne zacit a jak velkou vysec.
80 INPUT X:INPUT Y
85 INPUT T:INPUT U:K=T*Z
87 GCLEAR
90 L=(U*Z)+K:A=X+R*COS(K):B=Y+R*SIN(K):MOVE A,B
95 FOR I=K TO L+0.017STEP H
100 A=X+R*COS(I)
110 B=Y+R*SIN(I)
120 MOVE 30,30:PLOT B,A
130 NEXT I


Jinak prasárny tohoto typu mi vznikaly též rotací úseček o nějaký úhel s jedním bodem odkud se vykreslovaly a změnou jejich délky v závislosti na nějaké funkci, když se ten bod hýbal taky zase podle nějaké další funkce což je jistě i tento případ, tady taky jen rotovala úsečka a měnila dynamicky délku podle nějaké funkce, třeba elipsy či kruhu, sínus či kosínus... Obrazec 3, asi nejblíž tomu co potřebuješ:

Kód:
0 REM Vysec kruhu
10 GCLEAR
20 SCALE 0,255,0,170
30 PRINT AT 3,3 "Napis na kolik stupnu presnosti pocitat"
40 PRINT AT 4,3"1=nejvic,180 nejmene a jaky polomer."
50 Z=.01745329:PI=3.14159265
60 INPUT O:INPUT R:H=O*Z
70 PRINT AT 5,3"Zadej souradnice X a Y v rozsahu 0-255 a 170"
75 PRINT AT 6,3"a od jakeho stupne zacit a jak velkou vysec.
80 INPUT X:INPUT Y
85 INPUT T:INPUT U:K=T*Z
87 GCLEAR
90 L=(U*Z)+K:A=X+R*COS(K):B=Y+R*SIN(K):MOVE A,B
95 FOR I=K TO L+0.017STEP H
100 A=X+R*COS(I)
110 B=Y+R*SIN(I)
120 MOVE A+20,B-30:PLOT A,B
130 NEXT I


Přílohy:
Obrazec 3.png
Obrazec 3.png [ 5.61 KiB | Zobrazeno 11963 krát ]
Obrazec2.png
Obrazec2.png [ 7.36 KiB | Zobrazeno 11964 krát ]
Obrazec.png
Obrazec.png [ 11.07 KiB | Zobrazeno 11965 krát ]
Nahoru
 Profil  
 
PříspěvekNapsal: 09.05.2020, 23:57 
Offline
Profík

Registrován: 15.01.2014, 20:08
Příspěvky: 782
Bydliště: Šlapanice
Has thanked: 129 times
Been thanked: 97 times
Ta příručka k ZXS je velice zajímavá ale moc si v ní nepočtu a to co hledám, jsem tam nenašel.

Jak bude světlo tak se pokusím vyfotit ten článek z VTM (23/88 strana 48) a pokut bude, někdo ochoten to přepsat z toho PACKALu do něčeho rozumného budu rád. V tom programu je ještě optimalizace pro vykreslování na souřadnicovém zapisovači (konkrétně jde AMOS PACKAL a kresli se na MINIGRAF) a vtom jsem se úplně ztratil, aneb vůbec netuším, co tím básník chtěl říct. … začínám mít pocit, že dříve zvládnu napsat celoobrazovkový textový editor ve FORTANu 66 než pochopit filozofii PACKALu.

_________________
Ne všichni jsme měli z češtiny za jedna, aneb jsem dyslektik a dysgrafik.

http://www.sapi.cz/


Nahoru
 Profil  
 
PříspěvekNapsal: 10.05.2020, 00:10 
Offline
Radil
Uživatelský avatar

Registrován: 02.08.2015, 15:23
Příspěvky: 259
Bydliště: Skalica
Has thanked: 52 times
Been thanked: 141 times
Este celkom pekna grafika je v knihe Můj přítel DIDAKTIK GAMA na strane 80. Este zamlada som to prepisoval asi 4x :lol:
https://web.archive.org/web/20160909001 ... daktik.pdf


Přílohy:
vlna.png
vlna.png [ 358.3 KiB | Zobrazeno 11953 krát ]

_________________
ZX Spectrum, ZX Spectrum +, DIDAKTIK GAMA, DIDAKTIK M, DIDAKTIK KOMPAKT, D40, D80, Interface M/P, MELODIK, UR-4, BEST, KP 311, BT100, SP210T, GAMACENTRUM 01 (cierna), ROBOTRON K6304, divIDE, K-Mouse, PMD 85-2, Amiga 500, Amiga 500+, Amiga 1200
Nahoru
 Profil  
 
PříspěvekNapsal: 10.05.2020, 00:57 
Offline
Óm Nejvyšší

Registrován: 22.05.2013, 21:14
Příspěvky: 3642
Bydliště: Bratislava
Has thanked: 371 times
Been thanked: 788 times
EC1045.01 píše:
Našel jsem akorát ve VTM programek ale ten je psán v PACKALu a s PACKALem vůbec nekamarádím.
Nevadi, sem s nim. PACKAL do BASICu prepiseme raz-dva :)


Nahoru
 Profil  
 
PříspěvekNapsal: 10.05.2020, 06:37 
Offline
Pan Generální
Uživatelský avatar

Registrován: 23.03.2014, 20:13
Příspěvky: 2773
Has thanked: 224 times
Been thanked: 601 times
Program na 3D grafy pro Atari vyšel v ABC v Počítač, můj kamarád. Šlo změnit funkci, hustotu, otočení a naklopení pohledu.

_________________
Plesnivý sýr z Tesca, zatuchlé kuřecí řízky z Albertu, oslizlé hovězí a myší trus z Lidlu.
Nákup potravinářské inspekce v ČR, říjen 2023.


Nahoru
 Profil  
 
PříspěvekNapsal: 10.05.2020, 07:46 
Offline
Kecka

Registrován: 08.06.2016, 18:25
Příspěvky: 48
Has thanked: 5 times
Been thanked: 21 times
faraon píše:
Program na 3D grafy pro Atari vyšel v ABC v Počítač, můj kamarád. Šlo změnit funkci, hustotu, otočení a naklopení pohledu.


Jo, ten byl super, přepisoval jsem si ho tehdy pro PMD. Chvilku jsem hledal na netu a našel...


Přílohy:
ABC 1989-90_18 16-D07.jpg
ABC 1989-90_18 16-D07.jpg [ 400.97 KiB | Zobrazeno 11911 krát ]

_________________
http://maximalne.8u.cz
Nahoru
 Profil  
 
PříspěvekNapsal: 10.05.2020, 08:51 
Offline
Profík

Registrován: 15.01.2014, 20:08
Příspěvky: 782
Bydliště: Šlapanice
Has thanked: 129 times
Been thanked: 97 times
Ty prostorové grafiky jsem taky našel o pár čísel vedle v tom VTM a dokonce se tam částečně řešila viditelnost, taky ve VTM byla soutěž na podobné téma. Ale to není, co hledám.

Tak narychlo spáchané foto onoho článku z VTM.

Busy píše:
EC1045.01 píše:
Našel jsem akorát ve VTM programek ale ten je psán v PACKALu a s PACKALem vůbec nekamarádím.
Nevadi, sem s nim. PACKAL do BASICu prepiseme raz-dva :)

Díky.


Přílohy:
Poznámka: Popis.
obr3.jpg
obr3.jpg [ 129.36 KiB | Zobrazeno 11892 krát ]
Poznámka: Co to umí.
obr2.jpg
obr2.jpg [ 88.78 KiB | Zobrazeno 11892 krát ]
Poznámka: Program v PACKAL.
obr1.jpg
obr1.jpg [ 107.59 KiB | Zobrazeno 11892 krát ]

_________________
Ne všichni jsme měli z češtiny za jedna, aneb jsem dyslektik a dysgrafik.

http://www.sapi.cz/
Nahoru
 Profil  
 
PříspěvekNapsal: 11.05.2020, 10:54 
Offline
Radil

Registrován: 16.11.2013, 20:07
Příspěvky: 270
Has thanked: 0 time
Been thanked: 103 times
Ahoj, sice to není úplně ono, ale je to podobný, viz příloha.

Každopádně by jsi měl uvést pro jaký Basic by to mělo být a jestli má vykreslení být na obrazovku (pak taky rozlišení) a nebo na zapisovač.

Ještě někde mám program pro modelování hor pomocí trojúhelníků. Bylo to taky v čárové grafice a tuším to vyšlo ve VTM a bylo to v Basicu pro PMD-85. Já to přepisoval pro ZXS a později pro PC v Turbo Pascalu. To bylo moc pěkný.

A jak to, že neumíš Pascal? Kde jsi byl, když počátkem devadesátek byl Basic jen pro vyvrhely a Pascal byl ten "jediný správný" jazyk a všichni se ho museli učit? Někteří z nás povinně:-) A když jsme se ho naučili, tak vědecké kapacity přišly s tím, že Pascal není jediný správný, že vlastně vůbec není správný a že jediné správné je C, resp. C++. Tak jsem se vrátil k Assembleru a jsem dodnes spokojen:-)


Přílohy:
minigraf.pdf [649.19 KiB]
504 krát
Nahoru
 Profil  
 
PříspěvekNapsal: 11.05.2020, 12:26 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 24.05.2018, 22:32
Příspěvky: 1972
Bydliště: Most, Praha
Has thanked: 864 times
Been thanked: 697 times
Nostalcomp píše:
...A jak to, že neumíš Pascal? Kde jsi byl, když počátkem devadesátek byl Basic jen pro vyvrhely a Pascal byl ten "jediný správný" jazyk a všichni se ho museli učit? Někteří z nás povinně:-)...
Nám zas tvrdili, že jediný správný jazyk je Fortran a povinně jsme se ho učili. :? (vlastně ani nic jiného tehdy ještě neexistovalo, i první Pascal napsal Wirth ve Fortranu a BASIC je zjednodušený Fortran)

_________________
i++ (INC) increment
i-- (DEC) decrement
i@@ (EXC) excrement


Nahoru
 Profil  
 
PříspěvekNapsal: 11.05.2020, 12:32 
Offline
Kecálek

Registrován: 28.10.2016, 21:03
Příspěvky: 122
Has thanked: 13 times
Been thanked: 50 times
Jsou tam nekde i parametry programu, které by vedly k tomu co je na obr. 1?


Nahoru
 Profil  
 
PříspěvekNapsal: 11.05.2020, 16:51 
Offline
Kecálek

Registrován: 28.10.2016, 21:03
Příspěvky: 122
Has thanked: 13 times
Been thanked: 50 times
BASIC pro Sharp MZ-800


Přílohy:
2020-05-11_16-57-03.png
2020-05-11_16-57-03.png [ 25.23 KiB | Zobrazeno 11712 krát ]
Nahoru
 Profil  
 
PříspěvekNapsal: 11.05.2020, 18:38 
Offline
Profík

Registrován: 15.01.2014, 20:08
Příspěvky: 782
Bydliště: Šlapanice
Has thanked: 129 times
Been thanked: 97 times
No, posléze jsem, si z pomněl, že otec má nějaké knížky k počítačové grafice a to ruskou (překlad americké), polskou a českou a v té české „Počítačová grafika“ autoru Luděk Granát a Hynek Sechonský, vydáno SNTL v roce 1980 je kapitola „Vytváření estetických obrazců“. Tam je popsán princip tvorby obrazu pomoci trojúhelníků aneb přes to co jsem hledal. A také tam je vlastní podprogram pro vykreslení jednoho bloku v normálním programovacím jazyku a to FORTRANu (66?) pro EC1021.

Kód:
       SUBROUTINE XXX(XA,YA,XB,YB,XC,YC,D,I)
       X1=XA
       Y1=YA
       X2=XB
       Y2=YB
       X3=XC
       Y3=YC
       DO 10 J= 1,I
       CALL XGPRES(X1,Y1)
       CALL XGUSEK(X2,Y2)
       CALL XGUSEK(X3,Y3)
       X=(X2-X1)*D+X1
       Y=(Y2-Y1)*D+Y1
       X2=(X3-X2)*D+X2
       Y2=(Y3-Y2)*D+Y2
       X3=(X1-X3)*D+X3
       Y3=(Y1-Y3)*D+Y3
       X1=X
10     Y1=Y
       RETURN
       END

       Voláním
       SUBROUTINE XXX(XA,YA,XB,YB,XC,YC,D,I)


Po několika pokusech a kosmetické úpravě (změně vykreslovaných úseček trojúhelníku) jsem dostal požadovaný blok. Po uvědomění si jak jsou ty bloky poskládaný jsem konečně dostal výsledný obrazec, který jsem chtěl.
Viz toto nakreslí obr2. z mého prvního příspěvku.

Kód:
10 XO=750
20 YO=-750
30 XA=500
40 YA=0
50 XB=350
60 YB=350
70 XC=0
80 YC=0
90 D=.06
100 I=30
110 LPRINT CHR$(2)
120 PRINT "GRAFICKY MOD"
130 X1=-XA:Y1=YA:X2=-XB:Y2=YB:X3=XC:Y3=YC
140 GOSUB 320
150 X1=YA:Y1=XA:X2=-XB:Y2=YB:X3=XC:Y3=YC
160 GOSUB 320
170 X1=YA:Y1=XA:X2=XB:Y2=YB:X3=XC:Y3=YC
180 GOSUB 320
190 X1=XA:Y1=YA:X2=XB:Y2=YB:X3=XC:Y3=YC
200 GOSUB 320
210 X1=XA:Y1=YA:X2=XB:Y2=-YB:X3=XC:Y3=YC
220 GOSUB 320
230 X1=YA:Y1=-XA:X2=XB:Y2=-YB:X3=XC:Y3=YC
240 GOSUB 320
250 X1=YA:Y1=-XA:X2=-XB:Y2=-YB:X3=XC:Y3=YC
260 GOSUB 320
270 X1=-XA:Y1=YA:X2=-XB:Y2=-YB:X3=XC:Y3=YC
280 GOSUB 320
290 LPRINT "H"
300 PRINT "H"
310 END
320 REM PODPROGRAM
330 FOR J=1 TO I
340 XX1=INT(X1)+XO:YY1=INT(Y1)+YO:XX2=INT(X2)+XO:YY2=INT(Y2)+YO
350 XX3=INT(X3)+XO:YY3=INT(Y3)+YO
360 A=J/2:B=INT(J/2)
370 IF A<>B THEN GOTO 450
380 PRINT "M";XX1;YY1
390 LPRINT "M";XX1;YY1
400 PRINT "D";XX3;YY3
410 LPRINT "D";XX3;YY3
420 PRINT "D";XX2;YY2
430 LPRINT "D";XX2;YY2
440 GOTO 510
450 PRINT "M";XX2;YY2
460 LPRINT "M";XX2;YY2
470 PRINT "D";XX3;YY3
480 LPRINT "D";XX3;YY3
490 PRINT "D";XX1;YY1
500 LPRINT "D";XX1;YY1
510 X=(X2-X1)*D+X1
520 Y=(Y2-Y1)*D+Y1
530 X2=(X3-X2)*D+X2
540 Y2=(Y3-Y2)*D+Y2
550 X3=(X1-X3)*D+X3
560 Y3=(Y1-Y3)*D+Y3
570 X1=X
580 Y1=Y
590 NEXT J
600 RETURN


… NOSTALCOMP

Tak dobře vyjádřím se k PACKALu, který .... (to sprosté slovo si doplňte sami) to vymyslel aneb středníkové peklo aneb kdy se píše a kdy ne jsem dodnes nepochopil a odmítám to pochopit. Na co tam je BEGIN ... kde končí cykly a podmínky .... že by středníkové peklo? Údajně byl PACKAL vyvinut pro výuku programování, aneb krásný paskvil, který bytostně nesnáším.

No, můj rodný programovací jazyk je MS FORTRAN 77. Jaká přesná geneze byla, si už nepamatuji, ale zkoušel jsem i PACKAL a C(++) kdy výsledek byl, že PACKAL nikdy více a C(++) je odloženo asi na věčné časy. Jinak jsem ještě kamarád s klasickým BASICem aneb vykuchaným FORTRANem a JSA (ASM) 8080 v mnemonice INTEL.

Ten program co máš v té příloze mám na webu a to zde a překopávku zde.

_________________
Ne všichni jsme měli z češtiny za jedna, aneb jsem dyslektik a dysgrafik.

http://www.sapi.cz/


Nahoru
 Profil  
 
PříspěvekNapsal: 11.05.2020, 19:41 
Offline
Radil

Registrován: 16.11.2013, 20:07
Příspěvky: 270
Has thanked: 0 time
Been thanked: 103 times
Fortran 77, JSA 8080 Intel.... Ale že Země není placatá víš, že jo :D

Ten BEGIN je v Pascalu proto, aby tam, mohl být END. A za BEGIN se náhodou středník nedává, tak jakýpak středníkový peklo? A vůbec, kde dneska nejsou středníky? Vlastně OSTRAJava se bez nich obejde :D https://necyklopedie.org/wiki/OSTRAJava


Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 100 ]  Přejít na stránku 1, 2, 3, 4, 5 ... 7  Další

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 2 návštevníků


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
cron
Založeno na phpBB® Forum Software © phpBB Group
Český překlad – phpBB.cz