Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Rund um AutoCAD
  Steigende Positionsnummer

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:  Steigende Positionsnummer (4413 mal gelesen)
at1337
Mitglied



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

Beiträge: 23
Registriert: 09.09.2006

Autocad 2009 & LT 2007 / 2010

erstellt am: 12. Sep. 2010 10:35    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

Guten Morgen,

sitze gerade am Erstellen einer neuen Vorlage.

Beim Durchgehen der Arbeitsabläufe ist uns aufgefallen, dass wir bei jeder Bestellung, jedes Teil einzeln Beschriften, dass sieht dann meist so aus.

Pos. 1
n Stück
Material
Länge

Soweit so gut.
Da ich ja jetzt an der Vorlage sitze, dachte ich mir das ganze wäre als Block mit Attributen super und wo ich schon drüber bin, wäre es auch gut wenn sich die Positionsnummer automatisch erhöht, also bei jedem einfügen oder wenn möglich bei jedem Kopieren.

Habe jetzt schon eine einige Zeit mit den Attributen rumgespielt allerdings noch kein Ergebnis erzielt.
Irgendwie müsste der neue Block vom vorherigen die Nummer+1 abholen und ausgeben, nur woher soll der arme Block wissen wer sein Vorgänger ist? 

Es sollte auf AutoCAD 2009 und AutoCAD 2010 LT lauffähig sein, Lisp fällt da denke ich aus.

Für jede Art von Denkanstoss, bin ich dankbar.

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


Ex-Mitglied

erstellt am: 12. Sep. 2010 10:56    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi,

>> und AutoCAD 2010 LT lauffähig sein

Das ist IMHO die wesentliche Aussage an der ganzen Fragestellung, in diesem Fall gäbe es nur die manuelle Zuweisung des letzten Blocks und damit schon gleich der Zusatz, das wird durch händisches Schriftfeld einsetzen aufwendiger, als den Wert gleich direkt im Attribut eintragen.

Selbst mit AutoCAD ist der Automatismus (direkt beim Einfügen) mit Programmierung nicht so easy, wenn Du mal eine ganze Baugruppe (mit mehreren Positionsnummernangaben) von einer Zeichnung in die nächste kopierst/einfügst/....

Ev. könnte mit Speicherung der jeweils letzten Positionsnummer in einer USER-Systemvariablen und Diesel was gemacht werden, aber Diesel ist leider nicht meins, daher nur als 'Denkansatz' hier erwähnt.

Sorry, - alfred -

------------------
www.hollaus.at

at1337
Mitglied



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

Beiträge: 23
Registriert: 09.09.2006

Autocad 2009 & LT 2007 / 2010

erstellt am: 12. Sep. 2010 11:31    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

Ok, kann man eigene Systemvariablen erstellen?
Aber selbst wenn, müsste jeder Block diese Variable abholen und um 1 erhöhen. Was passiert aber wenn die Attribute bearbeitet werden. Dann nimmt jeder Block eine neue Nummer und erhöht diese wieder um 1?

Ich habe mir schon gedacht das der Geschwindigkeitsfaktor nicht deutlich höher ist als das ganze mittels Attribut zu erstellen, allerdings wird es ab 20 Positionen unterschiedlicher Größe schnell unübersichtlich und Nummern werden doppelt vergeben, was dann zu durcheinander in der Fertigung führt.

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

runkelruebe
Moderator
Straßen- / Tiefbau




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

Beiträge: 8075
Registriert: 09.03.2006

Kinder, kauft Kämme!
Es kommen lausige Zeiten.

erstellt am: 12. Sep. 2010 12:08    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 at1337 10 Unities + Antwort hilfreich

Moin,

für eigene Zwecke stellt ACAD die USER-Variablen zur Verfügung:
USERI 1-5 für Ganzzahlen (Integer)
USERR 1-5 für reele Zahlen (Real)
USERS 1-5 für Zeichenfolgen (String)
Ich weiß jedoch nicht, ob es die auch im LT gibt, lt. www.cadforum.cz  ja.

