Diskuzní fórum, poradna
?CAD diskuze, rady, výměna zkušeností

|
Odpovědět ![]() |
archiv |
Autor | |
Mantlík ![]() TOP uživatel ![]() Přihlášen: 01.říj.2004 Lokalita: ČR (Pha) Používám: ACAD/Map/Civil R10-> 2022 Stav: Offline Bodů: 2574 |
![]() Zasláno: 12.dub.2005 v 13:16 |
Dobrý den U jedné rutiny v lispu jsem potřeboval použít funkci rtos. A teď nevím, jestli tato funkce zároveň na zadaný počet míst zaokrouhluje, nebo jen ořezává. Z kontrolních výpočtů mi připadá, že někdy to zaokrouhluje a jindy ořezává. Víte nekdo, jaká je tedy správná funkce (nikde jsem to nenašel) Díky |
|
J. Mantlík
|
|
![]() |
|
Vladimír Michl ![]() 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
Moderátor ![]() ![]() Arkance Systems Přihlášen: 09.zář.2004 Lokalita: ČR (JČ) Používám: Implementujeme řešení Autodesk Stav: Offline Bodů: 21898 |
![]() |
(rtos) zaokrouhluje - jen pozor, v závislosti na DIMZIN též ořezává nevýznamné nuly - viz Help nebo:
http://www.cadforum.cz/cadforum/qaID.asp?tip=1671 |
|
![]() |
|
Mantlík ![]() TOP uživatel ![]() Přihlášen: 01.říj.2004 Lokalita: ČR (Pha) Používám: ACAD/Map/Civil R10-> 2022 Stav: Offline Bodů: 2574 |
![]() |
Dobrý den
Ještě jednou se vrátím k funkci rtos. Idea" ukážu na bod a na patřičná místa se napíšou souřadnice x, y (y 10x zmenšené) . Problémy jsou u souřadnice y výsek kódu" (setq pt (getpoint "\nUkaž vrchol polygonu: ")) . (setq y3(/ y 10)) (setq y1 (rtos y3 2 2)) . . následuje vložení hodnot
Problém spočívá v tom, že pokud např. y= 2400, vloží se hodnota 240.01 místo 240.00 (nebo 240 ). Kontrola proměnných !y3 = 240.005 a !y1 = "240.01" ale pokud na příkazovém řádku zadám (setq y3(/ y 10)) -> vyjde správně 240.00 Jak je tohle možné ? Přitom nikde jinde se tyhle lokální proměnné v rutině nevyskytují a nepomůže ani jejich přejmenování
Děkuji za rady
|
|
J. Mantlík
|
|
![]() |
|
pavlacka ![]() Nováček ![]() Přihlášen: 04.říj.2004 Lokalita: ČR (JM) Používám: AutoCAD C3D Stav: Offline Bodů: 21 |
![]() |
Zkontrolujte promennou !pt. roman pavlacka |
|
![]() |
|
Mantlík ![]() TOP uživatel ![]() Přihlášen: 01.říj.2004 Lokalita: ČR (Pha) Používám: ACAD/Map/Civil R10-> 2022 Stav: Offline Bodů: 2574 |
![]() |
To bylo samozřejmě to první, co jsem zkontroloval
|
|
J. Mantlík
|
|
![]() |
|
Kubeczka ![]() Zasloužilý člen ![]() Přihlášen: 01.říj.2004 Lokalita: Czech Republic Používám: AutoCAD 2018, Inventor 2018 Stav: Offline Bodů: 141 |
![]() |
Zdravím. Vyzkoušel jsem zadat souřadnici y jako celé číslo (např 2402). V tomto případě funkce (setq y3(/ y 10)) vypočítá y3=240. Pokud y bude reálné číslo, pak y3=240.2. Nevím, nač to potřebujete. Pokud chcete zaokrouhlovat, tak si vytvořte jednoduchou rutinku, kterou použijete na každý vstup getpoint.
|
|
![]() |
|
Kubeczka ![]() Zasloužilý člen ![]() Přihlášen: 01.říj.2004 Lokalita: Czech Republic Používám: AutoCAD 2018, Inventor 2018 Stav: Offline Bodů: 141 |
![]() |
Jakou to má plnit funkci a jaký výstup potřebujete? Mohu se o něco pokusit.
|
|
![]() |
|
pavlacka ![]() Nováček ![]() Přihlášen: 04.říj.2004 Lokalita: ČR (JM) Používám: AutoCAD C3D Stav: Offline Bodů: 21 |
![]() |
Ja bych postupoval vylucovaci metodou (je mozne i trasovat a sledovat chovani promennych). Zkusil jsem si jen tu cast, kterou jste zverejnil a funguje mi korektne (dokonce jsem vybiral body podobne tomu vasemu). Muzete zkusit prerusit program v miste pred prikazem (setq y3 (/ y 10)) a potom ho zapsat na prikazovou radku a zkontrolovat !y. roman pavlacka |
|
![]() |
|
Mantlík ![]() TOP uživatel ![]() Přihlášen: 01.říj.2004 Lokalita: ČR (Pha) Používám: ACAD/Map/Civil R10-> 2022 Stav: Offline Bodů: 2574 |
![]() |
Chyba samozřejmě není v programu, ale ve mně. Nejlépe použít moudrou větu pánů Š+G "A jakpak dělá kozička, pane inženýre ?") Měl jsem totiž na disku dvě verze. Na starou, rozpracovanou, opuštěnou (a zapomenutou na disku) s pokusem o zaokrouhlování přitom vedla cesta v autocadu, zatímco k té novější, z níž byl výsek kódu cesta nevedla. A tak se samozřejmě pořád načítala verze stará. No nic ..
Děkuji všem, kteří se ozvali s radou nebo doplňujícími dotazy |
|
J. Mantlík
|
|
![]() |
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,359 sekund.