Hot News aus dem CAD.de-Newsletter:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Rund um AutoCAD
  Diverse Layer innerhalb einer Polylinie zählen

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
Autor Thema:   Diverse Layer innerhalb einer Polylinie zählen (543 mal gelesen)
Karsten Moert
Mitglied


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

Beiträge: 6
Registriert: 05.07.2020

AutoCAD 2013

erstellt am: 05. Jul. 2020 00: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

Guten Tag,

ich bin recht neu in AutoCAD (alte 2013er Version) und benötige es für 2D-Kartenzeichnungen. Dort benötige ich häufig eine Funktion zum Zusammenzählen von diversen verschiedenen Layern innerhalb einer geschlossenen Polylinie. Vermutlich geht das nur über ein speziell zugeschnittenes AutoLisp-Script, ist das richtig? Wie müsste so ein Script mit Anzeige in etwa aussehen? Die Layer heissen S03400 bis S03405. Über etwas Schützenhilfe würde ich mich sehr freuen.  

[Diese Nachricht wurde von Karsten Moert am 05. Jul. 2020 editiert.]

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: 5891
Registriert: 16.09.2004

Windows 7 64bit, ACAD Rel. 14 - ACAD 2020

erstellt am: 05. Jul. 2020 07:59    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 Karsten Moert 10 Unities + Antwort hilfreich

Laß uns bitte zunächst wissen, was Du mit "Layern innerhalb geschlossener Polylinien" meinst. Eine Beispielzeichnung (dwg) könnte evtl. hilfreich sein.

OT:
Korrigiere bitte Deine Systeminfo von AutoCAD 13 auf AutoCAD 2013 (Ein AutoCAD 13 gibt es nämlich auch, das ist nur noch viel viel älter).

Jürgen

------------------
Bildung kommt nicht vom Lesen, sondern vom Nachdenken über das Gelesene. (Carl Hilty)

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

Karsten Moert
Mitglied


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

Beiträge: 6
Registriert: 05.07.2020

AutoCAD 2013

erstellt am: 05. Jul. 2020 17: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


20200705_173214.jpg

 
Vielen Dank, Jürgen!
Die Datei gehört der Firma, die darf ich auch nicht posten oder nachbauen, evt. zeigt auch ein Screenshot, was gemeint ist. Das Script soll z.B. innerhalb der magenta Polylinie alle weissen, dreieckigen Objekte (sind beschriebene Layer) zählen.

[Diese Nachricht wurde von Karsten Moert am 05. Jul. 2020 editiert.]

[Diese Nachricht wurde von Karsten Moert am 06. Jul. 2020 editiert.]

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: 13446
Registriert: 30.11.2003

Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.

erstellt am: 06. Jul. 2020 08:01    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 Karsten Moert 10 Unities + Antwort hilfreich

Hmm .. du hast ne Polylinie und darin sind verschiedenen Objekte in den Farben Rot, Weiß , Grün ... da vermutlich Farbe von Layer hast du 3 Layer in der Polylinie ?
Sorry , ich seh den Sinn nicht

------------------
Also ich finde Unities gut ... und andere sicher auch
---------------------------------------
  - 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

spider_dd
Mitglied



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

Beiträge: 1032
Registriert: 27.11.2003

Win 10Pro
Intel(R) Core(TM) i7-7700
NVIDIA Quadro P1000
ACAD, Civil-3D 2018

erstellt am: 06. Jul. 2020 08:51    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 Karsten Moert 10 Unities + Antwort hilfreich

Hallo Karsten,

also vom Ablauf her sollte das folgendermaßen gehen:

- Polylinie wählen (ssget ...)
- Stützpunkte der Polylinie ermitteln (hängt vom Typ ab)
- Kreuzen/oder Fenster Wahl über die Stützpunkte (ssget CP oder WP punktliste)
- erhaltenen Auswahlsatz durch gehen und Layer ermittel
- Layerliste ausgeben.

Gruß
Thomas

ps. mach maal bitte das Bild kleiner, ich muß 3x querscrollen um alles zu sehen.

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

Bernd P
Ehrenmitglied V.I.P. h.c.
cook-general



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

Beiträge: 3150
Registriert: 07.06.2001

