Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Rund um AutoCAD
  Funktion mit Objektauswahl

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:  Funktion mit Objektauswahl (1697 mal gelesen)
joeycool
Mitglied
Ingenieur TGA


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

Beiträge: 1451
Registriert: 01.06.2004

MEP/ACAD 2008,..., 2013, 2014, 2015, 2016 und 2017
REVIT MEP 2017
WIN7 64 bit
i7 3,4 GHZ, SSD Platte, 16 GB Ram
NVDIA Quadro K 2200

erstellt am: 28. Jun. 2012 11:49    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 zusammen,

momentan schießt meine Lernkurve steil durch die Decke, ich habe inzwischen ein wenig verstanden, wie man Befehle automatisieren kann.
Damals war es ein Befehl ohne Objektwahl, diesmal soll es einer mit (Objektwahl) sein.

Als Grundstruktur eines Lispprogramms zum Schieben um einen bestimmten Wert habe ich etwas hier Gefundenes (von Gargarot) versucht, für mich anzupassen:

(defun c:lp (/ ss)
  (princ "\nSchieber_test ")
  (setq ss  (ssget))
  (command "schieben" ss "0,0" "@10000,0" "")
  (princ)
);defun

Hauptnachteil an der Sache, sie funktioniert nicht….es bricht nach der Objektauswahl ab…
Ich vermute, es liegt an der Syntax, wenn die Variable "ss" im Befehl aufgerufen wird…

Etwas Hilfe wäre schön, ist meine erste Lispelei 

Joeycool

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: 28. Jun. 2012 11:56    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 joeycool 10 Unities + Antwort hilfreich

Du mußt - wie beim normalen Befehl auch - die Objektauswahl abschließen:
(command "schieben" ss "" "0,0" "@10000,0")

Grüsse, Henning

------------------
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

joeycool
Mitglied
Ingenieur TGA


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

Beiträge: 1451
Registriert: 01.06.2004

MEP/ACAD 2008,..., 2013, 2014, 2015, 2016 und 2017
REVIT MEP 2017
WIN7 64 bit
i7 3,4 GHZ, SSD Platte, 16 GB Ram
NVDIA Quadro K 2200

erstellt am: 28. Jun. 2012 12:06    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

Ist ja irre,
2 Anführungsstriche mehr und schon gehts, (das ein return am Ende zuviel war, war mir sogar selber klar)

Aber wieso jetzt 2 davon nach der Variable, ist die Syntax dafür immer:

variable ""    ?

Joeycool

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

System: F1
und Google

erstellt am: 28. Jun. 2012 12: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 Nur für joeycool 10 Unities + Antwort hilfreich

im Command bedeutet dein "" ein ENTER oder auch RETURN,

(command "blöderText") würde 'blöderText' in die Befehlszeile senden (und mit Enter abschließen)
und dein (command "") würde eben '' in die Befehlszeile senden (und mit Enter abschließen),
dementsprechend wäre es einfach ein ENTER, mehr nicht.


im Script würdest du ein Leerzeichen oder besser einen Zeilenumbruch machen
und im Makro ein Semikolon. Händisch würdest du auf Enter drücken.
(je nach Situation und Einstellung auch Leertaste oder Rechtsklick)

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

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

jupa
Ehrenmitglied V.I.P. h.c.
Ruheständler


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

Beiträge: 6050
Registriert: 16.09.2004

Windows 10 64bit, ACAD Rel. 14 - ACAD 2023

erstellt am: 28. Jun. 2012 12: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 Nur für joeycool 10 Unities + Antwort hilfreich

Eine Objektwahl muß man in der Regel mit einem ENTER abschließen, und die Syntax "" steht stellvertretend für dieses ENTER.

Jürgen

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: 28. Jun. 2012 12:14    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 joeycool 10 Unities + Antwort hilfreich

Hallo,
Im Grunde mußt Du zum Ablauf innerhalb des command-Befehls immer schauen, in welcher Reihenfolge Autocad was im Befehlsablauf benötigt. Ist im Prinzip wie ein Script, nur dass eben auch Variablen (mit dem richtigen Inhalt) und Funktionen (mit der richtigen Rückgabe) als Eingabe verwendet werden können.

Grüsse, Henning

------------------
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

joeycool
Mitglied
Ingenieur TGA


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

Beiträge: 1451
Registriert: 01.06.2004

MEP/ACAD 2008,..., 2013, 2014, 2015, 2016 und 2017
REVIT MEP 2017
WIN7 64 bit
i7 3,4 GHZ, SSD Platte, 16 GB Ram
NVDIA Quadro K 2200

erstellt am: 28. Jun. 2012 13: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

wow,

vielen Dank, so langsam lichtet es sich etwas, aber ganz seh ich noch nicht durch, also:

In der Klammer mit command steht die Befehlsabfolge, wie man sie von der Tastatur her kennt, soweit klar.

Die einzelnen Befehle bzw. Angaben werden mit "Befehl" eingefasst, darin ist jeweils ein [enter] enthalten. Damit ergibt ein "" halt nur ein enter, richtig?
Variablen werden ohne ("") in die Klammer geschrieben.

Leerzeichen zwischen den einzelnen "Text" scheinen keine Funktion zu haben (zumindest habe ich das gerade so getestet) dienen wohl nur die Übersicht?
 
Joeycool

ps: die mir zugänglichen Hilfetexte zu Lisp (F1, Mapcars Tutorial) finde ich für den Einstieg zu heftig, bzw. undurchschaubar

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: 28. Jun. 2012 20: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 Nur für joeycool 10 Unities + Antwort hilfreich

Zitat:
In der Klammer mit command steht die Befehlsabfolge, wie man sie von der Tastatur her kennt, soweit klar.

Richtig

Zitat:
Die einzelnen Befehle bzw. Angaben werden mit "Befehl" eingefasst, darin ist jeweils ein [enter] enthalten. Damit ergibt ein "" halt nur ein enter, richtig?
Variablen werden ohne ("") in die Klammer geschrieben.

Das "command" ruft quasi einen AutoCad-Befehl auf - Eselsbrücke zu "Befehl:". Ob dann in weiterer Folge eine Leereingabe ( gleichbedeutend mit ENTER) in Form von "" notwendig ist, hängt vom Befehl ab. Beim "SCHIEBEN" mußt Du dem Programm ja irgendwie mitteilen, dass Deine Objektwahl abgeschlossen ist.

Zitat:
Leerzeichen zwischen den einzelnen "Text" scheinen keine Funktion zu haben (zumindest habe ich das gerade so getestet) dienen wohl nur die Übersicht?

Nein, denn wenn Du mehrere Variablen hintereinander übergibst, müssen die ja irgendwie getrennt sein.

Zitat:
ps: die mir zugänglichen Hilfetexte zu Lisp (F1, Mapcars Tutorial) finde ich für den Einstieg zu heftig, bzw. undurchschaubar

Such mal hier im Forum - ich glaube nach "Handbuch.zip" - ist zwar schon älter aber immer noch gültig.
Ergänzung:
http://forum.cad.de/foren/ubb/uploads/okhar/Handbuch.zip

------------------
Schöne Grüße
Ernst

www.geopaint.at

[Diese Nachricht wurde von Geos am 28. Jun. 2012 editiert.]

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