Français
Experimente

Plotgrid et ABC-Plot: marque définir sur 5x7-Gitter; Textes comme Linienzug plotten

 

p.specht

Programme ´Plotgrid´
=================
quelquefois voudrais on vieille Plotter wieder dans Betrieb prendre. ensuite braucht on aussi Beschriftungen. Aus Nostalgie-Trouvé habe je deux rudimentäre Programme gebaut. cela erste est Plotgrid et erlaubt es, per souris dans einem 5x7-Zeichengitter mittels Liniensegmenten eigene marque trop définir, et den entstehenden Punktcode dans qui Zwischenablage abzulegen. cela Ergebnis peux on ensuite im zweiten Programme "ABC-Plot" beim entsprechenden Zeichencode einbauen et avec cela eigene Symbole, marque et Buchstaben plotten.

service:
qui 1. Mausklick wird erfasst, mais encore aucun ligne number sichtbar. Ab dem 2. Mausklick wird zur gerasterten Mausposition une (im Beispiel rote) ligne number geplottet. chacun weitere Mausklick zeichnet un weiteres Liniensegment. veux on den Linienzug unterbrechen et woanders récente ansetzen: Rechte Bouton de la souris. ensuite geht´s comment beim 1. Mausklick plus.
Fehlerhafte marque effacer et récente commencer geschieht avec qui ESC-bouton. par Programmwechsel peux on den dans qui Zwischenablage stehenden Code ensuite dans cela ABC-Plot-Programme plus unten einbauen.

Titre de la fenêtre "Plotgrid"
Fenêtre Style 24
Fenêtre 0,0-%maxx,%maxy
var xr&=width(%hwnd)/16
var yr&=height(%hwnd)/9
var lastx&=0:var lasty&=0
var drw&=0
var mou&=0
clearclip
rept:
cls
font 2
drw&=0
locate 2,2
usepen 0,1,0

whileloop 1,5

    line xr&*&Boucle,yr& - xr&*&Boucle,yr&*7

endwhile

whileloop 1,7

    line xr&,yr&*&Boucle - xr&*5,yr&*&Boucle

endwhile

repeat

    waitinput 333
    mou&=%mousekey

    si mou&=1

        lastx&=int(%mousex/xr&+.5):lasty&=int(%mousey/yr&+.5)
        imprimer lastx&;lasty&;" ";
        putclip str$(lastx&)+str$(lasty&)
        usepen 0,5,rgb(255,0,0)

        si drw&=1

            lineto xr&*int(%mousex/xr&+.5),yr&*int(%mousey/yr& +.5)

        d'autre

            moveto xr&*int(%mousex/xr&+.5),yr&*int(%mousey/yr& +.5)
            drw&=1

        endif

    elseif mou&=2

        locate %csrlin,%pos-1
        imprimer "|";
        putclip "  "
        drw&=0

    endif

until %clé=27

clearclip
goto "rept"

Programme ABC-PLOT (Early beta-Version) en supplément:

un marque-Plotprogramm quasi "zu Fuß" trop programmieren, et dabei pas sur Windows-Schriften zurückzugreifen, ist gar pas so simple. Sonderzeichen doit z.B. ausgefiltert volonté, Verbundzeichen comment (C) ou bien (R) doit erkannt et ersetzt volonté etc. etc. un erster Versuch, encore sans Farb- ou bien Größenänderungen et einem bloß rudimentären Zeichensatz, steht ici pour eigene Experimente zur Disposition. Weiterentwicklungen sommes willkommen.


Schirm effacer geschieht par Eingabe de CLS. Weitere solche Sonderfunktionen wären wünschenswert.
Titre de la fenêtre "ABC-PLOT"
'(CL) Copyleft 2019-11 by P.Specht, Vienna/EU
Fenêtre Style 24:Fenêtre 0,0-%maxx,%maxy-40:font 2
Goto "INIT"
BACK:
' Plotinfo-intégrité testen:
pl$[]=explode(plt$,"\n")
cas sizeof(pl$[])<>256:imprimer "Fehler: Zeichenzahl <> 256"