AMD A8-3870, W10-64bit, 16GB RAM, HP DJ T2300mfp, Maus:G700s, Sub:Infrastructure Design Suite, Excel 2013,

erstellt am: 06. Jul. 2020 10: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 Karsten Moert 10 Unities + Antwort hilfreich

Servus,

https://ww3.cad.de/foren/ubb/Forum54/HTML/033316.shtml

------------------
<----- Bitte Systeminfo eintragen, warum siehst du hier. Schöne Grüsse aus der Steiermark  Bernd P.

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: 5891
Registriert: 16.09.2004

Windows 7 64bit, ACAD Rel. 14 - ACAD 2020

erstellt am: 06. Jul. 2020 10: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 Nur für Karsten Moert 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Karsten Moert:

... alle weissen, dreieckigen Objekte


Und genau da ist (für uns) das Problem: Was sind das für Objekte? Linien, Polylinien, Solids, Blockreferenzen, ...? Und wodurch unterscheiden sie sich, bzw. welche gemeinsame(n) Eigenschaft(en) müssen sie haben, um zusammengezählt zu werden? Liegen die zusammenzuzählenden Objekte alle auf einem bestimmten Layer, oder haben sie alle die gleiche Farbe, oder ...?
Bis zur Klärung dieser Fragen weist der Ansatz von Thomas aber schon in die richtige Richtung.

Jürgen

------------------
Bildung kommt nicht vom Lesen, sondern vom Nachdenken über das Gelesene. (Carl Hilty)

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

Karsten Moert
Mitglied


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

Beiträge: 6
Registriert: 05.07.2020

AutoCAD 2013

erstellt am: 06. Jul. 2020 20: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

Das war nur ein Beispiel. Die Objekte/Layer, die ich zählen möchte, verteilen sich oft sehr weit innerhalb der Karte. Das sind einfach Layerobjekte, z.B. Schächte oder Bäume. Mir schwebte einfach eine Suche per Layername vor und ich habe heute selber versucht etwas zu basteln. Das funktioniert soweit sogar, viel Zeit zum Testen blieb aber nicht.
Der Code ist sicher umständlich und nicht elegant, zudem erfolgt die Ausgabe immer doppelt, was unschön ist. Wäre nett, wenn das noch jemand optimieren könnte, aber am besten so, dass noch Änderungen vorgenommen werden können, ohne Autolisp-Experte sein zu müssen.   

Code:
(Defun c:FindeObjekte ()

(setq pkt 0 z1 0  oft 0)
(Print "Bitte Polyline wählen")
(setq poly (ssget))
(setq z 0)
(setq liste (entget(ssname poly z1)))
(setq layer (substr (cdr (assoc 8 liste))5))
(setq lr (cdr liste))
(while (/= lr nil)
  (setq la (car lr))
  (setq art (car la))
  (if (= art 10)
    (progn
      (if (= z 0) (setq pkt (list (cdr la))) (setq pkt (append (list (cdr la)) pkt)))
        (Setq z (+ 1 z)
      )
    )
  ) 
  (setq lr (cdr lr))
)

(setq z 0 lfnr 1)
(setq auswahl1 (ssget "_wp" pkt))
(if (= auswahl1 nil) (setq n 0) (setq n (sslength auswahl1)))
  (while (< z n)
    (progn
      (setq name (ssname auswahl1 z))
      (setq liste1 (entget name))
      (setq elemlayer (cdr (assoc 8 liste1)))
      (if (= elemlayer "S03502")(setq oft (+ 1 oft)))
      (if (= elemlayer "S03503")(setq oft (+ 1 oft)))
      (if (= elemlayer "S03504")(setq oft (+ 1 oft)))
      (if (= elemlayer "S03505")(setq oft (+ 1 oft)))
    )
    (setq z (+ 1 z)) 
  )
  (Print oft)
)


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

Bernd P
Ehrenmitglied V.I.P. h.c.
cook-general



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

Beiträge: 3150
Registriert: 07.06.2001

AMD A8-3870, W10-64bit, 16GB RAM, HP DJ T2300mfp, Maus:G700s, Sub:Infrastructure Design Suite, Excel 2013,

erstellt am: 07. Jul. 2020 08: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 Karsten Moert 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Karsten Moert:
Schächte oder Bäume.

