| |
|
|
- page 1 - |
|
Web Scanner | allô Amis,
mon CNC Programme fonctionne soweit déjà pas mal, eh bien voudrais je tour weitermachen
Donc: je suis sur qui cherche pour folgendem. il y a sogenannte HPGL Files, ce sont Anweisungen qui z.B sur Plotter ausgegeben volonté peut et ensuite belle Sachen zeichnen, ou bien plan plotten. Ev. kennt cela quelqu'un déjà? cet Files avons un entier bestimmtes Format (je crois xxx.hgl).
je voudrais eh bien: 1. un beliebiges HPGL-File dans XProfan 10 magasin 2. qui dessin ( = den Plot skaliert) dans einem la fenêtre entstehen laisser.
So theoretisch hab je déjà ne concept, mais ev. peux je mich à einem Beispiel de Euch festhalten et daran weiterproggen?
Viele Grüße
Euer Web |
|
|
| |
|
|
| |
|
- page 3 - |
|
|
E.T. | un bekannter de mir hat aussi une Fräse selbst gebaut (X,Y UND Z-Contrôle). là peut je oui aussi la fois informer, comment il alles gemacht hat. si je mich richtig erinnere, bearbeitet il alles avec Corel, qui Contrôle ist ensuite un DOS-Programme.
Mario |
|
|
| Grüße aus Sachsen... Mario WinXP, Win7 (64 Bit),Win8(.1),Win10, Win 11, Profan 6 - X4, XPSE, und 'nen schwarzes, blinkendes Dingens, wo ich das alles reinschütte... | 05.07.2008 ▲ |
|
|
|
|
| Ah, je hatte im paquet sur une Screentshot gehofft weshalb mir qui Dateigröße Spanisch vorkam. |
|
|
| |
|
|
|
GDL | Hi Web
und dir um Europlatinen (100*160 mm). - Isolationsfräsen - 0,6 mm Durchm. Bohren chez 1mm Kupferauge - 0,8 mm Durchm. Bohren chez 1,5 mm Kupferauge - 1,3 mm Durchm. Bohren chez 2 mm Kupferauge
chez 2seitigen Platinen obige Schritte doppelt (Löcher doit exakt qui Lötaugen sur beiden Seiten rendez-vous).
Derzeit lieu je qui Platinen so her - UV Belichtung - Entwickeln - Ätzen - Bohren avec einer Hochdrehzahl-Ständerbohrmaschine avec Spezialspannfutter.
là ca très zeitraubend et Bohrer-Abbrech intensif ist, wurde la fois sur Alternativen nachgedacht.
salut Georg |
|
|
| |
|
|
|
Web Scanner | Hi Georg,
pour Leiterplatten dans kleinen Serien gibt es doch eigentlich preiswerte Anbieter, ou bien suis je là faux informiert?
qui Fräserei de Leiterplatten lohnt sich (wahrscheinlich) pour Serien plutôt pas, là cela Isolationsfräsen doch droite longtemps dauert et assez Fräserverschleissend (chez FR4) ist. même chose gilt aussi pour qui Bohrer. chez Ebay gibts ensuite toujours qui aussortierten Fräser ud Bohrer, qui encore pour Holz et Kunststoff tranchant genug sommes.
Pour einzelne Muster peux es wieder convenable son, là on pas den ganzen Weg qui Herstellung sur cela Ätzen aller doit.
cela Bohren ist naturellement avec une CNC un Klacks, solange qui Boher hält. Besser wäre es (si possible) sich sur une mittleren Bohr Durchmesser festzulegen. qui Umspannerei ist pas justement beliebt, et il faut pas so viele verschiedene Bohrergrößen vorhalten.
Grüße
Web |
|
|
| |
|
|
|
GDL | Hi,
habe es presque déjà befürchtet.Platinendienst ist trop teuer.Brauchen ca. 300 Platinen avec untershiedlichem Layout. avec qui Ätztechnik peux je oui encore vivre.Pour cela Bohren muss je mir arrêt quoi überlegen.
salut Georg
Éditer: qui Bohrergrößen sommes Bauteile bedingt. |
|
|
| |
|
|
|
Web Scanner | Hi Georg,
kennst Du qui Tanbo de Elektor?
= Tangential - Bohr - machine
cela wäre ev. quoi zum Leiterplattenbohren ? je sais allerdings pas quoi cela Ding kostet. Ev. Selbstbau possible? comme cela Gerät récente était, fand je cela Konzept très intéressant.
[...]
Grüße
Web |
|
|
| |
|
|
|
RGH | RGH
Web Scanner@Roland, la hâte Du eventuell déjà quoi dans Deinem Archiv trouvé? Web Gib mir s'il te plaît et avec ca Zeit jusqu'à zum Wochenende! Salut Roland
Salut, je regrette, mais offensichtlich habe Je l' erwähnten Quellcode pas plus. là cela HPGL-Format mais un reines ASCII-Format ist, sollte es dans XProfan pas allzu schwer son, un Programme trop écrivons, dass qui Dossier einliest et sur dem Bildschirm darstellt. Salut Roland |
|
|
| Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 07.07.2008 ▲ |
|
|
|
|
Web Scanner | allô Roland,
ne...aucune Problem, vielen Dank pour chercher.
je attends la fois encore ab, quoi IF vorhat en supplément trop proggen, Ansonsten lege je erstmal à l'attaque et werde weitere Fragen avons
Grüße
Web |
|
|
| |
|
|
|
| @Georg: exposition la fois [...] vom Mitglied [...] - vlt. ensteht là quelque chose?
@WebS: Einen Loadergrundstock peux je pour volontiers aujourd'hui soir (zuhause) aufbereiten et ici posten. |
|
|
| |
|
|
|
| Funktioniert
Orignalsource im paquet, ici qui enh: KompilierenMarqueSéparationSET(errorLevel,-1)
proc LASTSUBSTR
PARAMETERS S$,D$
RETURN (SUBSTR$(S$,LEN(S$,D$),D$))
endproc
proc NOTLASTSUBSTR
PARAMETERS S$,D$
RETURN DEL$(S$,LEN(S$,D$),1,D$)
endproc
proc NOTFIRSTSUBSTR
PARAMETERS S$,D$
RETURN DEL$(S$,1,1,D$)
endproc
proc SETSUBSTR
PARAMETERS S$,N&,D$,NS$
RETURN INS$(NS$,DEL$(S$,N&,1,D$),N&,D$)
endproc
proc FTOA
PARAMETERS F!
RETURN +SUBSTR$(STR$(F!),1,.)
endproc
proc STRI
PARAMETERS F!
RETURN SUBSTR$(STR$(F!),1,.)
endproc
proc TSND
PARAMETERS V&
var S$=STRI(V&)
var L&=LEN(S$)
var T&=(L&-1)3
WHILELOOP T&
S$=INS$(.,S$,L&-&LOOP*3+1)
ENDWHILE
RETURN S$
endproc
proc STOALLOWEDCHARS
PARAMETERS S$,ALWDCHRS$
var C&=LEN(S$)
var I&=0
IFNOT C&
RETURN
ENDIF
WHILE 1
INC I&
IFNOT INSTR(SUBSTR$(S$,I&),ALWDCHRS$)
S$=DEL$(S$,I&,1)
DEC I&
DEC C&
ENDIF
IF I&=C&
BREAK
ENDIF
ENDWHILE
RETURN S$
endproc
proc WHILE_REPLACE
PARAMETERS S$,FROM$,_TO$
WHILE INSTR(FROM$,S$)
S$=TRANSLATE$(S$,FROM$,_TO$)
ENDWHILE
RETURN S$
endproc
proc SARRTOSTRING
PARAMETERS ARR$[],E$
var C&=SIZEOF(ARR$[])-1
IF C&<0
RETURN
ENDIF
var S$=
WHILELOOP 0,C&
S$=S$+ARR$[&LOOP]+E$
ENDWHILE
RETURN S$
endproc
proc FGETFILEEXT
PARAMETERS FLE$
IFNOT INSTR(.,FLE$)
RETURN
ENDIF
RETURN LASTSUBSTR(FLE$,.)
endproc
proc FGETFNAMEFROM
PARAMETERS S$
RETURN LASTSUBSTR(S$,\)
endproc
proc FGETPATHFROM
PARAMETERS S$
RETURN NOTLASTSUBSTR(S$,\)+\
endproc
proc FGC
PARAMETERS FLE$
IF %PCOUNT<1
RETURN
ENDIF
var B&=FILESIZE(FLE$)
IF B&<1
RETURN
ENDIF
DECLARE MEM#
DIM MEM#,B&
var R&=BLOCKREAD(FLE$,MEM#,0,B&)
var S$=CHAR$(MEM#,0,R&)
DISPOSE MEM#
RETURN S$
endproc
proc FPC
PARAMETERS FLE$,S$
IF %PCOUNT<1
RETURN
ENDIF
IF %PCOUNT<2
S$=
ENDIF
var L&=LEN(S$)
IF L&=0
var FH&=ASSIGN(FLE$)
REWRITE FH&
CLOSE FH&
ASSIGN FH&,
RETURN
ENDIF
DECLARE MEM#
DIM MEM#,L&+1
STRING MEM#,0=S$
BLOCKWRITE FLE$,MEM#,0,L&
DISPOSE MEM#
endproc
proc FMKDIR
PARAMETERS DNAME$
IF %PCOUNT<1
RETURN
ENDIF
IF DIREXISTS(DNAME$)
RETURN 2
ENDIF
MKDIR DNAME$
RETURN DIREXISTS(DNAME$)
endproc
proc FDELETE
:!>Löscht die Datei fname$ und liefert als Rückgabewert den Erfolg der Operation.
PARAMETERS FNAME$
IF %PCOUNT<1
RETURN
ENDIF
IFNOT FILEEXISTS(FNAME$)
RETURN 2
ENDIF
var FH%=ASSIGN(FNAME$)
IFNOT FH%
RETURN 0
ENDIF
ERASE #FH%
ASSIGN #FH%,
RETURN 1-FILEEXISTS(FNAME$)
endproc
proc FTRYDELETE
PARAMETERS FLE$,MSTIMEOUT&
IF %PCOUNT<1
RETURN
ENDIF
IF %PCOUNT<2
MSTIMEOUT&=8000
ENDIF
IFNOT FILEEXISTS(FLE$)
RETURN 1
ENDIF
IF FDELETE(FLE$)
RETURN 1
ENDIF
MSTIMEOUT&=MSTIMEOUT&+&GETTICKCOUNT
WHILE 1
SLEEP 100
IF FDELETE(FLE$)
BREAK
ENDIF
IF &GETTICKCOUNT>MSTIMEOUT&
BREAK
ENDIF
ENDWHILE
RETURN 1-FILEEXISTS(FLE$)
endproc
proc FCHDIR
PARAMETERS DNAME$
var OP$=LOWER$(GETDIR$(@))
IF DIREXISTS(DNAME$)
CHDIR DNAME$
ENDIF
RETURN IF(LOWER$(GETDIR$(@))=DNAME$,1,0)
endproc
WINDOWSTYLE 1 | 2 | 4 | 8 | 16 | 512
CLS
USERMESSAGES $0010,$0014
var HPIC&=CREATE(hHPGLPic,FGC(1.plt),400,400,$FFAA99)
IFNOT HPIC&
MESSAGEBOX(Bild konnte nicht erzeugt werden.,,4096)
ENDIF
DRAWPIC HPIC&,10,10;0
WHILE 1
WAITINPUT
SELECT %UMESSAGE
CASEOF $0010
BREAK
ENDSELECT
ENDWHILE
end
subproc CREATE.HHPGLPIC
PARAMETERS __HPGLDATA$,PICWIDTH&,PICHEIGHT&,BGCOLOR&
RETURN HPGL.CREATEHPIC(__HPGLDATA$,PICWIDTH&,PICHEIGHT&,BGCOLOR&)
endproc
proc HPGL.CREATEHPIC
PARAMETERS __HPGLDATA$,PICWIDTH&,PICHEIGHT&,BGCOLOR&
DECLARE CMDS$[]
CMDS$[]=EXPLODE(TRIM$(WHILE_REPLACE(TRANSLATE$(TRANSLATE$(__HPGLDATA$,;,x0A),x0D,x0A),x0A+x0A,x0A)),x0A)
var C&=SIZEOF(CMDS$[])
IFNOT C&
RETURN 0
ENDIF
IF (C&=1) AND (CMDS$[0]=)
RETURN 0
ENDIF
var PEN.ISDOWN%=0
var PEN.CURRENT%=0
var PEN.LINETYP%=0
var PEN.X!=0
var PEN.Y!=0
DECLARE CMDLINE$[]
var I&=0
DECLARE PAINTLIST$[]
var S$=
WHILELOOP 0,C&-1
S$=INS$(,,TRANSLATE$(TRIM$(WHILE_REPLACE(CMDS$[&LOOP], , )), ,,),3)
IF LEN(S$)=3
S$=DEL$(S$,3,1)
ENDIF
CMDLINE$[]=EXPLODE(S$,,)
SELECT UPPER$(CMDLINE$[0])
CASEOF IN
CASEOF WU
CASEOF VS
CASEOF PW
CASEOF SP
PEN.CURRENT%=VAL(CMDLINE$[1])
CASEOF LT
IF SIZEOF(CMDLINE$[])>1
PEN.LINETYP%=CMDLINE$[1]
SELECT CMDLINE$[1]
CASEOF 1,2,3,4,5,6
USEPEN 0,0,1
OTHERWISE
USEPEN 0,0,1
ENDSELECT
ENDIF
CASEOF PA
IF SIZEOF(CMDLINE$[])>1
WHILELOOP 0,(SIZEOF(CMDLINE$[])-1)*0.5-1
HPGL.CREATEHPIC.PEN.MOVETO(VAL(CMDLINE$[&LOOP*2+1]),VAL(CMDLINE$[&LOOP*2+2]))
ENDWHILE
ENDIF
CASEOF PU
PEN.ISDOWN%=0
IF SIZEOF(CMDLINE$[])>1
WHILELOOP 0,(SIZEOF(CMDLINE$[])-1)*0.5-1
HPGL.CREATEHPIC.PEN.MOVE(VAL(CMDLINE$[&LOOP*2+1]),VAL(CMDLINE$[&LOOP*2+2]))
ENDWHILE
ENDIF
CASEOF PD
PEN.ISDOWN%=1
IF SIZEOF(CMDLINE$[])>1
WHILELOOP 0,(SIZEOF(CMDLINE$[])-1)*0.5-1
HPGL.CREATEHPIC.PEN.MOVE(VAL(CMDLINE$[&LOOP*2+1]),VAL(CMDLINE$[&LOOP*2+2]))
ENDWHILE
ENDIF
ENDSELECT
ENDWHILE
C&=SIZEOF(PAINTLIST$[])
IFNOT C&
RETURN 0
ENDIF
DECLARE PAINTDATA$[]
var VMINX!=0
var VMINY!=0
var VMAXX!=0
var VMAXY!=0
var FX!=0
var FY!=0
var FXX!=0
var FYY!=0
var VSET%=0
WHILELOOP 0,C&-1
PAINTDATA$[]=EXPLODE(PAINTLIST$[&LOOP],x0A)
SELECT PAINTDATA$[0]
CASEOF line
FX!=VAL(PAINTDATA$[1])
FY!=VAL(PAINTDATA$[2])
FXX!=VAL(PAINTDATA$[3])
FYY!=VAL(PAINTDATA$[4])
HPGL.CREATEHPIC.PAINTDATA.SETMINMAX(FX!,FY!)
HPGL.CREATEHPIC.PAINTDATA.SETMINMAX(FXX!,FYY!)
CASEOF arc
ENDSELECT
ENDWHILE
var XD!=VMAXX!-VMINX!
var YD!=VMAXY!-VMINY!
IF VMAXX!=0
RETURN 0
ENDIF
IF VMAXY!=0
RETURN 0
ENDIF
var SX!=(PICWIDTH&-10)/XD!
var SY!=(PICHEIGHT&-10)/YD!
var VSX!=VMINX!*SX!
var VSY!=VMINY!*SY!
var HPIC&=CREATE(hNewPic,PICWIDTH&,PICHEIGHT&,BGCOLOR&)
IFNOT HPIC&
RETURN 0
ENDIF
STARTPAINT HPIC&
WHILELOOP 0,C&-1
PAINTDATA$[]=EXPLODE(PAINTLIST$[&LOOP],x0A)
SELECT PAINTDATA$[0]
CASEOF line
FX!=VAL(PAINTDATA$[1])*SX!-VSX!+5
FY!=VAL(PAINTDATA$[2])*SY!-VSY!+5
FXX!=VAL(PAINTDATA$[3])*SX!-VSX!+5
FYY!=VAL(PAINTDATA$[4])*SY!-VSY!+5
USEPEN 0,0,0
LINE FX!,FY! - FXX!,FYY!
CASEOF arc
ENDSELECT
ENDWHILE
ENDPAINT
RETURN HPIC&
proc HPGL.CREATEHPIC.PAINTDATA.SETMINMAX
PARAMETERS X!,Y!
IFNOT VSET%
VSET%=1
VMINX!=X!
VMAXX!=X!
VMINY!=Y!
VMAXY!=Y!
RETURN
ENDIF
IF VMINX!>X!
VMINX!=X!
ENDIF
IF VMAXX!<X!
VMAXX!=X!
ENDIF
IF VMINY!>Y!
VMINY!=Y!
ENDIF
IF VMAXY!<Y!
VMAXY!=Y!
ENDIF
endproc
proc HPGL.CREATEHPIC.PEN.MOVE
PARAMETERS X!,Y!
IF PEN.ISDOWN%
HPGL.CREATEHPIC.PAINTLIST.ADD(line+x0A+STR$(PEN.X!)+x0A+STR$(PEN.Y!)+x0A+STR$(PEN.X!+X!)+x0A+STR$(PEN.Y!+Y!))
ENDIF
PEN.X!=PEN.X!+X!
PEN.Y!=PEN.Y!+Y!
endproc
proc HPGL.CREATEHPIC.PEN.MOVETO
PARAMETERS X!,Y!
IF PEN.ISDOWN%
HPGL.CREATEHPIC.PAINTLIST.ADD(line+x0A+STR$(PEN.X!)+x0A+STR$(PEN.Y!)+x0A+STR$(X!)+x0A+STR$(Y!))
ENDIF
PEN.X!=X!
PEN.Y!=Y!
endproc
proc HPGL.CREATEHPIC.PAINTLIST.ADD
PARAMETERS TODO$
TODO$=TODO$+x0A+STR$(PEN.CURRENT%)+x0A+STR$(PEN.LINETYP%)
PAINTLIST$[SIZEOF(PAINTLIST$[])]=TODO$
endproc
endproc
end
|
|
|
| |
|
|
|
Dieter Zornow | quoi allez à deinem Programme, 1.plt est un perfekter Kreis, den je chez deinem Prog pas erkennen peux. peut-être pour 20 Schnaps
Anbei Screenshoot de qui Orginaldatei 1.plt |
|
|
| Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2 | 11.07.2008 ▲ |
|
|
|
|
Web Scanner | @IF cela Programme hat viel travail gemacht...je sais es oui c'est ca -..seulement chez mir erscheint un Kringel et ne...aucune Kreis- beim Programmstart
Weil je es wieder la fois pas erwarten konnte, habe je mir inzwischen une eigene Inputroutine geschrieben. mon Version ist sûrement pas entier so profi, comment qui deine gemacht, mais funktioniert pas mal.
und dir aussi pour plusieurs Elemente - alors 100 Kreise ou bien Quadrate usw .usf. je denke aussi, c'est chez so einer komplexen Thematik pas so simple, ganze Programmteile dazuzunehmen, en Funktion on pas 100% blickt.
cela prochain sera, cela on:
1. cela angezeigte Bild Déplacer peux 2. dans cela Bild zoomen peux 3. qui verschiedene Vektoren anclicken peux et à den Endpunkten dans verschiedene Richtungen tirer peux et cela ganze wiederum Sauver peux....
il y a encore viel trop 1faire
Grüße
Web |
|
|
| |
|
|