Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  Mehrfachplot über LISP-Programm

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Mehrfachplot über LISP-Programm (2057 mal gelesen)
Werner
Mitglied
Konstrukteur


Sehen Sie sich das Profil von Werner an!   Senden Sie eine Private Message an Werner  Schreiben Sie einen Gästebucheintrag für Werner

Beiträge: 72
Registriert: 19.11.2000

erstellt am: 19. Okt. 2003 20:30    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Lispler

Habe momentan ein kleines Problem mit einem meiner Programme.
(ACAD2002)
Möchte über ein Lisp-Programm die Anzahl der Kopien die gedruckt werden sollen vorgeben. Im Plotbefehl von ACAD kann ich jedoch keine
Abfrage für die Anzahl der zu druckenenden Kopien finden.
Habe ich hier was übersehen?

(command "_.plot" .......)

Werner

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Geos
Mitglied
Vermessungstechniker i.R.


Sehen Sie sich das Profil von Geos an!   Senden Sie eine Private Message an Geos  Schreiben Sie einen Gästebucheintrag für Geos

Beiträge: 1017
Registriert: 21.09.2001

ACAD Map 2010, Win 7 Pro
eigene Lisp's<P>HW: Core i7 860, 2.8 GHz
3.3 GB, NVIDIA GeForce GTS 250

erstellt am: 20. Okt. 2003 07:59    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Werner 10 Unities + Antwort hilfreich

Servus

Im Plotdialog gibts 2 Register. Dia Anzahl wird dort eingestellt, wo auch der Plotter ausgewählt wird.

Versuch mal den Befehl "-plot" auf der Befehlszeile.

------------------
Gruß, Ernst

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

Alles

erstellt am: 20. Okt. 2003 08:39    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Werner 10 Unities + Antwort hilfreich

Da du nicht geschrieben hast das dies zwingend in Lisp erfolgen muß, wäre evtl zu erwähnen... (falls du es einfach nicht kennst,
und immer die gleiche Anzahl benötigt wird) ...das man eine PC3 dafür
erstellen kann- dort kann man nämlich "Anzahl Kopien" auch festlegen.

Man plottet also 1-fach auf diesen Treiber und er macht autom. 4,5,6 wie auch immer eingestellt - Kopien davon.

------------------
- Sebastian Mattis - CAD.de-User Treffen JEDEN Tag !

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Werner
Mitglied
Konstrukteur


Sehen Sie sich das Profil von Werner an!   Senden Sie eine Private Message an Werner  Schreiben Sie einen Gästebucheintrag für Werner

Beiträge: 72
Registriert: 19.11.2000

erstellt am: 20. Okt. 2003 18:27    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Vielen Dannk für eure Antworten

Hallo Geos:
Bei ACAD 2002 kann ich beim besten Willen keine Eingabemöglichkeit für die Seitenzahl finden. (Abgesehen vom normalen Menü natürlich)
Falls es doch irgendo stecken sollte, bitte Info wo die Abfrage steckt.

Hallo Cadffm:
Vorgabe für Blattzahl sollte in Lisp erfogen.
Über eingenes Menüe kann ich frei wählen ob ich 1, 2 usw. Plotts erstellen möchte. Eine Vorgabe in der PC3-Datei möchte ich darum möglichst vermeiden.
Lösung ist jeodoch auf jeden Fall vorstellbar mit einer entsprechenden Anzahl von PC3-Dateien.

Das Programm funktioniert eigentlich auch. Ich möchte nur aus Geschwindigkeitsgründen den Mehrfachaufruf zukünftig vermeiden.

Werner

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Helmut Schepers
Mitglied



Sehen Sie sich das Profil von Helmut Schepers an!   Senden Sie eine Private Message an Helmut Schepers  Schreiben Sie einen Gästebucheintrag für Helmut Schepers

Beiträge: 35
Registriert: 01.11.2001

AutoCad 2000, AutoCAd 2002, Windows XP-pro
Treppenbau-Software

erstellt am: 21. Okt. 2003 20:51    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Werner 10 Unities + Antwort hilfreich

Hallo Werner

wenn es eine reine Lisp-Lösung sein soll, solltest du dich einmal näher mit den VLA-Funktionen beschäftigen.
Hier ein kleines Beispiel, wie man die Anzahl der Seiten einstellt.
Ob dieser Aufruf mit (command "_.plot"...) funktioniert habe ich nicht ausprobiert, da ich bei mir, wenn automatisch gedruckt werden soll, die gesamte Druckerausgabe über die VLA-Funktionen steuer.