Ihr solltet euch ein GIS zulegen. Objektüberlagerung ist eine klassische Anwendung daraus.
Das herumwursteln mit Autocad bei GIS Anwendungen ist nicht mehr Zeitgemäß....

------------------
<----- Bitte Systeminfo eintragen, warum siehst du hier. Schöne Grüsse aus der Steiermark  Bernd P.

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: 5891
Registriert: 16.09.2004

Windows 7 64bit, ACAD Rel. 14 - ACAD 2020

erstellt am: 07. Jul. 2020 09:13    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 Karsten Moert 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Karsten Moert:

Mir schwebte einfach eine Suche per Layername vor


Würde es da nicht einfach genügen, auf einen Auswahlsatz, der alle in der Polylinienkontur liegenden Objekte enthält (dazu sind oben hinreichend Hinweise gegeben) den Befehl SAUSWAHL (_qselect) anzuwenden?

Jürgen

------------------
Bildung kommt nicht vom Lesen, sondern vom Nachdenken über das Gelesene. (Carl Hilty)

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

spider_dd
Mitglied



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

Beiträge: 1032
Registriert: 27.11.2003

Win 10Pro
Intel(R) Core(TM) i7-7700
NVIDIA Quadro P1000
ACAD, Civil-3D 2018

erstellt am: 07. Jul. 2020 09: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 Nur für Karsten Moert 10 Unities + Antwort hilfreich

Hallo Karsten,

das ist doch schon ein guter Anfang!
Zuerst msl noch dieses: Kennst Du schon diese Seiten? Immer wieder hilfreich!

Nun mal zu ein paar Details:

Code:
(setq poly (ssget))

