프로그램
캐드 분류

임의지반고 구하는 리습 사용중입니다..

컨텐츠 정보

  • 249 조회
  • 5 댓글
  • 0 추천
  • 0 비추천
  • 목록

본문

캐드 도면상에 첫번쨰 높이텍스트 클릭,  두번째 높이텍스트 클릭 후
임의의 선상에 클릭을 하면  높이값이 캐드 화면에 텍스트출력 되는 리습입니다.
밑에 리습에서 높이텍스트만 출력만 되고  포인트가 출력이 될지 않는데요. 

수정 하고 싶은 부분..
1.포인트가 생성되면서  z값도 같이  들어가면서 텍스트도  같이 출력이 가능 한가요? 

캐드 리습 초보입니다. 
토목 측량 부분에서 사용하고 있어요..
조언 부탁드리겟습니다.

;텍스트지반고와 텍스트지반고 사이에 임의점의 지반고를 구하는 리습~
(defun c:tg(/ a an os an1 ax ay at1 at2 at th1 b bn bn1 bx by bt1 bt2 bt c cx cy x1 ll sl ab gh1 gh2)
  (setq os(getvar "osmode"))
  (prompt "n첫번째 지반고 선택")
  (setq a(ssget))
  (setq an(entget(ssname a 0))
  an1(assoc 10 an)
  ax(cadr an1)
 ay(caddr an1)
 at1(assoc 1 an)
 at2(cdr at1)
  at(atof at2)
 th1(assoc 40 an)
 th(cdr th1))
  (prompt "n두번째 지반고 선택")
  (setq b(ssget))
  (setq bn(entget(ssname b 0))
  bn1(assoc 10 bn)
  bx(cadr bn1)
 by(caddr bn1)
 bt1(assoc 1 bn)
 bt2(cdr bt1)
 bt(atof bt2))
  (setvar "osmode" 0)
  (setq c(getpoint "n위치선택-"))
  (setvar "osmode" os)
  (setq cx (car c)
 cy (cadr c)
 )
  (setq x1 (- ax bx) y1 (- ay by) x2 (- ax cx) y2 (- ay cy))
  (setq ll(sqrt (+ (* x1 x1) (* y1 y1)))
 sl(sqrt (+ (* x2 x2) (* y2 y2)))
 )
  (setq ab(- at bt))
  (setq gh1(- at (/ (* sl ab) ll)))
  (setq gh(rtos gh1 2 2))
  (command "color" 210)
  (command "text" c th "0″ gh)
  )

관련자료

댓글 5 / 1 페이지

상큼메론90님의 댓글

emoticon

질문이 수정 하고 싶은 부분.. 1.포인트가 생성되면서  z값도 같이  들어가면서 텍스트도  같이 출력이 가능 한가요? 

일단, 질문대로는 수정했습니다. 도면없어서 테스트는 못해봅니다.

;텍스트지반고와 텍스트지반고 사이에 임의점의 지반고를 구하는 리습~ (defun c:tg (/ a an os an1 ax ay at1 at2 at th1 b b2 bn bn1 bx bxx by bt1 bt2 bt c cx cy p2 x1 ll sl ab gh1 gh2 x y )   (setq os(getvar "osmode"))   (prompt "n첫번째 지반고 선택")   (setq a(ssget))   (setq an(entget(ssname a 0))   an1(assoc 10 an)   ax(cadr an1)  ay(caddr an1)  at1(assoc 1 an)  at2(cdr at1)   at(atof at2)  th1(assoc 40 an)  th(cdr th1))   (prompt "n두번째 지반고 선택")   (setq b(ssget))   (setq bn(entget(ssname b 0))   bn1(assoc 10 bn)   bx(cadr bn1)  by(caddr bn1)  bt1(assoc 1 bn)  bt2(cdr bt1)  bt(atof bt2))   (setvar "osmode" 0)   (setq c(getpoint "n위치선택-"))   (setvar "osmode" os)   (setq cx (car c)  cy (cadr c)  )   (setq x1 (- ax bx) y1 (- ay by) x2 (- ax cx) y2 (- ay cy))   (setq ll(sqrt (+ (* x1 x1) (* y1 y1)))  sl(sqrt (+ (* x2 x2) (* y2 y2)))  )   (setq ab(- at bt))   (setq gh1(- at (/ (* sl ab) ll)))   (setq gh(rtos gh1 2 2))   (setq bxx (caddr c))   (setq b2 (rtos bxx 2 2))   (setvar "PDMODE" 3)   (command "color" 210)   (command "_.text" c th "0″ gh)   (command "_.text" "" b2)    (command "_.point" c) (princ) )

 

열나게님의 댓글

감사합니다.  포인트 생성은 잘되는군요^^  죄송하지만 텍스트가  한포인트에 위 아래로  생기던데  어떤걸 지워야 한개의 텍스트가 생성되는지요 색상은  알것 같고요  포인트 모양도 대략 감은 잡은 상태입니다. 한번만 더 조언 부탁드립니다.

상큼메론90님의 댓글

emoticon

  (command "_.text" c th "0″ gh)   (command "_.text" "" b2)  <— 이 두 줄을 지우고

아래와 같이~

  (command "_.text" c th "0″ (strcat gh " , z값 : " b2))

그리고 , z값 :    <— 이런 글자가 필요없으면   " , z값 : "   <— 이것을 지우면 되구요..  

.

열나게님의 댓글

지반고는 별거는 아니구요 ^^ 밑에 캐드 자료 입니다.  DREAM 캐드 보조 프로그램 인데 64비트는 현재 유료라서 사용을 못해서      드림 GEL 기능이 있는데요 그걸  리습으로 사용할려고 부탁드린겁니다.

상큼메론90님의 댓글

emoticon

아~ 그렇군요…  오늘도 열씨미…

.

전체 7,416 / 353 페이지
RSS
번호
제목
이름

최근글


새댓글


알림 0