(vla-put-numberofcopies
(vla-get-plot
(vla-get-ActiveDocument
(vlax-get-acad-object)))
HIER_DIE_SEITENANZAHL_EINGEBEN")


vielleicht hilfts
Gruß
Helmut

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Werner
Mitglied
Konstrukteur


Sehen Sie sich das Profil von Werner an!   Senden Sie eine Private Message an Werner  Schreiben Sie einen Gästebucheintrag für Werner

Beiträge: 72
Registriert: 19.11.2000

erstellt am: 22. Okt. 2003 20:45    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Helmut

Vielen Dank für den Tip.
Soweit ich es beruteilen kann, ist die vla Funktion aus Visuallisp.

Gehöre leider zu der langsam aussterbenden Spezies die mit dem guten alten Autolisp in der Hardcore (Textversion) aufgewachsen sind.
Soll heisen, das ich so gut wie keine Ahnung von Visuallisp habe und momentan auch keinen Nerv es mir reinzuziehen.

Falls sonst keiner noch eine Idee hat muß ich wohl die Vorgabe der Plottanzahl aus Autolisp heraus begraben.


Werner

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

Alles

erstellt am: 23. Okt. 2003 10:02    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Werner 10 Unities + Antwort hilfreich

Dazu gibt es die ACAD-Entwicklerhilfe, nutzen tust du das
ganze als "ganz normalen Befehl" - da braucht man nichts lernen dafür.
(Habe selbst erst 1x einen VL Befehl genutzt, in der Hilfe gesucht,
gefunden und genutzt.)

PS.: "Textversion" - gibt es denn was anderes ?

------------------
- Sebastian Mattis - CAD.de-User Treffen JEDEN Tag !

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Werner
Mitglied
Konstrukteur


Sehen Sie sich das Profil von Werner an!   Senden Sie eine Private Message an Werner  Schreiben Sie einen Gästebucheintrag für Werner

Beiträge: 72
Registriert: 19.11.2000

erstellt am: 27. Okt. 2003 19:00    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo

Bin entweder zu doof, oder es fehlt sonst irgend etwas.
Vorschlag von Helmut scheint mir richtig zu sein.
Habe nur leider keine Ahnung wie ich das ganze für meine Zwecke zum laufen bekomme.
Also, fals es wirklich so einfach ist, bitte Aufruf in einem kleinen Beispiel etwas näher erläutern.

(defun c:test1()
  (vla-put-numberofcopies
  (setq t1 (vla-get-plot
  (setq t2 (vla-get-ActiveDocument))
  (vlax-get-acad-object)
  2")
)

(Ich weis, so funktioniert es nicht. Aber wie funktioniert es???)

Vielen Dank

Werner


S

nil
Befehl: (vla-get-plot)
; Fehler: no function definition: VLA-GET-PLOT

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Helmut Schepers
Mitglied



Sehen Sie sich das Profil von Helmut Schepers an!   Senden Sie eine Private Message an Helmut Schepers  Schreiben Sie einen Gästebucheintrag für Helmut Schepers

Beiträge: 35
Registriert: 01.11.2001

AutoCad 2000, AutoCAd 2002, Windows XP-pro
Treppenbau-Software

erstellt am: 27. Okt. 2003 22:01    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Werner 10 Unities + Antwort hilfreich

Hallo Werner,

hier einmal ein etwas größeres Beispiel, wie man einen Drucker mit VLisp ansteuern kann.

(defun f:hs_plot (p0 p1 anz sc / al ll ur )
 
  ;p0    --> Punkt links unten
  ;p1    --> Punkt rechts oben
  ;anz  --> Anzahl der zu druckenden Seiten
  ;sc    --> Plot-Maßstab

  (vl-load-com)
  (setq al (vla-item (vla-get-layouts(vla-get-ActiveDocument(vlax-get-acad-object)))"Model"))
 
  (vla-put-configname        al "Epson Stylus COLOR 1520 ESC/P 2")
  (vla-put-CanonicalMediaName al "A4")
  (vla-put-plotrotation      al 0)
  (vla-put-stylesheet        al "monochrome.ctb")
  (vla-put-paperunits        al 0)
  (vla-put-plotwithplotstyles al :vlax-false)
  (vla-put-scalelineweights  al :vlax-false)
  (vla-put-usestandardscale  al :vlax-false)
  ;(vla-setcustomscale al 1 10)
  (vla-put-standardscale      al sc)
  (vla-put-numberofcopies (vla-get-plot(vla-get-ActiveDocument (vlax-get-acad-object))) anz)
 
  (setq ll (vlax-make-safearray vlax-vbdouble (cons 0 1))) ;Punkt links unten
  (vlax-make-variant(vlax-safearray-fill ll p0))
  (setq ur (vlax-make-safearray vlax-vbdouble (cons 0 1))) ;Punkt rechts oben
  (vlax-make-variant(vlax-safearray-fill ur p1))
  (vla-setwindowtoplot al ll ur)
  (vla-put-plottype al 4)                                  ; 4 = Fenster
  (vla-RefreshPlotDeviceInfo al)
  (vla-plottodevice(vla-get-plot(vla-get-ActiveDocument(vlax-get-acad-object))))
 
)

Gruß Helmut

------------------
AutoCad 2000, AutoCAd 2002

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz