Diskuzní fórum a databáze tipů a utilit pro AutoCAD, Inventor, Revit a další produkty Autodesk - od firmy Arkance Systems [www.cadforum.cz]
CZ | SK | EN | DE
Přihlášení
či registrace
   právě nás čte: 7909 
RSS kanál - CAD tipy RSS tipy
RSS diskuze

Diskuze Diskuzní fórum, poradna

 

NápovědaCAD 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 360, 3ds Max a s dalšími CAD 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 Systems (CAD Studio) - přímá podpora pro zákazníky funguje na helpdesk.cadstudio.cz
  FAQ FAQ  Prohledat fórum   Události   Registrovat Registrovat  Přihlásit Přihlásit

Téma uzavřeno@ v lispu?

 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ů: 1904
Přímý odkaz na tuto zprávu Téma: @ v lispu?
    Zasláno: 08.úno.2005 v 15:19

Vkládám tentýž blok MKS (=kab. lávka o výšce 60 a o min. šíři 100). Chci ho v X-ové ose Stretchnout o délku SP, který je odstupňován po 100. Jak se nadefinuje @ (zavináč), aby ho nebral jako proměnnou ale symbol (konstantu?)

Zkoušel jsem, aby @->ZAV:

 (SETQ ZAV (GETSTRING ( "@")))

ale bere @ furt jako proměnnou.

Mohu ho nadefinovat snad přímo na řádku

(DEFUN C:MKS (/ MM ZB SP B2 LL AA @) ? Ale co dál?

Celé znění LISPu:

;;;Vložení kabelové lávky typu MKS (výška=60)
(DEFUN C:MKS (/ MM ZB SP B2 LL AA ZAV)

  (SETVAR "cmdecho" 0)
  (SETVAR "attdia" 1)
  (SETVAR "osmode" 0)


  (SETQ MM (GETINT "\nŠířka lávky bude[100-200-300-400-500-600]<100>:"))

 (PROMPT "\nZadejte bod :")
  (COMMAND "_insert" "MKS" pause ^c^c)
  (SETQ ZB (GETVAR "lastpoint"))

  (SETQ SP (- MM 100))
  (SETQ B2 (LIST (+ (CAR ZB) 50) (+ (CADR ZB) 60)))
  (SETQ ZAV (GETSTRING ( "@")))
  (SETQ AA (GETstring ( ZAV SP)))
  (SETQ LL (LIST ( AA 0)))

  (COMMAND "_-insert" "MKS" PAUSE 1 1 0)
  (COMMAND "_explode" _L "")
  (COMMAND "_stretch" _C ZB B2 "" ZB LL)

  (setvar "cmdecho" 1)
  (SETVAR "osmode" 39)

  (PRINC)
)

 

-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: 08.úno.2005 v 20:34

Přiznám se, že studovat kód jsem nějak neměl čas. Nechápu ale, co vlastně chcete dosáhnout příkazem

(SETQ ZAV (GETSTRING ( "@")))

Setq - to je přiřazení, jasně. Getstring je pauza pro vstup stringu z klávesnice a první volitelný parametr určuje, jestli se ukončuje Enter nebo i mezerník a druhý volitelný je výzva na příkazovém řádku. ( "@") podle mne musí vyvolat jen chybu - neznámá funkce.

 

Zpět nahoru
Mrázek Zobrazit panel
TOP uživatel
TOP uživatel
Avatar

Přihlášen: 05.říj.2004
Lokalita: ČR (LB)
Používám:
Inventor 2018, AutoCAD 2018, Vault Pro 2018
Stav: Offline
Bodů: 1199
Přímý odkaz na tuto zprávu Zasláno: 09.úno.2005 v 08:19
To je zřejmý pokus o zadání relativních souřadnic.
Ing. Zdeněk Mrázek
Preciosa Ornela a.s.
AIP 2018, ACADM 2018, Vault Pro 2018
Zpět nahoru
Jan Liska Zobrazit panel
Diskutér
Diskutér

Přihlášen: 01.říj.2004
Lokalita: Czech Republic
Používám:
Inventor,Producstream
Stav: Offline
Bodů: 65
Přímý odkaz na tuto zprávu Zasláno: 09.úno.2005 v 08:31

Dobrý den,

pokud potřebujete získat souřadnice posledního zadaného bodu, můžete použít funkci getvar "LASTPOINT". S takto získanými souřadnicemi můžete samozřejmě dále pracovat - je to seznam jako každý jiný.

S pozdravem

Jan Liška
Autodesk Consulting
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ů: 1904
Přímý odkaz na tuto zprávu Zasláno: 15.bře.2005 v 11:41

OPAKUJI SVŮJ DOTAZ:  Jak se nadefinuje v lispu @ (zavináč), aby ho nebral jako proměnnou ale symbol (konstantu?)

Ví to někdo, prosím?

 

-FerTh-
Zpět nahoru
Vladimír Michl Zobrazit panel
Moderátor
Moderátor
Avatar
Arkance Systems

Přihlášen: 09.zář.2004
Lokalita: ČR (JČ)
Používám:
Dodáváme produkty Autodesk
Stav: Offline
Bodů: 21470
Přímý odkaz na tuto zprávu Zasláno: 15.bře.2005 v 11:51
Jdete na to ze špatného konce - jak vám již radili, chcete-li relativní souřadnice, je třeba je spočíst ze zadaného bodu, chcete-li poslední bod, dotažte se na LASTPOINT.
Nic takového jako konstanta "@" neexistuje.
Vladimír Michl (moderátor)
Arkance Systems s.r.o. - www.arkance-systems.cz
(podpora viz hd.cads.cz)
Zpět nahoru

Pro technickou podporu CAD
kontaktujte Helpdesk

Příbuzné CAD tipy:
Tip 2990:Existují nějaké hry pro AutoCAD?
Tip 4487:Rychlejší načítání aplikací ARX, LSP, DVB, DBX, VLX, FAS.
Tip 695:Jak zjistit v makru nebo v LISPu, zda je výkres otevřen pouze pro čtení?
Tip 10956:evalVBS vyhodnotí VBScript kód z AutoLISPu.
Tip 2008:Jak v LISPu zjistit verzi AutoCADu z DWG souboru?
Tip 1946:Jak vytvářet vícerozměrná pole v LISPu?


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