Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  MV-Blockeigenschaften mit ssget

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:  MV-Blockeigenschaften mit ssget (1242 mal gelesen)
cadking
Mitglied
CAD-Zeichendiensleistung


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

Beiträge: 238
Registriert: 26.10.2004

Intel Quadcore i7,W7-64bit, Quadro FX 3800
MEP/ACA2018; MEP/ACA2018; MEP/ACA2021; MEP/ACA2021

erstellt am: 07. Nov. 2017 14: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 Leute,
gibt es eine Möglichkeit MV-Blöcke mit einer bestimmten X-Skalierung auszuwählen?
Z.B. in der Form:
(setq objausw (ssget "_x" (list
  '(-4 . "<and")
  (0 . "AEC_MVBLOCK_REF")
  (cons assoc X-Faktor)
  '(-4 . "and>")
  )
      )
)

------------------
Danke Stefan

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

CADwiesel
Moderator
CAD4FM UG




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

Beiträge: 1968
Registriert: 05.09.2000

AutoCAD, Bricscad
Wir machen das Mögliche unmöglich

erstellt am: 07. Nov. 2017 14: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 cadking 10 Unities + Antwort hilfreich

Ja
'((0 . "INSERT")(-4 . ">")(41 . 1.0))

------------------
Gruß
CADwiesel
Besucht uns im CHAT

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

cadking
Mitglied
CAD-Zeichendiensleistung


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

Beiträge: 238
Registriert: 26.10.2004

Intel Quadcore i7,W7-64bit, Quadro FX 3800
MEP/ACA2018; MEP/ACA2018; MEP/ACA2021; MEP/ACA2021

erstellt am: 07. Nov. 2017 15:22    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 Cadwiesel,

deine Atwort funktioniert bei Blöcken, nicht aber bei MV-Blöcken (cons 0 "AEC_MVBLOCK_REF").

Eine entityliste von MV-Blöcken gibt mir nur folgendes zurück:
((-1 . <Objektname: 7ffff5f3f00> ) (0 . "AEC_MVBLOCK_REF") (330 . <Objektname: 7ffff5eae00> ) (5 . "8360") (100 . "AcDbEntity") (67 . 0) (410 . "Model")
(8 . "A-ASPR"))

da ist kein assoc 41 drin.

------------------
Danke Stefan

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

.

erstellt am: 07. Nov. 2017 16:36    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 cadking 10 Unities + Antwort hilfreich

wahrscheinlich mußt du alle MV-Blöcke auslesen ... da das Object im 330 er "entget"en, gucken , ob da was mit einer Skalierung zu finden ist ... usw.... dann 

..vielleicht liefert ja auch (vlax-dump-object(vlax-ename->vla-object(car(entsel)))) was brauchbares um weiterzusortieren ?

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

cadking
Mitglied
CAD-Zeichendiensleistung


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

Beiträge: 238
Registriert: 26.10.2004

Intel Quadcore i7,W7-64bit, Quadro FX 3800
MEP/ACA2018; MEP/ACA2018; MEP/ACA2021; MEP/ACA2021

erstellt am: 07. Nov. 2017 22:37    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

(vlax-ename->vla-object(car(entsel))));für MV-Block

liefert:

; IAecMVBlockRef: Instanz einer MV-Blockreferenz, die in eine Zeichnung eingefügt wurde
; Eigenschaftswerte:
;  Application (RO) = #<VLA-OBJECT IAcadApplication 00000001402fa130>
;  BoundSpaces = 2
;  Description = "KB"
;  Document (RO) = #<VLA-OBJECT IAcadDocument 0000000033e53ba8>
;  EntityTransparency = "VonLayer"
;  Handle (RO) = "A880"
;  HasExtensionDictionary (RO) = 0
;  Hyperlinks (RO) = #<VLA-OBJECT IAcadHyperlinks 0000000068e61d78>
;  Layer = "A-ASPR"
;  Linetype = "ByLayer"
;  LinetypeScale = 1.0
;  Lineweight = -1
;  Location = (61.575 17.875 3.8)
;  Material = "ByLayer"
;  Normal = (0.0 0.0 1.0)
;  ObjectID (RO) = 42
;  ObjectName (RO) = "AecDbMvBlockRef"
;  OwnerID (RO) = 43
;  PlotStyleName = "ByLayer"
;  Rotation = 4.71239
;  ScaleX = 0.08
;  ScaleY = 0.2
;  ScaleZ = 0.08
;  ShadowDisplay = 0
;  Style = #<VLA-OBJECT IAecMVBlockStyle 000000004f2a8ee0>
;  StyleName = "Wandkernbohrung_1"
;  TrueColor = #<VLA-OBJECT IAcadAcCmColor 0000000068e6a350>
;  ViewBlocks (RO) = #<VLA-OBJECT IAecViewBlocks 00000000668830a0>
;  Visible = -1

Ich möchte alle MV-Blöcke in der Zeichnung in einen Auswahlsatz holen, die folgendes erfüllen:
; Eigenschaftswerte:
; IAecMVBlockRef: Instanz einer MV-Blockreferenz, die in eine Zeichnung eingefügt wurde
;  ScaleX = 0.08
;  StyleName = "Wandkernbohrung_1"

geht das? Wobei der ScaleX dem Wert Radius eines zuvor gewählten Kreises entspricht, den ich einem (setq radius (cdr(assoc 40 elist))) zugewiesen habe.

------------------
Danke Stefan

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

Alles

erstellt am: 07. Nov. 2017 22:47    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 cadking 10 Unities + Antwort hilfreich

Da die Eigenschaft vorhanden/zugänglich ist, natürlich.

Gehe alle Objekte im Modellbereich oder Modellbereich + Layouts durch,
prüfe auf ObjektName (ob Blockreferenz)
dann prüfe ob ScaleX dem gewünschten Wert entspricht.
Erstelle eine Liste oder einen Auswahlsatz nach belieben.


Für den Start:
https://knowledge.autodesk.com/search-result/caas/CloudHelp/cloudhelp/2015/ENU/AutoCAD-AutoLISP/files/GUID-9CB1C7DD-7E25-4F8C-8858-D79FEC043BEC-htm.html

------------------
CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD

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