whileloop 0,255

    si left$(pl$[&Boucle],1)<>chr$(&loop)

        imprimer "Fehler chez marque ";&Boucle,pl$[&Boucle]
        waitinput

    endif

endwhile

GOTO "WEITER"
'<<<
INIT:
Déclarer plt$,pl$[]
plt$=chr$(0)+":\n"+chr$(1)+":\n"+chr$(2)+":\n"+chr$(3)+":\n"+chr$(4)+":\n"+\
chr$(5)+":\n"+chr$(6)+":\n"+chr$(7)+":\n"+chr$(8)+":\n"+chr$(9)+":\n"+\
chr$(10)+":\n"+chr$(11)+":\n"+chr$(12)+":\n"+chr$(13)+":\n"+chr$(14)+":\n"+\
chr$(15)+":\n"+chr$(16)+":\n"+chr$(17)+":\n"+chr$(18)+":\n"+chr$(19)+":\n"+\
chr$(20)+":\n"+chr$(21)+":\n"+chr$(22)+":\n"+chr$(23)+":\n"+chr$(24)+":\n"+\
chr$(25)+":\n"+chr$(26)+":\n"+chr$(27)+":\n"+chr$(28)+":\n"+chr$(29)+":\n"+\
chr$(30)+":\n"+chr$(31)+":\n"+\
" :\n"+\
"!:363747463647  3746  454131354531  4135\n"+\
chr$(34)+":21221221  41423241\n"+\
"#:3235  4245  2353  2454\n"+\
"$:53423223344455463625  3137  4741\n"+\
"%:5117  1131331311  3537575535\n"+\
"&:56242232434453  4434252637475655\n"+\
"':31413231\n"+\
"(:4131243747\n"+\
"):2131443727\n"+\
"*:5612  1652  1454  3236\n"+\
"+:3236  1454\n"+\
",:34444537273634453637  3545  4435\n"+\
»-:2454\n"+\
".:363747463647  4637\n"+\
"/:5117\n"+\
"0:22314152564737262256\n"+\
"1:224147  3757\n"+\
"2:22314152534434252757\n"+\
"3:2231415253445556473726\n"+\
"4:412555  4447\n"+\
"5:512124334354564727\n"+\
"6:5241312226374756553324\n"+\
"7:22215127  3444\n"+\
"8:34445352413122233425263747565544\n"+\
"9:263747565241312223344453\n"+\
chr$(58)+":463635454635  3645  443433434433  3443\n"+\
";:344443333443  3344  454637273635453637  364635\n"+\
"<:421446\n"+\
"=:5323  2555\n"+\
">:124416\n"+\
"?:232231415253443435  36374736\n"+\
"@:5647271612214152544535242332424435\n"+\
"A:171221415257  5414\n"+\
"B:17114152534414  4455564717\n"+\
"C:5647271612214152\n"+\
"D:17114152564717\n"+\
"E:57171151  1444\n"+\
"F:171151  1444\n"+\
"G:52412112162747565434\n"+\
"H:1711  5157  5414\n"+\
"I:2141  3137  2747\n"+\
"J:1527475551\n"+\
"K:1117  5115  3357\n"+\
"L:111757\n"+\
"M:1711355157\n"+\
"N:17115751\n"+\
"O:161221415256472716\n"+\
"P:17114152534414\n"+\
"Q:3557  564727161221415256\n"+\
"R:17114152534414  3457\n"+\
S:524121121324445556472716\n"+\
"T:1151  3137\n"+\
"U:111627475651\n"+\
"V:113751\n"+\
"W:1117345751\n"+\
"X:1157  5117\n"+\
"Y:113451  3437\n"+\
"Z:11511757  2444\n"+\
"[:41212747\n"+\
"\:1157\n"+\
"]:21414727\n"+\
"^:233143\n"+\
"_:1858\n"+\
"':31433331\n"+\
"a:171221415257  5414\n"+\
"b:17114152534414  4455564717\n"+\
"c:5647271612214152\n"+\
"d:17114152564717\n"+\
"e:57171151  1444\n"+\
"f:171151  1444\n"+\
"g:52412112162747565434\n"+\
"h:1711  5157  5414\n"+\
"i:2141  3137  2747\n"+\
"j:1527475551\n"+\
"k:1117  5115  3357\n"+\
"l:111757\n"+\
"m:1711355157\n"+\
"n:17115751\n"+\
"o:161221415256472716\n"+\
"p:17114152534414\n"+\
"q:3557  564727161221415256\n"+\
"r:17114152534414  3457\n"+\
"s:524121121324445556472716\n"+\
"t:1151  3137\n"+\
"u:111627475651\n"+\
"v:113751\n"+\
"w:1117345751\n"+\
"x:1157  5117\n"+\
"y:113451  3437\n"+\
"z:11511757  2444\n"+\
"{:514132332435364757\n"+\
"|:3137\n"+\
"}:172736354433322111\n"+\
"~:1423334453  1524354554\n"+\
":\n"+\
"€:5241312226374756  4313  1444\n"+\
":\n"+\
"‚:\n"+\
"ƒ:\n"+\
"„:\n"+\
"…:\n"+\
"�:\n"+\
"�	:\n"+\
"ˆ:\n"+\
"‰:\n"+\
"�:\n"+\
"‹:\n"+\
"Œ:\n"+\
" :\n"+\
"Ž:\n"+\
" :\n"+\
" :\n"+\
"‘:\n"+\
"’:\n"+\
"“:\n"+\
"”:\n"+\
"•:\n"+\
"–:\n"+\
"—:\n"+\
"˜:\n"+\
"™:\n"+\
"�	:\n"+\
"›:\n"+\
"œ:\n"+\
" :\n"+\
"ž:\n"+\
"Ÿ:\n"+\
" :\n"+\
"�	:\n"+\
"¢:\n"+\
"£:\n"+\
"¤:\n"+\
"¥:\n"+\
"¦:3137\n"+\
"§:5241312233435445352433  4556473726\n"+\
chr$(168)+":21221221  41423241\n"+\
"©:312112153747565231  433223253645\n"+\
"ª:\n"+\
"«:\n"+\
"¬:\n"+\
"­:\n"+\
"®:262232433424  3446  564727151221415356\n"+\
"¯:\n"+\
"°:4121234341\n"+\
"±:2224  1333  5117  3555\n"+\
"²:\n"+\
"³:\n"+\
"´:41334341\n"+\
"µ:271612  1526364442  4446\n"+\
"¶:\n"+\
"·:\n"+\
"¸:\n"+\
"¹:\n"+\
"º:\n"+\
"»:\n"+\
"¼:\n"+\
"½:\n"+\
"¾:\n"+\
"¿:\n"+\
"À:\n"+\
"Á:\n"+\
"Â:\n"+\
"Ã:\n"+\
"Ä:1713315357  5515  12211112  41525141\n"+\
"Å:\n"+\
"Æ:\n"+\
"Ç:\n"+\
"È:\n"+\
"É:\n"+\
"Ê:\n"+\
"Ë:\n"+\
"Ì:\n"+\
"Í:\n"+\
"Î:\n"+\
"Ï:\n"+\
"Ð:\n"+\
"Ñ:\n"+\
"Ò:\n"+\
"Ó:\n"+\
"Ô:\n"+\
"Õ:\n"+\
"Ö:21111221  41525141  224253564727161322\n"+\
"×:\n"+\
"Ø:\n"+\
"Ù:\n"+\
"Ú:\n"+\
"Û:\n"+\
"Ü:515647271611  21223221  31424131\n"+\
"Ý:\n"+\
"Þ:\n"+\
"ß:171221415243545647\n"+\
"�:\n"+\
"�	:\n"+\
"â:\n"+\
"ã:\n"+\
"ä:1713315357  5515  12211112  41525141\n"+\
"å:\n"+\
"æ:\n"+\
"ç:\n"+\
"è:\n"+\
"é:\n"+\
"ê:\n"+\
"ë:\n"+\
"ì:\n"+\
"í:\n"+\
"î:\n"+\
"ï:\n"+\
"ð:\n"+\
"ñ:\n"+\
"ò:\n"+\
"ó:\n"+\
"ô:\n"+\
"õ:\n"+\
"ö:21111221  41525141  224253564727161322\n"+\
"÷:\n"+\
"ø:\n"+\
"ù:\n"+\
"ú:\n"+\
"û:\n"+\
"ü:515647271611  21223221  31424131\n"+\
"ý:\n"+\
"þ:\n"+\
"ÿ:1117575111"
GOTO "BACK"'<< la ligne 256 pour Zl-Nr. = ASCII
WEITER:
Déclarer s$,z$,o&,tmp$,both$,xx&,yy&,drw&,dd&
CLS:xx&=20:yy&=50'Default-Startpixel des Textes
NOCHMAL:
locate 2,1:Imprimer " trop plottender Text: "+\
"                                                                          "
locate 2,22:input s$
cas instr("(C)",s$):s$=left$(s$,instr("(C)",s$)-1)+chr$(169)+mid$(s$,instr("(C)",s$)+3,len($ S)-2-instr("(C)",s$))
cas instr("(R)",s$):s$=left$(s$,instr("(R)",s$)-1)+chr$(174)+mid$(s$,instr("(R)",s$)+3,len($ S)-2-instr("(R)",s$))
cas instr("+/-",s$):s$=left$(s$,instr("+/-",s$)-1)+chr$(177)+mid$(s$,instr("+/-",s$)+3,len($ S)-2-instr("+/-",s$))
:si s$="cls":cls:xx&=20:yy&=50:goto "NOCHMAL":endif
drw&=0'Stift retirer
xx&=20'CR
yy&=yy&+2*15'LF
dd&=1'Plotterstiftdicke
':::CLS
':::locate 10,1

