Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  Reaktor für Publizieren

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:  Reaktor für Publizieren (1668 mal gelesen)
Dundee
Mitglied



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

Beiträge: 69
Registriert: 13.06.2005

Win XP SP2
ADT 2009 SP3 dt.
ET 2009
NVIDIA Quadro FX 1500

erstellt am: 13. Dez. 2010 15:21    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

Hi,

bin gerade dabei das Link4Plotstyles-Programm nach- bzw. neu zuprogrammieren.
Nur beim Publizieren komme ich irgendwie nicht weiter.
Welchen Befehl muß ich mit einem Reaktor abfangen, um vor dem eigentlichen
Publiziervorgang die Plotstyles zu kopieren?
Der Befehl PUBLIZIEREN reicht da leider nicht, da AutoCAD nach dem Publizier-Auswahlfenster
einen anderen Befehl startet, sieht aus wie der Plotfortschritt es steht nur Publiziern
oben drüber.
Über jeden Hinweis wäre ich sehr dankbar.

Ciao
Norbert

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 13. Dez. 2010 15:47    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 Dundee 10 Unities + Antwort hilfreich

um evtl. Befehlsnamen rauszubekommen ( auf die du dann mit einem commandreaktor reagieren kannst  )sollte das reichen

(defun INFO(REACTOR ARGUMENTS / CMDNAME LASTOBJ)
  (if(=(type(setq CMDNAME(car ARGUMENTS)))'STR)
    (alert (strcat "Befehlsname war: " CMDNAME))   
  )       

(vlr-command-reactor  "INFO"  '((:vlr-commandwillstart    . INFO)))

------------------
  - Thomas -          
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

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

Dundee
Mitglied



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

Beiträge: 69
Registriert: 13.06.2005

Win XP SP2
ADT 2009 SP3 dt.
ET 2009
NVIDIA Quadro FX 1500

erstellt am: 13. Dez. 2010 16:50    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

Hi,

Danke für Deinen Hinweis.
Der Befehl PUBLISH wird auch brav vor dem Öffnen des Auswahlfensters
ausgegeben, nur vor dem Publizier-Auftragsfortschritt wird nichts ausgegeben.
Das Löschen der Plotstyles wird auch direkt nach Schließen ds Auswahlfensters
ausgeführt. Daher meine Vermutung, daß für den Auftragsfortschritt eine anderer
Befehl zuständig ist.

Ciao
Norbert

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 13. Dez. 2010 19: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 Nur für Dundee 10 Unities + Antwort hilfreich

vielleicht ... aber der Test beweist ja, dass du auf den dann nicht mittels commandraektor zugreifen kannst   

------------------
  - Thomas -          
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

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

Dundee
Mitglied



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

Beiträge: 69
Registriert: 13.06.2005

Win XP SP2
ADT 2009 SP3 dt.
ET 2009
NVIDIA Quadro FX 1500

erstellt am: 14. Dez. 2010 09:07    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

Moinsen,

ok, wäre wahrscheinlich auch zu einfach 

Gibt es vielleicht bzw. kennt jemand einen anderen Weg?

Meine Notlösung würde über generelles Kopieren beim Öffnen einer DWG sein.
Danke für Deine Hilfe.

Ciao
Norbert

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

CADchup
Ehrenmitglied V.I.P. h.c.




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

Beiträge: 3329
Registriert: 14.03.2001

Sicher ist, dass nichts sicher ist. Selbst das nicht.
Joachim Ringelnatz

erstellt am: 14. Dez. 2010 10:53    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 Dundee 10 Unities + Antwort hilfreich

Hi,

weiß ja im Moment keiner, was du vorhast oder warum du das Teil nachbauen willst, aber mit ein paar Zeilen deines Codes und einer Erklärung, was das Original eigentlich macht, würde es vielleicht irgendwo <Klick> machen.

Welche command-Reaktoren verwendest du denn oder welche Befehle fängst du sonst noch ab?
Warum reicht es nicht, bei :vlr-commandWillStart von PUBLISH die Plotstile zu kopieren?


Gruß
CADchup

------------------
CADmaro.de

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

Dundee
Mitglied



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

Beiträge: 69
Registriert: 13.06.2005

Win XP SP2
ADT 2009 SP3 dt.
ET 2009
NVIDIA Quadro FX 1500

erstellt am: 14. Dez. 2010 13:28    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

Hi,

zum Hintergrund:
Wir benutzten das Programm "LinkPlotstyles4", um
projektspezifische ctb-/ stb-Dateien verwenden zu können.
Das Programm kopiert beim Befehlsaufruf "PLOTTEN" aus einem festen Projekt-Verzeichnis
die ctb's/ stb's in das AutoCAD Plotstyles-Verzeichnis. Beim Beenden von "PLOTTEN" werden die vorher
kopierten gelöscht. Super Programm ! Danke Markus!
Diese Funktionalität benötigen wir auch beim Befehlsaufruf "LAYER" und "PUBLIZIEREN".
Bei "LAYER", um bei Verwendung von stb's die Plotstile zuweisen zu können.
Der Command-Reaktor für Layer läuft einwandfrei. Nach Beendigung des Layer-Managers werden auch alle
ctb's/ stb's sauber gelöscht. (Ich weiß die Layerpalette arbeitet anders. )
Fürs "PLOTTEN" fuktioniert es auch einwandfrei.
Für's Publizieren soll es ebenso laufen. Der springende Punkt ist hier, wann lösche ich die ctb's/ stb's wieder raus? Wenn der Publizieren-Befehl beendet ist läuft der Auftragfortschritt noch und die ctb's werden noch gebraucht.
Basis für meinen (ersten) Reaktorversuch ist das Beispiel aus dem Kochbuch.

Code:

; Funktion zum Setzen des Reaktors
(defun add-cmd-reactors( / )
  (vl-load-com)
 
  (if(not *cmd-reactor-added*)
    (progn
      (vlr-command-reactor nil
      '( (:vlr-commandWillStart . cmd-start-callback))
      )
      (vlr-command-reactor nil
      '( (:vlr-commandEnded . cmd-end-callback))
      )
      (setq *cmd-reactor-added* 'T)
    ) ; progn
  )  ; if
)


(defun cmd-start-callback (reactor argslist / befehls_liste)
 
  (if befehls_liste
    (progn
      (setq befehls_liste (reverse (cons argslist (reverse befehls_liste)))) ; ****
      (schreib_log befehls_liste)     
    ) ; progn
    (progn
      (setq befehls_liste (list argslist)) ; ****
      (schreib_log befehls_liste)
    ) ; progn
  ) ; if
 
  (cond
    ( (=(car argslist) "PLOT")
      (layer-start-callback)
    )
    ( (=(car argslist) "LAYER")
      (layer-start-callback)
    )   
    ( (=(car argslist) "PUBLISH")
      (layer-start-callback)
    )
  )
)

(defun cmd-end-callback(reactor argslist / )
  (cond
    ( (=(car argslist) "PLOT")
      (layer-end-callback)
    )
    ( (=(car argslist) "LAYER")
      (layer-end-callback)
    )
    ( (=(car argslist) "PUBLISH")
      (layer-end-callback)
    )
  )
)


Ciao
Norbert

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

CADchup
Ehrenmitglied V.I.P. h.c.




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

Beiträge: 3329
Registriert: 14.03.2001

Sicher ist, dass nichts sicher ist. Selbst das nicht.
Joachim Ringelnatz

erstellt am: 14. Dez. 2010 15:40    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 Dundee 10 Unities + Antwort hilfreich

Hi,
Zitat:
Original erstellt von Dundee:
...Bei "LAYER", um bei Verwendung von stb's die Plotstile zuweisen zu können...


Kann sein, dass ich das falsch verstehe, aber wenn ihr die Plostile in Layern verwendet, braucht ihr sie doch nicht nur während des LAYER-Befehls, sondern auch zur gesamten Laufzeit der Zeichnung, weil die Layereigenschaften eigentlich irgendwo immer angezeigt werden, oder nicht?
In diesem Fall wäre dein Programm vielleicht sogar performanter, wenn du die Plotstile gleich beim Start der DWG kopieren lässt und am Ende wieder entfernst.
Damit wärst du dann auch die Publish-Sorgen los.

Ich habe das aktuelle Verhalten des LinkPlotStyles-Tools beim Publizieren nicht getestet, im damaligen 2002-2006 lief es IMHO problemlos, soll heißen die Plotstiltabellen wurden erst nach Ende des Publizierens wieder entfernt. Wenn das in späteren Versionen nicht mehr so ist, bleibt eigentlich nur die kopierten Plotstiltabellen in einer Liste zu halten und beim Beenden der DWG wieder zu entfernen. Stichwort :vlr-beginClose

Code:

(vlr-dwg-reactor
        nil
        '((:vlr-beginClose . My-close-callback))
        )

Gruß
CADchup

------------------
CADmaro.de

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

Dundee
Mitglied



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

Beiträge: 69
Registriert: 13.06.2005

Win XP SP2
ADT 2009 SP3 dt.
ET 2009
NVIDIA Quadro FX 1500

erstellt am: 14. Dez. 2010 16:50    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

Hi,

danke für Deinen Hinweis :vlr-beginClose.
Werde mir das mal genauer anschauen und mal in Ruhe drüber schlafen.

Nach der Testphase melde ich mich zu unsere Lösung.
Danke nochmal.

Ciao
Norbert

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

Wolfgang S
Mitglied
CADaver


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

Beiträge: 270
Registriert: 06.03.2006

AC 2009, C3D 2009, AC 2010, C3D 2010, AC 2011, C3D 2011, RVT 2010, RVT 2011, ASD 2011 und alles darunter bis R14 +
Win XP, Win XP64, Win 7/64

erstellt am: 18. Jan. 2011 07:55    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 Dundee 10 Unities + Antwort hilfreich

Servus!

Hab solche Software auch schon programmiert, mein Ansatz war ein wenig anders:

+ in der DWG wird gespeichert wo die Plotstile liegen
+ beim "Verlinken" werden nicht alle Dateien hin- und herkopiert sondern nur ein Link zum Ordner erstellt. Das spart Zeit und erhöht die Performance
+ Beim Öffnen einer Datei werden die Plotstile verlinkt, ebenso beim Wechsel zwischen geöffneten Dokumenten

- etransmit kann Elemente in verlinkten Ordnern nicht finden, nur über die DIREKT in den Supportpfaden angegebenen Ordnern, da ist Deine Version definitiv besser
- publish "Plotten oder Publizieren im Hintergrund" öffnet eine neue acad.exe - auf die hast Du mit den üblichen Tools keinen Zugriff.
  Beim Publizieren würden dann also die Plotstile verwendet werden die in der gerade aktuell geöffneten Datei verlinkt sind.
+ wenn nicht im Hintergrund geplottet/publiziert wird dann klappt es auch mit dem Verlinken.

vlg
Wolfgang S

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

Dundee
Mitglied



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

Beiträge: 69
Registriert: 13.06.2005

Win XP SP2
ADT 2009 SP3 dt.
ET 2009
NVIDIA Quadro FX 1500

erstellt am: 18. Jan. 2011 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

Hallo Wolfgang,

vielen Dank für Deine sehr interessanten Hintergründe zu dem Thema.
Für solche Zusammenhänge muß man wohl "Vollzeit-Programmierer" sein?

Dein Ansatz mit dem "verlinken" hört sich für einige Bereiche echt gut an.
Mir ist nur nicht ganz klar was Du mit "verlinken" genau meinst.
Wenn Du dazu noch ein paar Infos hättest die Du los werden möchtest,
ich würd' sie nehmen.

Ciao
Norbert

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: 18. Jan. 2011 10:21    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 Dundee 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Dundee:
Für solche Zusammenhänge muß man wohl "Vollzeit-Programmierer" sein?

Nein, interessierter User reicht da völlig aus 

------------------
CAD.de System-Angaben  -  CAD on demand  -  User:FAQ(Acad)

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

Wolfgang S
Mitglied
CADaver


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

Beiträge: 270
Registriert: 06.03.2006

AC 2009, C3D 2009, AC 2010, C3D 2010, AC 2011, C3D 2011, RVT 2010, RVT 2011, ASD 2011 und alles darunter bis R14 +
Win XP, Win XP64, Win 7/64

erstellt am: 18. Jan. 2011 10:46    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 Dundee 10 Unities + Antwort hilfreich


Snap_2011.01.1810.45.33_001.png

 
Servus!

Zitat:
Für solche Zusammenhänge muß man wohl "Vollzeit-Programmierer" sein?

nöö, 15-20 Stunden täglich reichen völlig ...
Nee, tatsächlich bin ich CAD-Admin.

Zitat:
Dein Ansatz mit dem "verlinken" hört sich für einige Bereiche echt gut an.
Mir ist nur nicht ganz klar was Du mit "verlinken" genau meinst.

AutoCAD (und auch Civil3D und Architecture, bin nicht sicher bei den Maschinenbauprogrammen) durchsuchen bei einigen Ordnern auch enthaltene Links zu anderen Dateien und Verzeichnissen.
beispielsweise klappt das für PC3, CTB, STB Dateien, auch bei PMPs klappt es.
für XRefs geht´s z.B. nicht.

Ich hänge als Screenshot mal ein Beispiel dran was alles funktioniert, dazu gibt´s hier im Forum aber auch schon Threads - mir fehlen nur die Stichwörter.

mfg
Wolfgang

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

Dundee
Mitglied



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

Beiträge: 69
Registriert: 13.06.2005

Win XP SP2
ADT 2009 SP3 dt.
ET 2009
NVIDIA Quadro FX 1500

erstellt am: 18. Jan. 2011 13:28    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 Wolfgang,

Danke für Deinen Screenshot und Deine Infos.
Diese Funktion/ Möglichkeit von AutoCAD kannte ich
bisher noch überhaupt nicht.

Werde die Möglichkeiten für uns mal durchgehen.

Vielen Dank nochmal.

Ciao
Norbert

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