autolisp

์ „๊ธฐ·๊ธฐ๊ณ„ ์„ค๊ณ„๋ฅผ ์œ„ํ•œ CAD ๋ฆฌ์Šต! ์ขŒํ‘œ์™€ ์ง€๋ฆ„ ์ž๋™ํ™”, EP ๋ฆฌ์Šต

hyena382 2025. 4. 4. 15:37

 

 

๐Ÿš€ ์„œ๋ก : ์„ค๊ณ„ ํšจ์œจ์„ ๋†’์ด๋Š” CAD ๋ฆฌ์Šต์˜ ํ•„์š”์„ฑ
์ „๊ธฐ·๊ธฐ๊ณ„ ์„ค๊ณ„ ๋ถ„์•ผ์—์„œ ์ •ํ™•ํ•œ ์ขŒํ‘œ์™€ ํฌ๊ธฐ ๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ๋Š” ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค. ํŠนํžˆ, ๋งˆ๋”๋ณด๋“œ ์„ค๊ณ„๋‚˜ ์ „์› ์—ฐ๊ฒฐ ๋‹จ์ž ๋ฐฐ์น˜ ์‹œ ์ˆ˜์ž‘์—…์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ •๋ฆฌํ•˜๋ฉด ์‹ค์ˆ˜๋„ ์žฆ๊ณ  ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด CAD์˜ ๋ฆฌ์Šต(LISP) ์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์ขŒํ‘œ์™€ ์ง€๋ฆ„์„ ์ž๋™ํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ธ€์—์„œ๋Š” ๋ฆฌ์Šต์„ ํ™œ์šฉํ•œ ์ขŒํ‘œ ์ž๋™ ์ •๋ฆฌ ๋ฐฉ๋ฒ•๊ณผ ์‹ค์ œ ์ ์šฉ ์‚ฌ๋ก€๋ฅผ ์„ค๋ช…ํ•˜๋ฉฐ, ํšจ์œจ์ ์ธ ์„ค๊ณ„ ๋ฐฉ๋ฒ•์„ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“Œ 1. ๋ฆฌ์Šต(LISP) ์Šคํฌ๋ฆฝํŠธ๋ž€?
๋ฆฌ์Šต(LISP)์€ AutoCAD์—์„œ ๋ฐ˜๋ณต์ ์ธ ์ž‘์—…์„ ์ž๋™ํ™”ํ•˜๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์ž…๋‹ˆ๋‹ค. ์„ค๊ณ„ ๊ณผ์ •์—์„œ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ๊ธฐ๋Šฅ์„ ๋‹จ์ถ• ๋ช…๋ น์–ด๋กœ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์–ด ํšจ์œจ์„ฑ์„ ๊ทน๋Œ€ํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํŠนํžˆ, ์ „๊ธฐ·๊ธฐ๊ณ„ ์„ค๊ณ„์—์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ž‘์—…์„ ์ž๋™ํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:
โœ… ์›์  ์ขŒํ‘œ ์„ค์ • ๋ฐ ์ž๋™ ์ •๋ฆฌ
โœ… ์ „์› ์—ฐ๊ฒฐ ๋‹จ์ž์˜ X, Y ์ขŒํ‘œ ๋ฐ ์ง€๋ฆ„ ํ‘œ ์ƒ์„ฑ
โœ… ์„ค๊ณ„ ๋ณ€๊ฒฝ ์‹œ ์ขŒํ‘œ ์ž๋™ ์—…๋ฐ์ดํŠธ

์ด๋Ÿฌํ•œ ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ๋ฐ์ดํ„ฐ ์ •๋ฆฌ ์‹œ๊ฐ„์„ ์ค„์ด๊ณ , ์˜ค๋ฅ˜ ๋ฐœ์ƒ ๊ฐ€๋Šฅ์„ฑ์„ ์ตœ์†Œํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ“Œ 2. ๋ฆฌ์Šต์„ ํ™œ์šฉํ•œ ์ „์› ๋‹จ์ž ์ขŒํ‘œ ์ •๋ฆฌ ๋ฐฉ๋ฒ•
โœ… 1) ์›์  ์ขŒํ‘œ ์„ค์ •
์ „์› ์—ฐ๊ฒฐ ๋‹จ์ž์˜ ํŠน์ • ์ง€์ ์„ ์›์ ์œผ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
์ผ๋ฐ˜์ ์œผ๋กœ ์™ผ์ชฝ ์•„๋ž˜ ๋ชจ์„œ๋ฆฌ ๋˜๋Š” ์˜ค๋ฅธ์ชฝ ์•„๋ž˜ ๋ชจ์„œ๋ฆฌ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์‚ผ์Šต๋‹ˆ๋‹ค.

