Đến nội dung


Hình ảnh
- - - - -

ghi số thửa tự động


  • Please log in to reply
6 replies to this topic

#1 tnmtpc

tnmtpc

    biết dimcontinue

  • Members
  • PipPipPipPipPip
  • 370 Bài viết
Điểm đánh giá: 206 (khá)

Đã gửi 13 September 2008 - 11:20 AM

Mìmh muốn dùng lisp để ghi số số thửa tự động vào các tâm thửa. Sau khi tạo các tâm thửa xong, gõ lệnh , chương trình tự động thực hiện, có file ví dụ gửi kèm
http://www.cadviet.com/upfiles/VD.dwg
  • 0

#2 doanduyhung

doanduyhung

    biết vẽ spline

  • Members
  • PipPip
  • 90 Bài viết
Điểm đánh giá: 40 (tàm tạm)

Đã gửi 13 September 2008 - 11:57 AM

(defun c:ghiso(/)
(setq osmode_first (getvar "osmode"))
(setvar "osmode" 0)
(setq chonthua (ssget '((0 . "LWPOLYLINE"))))
(setq i 0)
(repeat (sslength chonthua)
(setq tungdoituong (ssname chonthua i))
(setq tungdoituong (vlax-ename->vla-object tungdoituong))
(setq toado (vlax-get-property tungdoituong 'coordinates))
(setq toado (vlax-safearray->list (variant-value toado)))
(setq j 0)
(setq xtrungbinh 0.00)
(setq ytrungbinh 0.00)
(repeat (/ (length toado) 2)
(setq xtrungbinh (+ xtrungbinh (nth j toado)))
(setq ytrungbinh (+ ytrungbinh (nth (+ j 1) toado)))
(setq j (+ j 2))
)
(setq xtrungbinh (/ xtrungbinh (/ (length toado) 2)))
(setq ytrungbinh (/ ytrungbinh (/ (length toado) 2)))
(command "text" (list xtrungbinh ytrungbinh) "1" "0" (rtos (+ i 1) 2 0))
(setq i (+ i 1))
)
(setvar "osmode" osmode_first)
(princ "http://doanduyhung.g...oglepages.com/")
(princ)
)
  • 0

#3 tnmtpc

tnmtpc

    biết dimcontinue

  • Members
  • PipPipPipPipPip
  • 370 Bài viết
Điểm đánh giá: 206 (khá)

Đã gửi 13 September 2008 - 03:57 PM

Cám ơn sự nhiệt tình của Bác doanhuyHung nhưng chương trình chạy không đúng. Yêu cầu chương trình là :nhập lệnh->chọn đối tượng (là các point tâm thửa)->chương trình ghi số thửa theo nguyên tắc :bắt đầu từ phía trên- trái ghi sang bên phải, kết thúc "hàng trên", xuống "hàng dưới", ghi ngược lại (như đường hình sin ấy mà). Khái niệm " hàng" chỉ là tương đối thôi. Vị trí ghi text là các point với J là BC. Các Bác xem file VD thì biết ngay. Còn đây là kết quả chạy lisp của Bác doanhuyhung, mong bác nghiên cứu chỉnh lại giúp. Cám ơn nhiều
http://www.cadviet.c...iles/ketqua.dwg
  • 0

#4 dvdcad

dvdcad

    biết vẽ arc

  • Members
  • PipPip
  • 44 Bài viết
Điểm đánh giá: 1 (bình thường)

Đã gửi 13 September 2008 - 04:40 PM

cám ơn bạn doanhuyHung bạn có thể sửa lại theo ý mình được ko.viết một lisp vừa tạo tâm thửa vừa đánh số thứ tự lên dc ko. hoặc tính diện tích rồi ghi lên như vậy.cám ơn....

đây là VD
http://www.cadviet.c...Drawing1_11.dwg
  • 0

#5 tnmtpc

tnmtpc

    biết dimcontinue

  • Members
  • PipPipPipPipPip
  • 370 Bài viết
Điểm đánh giá: 206 (khá)

Đã gửi 13 September 2008 - 05:11 PM

cám ơn bạn doanhuyHung bạn có thể sửa lại theo ý mình được ko.viết một lisp vừa tạo tâm thửa vừa đánh số thứ tự lên dc ko. hoặc tính diện tích rồi ghi lên như vậy.cám ơn....

đây là VD
http://www.cadviet.c...Drawing1_11.dwg

Mình cũng đang cần sự giúp đỡ như bạn, nhưng với file ví dụ của bạn thì không ai giúp được gì đâu. Bỡi vì sự liên hệ giữa các text và point (tâm thửa) trên bản vẽ của bạn quá tự do không theo nguyên tắc nào cả. Khi nhờ sự giúp đỡ của người khác, nên cẩn thận bạn ạ! Có như thế họ mới giúp được mình. Mấy dòng góp ý nhân tình.
Hy vọng file dưới đây, ý mình trùng ý bạn. Mong các Pro giúp đỡ
http://www.cadviet.c...files/vd2_1.dwg
  • 0

#6 tnmtpc

tnmtpc

    biết dimcontinue

  • Members
  • PipPipPipPipPip
  • 370 Bài viết
Điểm đánh giá: 206 (khá)

Đã gửi 16 September 2008 - 07:54 PM

Không có bác nào giúp mình lisp ghi số thửa tự động à, tiếc nhỉ.
  • 0

#7 ssg

ssg

    biết lệnh adcenter

  • Vip
  • PipPipPipPipPipPipPip
  • 1228 Bài viết
Điểm đánh giá: 1087 (rất tốt)

Đã gửi 17 September 2008 - 07:46 AM

Không có bác nào giúp mình lisp ghi số thửa tự động à, tiếc nhỉ.

Đúng ra, đây là "món nợ" của ssg đối với bạn từ cái "dự án" LCV dang dở! Tham vọng hơi lớn nên bị... tắc, chứ chỉ như thế này thì LCV làm tốt. Ssg sẽ biên tập lại cái LCV, có cả tính năng này. Chỉ có điều là, hãy cho ssg một ít... thời gian!
  • 0