Ich geb zu, dass die ACAD-Hilfe an der Stelle DIESEL-Ausdrücke in Makros etwas trocken ist und bin da selbst noch nie wirklich durch.
Im Forum findest Du schon das ein oder andere Makro, von dem Du dann abgucken kannst. Such sowas im LT-Brett, die LT'ler sind traditionell erfinderischer in Sachen Makro, denn das ist ihre einzige Chance auf Automatisierung.

Hier mal ein Beispiel für's Hochzählen einer solchen USERI1 von mir, Zweck war damals ein automatisiertes Schriftfeld, welches die Anzahl der Plots auf einem Plan ausgibt. Den code dort kannst Du so nicht in LT verwenden, der ist dort nicht in DIESEL, aber die setenv/getenv, die für LT funktionieren, kennst Du ja aus Deinem letzten thread. Es gibt weit schönere und umfangreichere codes im Forum. (als Suchbegriff "typische" DIESEL-Ausdrücke verwenden, also "$(" sollte drin auftauchen).

Du hast also 5 (bis max 15, je nach verwendbarem Typ) Variablen zur Verfügung, Block A nutzt USERI1, Block B USERI2, usw., Deine 20 Blöcke da unterzubekommen, ich weiß nicht wie erfinderisch Du bist, könnte arg anstrengend werden. Ein weiteres Prob dabei hast Du ja selbst schon erkannt: "nur woher soll der arme Block wissen wer sein Vorgänger ist?" Stell ich mir selbst mit Programmiermöglichkeit nicht so einfach vor, auch wg. "bei jedem einfügen oder wenn möglich bei jedem Kopieren."

Mal laut gedacht, ohne Erfahrung und/oder Tests darin:
sowas wie Datenextraktion oder -EATTEXT (die "alte" Attributsextraktion) könnte evtl. etwas mit Deinen Wünschen zu tun haben. Ob Du es damit lösen (oder zumindest vereinfachen) kannst, mußt Du selber testen. Zumindest würd ich damit wohl eine Liste pflegen, auf der man die nächste freie Nummer ablesen kann.
[rredit] laut gedacht Teil 2: Vielleicht mit einem timestamp arbeiten und dann am Ende des Tages ein skript drüberjagen, welches je Block alle timestamps sammelt und nach Reihenfolge neu durchnummeriert? Frag nicht nach Beispielcode, ich hab keine Ahnung ob und wenn ja wie das ablaufen könnte  [/rredit]

Erfolgreichen Sonntag noch  

------------------
Gruß,
runkelruebe          Herr Kann-ich-nich wohnt in der Will-ich-nich-Straße...

System-Info | Dateianhänge | FAQ-ACAD | CAD.de-Hilfe | Sei eine Antilope

[Diese Nachricht wurde von runkelruebe am 12. Sep. 2010 editiert.]

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

Ingo Struck
Mitglied
Holztechniker


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

Beiträge: 459
Registriert: 08.01.2010

Intel Core i7-3770
16 GB RAM
AMD FirePro V3900 (FireGL V)
Windows 7 Pro SP1
AutoCAD 2017 SP1 - deutsch

erstellt am: 13. Sep. 2010 08: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 at1337 10 Unities + Antwort hilfreich

Hallo at1337,

Hier hatte jemand ein ähnliches Problem und dort gibt es einen interessanten Beitrag in den Autodesk Foren.
Du kannst mit <_setenv> eigene Umgebungsvariablen definieren. Zunächst setzt Du mit <_setenv[enter]autonumber1[enter]1[enter]> die Zahl, bei der zu zählen begonnen wird auf 1 und mit <_setenv[enter]autonumber2[enter]Pos.[enter]> Den Text <Pos.> als Präfix.
Anschließend kannst Du mal folgendes Makro:

<*^C^C-MTEXT;\_JUSTIFY;_MC;@0,0;$M=$(GETENV,AUTONUMBER2)$M=$(GETENV,AUTONUMBER1);;SETENV;AUTONUMBER1;$M=$(+,$(GETENV,AUTONUMBER1),1)>

auf einen eigenen Schalter legen und ausprobieren.

mfg, Ingo 

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

at1337
Mitglied



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

Beiträge: 23
Registriert: 09.09.2006

Autocad 2009 & LT 2007 / 2010

erstellt am: 13. Sep. 2010 09:10    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

Scheiter daran:

Befehl:
Befehl: _SETENV
Unbekannter Befehl "SETENV". Drücken Sie F1-Taste für Hilfe.

Befehl: AUTONUMBER1
Unbekannter Befehl "AUTONUMBER1". Drücken Sie F1-Taste für Hilfe.

Ich hatte es als Buttonmakro abgelegt und hab den Befehl so probiert, beides läuft nicht, dass einzige was so ähnlich ist ist setvar.

Oder seh ich den Befehl vor lauter Buchstaben nicht?

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

Ingo Struck
Mitglied
Holztechniker


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

Beiträge: 459
Registriert: 08.01.2010

Intel Core i7-3770
16 GB RAM
AMD FirePro V3900 (FireGL V)
Windows 7 Pro SP1
AutoCAD 2017 SP1 - deutsch

erstellt am: 13. Sep. 2010 10:23    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 at1337 10 Unities + Antwort hilfreich

Das Makro kann auch nur laufen, wenn vorher beide Variablen gesetzt wurden. Schau mal, ob die Befehle <getenv> und <setenv> in Deiner AutoCAD-Hilfe auftauchen. Bei mir sind beide Befehle aufgeführt
(AutoCAD 2009 LT). Der vorangestellte Tiefstrich ist offenbar nicht erforderlich, bei mir laufen aber beide Varianten. Da Du das aktuellere AutoCAD hast, sollte das bei Dir auch so sein.

mfg, Ingo 

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

at1337
Mitglied



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

Beiträge: 23
Registriert: 09.09.2006

Autocad 2009 & LT 2007 / 2010

erstellt am: 13. Sep. 2010 10:29    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

Wie schon erwähnt, gibt es bei mir in Autocad 09 den Befehl setenv nicht, er ist weder ausführbar, noch in der Hilfe zu finden, getenv gibtes aber nur als Dieselbefehl.

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

runkelruebe
Moderator
Straßen- / Tiefbau




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

Beiträge: 8075
Registriert: 09.03.2006

Kinder, kauft Kämme!
Es kommen lausige Zeiten.

erstellt am: 13. Sep. 2010 10:33    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 at1337 10 Unities + Antwort hilfreich

Moin,
ich glaube, Dir ist der Unterschied zw. LT und Vollversion noch nicht ganz klar.
getenv und setenv laufen in LT, setvar und getvar laufen in der VV.
Du wirst imho zwei unterschiedliche codes brauchen.

------------------
Gruß,
runkelruebe          Herr Kann-ich-nich wohnt in der Will-ich-nich-Straße...

System-Info | Dateianhänge | FAQ-ACAD | CAD.de-Hilfe | Sei eine Antilope

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

at1337
Mitglied



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

Beiträge: 23
Registriert: 09.09.2006

Autocad 2009 & LT 2007 / 2010

erstellt am: 13. Sep. 2010 11: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

So was... eigentlich sollte die Vollversion doch alles können was LT auch kann...

naja letzter Versuch bevor ich diese Geschichte ins Datennirvana jage.

In der Vollversion kann ich scheinbar keine neuen Variablen erstellen. Der Befehl setvar fragt nach einer vorhandenen Variable... also geht da nix.

so jetzt die Frage ich habe in den Zeichnungseigenschaften die Benutzerdefinierten Eigenschaften entdeckt. Dort hab ich spaßhalber eine neue Angelegt und diese "pos" genannt. Jetzt taucht diese in der Schriftfeldkategorie  "Dokument" auf. [%<\AcVar CustomDP.Pos>%].

