Español
Experimente

Plotgrid y ABC-Plot: Signo definieren en 5x7-Gitter; Textos como Linienzug plotten

 

p.specht

Programa ´Plotgrid´
=================
Manchmal möchte uno alte Plotter otra vez en Betrieb nehmen. Dann braucht uno auch Beschriftungen. Aus Nostalgie-Gründen Yo zwei rudimentäre Programas gebaut. Das erste heißt Plotgrid y erlaubt lo, por Ratón en un 5x7-Zeichengitter mittels Liniensegmenten propio Signo a definieren, y el entstehenden Punktcode en el Zwischenablage abzulegen. Das Ergebnis puede ser entonces en el zweiten Programa "ABC-Plot" beim entsprechenden Zeichencode einbauen y así propio Symbole, Signo y Buchstaben plotten.

Bedienung:
Der 1. Mausklick se erfasst, aber todavía no Linie sichtbar. Ab el 2. Mausklick se a gerasterten Mausposition una (en el Ejemplo rote) Linie geplottet. Jeder weitere Mausklick características una weiteres Liniensegment. Will uno el Linienzug unterbrechen y woanders neu ansetzen: Rechte Botón del ratón. Dann geht´s como beim 1. Mausklick más.
Fehlerhafte Signo löschen y neu beginnen geschieht con el ESC-Taste. Durch Programmwechsel puede ser el en el Zwischenablage stehenden Code entonces en el ABC-Plot-Programa más unten einbauen.

Título de la ventana "Plotgrid"
Ventana de Estilo 24
Ventana 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&*&Loop,yr& - xr&*&Loop,yr&*7

endwhile

whileloop 1,7

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

endwhile

repeat

    waitinput 333
    mou&=%mousekey

    if mou&=1

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

        if drw&=1

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

        más

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

        endif

    elseif mou&=2

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

    endif

until %key=27

clearclip
goto "rept"

Programa ABC-PLOT (Early beta-Versión) dazu:

Ein Signo-Plotprogramm quasi "zu Fuß" a programa, y esta no en Windows-Schriften zurückzugreifen, es nada así simplemente. Sonderzeichen necesario z.B. ausgefiltert voluntad, Verbundzeichen como (C) oder (R) necesario erkannt y ersetzt voluntad etc. etc. Ein erster Intento, todavía sin Farb- oder Größenänderungen y una bloß rudimentären Zeichensatz, es hier para propio Experimente disponible. Weiterentwicklungen son willkommen.


Schirm löschen geschieht por Eingabe de CLS. Weitere solche Sonderfunktionen wären wünschenswert.
Título de la ventana "ABC-PLOT"
'(CL) Copyleft 2019-11 by P.Pájaro carpintero, Vienna/EU
Ventana de Estilo 24:Ventana 0,0-%maxx,%maxy-40:font 2
Goto "INIT"
BACK:
' Plotinfo-Integrität testen:
pl$[]=explode(plt$,"\n")
caso sizeof(pl$[])<>256:imprimir "Fehler: Zeichenzahl <> 256"

whileloop 0,255

    if left$(pl$[&Loop],1)<>chr$(&bucle)

        imprimir "Fehler en Signo ";&Loop,pl$[&Loop]
        waitinput

    endif

endwhile

GOTO "WEITER"
'<<<
INIT:
Declarar 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"'<< Línea 256 para Zl-Nr. = ASCII
WEITER:
Declarar s$,z$,o&,tmp$,both$,xx&,yy&,drw&,dd&
CLS:xx&=20:yy&=50'Default-Startpixel des Textes
NOCHMAL:
locate 2,1:Imprimir " Zu plottender Texto: "+\
"                                                                          "
locate 2,22:input s$
caso instr("(C)",s$):s$=left$(s$,instr("(C)",s$)-1)+chr$(169)+mid$(s$,instr("(C)",s$)+3,len(s$)-2-instr("(C)",s$))
caso instr("(R)",s$):s$=left$(s$,instr("(R)",s$)-1)+chr$(174)+mid$(s$,instr("(R)",s$)+3,len(s$)-2-instr("(R)",s$))
caso instr("+/-",s$):s$=left$(s$,instr("+/-",s$)-1)+chr$(177)+mid$(s$,instr("+/-",s$)+3,len(s$)-2-instr("+/-",s$))
:if s$="cls":cls:xx&=20:yy&=50:goto "NOCHMAL":endif
drw&=0'Stift abheben
xx&=20'CR
yy&=yy&+2*15'LF
dd&=1'Plotterstiftdicke
':::CLS
':::locate 10,1

Whileloop len(s$)

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

endwhile

GOTO "NOCHMAL"

Proc PLOT :parámetros k$, xx&,yy&,dd&

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

    whileloop 1,len(k$),2

        'Gridcode xy holen:
        x&=val(mid$(k$,&Loop,1))
        y&=val(mid$(k$,&Loop+1,1))
        'Doppelnull ignorieren (Moveto-Signo)

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

            drw&=0
            continue

        endif

        ' Plotten

        if drw&=0

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

        más

            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


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

1.025 Views

Untitledvor 0 min.
Ernst21.07.2021
Uwe ''Pascal'' Niemeier13.06.2021
Thomas Zielinski07.06.2021
Michael W.07.06.2021
Más...

Themeninformationen

Dieses Thema ha 1 subscriber:

p.specht (1x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie