• Dieses Forum ist die maschinengenerierte Übersetzung von www.cad3d.it/forum1 - der italienischen Design-Community. Einige Begriffe sind nicht korrekt übersetzt.

Objekte innerhalb einer geschlossenen und gelöschten Polylinie auswählen

  • Ersteller Ersteller non-linear
  • Erstellt am Erstellt am

non-linear

Guest
hallo, also. ich habe eine geschlossene polylinie in der mitte einer großen anzahl von streupunkten: ich versuche herauszufinden, wie ich alle punkte auswählen kann, die in diese polylinie fallen (ohne es selbstverständlich von hand zu tun). ich versuchte, wps zu laden und zu verwenden, ohne ergebnisse. irgendwelche ratschläge?
danke.
nein
 
hier eine lippe, die ich vor langer zeit geschrieben habe.
wählen sie die support-polyline und wählen sie alle einheiten innerhalb, an diesem punkt können die ausgewählten einheiten verwaltet werden.
 

Anhänge

die Lispe funktioniert richtig, aber falls Sie auch die Kugeln über der Grenze Polyline wählen wollen und nicht nur innen, wie ich kann!?

Danke für den Swp!
 
bearbeiten Sie die Datei lisp und in der Zeile, in der der Befehl lautet:
(Befehl "_select" "_wp")
Mach's gut.
(Befehl "_select" "_cp")

Bye
 
Kann ich Sie noch eine Innovation fragen, wenn möglich? !
Ihre Lispe, wenn Sie alles innerhalb einer geschlossenen Polyline auswählen könnte die Polyline selbst beim Senden des Befehls deaktivieren? !
es: Ich muss auf eine Schicht "a" den Inhalt einer geschlossenen Polylinea setzen, aber die Polylinea muss in der Schicht "b" bleiben. Die Lisp nun auch Polylinea in "a".

Danke für Ihre Hilfe!
 
Hallo ich bin neu in diesem Forum

Ich klammere mich an dieses Gespräch die Lispe auf zitiert ist sehr nützlich für mich, aber wenn Sie auch eine Lispe erstellen können, die alles auswählt, was außerhalb einer geschlossenen Polylinie ist, die klar ist, was innen ist

Danke im Voraus
 
der swp2-Befehl löscht alles, was in den geschlossenen Polylines durch eine Kreuzungsauswahl enthalten ist.
ist völlig anders als der vorherige Swp, kompakter und einfach.

Bye
 

Anhänge

Hallo.
Vor allem danke ich Ihnen, weil Ihre Lisp-Dateien richtig funktionieren. Aber ich wollte dich um Hilfe bitten:
Ich habe eine Polylinea auf einer Schicht "a" geschlossen und alles, was in der geschlossenen Polylinea enthalten ist, befindet sich in der Schicht "b". Wie kann ich nun die Datei lisp ändern, so dass der Befehl "swp" neben der Auswahl des Polyline-Inhalts auch die ausgewählten Elemente auf die Schicht der geschlossenen Polylinie (Schicht a) automatisch bringen kann?
Danke für Ihre Hilfe.
 
Code:
(defun c:swp2 (/ polyline nomelista organita pt_list group c)

(prompt "\nselect polyline group: "
(setq polylinee (ssget '(0. "lwpolyline"))))

(Setq c 0)
(Repeat)
(setq nomelista (Name polilinee c))
(Einzelberechtigung)
(setq pt_list (fncoordlw entita)
(setq group (ssget "_cp" pt_list))
(Befehl "_erase" Gruppe ")
(in der Namensliste)
(Setq c (1+c)
)
)

(Defun c:swpl()
(swpl_m "a" "b")
)

(defun swpl_m (Schichtenentsel / Polylinee nomelista organita pt_list group c)

(prompt (strcat "\nselect polyline group on layer <" layer ">: ")
(setq polylinee (ssget (cons 0 "lwpolyline") (cons 8 layers)))
(Setq c 0)
(Repeat)
(setq nomelista (Name polilinee c))
(Einzelberechtigung)
(setq pt_list (fncoordlw entita)
(setq group (ssget "_cp" pt_list (list (cons 8 layerentsel)))))
(Befehl "_change" Gruppe "_pr" "_la" Schicht "")
(Setq c (1+c)
)
)

(defun fncoordlw (entry/list pt1 p index)
(Indexsatz 0)
(while (nth index entita)
(setq p)
(if (= PKW) 10)
(Progn)
(setq pt1 (cdr p)
(Setq-Liste (Liste anfügen)
)
)
(Satzindex (+ 1 Index)
)
Liste
)
der neue swpl-Befehl, statt die Polylinien mit ihrem Inhalt zu löschen, ändert den Plan.
Ich habe den Filter zur Ssget-Funktion hinzugefügt, um nur Polylinien auf der "a"-Ebene auszuwählen und nur Entitäten auf der "b"-Ebene auszuwählen.
der Befehl c:swpl erinnert an eine Funktion, der zwei Werte passieren, "a" und "b", die in swpl_m die beiden Variablen Layer und Layerentsel werden.
wenn der Plan Name ändert, ändern Sie einfach c:swpl.
Sie können auch swpl_m direkt anrufen, indem Sie auf der Kommandozeile schreiben (swpl_m "a" "b").

Bye
 

Statistik des Forums

Themen
58.521
Beiträge
499.056
Mitglieder
104.110
Neuestes Mitglied
ChristianR

Zurzeit aktive Besucher

Keine Mitglieder online.
Zurück
Oben