Đến nội dung


Hình ảnh
- - - - -

move point từ 2D thành 3D


  • Please log in to reply
6 replies to this topic

#1 vbao

vbao

    biết lệnh array

  • CADViet Team
  • PipPipPip
  • 184 Bài viết
Điểm đánh giá: 80 (tàm tạm)

Đã gửi 13 November 2008 - 08:51 PM

Mong anh em trong diễn đàn, viết hộ tôi tiện ích chuyển các đối tượng là point về tọa độ Z theo giá trị của text liền kề với nó, vd: trên màn hình tôi có đối tượng : .1.50 (point + text), tôi muốn chuyển đối tượng point về tọa độ Z = 1.50. Thanks
  • 0

#2 Nguyen Hoanh

Nguyen Hoanh

    biết lệnh adcenter

  • Moderator
  • PipPipPipPipPipPipPip
  • 4105 Bài viết
Điểm đánh giá: 4495 (đỉnh cao)

Đã gửi 13 November 2008 - 09:27 PM

Mong anh em trong diễn đàn, viết hộ tôi tiện ích chuyển các đối tượng là point về tọa độ Z theo giá trị của text liền kề với nó, vd: trên màn hình tôi có đối tượng : .1.50 (point + text), tôi muốn chuyển đối tượng point về tọa độ Z = 1.50. Thanks

Sao bác không upload 1 file mẫu lên để bọn em còn có file chạy test chương trình?
  • 0

#3 vbao

vbao

    biết lệnh array

  • CADViet Team
  • PipPipPip
  • 184 Bài viết
Điểm đánh giá: 80 (tàm tạm)

Đã gửi 14 November 2008 - 06:58 AM

Sao bác không upload 1 file mẫu lên để bọn em còn có file chạy test chương trình?


gửi anh Hoành file mẫu
http://www.cadviet.com/upfiles/Mau.dwg
  • 0

#4 ndtnv

ndtnv

    biết lệnh minsert

  • Members
  • PipPipPipPipPipPip
  • 437 Bài viết
Điểm đánh giá: 384 (khá)

Đã gửi 14 November 2008 - 08:59 AM

lisp của bạn đây
tên lệnh là ptz
(defun C:ptz ( /  ss e et pt i s x y z)
(princ "Chon diem :")
(setq ss (ssget '((0 . "POINT")) ) i -1)
(repeat (sslength ss)
(setq i (1+ i) e (entget (ssname ss i)) s (assoc 10 e ) pt (cdr s) )(setq x (car pt) y (cadr pt))
(if (setq et (ssget "_C" pt (list (1+ x ) (1+ y )) '((0 . "TEXT")) ))
(progn
(setq z (atof (cdr (assoc 1 (entget (ssname et 0)) ))))
(entmod (subst (cons 10 (list x y z)) s e))
)
)
)
(princ)
)

  • 0

#5 ndtnv

ndtnv

    biết lệnh minsert

  • Members
  • PipPipPipPipPipPip
  • 437 Bài viết
Điểm đánh giá: 384 (khá)

Đã gửi 14 November 2008 - 09:07 AM

Xin các mod xem giúp không rõ lý do gì mà code lại thêm 4 dấu ";"
bạn copy về và xóa mấy dấu đó đi
  • 0

#6 Flex

Flex

    biết lệnh erase

  • Members
  • PipPipPip
  • 104 Bài viết
Điểm đánh giá: 22 (tàm tạm)

Đã gửi 14 November 2008 - 10:48 AM

Bác nên cho người ta nhập thêm cả khoảng cách từ text tới point nữa, các cặp nào nằm trong phạm vi đó sẽ đi cặp với nhau. Thế mới nhanh đc cho bản vẽ nhiều cặp.
  • 0
Phần mềm và Tiện ích trên AutoCAD
->SHD- Phần mềm TK nhà xưởng thép tiền chế
->Nhận hợp tác thiết kế nhà thép tiền chế
website: www.cad-app.com
email: flexnet@cad-app.com
ym: flex_tools

#7 duy782006

duy782006

    PHẠM QUỐC DUY

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 2155 Bài viết
Điểm đánh giá: 1360 (rất tốt)

Đã gửi 14 November 2008 - 10:58 AM

Mong anh em trong diễn đàn, viết hộ tôi tiện ích chuyển các đối tượng là point về tọa độ Z theo giá trị của text liền kề với nó, vd: trên màn hình tôi có đối tượng : .1.50 (point + text), tôi muốn chuyển đối tượng point về tọa độ Z = 1.50. Thanks

Theo em có cách này làm có vẻ gọn hơn nè. Hông thèm quan tâm tới cái point hiện có của bác làm gì. Cứ đọc giá trị của text rồi vẽ mới 1 point tại điểm chèn của text như vậy sai số cũng không bao nhiêu mà khoẻ cho người viết nửa.
-Mà nếu bác VBAO làm việc này để san nền thì lưu ý là trong chương trình san nền có cho lựa chọn tạo mặt phẳng tự nhiên bằng text đó.
  • 1

Cứ ngỡ trần gian là cõi thật.Cho nên tất bật đến bây giờ.
Tạo hộp thoại bằng lisp My blog QUY ĐỊNH ĐẶT TÊN TOPIC TRONG CHUYÊN MỤC LISPD http://ktsduy.wordpress.com/
Để cám ơn chỉ cần nhấn rep_up.png
(Là nhấn vào nút đó phía bài viết của người ta í chứ đừng có nhè cái hình này mà nhấn miết đi nha :-D