| |  | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte | | |  | PNY präsentiert die neue NVIDIA RTX A400 und die A1000 Grafikkarte, eine Pressemitteilung
|
Autor
|
Thema: text zu attribut (1678 mal gelesen)
|
hooki Mitglied
 Beiträge: 2 Registriert: 14.04.2011
|
erstellt am: 14. Apr. 2011 10:04 <-- editieren / zitieren --> Unities abgeben:         
hallo, ich bin auf der suche nach einem lisp, das folgendes zustande bringt. zur ausgangssituation: ich habe einen block und einen text und will nun durch anklicken des blockes und anschließendem klick auf den text dem block diesen text als attribut "x" zuweisen. dabei soll der textinhalt als attributwert übernommen werden, aber es soll sich weder die position, drehung, stil, höhe,.... ändern. soll heißen alles sieht aus wie davor, jedoch der text ist nun ein attribut des blockes. ist das überhaupt möglich?? lg hooki Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
runkelruebe Ehrenmitglied V.I.P. h.c. Straßen- / Tiefbau

 Beiträge: 8086 Registriert: 09.03.2006 sw: Win7-x64 Office 365 ProPlus C3D (& LT ) ET; DACH; Extensions ------------------- hw: FX3800 i5 CPU 670 8GB RAM
|
erstellt am: 14. Apr. 2011 10:06 <-- editieren / zitieren --> Unities abgeben:          Nur für hooki
|
CADmium Moderator Maschinenbaukonstrukteur
       

 Beiträge: 13533 Registriert: 30.11.2003 .
|
erstellt am: 14. Apr. 2011 10:12 <-- editieren / zitieren --> Unities abgeben:          Nur für hooki
Zitat: Original erstellt von hooki: hallo, ich bin auf der suche nach einem lisp, das folgendes zustande bringt. zur ausgangssituation: ich habe einen block und einen text und will nun durch anklicken des blockes und anschließendem klick auf den text dem block diesen text als attribut "x" zuweisen. dabei soll der textinhalt als attributwert übernommen werden, aber es soll sich weder die position, drehung, stil, höhe,.... ändern. soll heißen alles sieht aus wie davor, jedoch der text ist nun ein attribut des blockes. ist das überhaupt möglich?? lg hooki
Mal ein wenig Aufklärung : Attribute (ATTRIB) sind an Blockreferenzen gebundene Textobjekte, die nachträglich verändert werden können, ohne die Blockreferenz aufzulösen. Basis der Attribute sind die Attributdefinitionen (ATTDEF) im Blockcontainer. Das sind ebenfalls Textobjekte mit besonderen zusätzlichen Eigenschaften hinsichtlich ihrer Visualisierung. Für diese sind neben der Systemvariable ATTMODE die Eigenschaften KONSTANT und UN SICHTBAR verantwortlich. Eine Attributdefinition mit der Eigenschaft KONSTANT generiert bei der Blockeinfügung kein Attribut, sondern verhält sich wie ein Text im Block, reagiert aber auf die Einstellung von ATTMODE und die Eigenschaft UNSICHTBAR. Nicht-KONSTANTE Attributdefinitionen werden beim Einfügen einer Blockreferenz gar nicht visualisiert. Stattdessen werden Attributobjekte von den Attributdefinitionen abgeleitet und als Unterobjekte der Blockreferenz erzeugt. Auch hier hat die Einstellung von ATTMODE und die Eigenschaft UNSICHTBAR Einfluss darauf, ob das Attribut in der Zeichnung angezeigt wird oder nicht. Auch wenn die Attributdefinitionsobjekte im Blockcontainer dazu verwendet werden, die Attribute der Blockreferenz anzulegen, sind Attribut und Definition anschließend nicht mehr miteinander verbunden und Eigenschaften des Attributes können unabhängig ihrer Vorgaben verändert werden. Mit dem Autocad-Befehl ATTSYNC können die Attributeigenschaften jedoch wieder auf die Eigenschaften der Attributdefinition zurückgesetzt werden. Also dein Wunsch ist in gewisser Weise schon programmierbar... wie ist das eigentlich bei mehreren Blockreferenzen eines Blockes ? Solle die alle dieses Attribut bekommen , auch wenn da gar kein Text steht ? Also der Weg wäre : Blockreferenz und Text wählen .. zur Blockdefinition wechseln , Attributsdefiniton anlegen , attsync aufrufen -vorher evtl. die Eigenschften der schon vorhandenen Atts merken ... die dann wieder auf die Ursprungswerte zurücksetzen ... das neue Attribut befüllen und mit den Eigenschaften des Originaltextes versehen.
Was hast du denn für Lisperfahrungen ? ------------------ - 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 |
hooki Mitglied
 Beiträge: 2 Registriert: 14.04.2011
|
erstellt am: 14. Apr. 2011 10:58 <-- editieren / zitieren --> Unities abgeben:         
Zitat: Also dein Wunsch ist in gewisser Weise schon programmierbar... wie ist das eigentlich bei mehreren Blockreferenzen eines Blockes ? Solle die alle dieses Attribut bekommen , auch wenn da gar kein Text steht ?
da es nur eine blockdefinition geben soll werden alle blöckerefernezen dieses attribut "X" haben. wenn ich dem block keinen text zuweise hat diese blockreferenz den wert "???". Zitat: Also der Weg wäre : Blockreferenz und Text wählen .. zur Blockdefinition wechseln , Attributsdefiniton anlegen , attsync aufrufen -vorher evtl. die Eigenschften der schon vorhandenen Atts merken ... die dann wieder auf die Ursprungswerte zurücksetzen ... das neue Attribut befüllen und mit den Eigenschaften des Originaltextes versehen. Was hast du denn für Lisperfahrungen ?
Deine Wege Wegbeschreibung liest sich so wie es sein soll. Im Grunde genommen ist es eine Ausschneidung des Orginaltextes und Einlesung dessen Eigenschaften und eine anschließende Übergabe dieser Informationen an das Attribut. Meine Lisperfahrung beschränkt sich leider nur auf die Adaptierung vorhandener lisps. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |

| |
CADmium Moderator Maschinenbaukonstrukteur
       

 Beiträge: 13533 Registriert: 30.11.2003 .
|
erstellt am: 14. Apr. 2011 11:34 <-- editieren / zitieren --> Unities abgeben:          Nur für hooki
|
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
 |