Zobrazit plnou verzi příspěvku: Kótování rozdílu mezi dvěma body
HypnoSimi
22.11.2022, 10:52
Dobrý den,Chtěl bych se zeptat zda je možné v AutoCADu Architecture 2020 kótovat rozdíl mezi dvěma body. Mám dva body a potřeboval bych okótovat jejich rozdíl v osách X a Y je to možné? Děkuji s pozdravem Šimánek
A nestačí příkaz KÓTYPŘÍM (_DIMLINEAR)
Vladimír Michl
22.11.2022, 11:14
_DIMLINEAR .xy <pick> .xy <pick>
HypnoSimi
22.11.2022, 11:23
Dobrý den, děkuji za odpověď máte pravdu je to nejlepší řešení. Chtěl bych se ještě zeptat jestli nevíte jak by se dalo udělat, aby to u velikosti kót psalo i znamínka ? Respektivě na kterou stranu osy to je potřeba posunout.Děkuji
Vladimír Michl
22.11.2022, 11:59
Kóta měří vzdálenost/délku a ta je vždy kladná (nezáporná). Pokud chcete zobrazovat jinou asociativní hodnotu, dá se to udělat blokem nebo textovým polem. Ale je potřeba přesně specifikovat vstupy a podmínky (jde rozdíl Y-složky souřadnice?).
HypnoSimi
22.11.2022, 13:04
Představoval bych si, že od objektu co zadám jako původní a poté zadám druhý objekt tak změřená délka bude mít znamínko ve směru os. Nevím jestli je to úplně srozumitelné, ale zkusím popsat příklad. na číselné ose v ose X mám číslice 1 a 4. Číslo 1 je řěkněme projektovné a číslo 4 je skutečnost. Když zadám kótu mezi těmito čísly tak bych chtěl, aby výsledná kóta vypadala -3.
Vladimír Michl
22.11.2022, 13:20
Takže kótujete jen rozdíl X-ové souřadnice? Pokud ne a chcete celou vzdálenost, pak co určuje tu "zápornost"? Záporný rozdíl X? Nebo Y? Nebo obou zároveň?Pro X-rozdíl jde použít např.:[CODE](defun C:DIMDIFF ( / p1 p2 p3 d dt txdist) (setq txdist (getvar "DIMTXT")) ; offset (setq p1 (getpoint "\nFirst dimension point: ")) (setq p2 (getpoint p1 "\nSecond dimension point:")) ;(setq p3 (polar p2 (+ (angle p1 p2)(/ pi 2.0)) txdist)) (setq d (- (car p2)(car p1))) ; diff X (setq dt (rtos d 2 (getvar "DIMDEC"))) (if (> d 0.0)(setq dt (strcat "+" dt))) (command "_.dimaligned" "_non" p1 "_non" p2 "_t" dt) (princ))[/CODE]
HypnoSimi
22.11.2022, 13:23
Určuji rozdíly v X a Y. Zápornost by měla určovat projektovaná souřadnice to by bylo nejlepší. Představa je taková, že budu mít nadefinovanou kótu. Kliknu na střed bodu od kterýho chci určit a kliknu na druhý a objeví se dvě hodnoty. Jedna rozdíl X a druhá rozdíl Y
Vladimír Michl
22.11.2022, 13:49
Takže něco takovéhoto?[CODE];rozdílová kóta(defun C:DIMDIFF ( / p1 p2 p3 dx dy txdist) (defun dif0 (a b / d dt) (setq d (- b a)) (setq dt (rtos d 2 (getvar "DIMDEC"))) (if (> d 0.0)(setq dt (strcat "+" dt))) dt ) (setq txdist (getvar "DIMTXT")) ; offset (setq p1 (getpoint "\nFirst dimension point: ")) (setq p2 (getpoint p1 "\nSecond dimension point:")) ;(setq p3 (polar p2 (+ (angle p1 p2)(/ pi 2.0)) txdist)) (setq dx (dif0 (car p2)(car p1))) (setq dy (dif0 (cadr p2)(cadr p1))) (command "_.dimaligned" "_non" p1 "_non" p2 "_t" (strcat "X: " dx "\\PY: " dy)) (princ))[/CODE]
HypnoSimi
22.11.2022, 13:58
No další věc je. Jestli byste mi prosim poradil, jak tento skript zprovoznim ?
Vladimír Michl
22.11.2022, 14:10
Pro začátek stačí copy-paste toho textu do příkazového řádku AutoCADu a pak napsat příkaz DIMDIFF. Pro běžnou práci pak uložit do souboru s příponou .LSP a ten pak přetáhnout myší do aktovky v dialogu příkazu _APPLOAD. Příkaz DIMDIFF tak bude k dispozici vždy.
HypnoSimi
22.11.2022, 14:15
Funguje to přesně jak bych si představoval! Děkuji mnohokrát za pomoc a vytvoření kódu jste opravdu genius.s pozdravem Martin