ARKANCE - globální Platinum partner Autodesk ARKANCE | KONTAKT - CZ | SK | EN | DE
Již 10.000+ CAD tipů. Přes 118.500 registrovaných u nás, celkem 1.094.000 registrovaných (CZ+EN), přes 53.000 CAD/BIM bloků. Vyzkoušejte nový přesný Inženýrský kalkulátor. Kompletní příkazy AutoCADu a proměnné AutoCADu 2026.
RSS kanál - CAD tipy RSS tipy
RSS diskuze

Diskuze Diskuzní fórum, poradna

?
CAD diskuze, rady, výměna zkušeností

CAD Fórum - Homepage Veřejné diskuzní fórum k CAD aplikacím - ptejte se na libovolné otázky týkající se oboru CAx, podělte se o vaše znalosti a zkušenosti s programy AutoCAD, Inventor, Revit, Fusion, 3ds Max, Vault a s dalšími CAD/BIM/PDM aplikacemi. Zaregistrujte se nebo se přihlašte a zašlete váš příspěvek do odpovídajícího fóra. Viz další informace o CAD Fóru. Nechcete se registrovat? Zeptejte se v naší Facebook poradně.
Fórum nenahrazuje technický support firmy ARKANCE (CAD Studio) - přímá podpora pro zákazníky funguje na helpdesk.arkance-systems.cz
  FAQ FAQ  Prohledat fórum   Události   Registrovat Registrovat  Přihlásit Přihlásit

Téma uzavřenoAutoLisp

 Odpovědět Odpovědět archiv
Autor
I.Kroutil Zobrazit panel
Nováček
Nováček

Přihlášen: 13.říj.2004
Stav: Offline
Bodů: 14
Přímý odkaz na tuto zprávu Téma: AutoLisp
    Zasláno: 07.pro.2006 v 11:37
Dobrý den, jelikož programuji v Lispu jen ojediněle, obracím se na vás s touto prosbou. Dělám prográmek obsahující výběrový filtr a potřeboval bych poradit, jakým způsobem lze provést následující.

(setq a_sez) má hodnotu (8 . "TEXT")
(setq b_sez) má hodnotu (62 . 256)
(setq c_sez) má hodnotu (7 . "Isocp")
(setq d_sez) má hodnotu (40 . 3.5)

dále by mohlo následovat
(ssget (list a_sez b_sez c_sez d_sez)) má hodnotu
(ssget ((8 . "TEXT") (62 . 256) (7 . "Isocp") (40 . 3.5)) a bude fungovat

Já ale potřebuji dosáhnout dotatečného doplnění nebo jiného obsahu v seznamu. Jednotlivé hodnoty proměnných jsou závislé na vybrání v dialogovém panelu. Takže může dojít k následujícímu

(setq a_sez) má hodnotu (8 . "TEXT")
(setq b_sez) má hodnotu (62 . 256)
(setq c_sez) má hodnotu (7 . "Isocp")
(setq d_sez) má hodnotu nil (nebyla vybrána)

a v takovém případě
(ssget ((8 . "TEXT") (62 . 256) (7 . "Isocp") nil) samozřejmě končí.
Zatím jsem nebyl schopen dosáhnout postupného přidáváni jednotlivých hodnot do seznamu podle pravdivých hodnot proměnných.
Pokud by měl někdo radu, předem děkuji.
Zpět nahoru
pavelstyl Zobrazit panel
Zasloužilý člen
Zasloužilý člen

Přihlášen: 06.říj.2004
Lokalita: Czech Republic
Používám:
AutoCAD Mech 2025, SolidEdgeE 2025
Stav: Offline
Bodů: 229
Přímý odkaz na tuto zprávu Zasláno: 07.pro.2006 v 13:13
Pisi z hlavy:
(setq seznam nil)
(if a_sez (setq seznam (append (seznam (list a_sez)))))
(if b_sez (setq seznam (append (seznam (list b_sez)))))
(if c_sez (setq seznam (append (seznam (list c_sez)))))
...
...
(ssget seznam)
 
Pavel Styl
Zpět nahoru
I.Kroutil Zobrazit panel
Nováček
Nováček

Přihlášen: 13.říj.2004
Stav: Offline
Bodů: 14
Přímý odkaz na tuto zprávu Zasláno: 07.pro.2006 v 14:17
Ano, to je ono. Po menší úpravě dle vašeho návrhu mohu zvolat heuréka. Děkuji, moc jste mi pomohl. S pozdravem I.Kroutil
Zpět nahoru

Pro technickou podporu CAD
kontaktujte Helpdesk

Příbuzné CAD tipy:
Tip 7307:Jak vložit obrázek AutoLISP makrem?
Tip 10455:Jak v AutoCADu nakreslit obdélník zadaný středem?
Tip 9995:AutoCAD 2015 vypisuje chybu "VVC: internal error"
Tip 2523:Jak vyvolat dialogovou verzi příkazu z makra?
Tip 1671:Nevýznamné desetinné nuly se nezobrazí funkcí (rtos).
Tip 1364:Jak zakódovat LSP program aby jej nebylo možné editovat?


 Odpovědět Odpovědět

Přejít na fórum Oprávnění fóra Zobrazit panel



Stránka byla vygenerována za 0,375 sekund.