โœ… 2) ๋ฐ์ดํ„ฐ ์ž๋™ ์ž…๋ ฅ ๋ฐ ์ •๋ฆฌ
์„ค์ •ํ•œ ์›์  ๊ธฐ์ค€์œผ๋กœ ๊ฐ ๋‹จ์ž์˜ X, Y ์ขŒํ‘œ ๋ฐ ์ง€๋ฆ„์„ ์ž๋™ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.
๊ณ„์‚ฐ๋œ ๋ฐ์ดํ„ฐ๋Š” ํ‘œ ํ˜•์‹์œผ๋กœ ์ •๋ฆฌ๋˜์–ด ๊ฐ€๋…์„ฑ์„ ๋†’์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

โœ… 3) ๋ฆฌ์Šต ์‹คํ–‰ ๋ฐ ๊ฒฐ๊ณผ ํ™•์ธ
์ขŒํ‘œ ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅํ•œ ํ›„ ๋ฆฌ์Šต์„ ์‹คํ–‰ํ•˜๋ฉด, ์ž๋™์œผ๋กœ ํ‘œ๊ฐ€ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.
์„ค๊ณ„ ๋ณ€๊ฒฝ์ด ํ•„์š”ํ•  ๊ฒฝ์šฐ, ์›์ ๋งŒ ์žฌ์„ค์ •ํ•˜๋ฉด ๋ชจ๋“  ๋ฐ์ดํ„ฐ๊ฐ€ ์—…๋ฐ์ดํŠธ๋ฉ๋‹ˆ๋‹ค.

๐Ÿ“Œ 3. ๋ฆฌ์Šต ์‹คํ–‰ ์˜ˆ์ œ
๐Ÿ”น ์˜ˆ์ œ ์ฝ”๋“œ: (๊ธฐ๋ณธ์ ์ธ ๋ฆฌ์Šต ์ฝ”๋“œ ์ƒ˜ํ”Œ)

lisp
๋ณต์‚ฌ
ํŽธ์ง‘
(defun c:CoordTable ()
  (setq pt (getpoint "\n์›์ ์„ ์ง€์ •ํ•˜์„ธ์š”: "))  
  (setq objList (ssget))  
  (setq i 1)  
  (while (< i (sslength objList))
    (setq ent (ssname objList i))  
    (setq xy (cdr (assoc 10 (entget ent))))  
    (princ (strcat "\n" (itoa i) ": X=" (rtos (car xy)) ", Y=" (rtos (cadr xy))))
    (setq i (1+ i))  
  )
  (princ)
)
๐Ÿ’ก ์œ„ ์ฝ”๋“œ์˜ ๊ธฐ๋Šฅ:

์‚ฌ์šฉ์ž๊ฐ€ ์›์ ์„ ์ง€์ •ํ•˜๋ฉด, ์„ ํƒํ•œ ๊ฐ์ฒด๋“ค์˜ X, Y ์ขŒํ‘œ๋ฅผ ์ž๋™์œผ๋กœ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.

ํ•„์š”ํ•œ ๊ฒฝ์šฐ, ์ขŒํ‘œ ๊ฐ’์„ ํ‘œ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ”น ์‹คํ–‰ ํ™”๋ฉด ์˜ˆ์‹œ:

๋ฒˆํ˜ธ X ์ขŒํ‘œ (mm) Y ์ขŒํ‘œ (mm) ์ง€๋ฆ„ (mm)
1 25 8 8
2 50 10 10
3 75 15 12
๐Ÿ”น ํ™œ์šฉ ์˜ˆ์‹œ:

๋งˆ๋”๋ณด๋“œ ์„ค๊ณ„์—์„œ ์ „์› ์—ฐ๊ฒฐ ๋‹จ์ž์˜ ์ขŒํ‘œ์™€ ์ง€๋ฆ„์„ ์ž๋™ ์ •๋ฆฌ.
์ „๊ธฐ ๋ฐฐ์„ ๋„์—์„œ ์ „์„  ์—ฐ๊ฒฐ๋ถ€์˜ ์œ„์น˜ ๋ฐ์ดํ„ฐ ์ž๋™ ์ •๋ฆฌ.
๊ฑด์„ค ๋ฐ ๊ธฐ๊ณ„ ์„ค๊ณ„์—์„œ ๊ฐ ๋ถ€ํ’ˆ์˜ ์œ„์น˜๋ฅผ ์ž๋™ ํ‘œ๋กœ ๋ณ€ํ™˜.

๐Ÿ“Œ 4. ๋ฆฌ์Šต ํ™œ์šฉ์˜ ์žฅ์ 
โœ… ๋ฐ˜๋ณต ์ž‘์—… ์ž๋™ํ™” → ์„ค๊ณ„ ์‹œ๊ฐ„ ๋‹จ์ถ•
โœ… ์˜ค๋ฅ˜ ์ตœ์†Œํ™” → ์‚ฌ๋žŒ์ด ์ž…๋ ฅํ•˜๋Š” ์‹ค์ˆ˜ ๋ฐฉ์ง€
โœ… ์„ค๊ณ„ ๋ณ€๊ฒฝ ์‹œ ์ž๋™ ์—…๋ฐ์ดํŠธ → ์œ ์ง€๋ณด์ˆ˜ ํŽธ๋ฆฌ

์ „๊ธฐ·๊ธฐ๊ณ„ ์„ค๊ณ„์—์„œ๋Š” ์ขŒํ‘œ ๋ฐ์ดํ„ฐ๋ฅผ ์ผ์ผ์ด ์ˆ˜์ž‘์—…์œผ๋กœ ์ž…๋ ฅํ•˜๋Š” ๊ฒƒ์ด ๋งค์šฐ ๋น„ํšจ์œจ์ ์ž…๋‹ˆ๋‹ค. ๋ฆฌ์Šต์„ ํ™œ์šฉํ•˜๋ฉด ์ขŒํ‘œ๋ฅผ ์ž๋™ ์ •๋ฆฌํ•˜๊ณ , ํ‘œ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ณผ์ •์ด ํ•œ ๋ฒˆ์— ํ•ด๊ฒฐ๋˜๋ฏ€๋กœ ์‹ค๋ฌด์—์„œ ์ ๊ทน ํ™œ์šฉํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

๐ŸŽฏ ๊ฒฐ๋ก : ๋ฆฌ์Šต์„ ํ™œ์šฉํ•œ CAD ์„ค๊ณ„ ํšจ์œจํ™”
์ „๊ธฐ·๊ธฐ๊ณ„ ์„ค๊ณ„์—์„œ ์ •ํ™•ํ•œ ์ขŒํ‘œ์™€ ์ง€๋ฆ„ ๋ฐ์ดํ„ฐ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์€ ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค. ๋ฆฌ์Šต์„ ํ™œ์šฉํ•˜๋ฉด ์ˆ˜์ž‘์—… ์ž…๋ ฅ ์—†์ด ์ž๋™์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ •๋ฆฌํ•˜๊ณ , ํ‘œ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ๊ฐ€๋…์„ฑ์„ ๋†’์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋งŒ์•ฝ CAD๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด์„œ ์ขŒํ‘œ ์ •๋ฆฌ์˜ ํšจ์œจ์„ฑ์„ ๋†’์ด๊ณ  ์‹ถ๋‹ค๋ฉด, ๋ฆฌ์Šต์„ ํ™œ์šฉํ•œ ์ž๋™ํ™” ๋ฐฉ๋ฒ•์„ ๋„์ž…ํ•ด ๋ณด์„ธ์š”! ๐ŸŽฏ

โœ… ๋” ์Šค๋งˆํŠธํ•œ ์„ค๊ณ„๋ฅผ ์œ„ํ•œ CAD ์ž๋™ํ™”, ์ง€๊ธˆ ๋ฐ”๋กœ ์‹œ์ž‘ํ•ด ๋ณด์„ธ์š”! ๐Ÿ’ก