Registrujte se na 22. ročník konference CADfórum 2025 - 30.9. Zámek Valeč.
Přes 119.000 registrovaných u nás, celkem 1.101.000 registrovaných (CZ+EN), přes 53.000 CAD/BIM bloků.
Vyzkoušejte nový přesný Inženýrský kalkulátor a
proměnné prostředí AutoCADu.
Diskuzní fórum, poradna
?CAD diskuze, rady, výměna zkušeností

Fórum nenahrazuje technický support firmy ARKANCE (CAD Studio) - přímá podpora pro zákazníky funguje na helpdesk.arkance-systems.cz
|
Odpovědět ![]() |
Stránka <12 archiv |
Autor | |
Ferdinand ![]() TOP uživatel ![]() Přihlášen: 01.říj.2004 Lokalita: ČR (JM) Používám: AutoCAD2004 (EN) na Windows XP Stav: Offline Bodů: 1906 |
![]() |
To Sedláček: Děkuji, to jsem nevěděl - ovšem díky Buba ode dneška už vím, že existuje i příkaz gatte... Přesto ale nelze zadat (anebo to dělám špatně) čistě jméno atributu (viz výše) - chce to po mne kliknutí na hledaný DATUM; já bych raději, aby to proběhlo bez nutnosti na něco (co nevím, kde se nachází - teda já asi ano, ale ostatní uživatelé o tom nemaj ani šajnu...) klikat.
To Alfred: Ne ve 128 souborech, ale v 1 souboru, kde je RT1 vložen 128-krát (viz pův. příspěvek).
|
|
-FerTh-
|
|
![]() |
|
alfred ![]() Profil člena
Odeslat soukromou zprávu
Najít příspěvky člena
Navštívit stránky člena
Přidat do seznamu známých
TOP uživatel ![]() Přihlášen: 14.říj.2004 Lokalita: ČR (JČ) Používám: AutoCad MAP 2011 Stav: Offline Bodů: 1676 |
![]() |
Hadam, ale predpokladam, ze to pan Ferdinand potrebuje zmenit ve 128 souborech... |
|
![]() |
|
alfred ![]() Profil člena
Odeslat soukromou zprávu
Najít příspěvky člena
Navštívit stránky člena
Přidat do seznamu známých
TOP uživatel ![]() Přihlášen: 14.říj.2004 Lokalita: ČR (JČ) Používám: AutoCad MAP 2011 Stav: Offline Bodů: 1676 |
![]() |
To já taky, bez helpu u VisualLispu nenapisu nic. :-D |
|
![]() |
|
Sedláček ![]() TOP uživatel ![]() Přihlášen: 15.dub.2005 Lokalita: Czech Republic Používám: AutoCad 2024 LT Stav: Offline Bodů: 384 |
![]() |
Proč 128-krát? GATTE změní hodnotu atributu ve všech blocích daného jména najednou.
|
|
![]() |
|
Ferdinand ![]() TOP uživatel ![]() Přihlášen: 01.říj.2004 Lokalita: ČR (JM) Používám: AutoCAD2004 (EN) na Windows XP Stav: Offline Bodů: 1906 |
![]() |
To Alfred: Aha, už to chápu. Mám trošku ztvrdlou hlavu. Ale hlavně - jsem jen "sváteční" lispátor. Upravil Ferdinand - 07.čvc.2008 v 14:20 |
|
-FerTh-
|
|
![]() |
|
Buba ![]() Profil člena
Odeslat soukromou zprávu
Najít příspěvky člena
Navštívit stránky člena
Přidat do seznamu známých
CAD/BIM manager ![]() Přihlášen: 05.říj.2005 Lokalita: Slovensko Používám: AEC Collection Stav: Offline Bodů: 1692 |
![]() |
A keď si atribut označíte myšou?
|
|
![]() |
|
alfred ![]() Profil člena
Odeslat soukromou zprávu
Najít příspěvky člena
Navštívit stránky člena
Přidat do seznamu známých
TOP uživatel ![]() Přihlášen: 14.říj.2004 Lokalita: ČR (JČ) Používám: AutoCad MAP 2011 Stav: Offline Bodů: 1676 |
![]() |
To mate prece v tom Vasem uvodnim prikladu
(setq AA (ssget "X" '((0 . "INSERT") (2 . "RT1")))) vybere to vsechny bloky, selekci je potreba projit v cyklu a pro kazdou entitu ve vyberu provest to co jsem psal. Na prochazeni vyberem jsou funkce (sslength) a (ssname). Neco jako: (setq n 0) (while (< n (sslength aa)) (setq objekt (ssname aa n)) ;zde dat cast programu, ktera upravuje atribut (setq n (+ n 1)) ) |
|
![]() |
|
Ferdinand ![]() TOP uživatel ![]() Přihlášen: 01.říj.2004 Lokalita: ČR (JM) Používám: AutoCAD2004 (EN) na Windows XP Stav: Offline Bodů: 1906 |
![]() |
To Buba: Nebere mi to jméno atributy: Command: GATTE
Select block or attribute [Block name]: B Enter block name: RT1
Known tag names for block: TEXT_S2 TEXT_S1 TEXT13 TEXT12 TEXT11 È.V.ZÁKAZNÍKA
JAZYK PÙVOD ODDÌLENÍ È.ZAKÁZKY ZÁKAZNÍK2 ZÁKAZNÍK1 AKCE4 AKCE3 AKCE2 AKCE1 DATUM_SCHVÁLENÍ SCHVÁLIL DATUM_NÁVRHU NAVRHL STATUS DCC - ++ + = STRANA REVIZE ÈÍSLO_DOKUMENTU NÁZEV2 NÁZEV1 DRUH_DOKUMENTU Select attribute or type attribute name: DATUM_NÁVRHU *Invalid selection* Expects a single object. Select attribute or type attribute name:
To Alfred:
|
|
-FerTh-
|
|
![]() |
|
alfred ![]() Profil člena
Odeslat soukromou zprávu
Najít příspěvky člena
Navštívit stránky člena
Přidat do seznamu známých
TOP uživatel ![]() Přihlášen: 14.říj.2004 Lokalita: ČR (JČ) Používám: AutoCad MAP 2011 Stav: Offline Bodů: 1676 |
![]() |
vybrat objekt - blok
v cyklu pouzit funkci (entget ) a a kontrolovat jakou entitu to vrati. Kdyz je to atribut s pozadovanym jmenem zmenit hodnotu. Cyklus ukoncit pokud ENTGET vrati entitu "SEQEND". (setq objekt (car (ENTSEL))) (setq objekt(ENTNEXT objekt)) (while (/= (cdr (assoc 0 (entget objekt))) "SEQEND") (if (and (= (cdr (assoc 0 (entget objekt))) "ATTRIB") (= (cdr (assoc 2 (entget objekt))) "DATUM") ) (print "upravit objekt") (print "Atribut nebyl nalezen...") );if (setq objekt (ENTNEXT objekt)) );while |
|
![]() |
|
Buba ![]() Profil člena
Odeslat soukromou zprávu
Najít příspěvky člena
Navštívit stránky člena
Přidat do seznamu známých
CAD/BIM manager ![]() Přihlášen: 05.říj.2005 Lokalita: Slovensko Používám: AEC Collection Stav: Offline Bodů: 1692 |
![]() |
Cez _GATTE Vám to nestačí?
|
|
![]() |
|
Ferdinand ![]() TOP uživatel ![]() Přihlášen: 01.říj.2004 Lokalita: ČR (JM) Používám: AutoCAD2004 (EN) na Windows XP Stav: Offline Bodů: 1906 |
![]() |
Mám blok (dejme tomu že má název RT1) se 32-mi atributy, ve výkrese je 128-krát vložený. Chtěl bych pomocí lispu změnit Value atributu DATUM ve všech RT1 na stejnou hodnotu. DATUM je v dialogu Attedit zobrazen jako 14. v pořadí. Jak lze získat v lispu atribut s tímhle pořadím (bez nutnosti ukazování na něj)? Zatím je koncepce taková:
(setq AA (ssget "X" '((0 . "INSERT") (2 . "RT1"))))
(if (/= AA nil)
(progn (setq VYB0 (strcase (getstring "\nNovy datum: <2008-07-01> ")))
(setq N 0)
(while (< N (sslength AA))
(setq E (ssname AA N)) (setq E2 ???) ;tady nevím co má být (setq S2 (entget E2))
(setq OO2 (assoc 1 (entget E2)))
(setq NN2 (cons 1 VYB0))
(setq S2 (subst NN2 OO2 S2))
(entmod S2)
(entupd E)
(setq N (1+ N))
)
)
)
|
|
-FerTh-
|
|
![]() |
Pro technickou podporu CAD
kontaktujte Helpdesk
Odpovědět ![]() |
Stránka <12 archiv |
Přejít na fórum | Oprávnění fóra ![]() Nemůžete vytvářet nová témata v tomto fóru Nemůžete odpovídat na témata v tomto fóru Nemůžete vymazávat vaše příspěvky v tomto fóru Nemůžete upravovat vaše příspěvky v tomto fóru Nemůžete vytvářet ankety v tomto fóru Nemůžete hlasovat v anketách v tomto fóru |
Stránka byla vygenerována za 0,395 sekund.