Kann ich diese irgendwie mit Diesel abholen? Denn dann würde ja ein Makro wie oben unter Umständen Funktionieren.

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

Ingo Struck
Mitglied
Holztechniker


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

Beiträge: 459
Registriert: 08.01.2010

Intel Core i7-3770
16 GB RAM
AMD FirePro V3900 (FireGL V)
Windows 7 Pro SP1
AutoCAD 2017 SP1 - deutsch

erstellt am: 13. Sep. 2010 12:05    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 at1337 10 Unities + Antwort hilfreich

Hallo runkelruebe,

mir ist der Unterschied dann aber auch nicht klar. Nachfolgend vier Auszüge aus meiner AutoCAD 2009 LT Hilfe:

---
GETENV:

Zeigt Werte der angegebenen Variablen der Registrierungsdatenbank des Systems an

Befehlseingabe: GETENV
Variablennamen eingeben: Geben Sie den Namen der Variablen ein.

Die Werte der Systemregistrierungsvariablen können mit GETENV angezeigt werden. Verwenden Sie GETENV zum Anzeigen der Registrierungseinstellungen der Registrierungsvariablen MaxArray und MaxHatch.

Bei GETENV muss die Groß- und Kleinschreibung beachtet werden, d. h. MaxArray und MaxHatch müssen genau wie dargestellt eingegeben werden. Geben Sie also zum Anzeigen des aktuellen Wertes für MaxHatch Folgendes ein

Befehl: GETENV

Variablennamen eingeben: MaxHatch

10000
---

getvar

Gibt den Wert der Systemvariablen mit dem Namen Variable zurück.

$(getvar, Variable)
---

Dieser Befehl läuft bei mir, im Gegensatz zu den drei anderen, nur innerhalb von Diesel-Funktionen.

---

SETENV

Legt Werte von angegebenen Registrierungsvariablen fest

Befehlseingabe: setenv
Variablennamen eingeben: Geben Sie einen Namen an.

Wert: Geben Sie für die Variable einen neuen Wert ein.

Verwenden Sie SETENV zum Anzeigen der Registrierungseinstellungen für die Registrierungsvariablen MaxArray und MaxHatch.

AnmerkungBei SETENV muss die Groß- und Kleinschreibung beachtet werden, d. h. MaxArray und MaxHatch müssen genau wie oben dargestellt eingegeben werden.

---

SETVAR

Zeigt die Werte von Systemvariablen an oder ändert sie