und das Zusammensuchen der Stützpunkte.
Funktioniert nur so richtig, wenn Du eine LWPolylinie wählst.
Du kannst Die Auswahl gleich darauf beschränken mit
Code:
(setq poly (ssget '((0 . "LWPOLYLINE"))))

Code:
(setq  z1 0)
kannst Du weglassen, Du benutzt z1 nur einmal, da kannst Du dann auch direkt die 0 angeben, also:
Code:
(setq liste (entget(ssname poly 0)))

Code:
(setq layer (substr (cdr (assoc 8 liste))5))
kannst Du weglassen, Du benutzt layer nie.

Code:
(while (/= lr nil)
geht auch einfach
Code:
(while lr
Stilfrage :)

Das Konstrukt

Code:
[(if (= art 10)
    (progn
      (if (= z 0) (setq pkt (list (cdr la))) (setq pkt (append (list (cdr la)) pkt)))
        (Setq z (+ 1 z)
      )
    )
  )/CODE]
geht kürzer, wenn Du pkt gleich als Liste startest, also am Anfang nicht setq pkt 0  sondern setq pkt nil
[CODE](if (= art 10) (setq pkt (cons (cdr la) pkt)))

Code:
[(setq z 0 lfnr 1)/CODE] kannst Du weglassen, z ist jetzt noch o und lfnr nutzt Du nie.

[CODE](if ( = auswahl1 ... bis zum Ende


da lässt sich einiges zusammenfassen.

Doppelte Ausgabe lässt sich mit dem Abschalten der Echoausgabe lösen.
Im Ganzen könnte das dann so aussehen:

Code:
(Defun c:FindeObjekte ()

(setq scmde (getvar "cmdecho"))
(setvar "cmdecho" 0)

(setq pkt nil oft 0)
(Print "Bitte Polyline wählen")
(setq poly (ssget '((0 . "LWPOLYLINE"))))
(setq z 0)
(setq liste (entget(ssname poly 0)))
(setq lr (cdr liste))
(while lr
  (setq la (car lr))
  (setq art (car la))
  (if (= art 10) (setq pkt (cons (cdr la) pkt)))
  (setq lr (cdr lr))
)
(setq auswahl1 (ssget "_wp" pkt))
(if  auswahl1
  (progn
    (setq n (sslength auswahl1))
    (while (< z n)
      (setq liste1 (entget (ssname auswahl1 z)))
      (if (wcmatch (cdr (assoc 8 liste1)) "S0350[2345]")(setq oft (+ 1 oft)))
      (setq z (+ 1 z))
    ) 
  )

  (Print oft)
(setvar "cmdecho" scmde)
(princ) 

)


HTH
Gruß
Thomas

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

TC17pro
Ehrenmitglied
PMs werden auch beantwortet


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

Beiträge: 1989
Registriert: 20.08.2013

Rechner 1, alt mit W7
NVidia GT540M
Rechner 2, neu mit W10
NVidia GeForce GTX1060

erstellt am: 07. Jul. 2020 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 Nur für Karsten Moert 10 Unities + Antwort hilfreich


Auswahl_Layer_Anzahl.png

 
Hallo,

Entschuldigung, habt ihr in Autocad keine "Auswahl nach Abfrage"?

Ich habe versucht das nachzustellen.
- beliebige Teile auswählen
- Auswahl nach Abfrage (Query)
Ergebnisausgabe:
Layer die abgefragt werden, werden hervorgehoben, hier Layer 1
Anzahl wird ebenfalls angezeigt, hier 27 von 225 bzw. 27x Polylinie

Analog würde es mit Farbe oder sonstigen Eigenschaften funktionieren. 

------------------
Freundliche Grüße
TC17pro

Über eine Rückmeldung würde ich mich freuen, Danke.
Meine Version TurboCAD V 17.2.77.1 Professional
Für die erstellten Beiträge ist die Haftung, Garantie und Gewährleistung ausgeschlossen.
Nettiquette-----Sys-Info-----Richtig fragen
Dateianhänge hochladen
So sagt man Dankeschön - Unities
NEU, aus gegebenem Anlass: Keinesfalls will ich Jemand beleidigen oder provizieren. Ich will nur helfen.

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

Karsten Moert
Mitglied


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

Beiträge: 6
Registriert: 05.07.2020

AutoCAD 2013

erstellt am: 07. Jul. 2020 20:34    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

Zitat:
Ihr solltet euch ein GIS zulegen. Objektüberlagerung ist eine klassische Anwendung daraus.
Das herumwursteln mit Autocad bei GIS Anwendungen ist nicht mehr Zeitgemäß....

Das nutzen wir auch, können da aber nicht ohne Weiteres erweitern, bzw. der Dienstweg ist... recht kompliziert und langwierig. So sind wir viiieeel flexibler.

Zitat:
Würde es da nicht einfach genügen, auf einen Auswahlsatz, der alle in der Polylinienkontur liegenden Objekte enthält (dazu sind oben hinreichend Hinweise gegeben) den Befehl SAUSWAHL (_qselect) anzuwenden?

Zitat:
Entschuldigung, habt ihr in Autocad keine "Auswahl nach Abfrage"?

Ich habe versucht das nachzustellen.
- beliebige Teile auswählen
- Auswahl nach Abfrage (Query)
Ergebnisausgabe:
Layer die abgefragt werden, werden hervorgehoben, hier Layer 1
Anzahl wird ebenfalls angezeigt, hier 27 von 225 bzw. 27x Polylinie

Analog würde es mit Farbe oder sonstigen Eigenschaften funktionieren. 


Da ist ein Script viel einfach zu handlen, Name tippen, auf Umring tippen, fertig. Die Scripte sind schon mächtige Werkzeuge, finde ich.

Zitat:
Da lässt sich einiges zusammenfassen.
[...]
Doppelte Ausgabe lässt sich mit dem Abschalten der Echoausgabe lösen.
Im Ganzen könnte das dann so aussehen:

Vielen Dank, das funktioniert einwandfrei!   

Ich habe noch Polylinien/Umringe gefunden, in denen es seltsamerweise nicht funktioniert. Warum das so ist, ist mir noch schleierhaft, da teste ich noch mal weiter.
Vielen Dank aber schonmal an alle Helfer! 

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

spider_dd
Mitglied



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

Beiträge: 1032
Registriert: 27.11.2003

Win 10Pro
Intel(R) Core(TM) i7-7700
NVIDIA Quadro P1000
ACAD, Civil-3D 2018

erstellt am: 08. Jul. 2020 08: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 Karsten Moert 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Karsten Moert:

Ich habe noch Polylinien/Umringe gefunden, in denen es seltsamerweise nicht funktioniert. ...

Das Programm läuft, wie oben schon gesagt, nur mit LWPolylinien, nicht mit 2D- oder 3D-Polylinien. Die haben eine andere Datenstruktur. Deshalb werden diese auch gar nicht erst ausgewählt. Zum Test kannst Du mal folgendes in die Befehlszeile eingeben:

Code:
(entget(ssname (ssget) 0 ))

Dann Polylinie auswählen und Enter drücken.
Wenn in den dann erscheinenden Daten ziemlich am Anfang bei (0 . ...) was anderes steht als "LWPOLYLINE" geht diese nicht. Da kann man aber ggf. abhelfen mit POLYKONVERT mit Option Dünn.

Ansosnsten müsstest Du uns mal so eine PL zukommen lassen.
Lass mal hören!

Gruß
Thomas

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: 5891
Registriert: 16.09.2004

Windows 7 64bit, ACAD Rel. 14 - ACAD 2020

erstellt am: 08. Jul. 2020 09: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 Karsten Moert 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von TC17pro:

... habt ihr in Autocad keine "Auswahl nach Abfrage"?


Doch, die gibt's (wenn ich Dich richtig verstanden habe). Entweder FILTER benutzen oder das von mit oben angeregte QSELECT. Beißt aber keiner an ...

------------------
Bildung kommt nicht vom Lesen, sondern vom Nachdenken über das Gelesene. (Carl Hilty)

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

TC17pro
Ehrenmitglied
PMs werden auch beantwortet


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

Beiträge: 1989
Registriert: 20.08.2013

Rechner 1, alt mit W7
NVidia GT540M
Rechner 2, neu mit W10
NVidia GeForce GTX1060

erstellt am: 08. Jul. 2020 09: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 Nur für Karsten Moert 10 Unities + Antwort hilfreich

Hallo jupa,

das hätte ich mich auch gewundert, wenn es in AC das nicht geben würde. 

Zumal ich die jeweilige Abfrage abspeichern, wiederverwenden und auch
modifizieren kann.
Der Aufwand in diesem Fall waren ca. 5 Minuten.

------------------
Freundliche Grüße
TC17pro

Über eine Rückmeldung würde ich mich freuen, Danke.
Meine Version TurboCAD V 17.2.77.1 Professional
Für die erstellten Beiträge ist die Haftung, Garantie und Gewährleistung ausgeschlossen.
Nettiquette-----Sys-Info-----Richtig fragen
Dateianhänge hochladen
So sagt man Dankeschön - Unities
NEU, aus gegebenem Anlass: Keinesfalls will ich Jemand beleidigen oder provizieren. Ich will nur helfen.

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: 19915
Registriert: 03.06.2002

System: F1
und Google

erstellt am: 08. Jul. 2020 09: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 Karsten Moert 10 Unities + Antwort hilfreich

@TC17pro
In AutoCAD gibt es
a) Keine Möglichkeit eine Polylinie als Auswahlumgrenzung zu nutzen
b) das Ergebnis (Anzahl) für mehrere Layer gesplittet auzulisten
c) Speichern/wiederverwenden kann man für viele Abfragen realisieren, aber nicht für alle.

Alles darüber hinaus -> Programmierung/Programmerweiterung notwendig und damit auch zwingend AutoCAD, AutoCAD LT würde hier nicht ausreichen.

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

TC17pro
Ehrenmitglied
PMs werden auch beantwortet


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

Beiträge: 1989
Registriert: 20.08.2013

Rechner 1, alt mit W7
NVidia GT540M
Rechner 2, neu mit W10
NVidia GeForce GTX1060

erstellt am: 08. Jul. 2020 10: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 Karsten Moert 10 Unities + Antwort hilfreich

Hallo cadffm,

letztendlich wird es wohl von den Anforderungen (Breite, Tiefe, Anzahl)des TE abhängen.
Ich habe nur aus dem Gegebenen/Gefragten versucht eine schnelle, einfache Lösung ohne
viel Aufwand zu finden. Aus dem Bildausschnitt geht ja nicht wirklich viel hervor.

------------------
Freundliche Grüße
TC17pro

Über eine Rückmeldung würde ich mich freuen, Danke.
Meine Version TurboCAD V 17.2.77.1 Professional
Für die erstellten Beiträge ist die Haftung, Garantie und Gewährleistung ausgeschlossen.
Nettiquette-----Sys-Info-----Richtig fragen
Dateianhänge hochladen
So sagt man Dankeschön - Unities
NEU, aus gegebenem Anlass: Keinesfalls will ich Jemand beleidigen oder provizieren. Ich will nur helfen.

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

Karsten Moert
Mitglied


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

Beiträge: 6
Registriert: 05.07.2020

AutoCAD 2013

erstellt am: 08. Jul. 2020 19: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

Zitat:
Das Programm läuft, wie oben schon gesagt, nur mit LWPolylinien [...] was anderes steht als "LWPOLYLINE" geht diese nicht.
Ansosnsten müsstest Du uns mal so eine PL zukommen lassen.
Lass mal hören!

Danke Thomas, das hatte ich aber schon überprüft. Nach einigem Probieren habe ich mir die betroffene Polylinie, die zum Testen immer in der Nähe war, angesehen und einen Fehler in der Linie entdeckt. Ein Greifer (heissen die Eckpunkte der Linien so?) war nicht löschbar und irgendwie auffällig. Nachdem ich sie und eine weitere Linie daneben repariert hatte, gab es eine richtige Anzahl-Anzeige! 
Zufällig hatte ich also auch immer defekte Polylinien getestet. Das Script funktioniert somit wunderbar. :)

Zitat:
Doch, die gibt's (wenn ich Dich richtig verstanden habe). Entweder FILTER benutzen oder das von mit oben angeregte QSELECT. Beißt aber keiner an ...

Wie schon berichtet funktioniert das bei diesem Anwendungsfall nicht. Ist nicht so, als hätte ich da selber nicht schon einiges probiert. ;)

Zitat:
a) Keine Möglichkeit eine Polylinie als Auswahlumgrenzung zu nutzen
b) das Ergebnis (Anzahl) für mehrere Layer gesplittet auzulisten
c) Speichern/wiederverwenden kann man für viele Abfragen realisieren, aber nicht für alle.

