Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  Linien identifizieren

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:  Linien identifizieren (711 mal gelesen)
dschu
Mitglied
techn. angestellter


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

Beiträge: 18
Registriert: 03.09.2002

erstellt am: 13. Sep. 2002 13:41    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,
vielleicht kann mir jemand helfen...

Wie kann man in LISP Linien identifizieren?
Der Befehl offset benötigt Objekte. Diese Funktionen habe ich erfolgreich eingesetzt.

Nun möchte ich z.B. eine Linie bemassen .
Es wird nach Bogen Kreis Linie gefragt....und nicht nach Objekten.
Und dieses bekomme ich nicht hin.
Kann ich so etwas nicht über die Entity Einträge herausfiltern?

Schönen Tag noch

Gruß
dschu

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

Brischke
Moderator
CAD on demand GmbH




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

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools (d-tools.eu)

erstellt am: 16. Sep. 2002 09:48    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 dschu 10 Unities + Antwort hilfreich

Hallo dschu,

was meinst Du denn mit identifizieren?
Du kannst einen Auswahlsatz erstellen und diesen dann filtern, oder du kannst gleich einen gefilterten Auswahlsatz erstellen, oder oder oder. Aber den Sinn Deiner Frage, solltest Du etwas erläutern, am besten beschreibst Du komplett was die Ausgangssituation ist und was das Ziel sein soll.

Grüße Holger

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

marc.scherer
Ehrenmitglied V.I.P. h.c.
CAD-Administrator



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

Beiträge: 2490
Registriert: 02.11.2001

Windows 10 64bit
AutoCAD Architecture 2018/2019 (deu/eng)
AEC-Collection 2019 (Revit und Zeugs)
Wenn sich's nicht vermeiden läßt:
D-A-CH Erweiterung (mies implementierter Schrott)

erstellt am: 16. Sep. 2002 10: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 Nur für dschu 10 Unities + Antwort hilfreich

Hi,
guck Dir mal diesen Versuchsaufbau an:
Code:

;;; Unterfunktion gibt nil oder das Ergebnis von entsel zurück
(defun TEST (/ OBJ X)
  (setq OBJ (entsel "\nBogen, Kreis oder Linie wählen: "))
  (if OBJ
    (if (apply
          'or
          (mapcar
            '(lambda (X) (= (cdr (assoc 0 (entget (car OBJ)))) X))
            '(
              "CIRCLE"
              "ARC"
              "LINE"
            )
          ) ;_ end of mapcar
        ) ;_ end of apply
      OBJ
    ) ;_ end of if
  ) ;_ end of if
) ;_ end of defun


;;; While-Schleife mit oben definierter Sub-Funktion
;;; Aufforderung solange, bis Test nicht nil zurückgibt
(while (not (setq OBJ (TEST)))
  (princ "\nFalsches Objekt gewählt, versuch's noch einmal..."
  ) ;_ end of princ
) ;_ end of while


------------------
Ciao,
Marc

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

dschu
Mitglied
techn. angestellter


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

Beiträge: 18
Registriert: 03.09.2002

erstellt am: 16. Sep. 2002 13:04    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 Holger,

Ich versuch's mal zu beschreiben
Das soll der ungefähre Aufbau sein

Zuerst werden Linien gezeichnet
(command "_.line" "0,0" "200,200" "")
Dann möchte ich mir diese Linien merken
(setq linie1
      (entget(entlast)))
--und hier hab ich's noch nicht begriffen weil ich mir damit ja nur das Objekt merke !

(command "_.line" "0,0" "200,0" "")
(setq linie2
      (entget(entlast))
);end setq

;; Und zum Schluß möchte ich einen Winkel damit bemaßen
(command "_.dimangular" linie1 linie2 "")

Bedenke - ich bin Neu im LISP-Geschäft.
Danke für die Mühe

Gruß dschu

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

Brischke
Moderator
CAD on demand GmbH




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

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools (d-tools.eu)

erstellt am: 16. Sep. 2002 14: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 Nur für dschu 10 Unities + Antwort hilfreich

Hallo Dschu,

(schau Dir mal an, in welchem Format die Funtion (entsel) ein Ergebnis liefert, in dieser Form mußt du die Werte übergeben.
Bsp:
(command "_.dimangular" (entsel) (entsel) "")

oder für dein Bsp:
(command "_.dimangular"
(list (cdr (assoc -1 linie1)) (cdr (assoc 10 linie1)))
(list (cdr (assoc -1 linie2)) (cdr (assoc 10 linie2)))
(getpoint)
)

Bei Fragen ...

Grüße Holger

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

dschu
Mitglied
techn. angestellter


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

Beiträge: 18
Registriert: 03.09.2002

erstellt am: 17. Sep. 2002 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

Ich danke Holger und Marc

für die Hilfe. Es hat funktioniert.

Schönen Tag noch...

Gruß dschu

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