ARKANCE - globální Platinum partner Autodesk ARKANCE | KONTAKT - CZ | SK | EN | DE
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.097.000 registrovaných (CZ+EN), přes 53.000 CAD/BIM bloků. Vyzkoušejte nový přesný Inženýrský kalkulátor a aktualizovaný Generátor čarových kódů.
Registrujte se na konferenci CADfórum 2025 - automatizace navrhování
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řenodefault

 Odpovědět Odpovědět archiv
Autor
Ferdinand Zobrazit panel
TOP uživatel
TOP uživatel

Přihlášen: 01.říj.2004
Lokalita: ČR (JM)
Používám:
AutoCAD2004 (EN) na Windows XP
Stav: Offline
Bodů: 1906
Přímý odkaz na tuto zprávu Téma: default
    Zasláno: 25.čvc.2006 v 13:56
V aplikaci BLEADER.LSP mám bezprostředně za sebou 2 dvojice výběru (první=[O/K], druhá=[H/V] ). Chtěl bych tam dostat implicitní (tj. předem danou, Enterem potvrzovatelnou) hodnotu (první=<K>, druhou=<H>) pomocí této utilitky:
;default.lsp
;B...implicitni hodnota
;C...vyzva uzivateli (to, co bude v zavorkach tj. <C>)
;D...typ promenne (real, int, str)
(defun default (B C D / TEMP)
  (cond    ((= D "real")
     (if (= B nil)
       (setq B 1)
     )
     (prompt (strcat C " <" (rtos B 2 2) "> "))
     (setq TEMP (getreal))
     (if (= TEMP nil)
       B
       TEMP
     )
    )
    ((= D "int")
     (if (= B nil)
       (setq B 1)
     )
     (prompt (strcat C " <" (rtos B 2 0) "> "))
     (setq TEMP (getint))
     (if (= TEMP nil)
       B
       TEMP
     )
    )
    ((= D "str")
     (if (= B nil)
       (setq B "")
     )
     (prompt (strcat C " <" B "> "))
     (setq TEMP (getstring t))
     (if (= TEMP "")
       B
       TEMP
     )
    )
  )
  (prinC)
)

Jak to volat v bleader.lsp?
=první volba: default má být K
(setq NECO1 (default B "1.VÝZVA NA PŘÍKAZOVÉM ŘÁDKU" "str"))
...
Co má být NECO1 ?
Jak to bude pokračovat pro případ volby O ?
=druhá volba: default má být H
(setq NECO2 (default B "2.VÝZVA NA PŘÍKAZOVÉM ŘÁDKU" "str"))
Co má být NECO2 ?
Jak to bude pokračovat pro případ volby V ?
-FerTh-
Zpět nahoru
Seiner Zobrazit panel
CAD/BIM manager
CAD/BIM manager

Přihlášen: 01.říj.2004
Lokalita: ČR (PA)
Používám:
Mechanical 2017, Inventor 2017 a starší
Stav: Offline
Bodů: 1662
Přímý odkaz na tuto zprávu Zasláno: 25.čvc.2006 v 14:05

Jestli se orientuji ve Vašem košatém dotazu, pomůže Vám funkce GetKWord.
Příklad:

 (Initget "N P V K J")
 (setq jak (GetKWord "Nad/Pod/Vodorovně/Jinde/<Konec> "))
 (If (= jak nil)(setq jak "K" konec T))



Upravil Seiner - 25.čvc.2006 v 14:06
Vítězslav Seiner

Chrudim
Zpět nahoru
Ferdinand Zobrazit panel
TOP uživatel
TOP uživatel

Přihlášen: 01.říj.2004
Lokalita: ČR (JM)
Používám:
AutoCAD2004 (EN) na Windows XP
Stav: Offline
Bodů: 1906
Přímý odkaz na tuto zprávu Zasláno: 27.čvc.2006 v 11:37
To ano, ale jak tam dostanu tu přednastavenou hodnotu?
Konkrétně mám:
...
(initget "H V")

  (SETQ keypart (getkword "\nOrientace položky bude [Horizontálně/Vertikálně]:"))

  (cond    ((= keypart "H")
     (SETQ DG HO)
     (setq part 1)
    )
    ((= keypart "V")
     (SETQ DG VE)
     (setq part 2)
    )
  )
...

-FerTh-
Zpět nahoru
Seiner Zobrazit panel
CAD/BIM manager
CAD/BIM manager

Přihlášen: 01.říj.2004
Lokalita: ČR (PA)
Používám:
Mechanical 2017, Inventor 2017 a starší
Stav: Offline
Bodů: 1662
Přímý odkaz na tuto zprávu Zasláno: 27.čvc.2006 v 11:52

Dyť povídám

(initget "H V")

  (SETQ keypart (getkword "\nOrientace položky bude [Horizontálně/Vertikálně]:"))
  (If (= keypart nil)(setq keypart "H"))
  (cond    ((= keypart "H")
     (SETQ DG HO)
     (setq part 1)
    )
    ((= keypart "V")
     (SETQ DG VE)
     (setq part 2)
    )
  )

Vítězslav Seiner

Chrudim
Zpět nahoru
Seiner Zobrazit panel
CAD/BIM manager
CAD/BIM manager

Přihlášen: 01.říj.2004
Lokalita: ČR (PA)
Používám:
Mechanical 2017, Inventor 2017 a starší
Stav: Offline
Bodů: 1662
Přímý odkaz na tuto zprávu Zasláno: 27.čvc.2006 v 11:54

samozřejmě by to šlo řešit taky:

(cond    ((OR(= keypart "H")(= keypart nil))...

Vítězslav Seiner

Chrudim
Zpět nahoru
Ferdinand Zobrazit panel
TOP uživatel
TOP uživatel

Přihlášen: 01.říj.2004
Lokalita: ČR (JM)
Používám:
AutoCAD2004 (EN) na Windows XP
Stav: Offline
Bodů: 1906
Přímý odkaz na tuto zprávu Zasláno: 27.čvc.2006 v 15:28
Ano, tak to udělat jde, ale neřeší to můj původní záměr: Univerzální použití lispu default.lsp v různých aplikacích...
-FerTh-
Zpět nahoru
Ferdinand Zobrazit panel
TOP uživatel
TOP uživatel

Přihlášen: 01.říj.2004
Lokalita: ČR (JM)
Používám:
AutoCAD2004 (EN) na Windows XP
Stav: Offline
Bodů: 1906
Přímý odkaz na tuto zprávu Zasláno: 30.říj.2006 v 12:58
Tak jsem po nějaké době prolistoval stařičkou příručku Učebnice Autolispu, a:
(setq MY (default MX "\Zadejte měřtko bloku pro směr Y : " "int"))
což se na přík. řádku zobrazí jako
Zadejte měřtko bloku pro směr Y :  <hodnota MX>
A o to mi šloSmile
-FerTh-
Zpět nahoru

Pro technickou podporu CAD
kontaktujte Helpdesk

Příbuzné CAD tipy:
Tip 9973:VIPiLogic makro pro publikování všech listů výkresu do jednoho PDF.
Tip 7049:VIPInstalace Vault serveru hlásí že IIS neběží jako výchozí server.
Tip 6742:VIPHromadné čištění a nastavení výchozí tiskárny DWG výkresů.
Tip 7701:Jak v Revitu nastavit barvu objektů s nepřiřazeným materiálem?
Tip 9748:V Inventoru mi mizí nastavení projektu Default na Vault.
Tip 3552:Nastavení výchozí šablony v Revitu.


 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,199 sekund.