Ist leider so. 

Vielen Dank nochmal an alle Helfer! 

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: 19915
Registriert: 03.06.2002

System: F1
und Google

erstellt am: 08. Jul. 2020 20: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 Karsten Moert 10 Unities + Antwort hilfreich

Nur kurz


>"Greifer (heissen die Eckpunkte der Linien so?)"
Allgemein: Griffe / Griff


>"war nicht löschbar und irgendwie auffällig"
Ich interpretiere mal: Vermutlich meinst du das Löschen über das Kontext- oder Multifunktionalgriff Menü.
Dies wäre dann der Fall wenn zwei oder mehr Polylinien-Stützpunkte(und damit Griffe) deckungsgleich aufeinander liegen,
in diesem Fall ist nicht bekannt welchen der Stützpunkte du bearbeiten möchtest und die Option ist deaktiviert.

Zudem ist es dann möglich das die Koordinaten für eine Polygon- oder Kreuzenpolygon- Wahl nicht zum gewünschten Ergebnis führen, richtig.

BTW: Polylinien oder auch Schraffuren welche so ungünstigem Verlauf folgen haben oft auch keine Flächen-Information
und verursachen unerwartete Ergebnisse vei Bearbeitungsfunktionen wie Abrunden etc.


TIP, Befehl: AUFRÄUM / _Overkill


Und: In Autocad gibt es SCRIPTe, von daher wäre es gut für die Verständigung und hilft dir auch bei Recherchen - die "richtigen" Vokabeln zu nutzen.


Also: Programmiersprache LISP
Code/Programme können unter anderen in Dateien mit der Endung *.LSP gespeichert werden.aka LISP Datei.


SCRIPTe sind Ascii Dateien mit der Dateiendung *.scr
Welche eine Abfolge von Befehlszeileneingaben enthalten, also gerne auch Lispausdrücke -
Dann hat man Lispausdrücke in Scriptdateien welche in der Befehlszeile ausgewertet werden.


EDITIERT

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

Karsten Moert
Mitglied


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

Beiträge: 6
Registriert: 05.07.2020

AutoCAD 2013

erstellt am: 08. Jul. 2020 20:39    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

Vielen Dank, cadffm! Wieder was dazu gelernt. 🙂👍

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)2020 CAD.de | Impressum | Datenschutz