Befehlseingabe: setvar (oder 'setvar als transparenter Befehl)
Name der Variable eingeben oder [?] <aktuell>: Geben Sie einen Variablennamen ein, oder ? ein, oder drücken Sie die EINGABETASTE.

Variablenname
Geben Sie den Namen der einzustellenden Variable an.

Neuen Wert für Variablenname <aktuell> eingeben: Geben Sie einen neuen Wert ein, oder drücken Sie die EINGABETASTE.

Sie können die Werte von Systemvariablen auch an der Eingabeaufforderung ändern, indem Sie den Namen der Variablen eingeben und den Wert entsprechend ändern.

?—Liste der Variablen
Zeigt eine Liste aller Systemvariablen in der Zeichnung sowie die jeweils aktuelle Einstellung an.

Aufzulistende Variable(n) eingeben <*>: Geben Sie ein Namensschema mit Platzhalterzeichen ein, oder drücken Sie die EINGABETASTE.
---

<getenv> und <setenv> beziehen sich nach meiner Ansicht auf sogenannte Umgebungsvariablen "ENVironment".
<getvar> und <setvar> auf Systemvariablen.

Falls mir da etwas durcheinander gekommen ist, bitte ich um Richtigstellung.

mfg, Ingo 

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

runkelruebe
Moderator
Straßen- / Tiefbau




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

Beiträge: 8075
Registriert: 09.03.2006

Kinder, kauft Kämme!
Es kommen lausige Zeiten.

erstellt am: 13. Sep. 2010 12:18    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 at1337 10 Unities + Antwort hilfreich

Hi Ingo,

OK, so wie's momentan ausschaut, haste mich  
ich kann's mangels LT auch leider nicht weiter testen, Fakt ist nur, dass ich setenv in meinem ACAD als Befehl nicht drin hab (auch nicht in der Hilfe), wohl aber wie von Dir richtig bemerkt, im Hilfeteil des MaxArray. Lt. cadforum.cz handelt es sich dabei um einen LT-Befehl. Inwieweit der jetzt von beiden Versionen im DIESEL verwendbar ist, kann ich nicht sagen.

Deine Varainte mit dem setenv funzt in der VV über die Zeile (setenv "testDat1" "5") und dann wieder mit (getenv "testDat1") und es kann der Wert über diesel mit $(getenv, "testDat1") in ein Schriftfeld übernommen werden.

Mit DIESEL bist Du bedeutend bewandter als ich, ich denke, ich werde Dir wohl doch besser das Feld überlassen    

Falls ich jetzt zur allgemeinen Verwirrung beigetragen habe, tut mir das leid  

------------------
Gruß,
runkelruebe          Herr Kann-ich-nich wohnt in der Will-ich-nich-Straße...

System-Info | Dateianhänge | FAQ-ACAD | CAD.de-Hilfe | Sei eine Antilope

[Diese Nachricht wurde von runkelruebe am 13. Sep. 2010 editiert.]

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

Ingo Struck
Mitglied
Holztechniker


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

Beiträge: 459
Registriert: 08.01.2010

Intel Core i7-3770
16 GB RAM
AMD FirePro V3900 (FireGL V)
Windows 7 Pro SP1
AutoCAD 2017 SP1 - deutsch

erstellt am: 13. Sep. 2010 12:26    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 at1337 10 Unities + Antwort hilfreich

Hallo at1337,

Du könntest einen normalen MText mit dem Inhalt: <Pos. > anlegen. In einen weiteren MText fügst Du dann ein Schriftfeld der Kategorie <Objekt> ein, wählst das Objekt (den ersten MText) und wählst unter Eigenschaft <Inhalt>. Anschließend käme dann die Autonummerierung. Schau mal in beiden AutoCAD-Versionen, welche der Befehle getvar, getenv, setvar und setenv laufen.
Mit den Zeichnungseigenschaften habe ich noch nicht gearbeitet.

mfg, Ingo 

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

wronzky
Ehrenmitglied V.I.P. h.c.
CAD-Dienstleistungen für Architekten



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

Beiträge: 2154
Registriert: 02.05.2005

CAD:
AutoCAD 2.6 bis 2014
ADT 2005 bis ACA 2013
Arcibem
System:
Windows
Internet-Startseite:
http://www.archi.de

erstellt am: 13. Sep. 2010 12: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 Nur für at1337 10 Unities + Antwort hilfreich

Da gibt es doch tatsächlich etwas in LT, was die VV nicht kann. AutoCAD (VV) kennt die Befehle getenv und setenv (im Normalfall) nicht, also würde das selbe Makro, das in LT läuft in VV nicht laufen. Ärgerlich, aber abstellbar, indem man in der VV einfach die Befehle vorher definiert, dann läuft das LT-Makro auch in der VV:
Code:
(defun c:getenv (/ env_name)
  (if
    (/= (setq env_name (getstring "Variablennamen eingeben: ")) "")
    (getenv env_name)
  )
)

(defun c:setenv (/ env_name value)
  (if
    (and
      (/= (setq env_name (getstring "Variablennamen eingeben: ")) "")
      (/= (setq value (getstring "Wert: ")) "")
    )
    (setenv env_name value)
  )
)


Grüsse, Henning

------------------
zur Abstimmung

Henning Jesse
VoxelManufaktur
Computer-Dienstleistungen für Architekten und Ingenieure

  http://www.voxelman.de

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

Ingo Struck
Mitglied
Holztechniker


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

Beiträge: 459
Registriert: 08.01.2010

Intel Core i7-3770
16 GB RAM
AMD FirePro V3900 (FireGL V)
Windows 7 Pro SP1
AutoCAD 2017 SP1 - deutsch

erstellt am: 13. Sep. 2010 13:43    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 at1337 10 Unities + Antwort hilfreich

Hallo runkelruebe,

naja, bei mir ist beim dieseln das meiste auch eher das Ergebnis von Versuch und Irrtum und nicht von wissendem Durchblick. Allerdings scheint das bei Autodesk höchstselbst auch so zu sein. Beim nochmaligen überfliegen der von mir geposteten Auszüge aus den Hilfetexten steht z.B. zur Variable <setenv> folgendes: <Legt Werte von angegebenen Registrierungsvariablen fest> Unter <setvar> steht: <Zeigt die Werte von Systemvariablen an oder ändert sie>. Das ist vielleicht nur ein Übersetzungsfehler. Statt <Registrierungsvariablen> müßte es nach meiner Ansicht <Umbebungsvariablen> heißen. Dagegen beschreiben die Begriffe <Systemvariable> und <Registrierungsvariable> IMHOIn my humble oppinion (Meiner Meinung nach) dasselbe.

Zitat:
Falls ich jetzt zur allgemeinen Verwirrung beigetragen habe, tut mir das leid

Gottseidank bleibt der Spaß dabei nicht auf der Strecke! 

mfg, Ingo 

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

at1337
Mitglied



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

Beiträge: 23
Registriert: 09.09.2006

Autocad 2009 & LT 2007 / 2010

erstellt am: 13. Sep. 2010 18:38    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

So nach etlicher Bastelei läuft es jetzt so wie ich das wollte.

zuerst Block Namens "POS", erstellt  im Block die Attribute definiert, unteranderem auch ein Attribut Namens "Position"

Dann folgendes Lisp geladen:

Zitat:
Original erstellt von wronzky:
Code:
(defun c:getenv (/ env_name)
  (if
    (/= (setq env_name (getstring "Variablennamen eingeben: ")) "")
    (getenv env_name)
  )
)

(defun c:setenv (/ env_name value)
  (if
    (and
      (/= (setq env_name (getstring "Variablennamen eingeben: ")) "")
      (/= (setq value (getstring "Wert: ")) "")
    )
    (setenv env_name value)
  )
)


Grüsse, Henning


vielen Dank jetzt läufts auch in der Vollversion.

Dann ATTDIA auf 0 gestellt.

Folgendes Buttonmakro in der Werkzeugpalette abgelegt.

^C^C_insert;pos;\;;;$M=$(GETENV,POSBEZ)$M=$(GETENV,POSNUMMER);\\\SETENV;POSNUMMER;$M=$(+,$(GETENV,POSNUMMER),1)

und es geht! 

Dabei ist mir noch Aufgefallen, da jetzt ATTDIA aus ist, sollte eigentlich kein Dialog mehr aufgehen. Allerdings; ein Block der Vorher in eine Palette gezogen wurde nimmt scheinbar den ATTDIA Status mit und fragt trotzdem über einen Dialog ab, ganz schön schlau die Werkzeugpalette.

Jetzt noch eine Frage kann mir diesen Befehl irgendwie in die PGP-Datei schreiben? Das er zum Beispiel über "pos" aufgerufen wird?

Merci an alle!

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

Ingo Struck
Mitglied
Holztechniker


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

Beiträge: 459
Registriert: 08.01.2010

Intel Core i7-3770
16 GB RAM
AMD FirePro V3900 (FireGL V)
Windows 7 Pro SP1
AutoCAD 2017 SP1 - deutsch

erstellt am: 14. Sep. 2010 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 at1337 10 Unities + Antwort hilfreich

Hallo at1337,

bei mir liegt die acadlt.pgp in folgendem Pfad:

C:\Dokumente und Einstellungen\"ANWENDERNAME"\Anwendungsdaten\Autodesk\AutoCAD LT 2009\R14\deu\Support

Wenn man die Datei mit einem Texteditor öffnet, kann man eine Anleitung zum erstellen von selbst definierten Kürzeln lesen.
In der Vollversion heißt sie vermutlich acad.pgp


mfg, Ingo 

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

at1337
Mitglied



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

Beiträge: 23
Registriert: 09.09.2006

Autocad 2009 & LT 2007 / 2010

erstellt am: 14. Sep. 2010 08:32    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

OK,

sorry hab nicht geschrieben dass ich weiß wo die PGP ist,

Meine Frage ist wie ich den Befehl reinschreiben muss,

mit 

pos,  *^c^c_insert .....

funktioniert es auf jedenfalls nicht

da kommt: "Unbekannter Befehl "POS". Drücken Sie F1-Taste für Hilfe."

wenn ich in der PGP schreibe

pos, *rechteck

wie es bei re auch ist kennt er den Befehl immer noch nicht.

Irgendwas mache ich wohl falsch

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

Ingo Struck
Mitglied
Holztechniker


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

Beiträge: 459
Registriert: 08.01.2010

Intel Core i7-3770
16 GB RAM
AMD FirePro V3900 (FireGL V)
Windows 7 Pro SP1
AutoCAD 2017 SP1 - deutsch

erstellt am: 14. Sep. 2010 10:31    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 at1337 10 Unities + Antwort hilfreich

Wie lautet denn genau Dein Befehlsname und Befehls-Anzeigename (In der CUI direkt über der Zeile <Makro> )? Erst muss der Befehl hier definiert sein, dann kann in der PGP darauf Bezug genommen werden.

mfg, Ingo

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

at1337
Mitglied



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

Beiträge: 23
Registriert: 09.09.2006

Autocad 2009 & LT 2007 / 2010

erstellt am: 14. Sep. 2010 11:09    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

Name: POSITIOn
Befehlsanzeige-Name:POSITION
Makro: ^C^C_insert;pos;\;;;$M=$(GETENV,AUTONUMBER2)$M=$(GETENV,AUTONUMBER1);\$M=$(GETENV,POSMAT);\SETENV;AUTONUMBER1;$M=$(+,$(GETENV,AUTONUMBER1),1)


IN der PGP hab ich folgendes Hinzugefügt:

POS,      *Position

Jetzt kommt bei der eingabe von POS:

Befehl: pos
Unbekannter Befehl "POSITION". Drücken Sie F1-Taste für Hilfe.

Muss der Befehl noch irgendwo definieren.

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

runkelruebe
Moderator
Straßen- / Tiefbau




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

Beiträge: 8075
Registriert: 09.03.2006

Kinder, kauft Kämme!
Es kommen lausige Zeiten.

erstellt am: 14. Sep. 2010 11:44    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 at1337 10 Unities + Antwort hilfreich

Hi,
auch wenn ich in diesem thread schon mal so halb daneben lag, ich laß ja nicht locker 
imho klappt das so, wie Du es versuchst nicht. Guckst Du beispiel-thread, gilt für VV. Zu LT halt ich schön den Schnabel 

------------------
Gruß,
runkelruebe          Herr Kann-ich-nich wohnt in der Will-ich-nich-Straße...

System-Info | Dateianhänge | FAQ-ACAD | CAD.de-Hilfe | Sei eine Antilope

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

Ingo Struck
Mitglied
Holztechniker


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

Beiträge: 459
Registriert: 08.01.2010

Intel Core i7-3770
16 GB RAM
AMD FirePro V3900 (FireGL V)
Windows 7 Pro SP1
AutoCAD 2017 SP1 - deutsch

erstellt am: 14. Sep. 2010 11: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 at1337 10 Unities + Antwort hilfreich

Was passiert denn, wenn Du den vollständigen Befehlsnamen eingibst, um den Befehl auszuführen?
Jetzt beim ausprobieren habe ich bei mir festgestellt, dass ich meine eigenen Befehle auch nicht über das eintippen des Befehlsnamens bzw. Befehls-Anzeigenamens (dieser müsste nach meiner Ansicht maßgeblich sein!?) aufrufen kann. Normalerweise arbeite ich über Werkzeugkästen. Dort funktionieren meine selbst erstellten Befehle. Jetzt weiß ich nicht, ob ich an dieser Stelle eine Wissenslücke habe oder ob in meinem AutoCAD etwas zerschossen ist. Vielleicht kann hier jemand anderes Licht ins Dunkel bringen?

mfg, Ingo 

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

Ingo Struck
Mitglied
Holztechniker


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

Beiträge: 459
Registriert: 08.01.2010

Intel Core i7-3770
16 GB RAM
AMD FirePro V3900 (FireGL V)
Windows 7 Pro SP1
AutoCAD 2017 SP1 - deutsch

erstellt am: 14. Sep. 2010 14:03    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 at1337 10 Unities + Antwort hilfreich

Hallo runkelruebe,

Zitat:
auch wenn ich in diesem thread schon mal so halb daneben lag

Wieso daneben? Der Hinweis auf die entsprechenden Sysvars war doch genau richtig!

Aus Deinem Beispiel-thread entnehme ich folgendes:

Zitat:
Kann man für eigene Befehlsfolgen (Scripte, Makros oder wie sie sonst heißen) eigene Aliasnamen vergeben, die dann auch - wie ein Standardbefehl - über die Befehlszeile bzw. als Kurztastenbefehl über die PGP-Konfiguration aufgerufen werden können??

Zitat:
leider nein, ABER:
Du kannst Dir in AutoCAD eigene Befehle erstellen, die einfachste Form mittels LISP.

Diesen neu erstellten Befehlen kann man in der CUI im Bereich <Eigenschaften> sowohl einen Befehlsnamen, als auch einen <Befehls-Anzeigenamen> zuweisen. Bisher war ich der Ansicht, dass zweiter auch die Zeichenfolge für den Befehlsaufruf über Tastatur entspricht. Wenn ich an dieser Stelle falsch liege, bitte ich um Richtigstellung. In diesem Fall wird man dann auch mit der PGP nicht weiterkommen, da es ja keinen Befehlsnamen gibt, dem man ein Alias zuordnen könnte.

mfg, Ingo 

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

Ingo Struck
Mitglied
Holztechniker


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

Beiträge: 459
Registriert: 08.01.2010

Intel Core i7-3770
16 GB RAM
AMD FirePro V3900 (FireGL V)
Windows 7 Pro SP1
AutoCAD 2017 SP1 - deutsch

erstellt am: 15. Sep. 2010 07:54    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 at1337 10 Unities + Antwort hilfreich


Beispiel.pdf

 
Hallo at1337,

Offenbar habe ich mich mit meiner Behauptung geirrt, selbst definierte Befehle auch über Tastatureingabe aufrufen zu können. Wenn man aber solche Befehle nicht mit ihrem normalen Namen aufrufen kann, kann man diesen Namen dann auch keine Alias-Namen in der PGP zuweisen. 
Alternativ ginge aber die Zuweisung eines Shortcuts. Im Anhang befindet sich eine pdf-Datei, die das Vorgehen im CUI veranschaulicht. Dort habe ich meinem Schaltermakro <Position> die Tastenkombiantion [STRG+4] zugewiesen.

mfg, Ingo 

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

Ingo Struck
Mitglied
Holztechniker


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

Beiträge: 459
Registriert: 08.01.2010

Intel Core i7-3770
16 GB RAM
AMD FirePro V3900 (FireGL V)
Windows 7 Pro SP1
AutoCAD 2017 SP1 - deutsch

erstellt am: 15. Sep. 2010 07:58    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 at1337 10 Unities + Antwort hilfreich


BeispielShortcut.pdf

 
Ups, das war das falsche Beispiel, hier nun der nächste Versuch. 

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