Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  Parametertyp ermitteln

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:  Parametertyp ermitteln (1247 mal gelesen)
Andreas Kraus
Mitglied
Elektrotechniker


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

Beiträge: 1356
Registriert: 11.01.2006

WIN 10
ACAD 2022

erstellt am: 03. Mrz. 2014 13: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

Hallo zusammen,
wie bekomme ich denn den Typ eines dynamischen Parameters mit LISP raus ?

Ich möchte hier einen bestimmten Parametertyp nicht bearbeiten.

------------------
Geht nicht, gibts nicht

Gruß
Andreas

http://kraus-cad.de

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: 03. Mrz. 2014 14:18    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 Andreas Kraus 10 Unities + Antwort hilfreich

So ganz verstehe ich die Frage nicht, denn jeder Parametertyp ist doch eine eigene Objektart ?

Die Antwort wäre also: Über den ObjectName des vla-Objektes 

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

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

Andreas Kraus
Mitglied
Elektrotechniker


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

Beiträge: 1356
Registriert: 11.01.2006

WIN 10
ACAD 2022

erstellt am: 03. Mrz. 2014 15:16    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

Dann lese ich vielleicht an der falschen Stelle die Daten aus ?

Also ich mach das hier:

Code:
(vlax-safearray->list
      (vlax-variant-value
(vla-getdynamicblockproperties
  obj_name
)
      )
    )

obj_name ist der Objektname vom Block
Z.B. mit (setq obj_name (vlax-ename->vla-object (car (entsel "Block wählen : "))))

Damit bekomme ich eine Liste:
(#<VLA-OBJECT IAcadDynamicBlockReferenceProperty 00000000302ff308> #<VLA-OBJECT IAcadDynamicBlockReferenceProperty 000000003030f748> #<VLA-OBJECT IAcadDynamicBlockReferenceProperty 0000000030311b88> .......)

Mit vlax-dump-object bekomme ich z.B. das hier:

; IAcadDynamicBlockReferenceProperty: AutoCAD dynamische Blockeigenschaften-Schnittstelle
; Eigenschaftswerte:
;  AllowedValues (RO) = nil
;  Description (RO) = ""
;  PropertyName (RO) = "Origin"
;  ReadOnly (RO) = -1
;  show (RO) = 0
;  UnitsType (RO) = 0
;  Value = (23.0 0.0)

oder auch:
; IAcadDynamicBlockReferenceProperty: AutoCAD dynamische Blockeigenschaften-Schnittstelle
; Eigenschaftswerte:
;  AllowedValues (RO) = ("1" "2" "3" "4" "5" "6" ... )
;  Description (RO) = ""
;  PropertyName (RO) = "Sichtbarkeit1"
;  ReadOnly (RO) = 0
;  show (RO) = -1
;  UnitsType (RO) = 0
;  Value = "1"

ObjectName taucht da leider nicht auf.
Was mach ich falsch ?

------------------
Geht nicht, gibts nicht

Gruß
Andreas

http://kraus-cad.de

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: 03. Mrz. 2014 17: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 Nur für Andreas Kraus 10 Unities + Antwort hilfreich

Wozu brauchst du denn unbedingt die ObjectName-Eigenschaft?

Grüße!
Holger

------------------
Holger Brischke
CAD on demand GmbH
Individuelle Lösungen von Heute auf Morgen.


defun-tools Das Download-Portal für AutoCAD-Zusatzprogramme!


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

Andreas Kraus
Mitglied
Elektrotechniker


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

Beiträge: 1356
Registriert: 11.01.2006

WIN 10
ACAD 2022

erstellt am: 04. Mrz. 2014 08: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

Ich brauch den Parametertyp um einen bestimmten Parametertyp nicht zu bearbeiten.

Ich lese Daten aus und schicke die an Excel für z.B. Massenermittlung, Bautellisten, usw.
Wenn ich jetzt im Excel etwas an den Daten ändere (Tippfehler, Änderungen, usw.) lese ich diese Daten zurück ins ACAD.

Hat aber ein Block eine Blocktabelle wird mir alles was da dranhängt im jeweiligen Block so eingestellt ohne Rücksicht darauf ob gegenüber den Einstellungen der Blocktabelleneinträge etwas geändert wurde.

Beispiel:
Ich habe hier einen Block für Bodentanks mit Tabelleneinträgen für die verschiedenen Typen.
Im Attribut für die Bezeichnung was das ist, wird auch schon der entsprechende Typ eingetragen.
Wenn ich jetzt aber noch etwas an der Bezeichnung ändere (irgendeine Besonderheit, wurscht was das ist), wird das durch den Blocktabelleneintrag überschrieben wenn ein Tabelleneintrag durch den Wert in Excel gewählt wird. Damit ist die Zusatzinfo weg.
Es kann ja auch mal sein dass die benötigten Werte noch nicht in der Blocktabelle sind, weil sich die Hersteller was neues ausgedacht haben.
Dann muss ich die Parameter einzeln einstellen. Das ist dann aber auch weg.

Deshalb brauche ich den Parametertyp um auf Blocktabellen reagieren zu können z.B. überspringen oder nachfragen oder irgendwas, ich muss noch ausprobieren was am Besten ist.
Aber dazu brauch ich den Parametertyp.

------------------
Geht nicht, gibts nicht

Gruß
Andreas

http://kraus-cad.de

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: 04. Mrz. 2014 08: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 Nur für Andreas Kraus 10 Unities + Antwort hilfreich

Sorry, durch ein paar Postings in den letzten Tagen "befand ich mich im Blockeditor" bei deiner Frage  

Das was du suchst steht in Dictionarys:
(dictsearch(vlax-vla-object->ename (vla-getextensiondictionary MeinVlaBlockObj))"ACAD_ENHANCEDBLOCK")

Bei den Einträgen mit dem gc360 befinden sich dann auch die "*PARAMETER", in diesen findest du dann die Parameternamen (die du bereits ermittelt hast) und
anhand des Objekttyps siehst du hier dann um was für einen Parameter es sich handelt.

Code:

..
(0 . "BLOCKROTATIONPARAMETER")
..
(305 . "Pfeilrichtung")
(306 . "Drehungswinkel des Symbols einstellen")
..

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

[Diese Nachricht wurde von cadffm am 4. Mrz. 2014 editiert.]

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

Andreas Kraus
Mitglied
Elektrotechniker


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

Beiträge: 1356
Registriert: 11.01.2006

WIN 10
ACAD 2022

erstellt am: 04. Mrz. 2014 10: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

Suuuuper !!! 

Da ist das Zeug also. Mann was hab ich rumgesucht.
Volle Punktzahl.
Danke 

------------------
Geht nicht, gibts nicht

Gruß
Andreas

http://kraus-cad.de

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