Diskuzní fórum, poradna
CAD diskuze, rady, výměna zkušeností |
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
zadání bodu |
Odpovědět | archiv |
Autor | |
zchmela
Diskutér Přihlášen: 11.kvě.2007 Lokalita: ČR (Pha) Používám: adt 2007, max 3ds Stav: Offline Bodů: 31 |
Téma: zadání bodu Zasláno: 21.pro.2008 v 21:51 |
Dobrý den potřeboval bych poradit s jednoduchým prográmkem v lispu na kreslení křivky určené body x,y :
(setq pocet 601)
(while (> pocet 0) (setq x (* 0.01 (- pocet 601))) (setq y (* 2 pocet)) (command "_point" x y) ----- zde nevím jak zadat správnou syntaxi !!! (setq pocet (- pocet 1)) )
Díky za radu
|
|
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ů: 1675 |
Zasláno: 21.pro.2008 v 22:32 |
bod musí být ve formátu LIST.
(list x y z) např. bod X,Y,Z=1,2,3 je : (list 1 2 3) jde to zadat i takhle: '(1 2 3) Pokud Vám to nepůjde zkuste se podívat jaký formát vrací funkce (getpoint) Ve Vašem případě to bude : (command "_point" (list x y) "") PZN: ty koncové uvozovky "" jsou protože při příkazu _POINT je potřeba odentrovat pro ukončení příkazu |
|
chlebovsky
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
Zasloužilý člen Přihlášen: 18.čer.2007 Lokalita: ČR (JM) Používám: Autocad R9 - 2022 Stav: Offline Bodů: 112 |
Zasláno: 22.pro.2008 v 10:09 |
Pokud se jedná o křivku tak bych to řešil takto :
(defun c:kkk (/)
(setq pocet 601) (setq ent (list (cons 0 "LWPOLYLINE") (cons 100 "AcDbEntity") (cons 67 0) (cons 410 "Model") (cons 8 "0") (cons 100 "AcDbPolyline") (cons 90 pocet) (cons 70 0) (cons 43 0.0) (cons 38 0.0) (cons 39 0.0))) (while (> pocet 0) (setq x (* 0.01 (- pocet 601))) (setq y (* 2 pocet)) (setq ent (append ent (list (cons 10 (list x y 0.0))))) (setq ent (append ent (list (cons 40 0.0)))) (setq ent (append ent (list (cons 41 0.0)))) (setq ent (append ent (list (cons 42 0.0)))) (setq pocet (- pocet 1)) ) (setq ent (append ent (list (cons 210 (list 0.0 0.0 1.0))))) (entmakex ent) ) Jinak s těma uvozovkama to ale není tak úplně pravda. Záleží na verzi cadu, jestli se jedná o samotný dod, či multibod.
To ale otestujete tak že prostě napíšete :
a) (command "_point" (list x y)) a příkaz skončí
nebo
b) (command "_point" (list x y)) a příkaz bude chtít zadávat další bod, pak budete muset ty uvozovky napsat.
|
|
Ing. Martin Chlebovský
www.kde-je-auto.cz GPS monitoring provozu vozidel a osob. WebDeveloper. Programátor aplikací pro Autocad a MS Office. Tvorba WWW aplikací. Modelování domů a staveb.&l |
|
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ů: 1675 |
Zasláno: 22.pro.2008 v 17:15 |
Ano, máte pravdu. V MAPu 2006 se v příkazu
BOD (_POINT) zadá jeden bod a příkaz končí, nemusí se entrovat prázdné zadání a tudíž ta dvojce uvozovek je zbytečná.
Nezkoušel jsem to před napsáním příspěvku a už si ani nepamatuji v jaké verzi to takhle fungovalo a jestli jsem se prostě nespletl... |
|
Pro technickou podporu CAD
kontaktujte Helpdesk
Odpovědět | |
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,516 sekund.