Whileloop len($ S)

    z$=mid$(s$,&Boucle,1)
    o&=ord(z$)
    tmp$=pl$[o&]
    both$=left$(tmp$,2)
    'Gridcodes des Zeichens magasin:
    tmp$=substr$(tmp$,2,»)
    PLOT tmp$,xx&,yy&,dd&
    xx&=xx&+2*6'Schreibposition+2*Step

endwhile

GOTO "NOCHMAL"

Proc PLOT :parameters k$, xx&,yy&,dd&

    declare x&,y&
    ':::imprimer K$
    drw&=0
    usepen 0,dd&,rgb(255,0,0)

    whileloop 1,len(k$),2

        'Gridcode xy holen:
        x&=val(mid$(k$,&Boucle,1))
        y&=val(mid$(k$,&Boucle+1,1))
        'Doppelnull ignorer (Moveto-marque)

        si ((x&=0) and (y&=0))

            drw&=0
            continue

        endif

        ' Plotten

        si drw&=0

            moveto xx&+2*x&,yy&+2*y&
            drw&=1

        d'autre

            lineto xx&+2*x&,yy&+2*y&

        endif

    endwhile

endproc

FIN
 
Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'...
30.05.2021  
 



Zum Experiment


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

1.091 Views

Untitledvor 0 min.
Ernst21.07.2021
Uwe ''Pascal'' Niemeier13.06.2021
Klaus Müller07.06.2021
Michael W.07.06.2021
plus...

Themeninformationen

cet Thema hat 1 participant:

p.specht (1x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie