
 Hi spider_dd
ich bin zur Zeit am schreiben von einer DXF-Schnittstelle, bei dieser ich eine Routine einbringen möchte die mir ermöglicht die erstellte DXF-Datei, in AlphaCam automatisch einzulesen und so ein CNC-Programm auf einer ganz schnellen und einfacheren Art zu schreiben.
die Start.bat sollte so aus sehen:
Beispiel:
C:\Planit\LICOMDIR\VBMacros\StartUp\PythaAnbindung\PYTHAacamextern.exe 
"C:\Users\Daniel\Desktop\Neuer Ordner\uebergabe.bat"
Das was jetzt in " " ist (wird oder ich bekomms nicht hin) wird in AutoCad Lisp nicht in  " " gestetzt.
Hier seht ihr das gante Programm:
; die folgende Routine sucht aus vollstendigem Pfad den Dateinamen ohne Endung:
(defun ScanName (name / k i m ch )
;  
;  Länge des Namens
   (setq k (strlen name))
   (setq k (- k 4))	;LU
   (setq i 1)
   (setq m 0)
   (setq ch (substr name i 1))
;  setze m auf Position des letzten "\"
   (while (< i k)
      (if (= ch "\\") (setq m i))
      (setq i (1+ i))
      (setq ch (substr name i 1))
   )
;  k auf Anzahl restlicher Zeichen
   (setq k (- k m))
;  m auf nächstes Zeichen
   (setq m (1+ m))
;  NAME sind restlichen Zeichen
   (substr name m k)
)	
;Ende
(defun C:camdxf (/)
;  automatisches Bereinigen der nicht referenzierten Blöcke und Layer:
	(command "_purge" "BL" "")		
	(while (= (getvar "cmdnames") "PURGE")
	(command "j")
	)
	(command "_purge" "BL" "")		
	(while (= (getvar "cmdnames") "PURGE")
	(command "j")
	)
	(command "_purge" "LAYER" "")	
	(while (= (getvar "cmdnames") "PURGE")
	(command "j")
	)
; dxf-Datei aus DWG automatisch schreiben
   (setq dxfn (strcat (getvar "DWGPREFIX") (scanname (getvar "DWGNAME"))))
   (command "_DXFOUT" dxfn "6" "")
   (princ "\nDXF-Datei wird erzeugt. Bitte warten! ")
;----------------------------------------------------------------
; START.BAT schreiben:
   (setvar "cmdecho" 1)
   (setq Pfad1 "C:\Planit\LICOMDIR\VBMacros\StartUp\PythaAnbindung\PYTHAacamextern.exe ")
   (setq Pfad2 (strcat (getvar "DWGPREFIX")"uebergabe.bat"))
   (setq Pfad (strcat Pfad1 Pfad2))
   (setq script (open "Start.BAT" "w"))
   (write-line Pfad script)
   (close script)
   (princ "\nStart.bat erzeugt! ")
;  automatisches Schreiben der DXF-Datei in das gleiche Verzeichnis wie die DWG
   (setq dxfnam (strcat (scanname (getvar "DWGNAME")) ".dxf"))
   (setq script (open "uebergabe.BAT" "w"))
   (write-line dxfnam script)
   (close script)
   (princ "\nUebergabe.bat erzeugt! ")
   (setvar "cmdecho" 0)
   (princ "\nDXF-Übergabe erfolgreich. Bitte warten! ")
)	;Ende
; ich ´habe es bis jetzt nicht in diesem Porgramm hin bekommen. (  aber extern schon bin einfach zu blöd dazu
 aber extern schon bin einfach zu blöd dazu   )
 )
Ps.: Vielleicht kann mir da ja jemand helfen. 
MFG 
Lenge
und danke schon für's lesen   
 
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP