Hiện tại bạn đang là khách viếng thăm của Diễn Đàn Tư Vấn Xây Dựng Thành Gia – Nơi Hội Tụ Nhân Tài Xây Dựng. Nếu chưa có tài khoản, xin mời bạn Click chuột vào nút Đăng Ký bên dưới hoặc Click vào nút Đăng Nhập nếu bạn đã là thành viên chính thức để hưởng trọn quyền lợi của Diễn Đàn dành cho bạn. Mọi thắc mắc liên hệ với Ban Quản Trị qua địa chỉ: Ctythanhgia@gmail.com
Cảm ơn bạn đã ghé thăm Diễn Đàn của chúng tôi!
Lưu ý: Bạn chỉ được phép sử dụng Tiếng Việt có dấu hoặc Tiếng Anh trên Diễn Đàn và chỉ có thành viên mới được quyền viết bài, nhận xét trên Diễn Đàn!
Chúc bạn thu được nhiều kiến thức từ việc tham gia Diễn Đàn của chúng ta!
Hiện tại bạn đang là khách viếng thăm của Diễn Đàn Tư Vấn Xây Dựng Thành Gia – Nơi Hội Tụ Nhân Tài Xây Dựng. Nếu chưa có tài khoản, xin mời bạn Click chuột vào nút Đăng Ký bên dưới hoặc Click vào nút Đăng Nhập nếu bạn đã là thành viên chính thức để hưởng trọn quyền lợi của Diễn Đàn dành cho bạn. Mọi thắc mắc liên hệ với Ban Quản Trị qua địa chỉ: Ctythanhgia@gmail.com
Cảm ơn bạn đã ghé thăm Diễn Đàn của chúng tôi!
Lưu ý: Bạn chỉ được phép sử dụng Tiếng Việt có dấu hoặc Tiếng Anh trên Diễn Đàn và chỉ có thành viên mới được quyền viết bài, nhận xét trên Diễn Đàn!
Chúc bạn thu được nhiều kiến thức từ việc tham gia Diễn Đàn của chúng ta!
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.



 
Trang ChínhTrang Chính  Latest imagesLatest images  Đăng kýĐăng ký  Đăng Nhập  
Thông tin Admin
Quản trị: Nguyễn Anh Tuấn
Email: Ctythanhgia@gmail.com
Điệnthoại: 0914.524.611
Latest topics
Từ điển online

Tra theo từ điển:



Tìm kiếm
 
 

Display results as :
 
Rechercher Advanced Search
Keywords
công phần nhà door hitosoft pass revit sasabeza vấn đồi sân tính artlantis mềm thủy golf modeling điện chất sườn stcad camardo phong thiết giai địa
Poll
Bạn đang dùng phần mềm dự toán nào?
Dự toán Acitt
Lisp rải đối tượng theo đường dẩn Vote_lcap18%Lisp rải đối tượng theo đường dẩn Vote_rcap
 18% [ 111 ]
Dự toán 97
Lisp rải đối tượng theo đường dẩn Vote_lcap34%Lisp rải đối tượng theo đường dẩn Vote_rcap
 34% [ 215 ]
Dự toán G8
Lisp rải đối tượng theo đường dẩn Vote_lcap15%Lisp rải đối tượng theo đường dẩn Vote_rcap
 15% [ 95 ]
Dự toán Escon
Lisp rải đối tượng theo đường dẩn Vote_lcap3%Lisp rải đối tượng theo đường dẩn Vote_rcap
 3% [ 18 ]
Dự toán Delta
Lisp rải đối tượng theo đường dẩn Vote_lcap6%Lisp rải đối tượng theo đường dẩn Vote_rcap
 6% [ 37 ]
Dự toán Hitosoft
Lisp rải đối tượng theo đường dẩn Vote_lcap15%Lisp rải đối tượng theo đường dẩn Vote_rcap
 15% [ 95 ]
Dự toán GXD
Lisp rải đối tượng theo đường dẩn Vote_lcap9%Lisp rải đối tượng theo đường dẩn Vote_rcap
 9% [ 54 ]
Tổng số bầu chọn : 625
Quảng Cáo
LH 0914.524.611 LH 0914.524.611 LH 0914.524.611
Statistics
Diễn Đàn hiện có 6216 thành viên
Chúng ta cùng chào mừng thành viên mới đăng ký: manhcuongxdbd

Tổng số bài viết đã gửi vào diễn đàn là 4250 in 3735 subjects
Social bookmarking
Social bookmarking reddit      

Bookmark and share the address of on your social bookmarking website
April 2024
MonTueWedThuFriSatSun
1234567
891011121314
15161718192021
22232425262728
2930     
CalendarCalendar
like book
Banner tết 2

 

 Lisp rải đối tượng theo đường dẩn

Go down 
Tác giảThông điệp
Admin
Admin
Admin
Admin


Giới tính : Nam Tổng số bài gửi : 864
Sinh nhật : 09/04/1981
Ngày tham gia : 13/08/2011
Tuổi : 43
Việc làm/sở thích : Tư vấn thiết kế, giám sát thi công, quản lý dự án...

Lisp rải đối tượng theo đường dẩn Empty
Bài gửiTiêu đề: Lisp rải đối tượng theo đường dẩn   Lisp rải đối tượng theo đường dẩn EmptyFri Jun 08, 2012 9:56 pm

Code:

(Defun c:rdt (/ ss doituong dsl dc ddd chondd chieudaicuver diemdau diemcuoi krai chieudaidoan slc sl index d2 p2 d5 p5 d3 p3 dt l m)
(vl-load-com)
(command "undo" "be")
(command "ucs" "")
(chonnhomdoituong)
(choncuver)
(hoikieurai)
(command "ucs" "p")
(command "undo" "end")
  (princ)
)
;;;;;;;;;;;;;;;;;
(Defun c:dtd (/ ss doituong dsl dc ddd chondd chieudaicuver diemdau diemcuoi krai chieudaidoan slc sl index d2 p2 d5 p5 d3 p3 dt l m daidendiem)
(vl-load-com)
(command "undo" "be")
(command "ucs" "")
(choncuver)
(cdxuatphatdo)
(cdketthucdo)
(Cond
((< daidendiemdo daidenhuongdo) (setq chieudaidoan (- daidenhuongdo daidendiemdo)))         
((> daidendiemdo daidenhuongdo) (setq chieudaidoan (- daidendiemdo daidenhuongdo)))
)
(command "undo" "end")
(princ (strcat "\nChieu dai doan do la: " (rtos chieudaidoan 2 4)))
  (princ)
)
;;;;;;;;;;;;;;;;;
(Defun c:rtd (/ ss doituong dsl dc ddd chondd chieudaicuver diemdau diemcuoi krai chieudaidoan slc sl index d2 p2 d5 p5 d3 p3 dt l m daidendiem)
(vl-load-com)
(command "undo" "be")
(command "ucs" "")
(chonnhomdoituong)
(choncuver)
(chondiemxuatphat)
(hoikieuraicd)
(command "ucs" "p")
(command "undo" "end")
  (princ)
)
;;;;;;;;;;;;;;;;;
(Defun dotructiep ()
(cdxuatphatdo)
(cdketthucdo)
(Cond
((< daidendiemdo daidenhuongdo) (setq chieudaidoan (- daidenhuongdo daidendiemdo)))         
((> daidendiemdo daidenhuongdo) (setq chieudaidoan (- daidendiemdo daidenhuongdo)))
)
  (princ)
)
;;;;;;;;;;;;;;;;;
(Defun cdxuatphatdo ()
(setq luubatdiem (getvar "osmode"))
(setvar "osmode" 545)
(setq diemchuando (getpoint "\nTu diem <tren duong dan>:"))
(setvar "osmode" 0)
(setq daidendiemdo (vlax-curve-getDistAtPoint chondd diemchuando))
(setvar "osmode"luubatdiem)
 (cond
      ((= daidendiemdo nil) (princ "\nDiem vua chon khong nam tren duong dan, chon lai:") (cdxuatphatdo))
      ((/= daidendiemdo nil)))
  (princ)
)
;;;;;;;;;;;;;;;;;
(Defun cdketthucdo ()
(setq luubatdiem (getvar "osmode"))
(setvar "osmode" 545)
(setq diemdinhhuongdo (getpoint diemchuando"\nDen diem <tren duong dan>:"))
(setvar "osmode" 0)
(setq daidenhuongdo (vlax-curve-getDistAtPoint chondd diemdinhhuongdo))
(setvar "osmode"luubatdiem)
 (cond
      ((= daidenhuongdo nil) (princ "\nDiem vua chon khong nam tren duong dan, chon lai:") (cdketthucdo))
      ((/= daidenhuongdo nil)))
  (princ)
)
;;;;;;;;;;;;;;;;;
(Defun cdxuatphat ()
(setq luubatdiem (getvar "osmode"))
(setvar "osmode" 545)
(setq diemchuan (getpoint "\nDiem bat dau rai tren duong dan:"))
(setvar "osmode" 0)
(setq daidendiem (vlax-curve-getDistAtPoint chondd diemchuan))
(setvar "osmode"luubatdiem)
 (cond
      ((= daidendiem nil) (princ "\nDiem vua chon khong nam tren duong dan, chon lai:") (cdxuatphat))
      ((/= daidendiem nil)))
  (princ)
)
;;;;;;;;;;;;;;;;;
(Defun cdketthuc ()
(setq luubatdiem (getvar "osmode"))
(setvar "osmode" 545)
(setq diemdinhhuong (getpoint diemchuan"\nDiem ket thuc rai tren duong dan:"))
(setvar "osmode" 0)
(setq daidenhuong (vlax-curve-getDistAtPoint chondd diemdinhhuong))
(setvar "osmode"luubatdiem)
 (cond
      ((= daidenhuong nil) (princ "\nDiem vua chon khong nam tren duong dan, chon lai:") (cdketthuc))
      ((/= daidenhuong nil)))
  (princ)
)
;;;;;;;;;;;;;;;;;
(Defun thongbaoketqua ()
(princ (strcat "\nChieu dai doan la: " (rtos chieudaitinh 2 4) doanhienthinoidung))
  (princ)
)
;;;;;;;;;;;;;;;;;
(Defun chondiemxuatphat ()
(cdxuatphat)
(cdketthuc)
(Cond
((< daidendiem daidenhuong) (setq chieudaitinh (- daidenhuong daidendiem)) (setq dautinh +))         
((> daidendiem daidenhuong) (setq chieudaitinh (- daidendiem daidenhuong)) (setq dautinh -))
)
(setq doanxuatphat daidendiem)
  (princ)
)
;;;;;;;;;;;;;;;;;
(Defun hoikieuraicd ()
  (setq kraicd (strcase (getstring "\nKieu rai theo: Tinh /So luong/<Khoang cach>")))

(Cond
((= kraicd "T") (raisoluongtinh))
((/= kraicd "T")
  (Cond
  ((= kraicd "S") (raisoluongcd))
  ((/= kraicd "S") (raikhoangcachcd))
  )
)
)
  (princ)
)
;;;;;;;;;;;;;;
(Defun raisoluongtinh ()
  (setq slrai (getreal "\nRai them may lan khong tinh doi tuong tai diem bat dau rai:"))
  (setq chieudaidoan (GETDIST "\nKhoang cach 1 lan rai: <Nhap 0 de do tren duong dan>"))
  (Cond
  ((= chieudaidoan 0) (dotructiep)))

  (setq tongdoan (* slrai chieudaidoan))
  (Cond
  ((> tongdoan chieudaitinh)
(princ (strcat "\nChieu dai doan la: " (rtos chieudaitinh 2 4) ", Yeu cau la: " (rtos chieudaidoan 2 4) "x" (rtos slrai 2 0) "=" (rtos tongdoan 2 4)))
(princ "\nVuot qua chieu dai cho phep, nhap lai:")
(raisoluongtinh))
  ((< tongdoan chieudaitinh)
    (setq sl (fix (+ slrai 1)))
    (setq sl (fix sl))
(setq doanhienthinoidung (strcat "\nDa thuc hien rai: " (rtos slrai 2 0) " lan voi khoang cach " (rtos chieudaidoan 2 4)))
(thuchienrai)
  )
  )
  (princ)
)
;;;;;;;;;;;;;;
(Defun raikhoangcachcd ()
  (setq chieudaidoan (GETDIST "\nKhoang cach 1 lan rai: <Nhap 0 de do tren duong dan>"))
  (Cond
  ((= chieudaidoan 0) (dotructiep)))
  (Cond
  ((> chieudaidoan chieudaitinh)
(princ (strcat "\nChieu dai doan la: " (rtos chieudaitinh 2 4) ", Yeu cau la: " (rtos chieudaidoan 2 4)))
(princ "\nVuot qua chieu dai cho phep, nhap lai:")
(raikhoangcachcd))
  ((< chieudaidoan chieudaitinh)
  (setq sol (+ (/ chieudaitinh chieudaidoan) 1))
    (setq sl (fix sol))
    (setq sl (fix sl))
(setq doanhienthinoidung (strcat "\nDa thuc hien rai: " (rtos sol 2 0) " lan voi khoang cach " (rtos chieudaidoan 2 4)))
(thuchienrai)
  )
  )
  (princ)
)
;;;;;;;;;;;;;;
(Defun raisoluongcd ()
(setq slc (getreal "\nChia duong dan thanh may lan:"))
(setq chieudaidoan (/ chieudaitinh slc))
(setq sl (fix (+ 1 slc)))
(setq doanhienthinoidung (strcat "\nDa thuc hien rai: " (rtos slc 2 0) " lan voi khoang cach " (rtos chieudaidoan 2 4)))
(thuchienrai)
  (princ)
)
;;;;;;;;;;;;;;
(Defun chonnhomdoituong ()
  (princ "\nChon doi tuong rai:")
  (setq ss (ssget))

 (cond
      ((= ss nil) (princ "\nChua chon duoc doi tuong nao:") (chonnhomdoituong))
      ((/= ss nil)
 (setq dsl (sslength ss))
            (cond
            ((= dsl 1)
(setq doituong (ssname SS 0))
(setq doituong (entget doituong))
(setq KIEUDOITUONG (cdr (assoc 0 doituong)))
                  (cond
                  ((= KIEUDOITUONG "INSERT") (setq dc (cdr (assoc 10 doituong))))
                  ((/= KIEUDOITUONG "INSERT") (chondiemchuandoituong))
                  );ketthuccondxemblock
                );kethucdsl1
            ((/= dsl 1) (chondiemchuandoituong))
            );ketthuccondnho

);ketthucsetqdsl
 );ketthuccondtong 
  (princ)
)
;;;;;;;;;;;;;;;;;
(Defun chondiemchuandoituong ()
(setq dc (getpoint "\nChon diem goc: "))
 (cond
      ((= dc nil) (princ "\nChua chon duoc diem goc:") (chondiemchuandoituong))
      ((/= ss nil)))
  (princ)
)
;;;;;;;;;;;;;;;;;
(Defun choncuver ()

(setq ddd (entsel "\nChon duong dan:"))
(while
(or
(null ddd)
(or (= "TEXT" (cdr (assoc 0 (entget (car ddd))))) (= "MTEXT" (cdr (assoc 0 (entget (car ddd))))) (= "HATCH" (cdr (assoc 0 (entget (car ddd))))) (= "INSERT" (cdr (assoc 0 (entget (car ddd))))) (= "REGION" (cdr (assoc 0 (entget (car ddd))))) (= "DIMENSION" (cdr (assoc 0 (entget (car ddd)))))
)
)
(setq ddd (entsel "\nDoi tuong khong the lam duong dan! Chon lai"))
)

(setq chondd (car ddd))
(setq luubatdiem (getvar "osmode"))
  (setvar "osmode" 0)
(setq chieudaicuver (vlax-curve-getDistAtParam chondd (vlax-curve-getEndParam chondd)))
(setq doanxuatphat 0)
(setvar "osmode"luubatdiem)
  (princ)
)
;;;;;;;;;;;;;;;;;
(Defun hoikieurai ()
(setq dautinh +)
  (setq krai (strcase (getstring "\nKieu rai theo: So luong/<Khoang cach>")))
(Cond
((= krai "S") (raisoluong))
((/= krai "S")(raikhoangcach))
)

  (princ)
)
;;;;;;;;;;;;;;
(Defun raikhoangcach ()
  (setq chieudaidoan (GETDIST "\nKhoang cach doan chia: "))
  (setq sol (+ (/ chieudaicuver chieudaidoan) 1))
    (setq sl (fix sol))
    (setq sl (fix sl))
(thuchienrai)
  (princ)
)
;;;;;;;;;;;;;;
(Defun raisoluong ()
(setq slc (getreal "\nChia duong dan thanh may lan:"))
(setq chieudaidoan (/ chieudaicuver slc))
(setq sl (fix (+ 1 slc)))
(thuchienrai)
  (princ)
)
;;;;;;;;;;;;;;
(Defun thuchienrai (/ quaykhong)

  (setq quaykhong (strcase (getstring "\nCo quay doi tuong vuong goc voi duong dan khong: Khong/<Co>")))
(Cond
((= quaykhong "K") (setq copygiua copykoquay))
((/= quaykhong "K")(setq copygiua copyquay))
)

(setq index -1)

  (repeat sl
(setq index (1+ index))
(setq d2 (dautinh doanxuatphat (* chieudaidoan index)))
(setq luubatdiem (getvar "osmode"))
  (setvar "osmode" 0)
(setq p2 (vlax-curve-getPointAtDist chondd d2))
(setvar "osmode"luubatdiem)
(copygiua)
  )
(thongbaoketqua)
  (princ)
)
;;;;;;;;;;;;;;;;;;;;;;;;
(defun copycuoiquay()
(setq luubatdiem (getvar "osmode"))
  (setvar "osmode" 0)
(setq d5 (- (dautinh doanxuatphat (* chieudaidoan index)) 0.01))
(setq p5 (vlax-curve-getPointAtDist chondd d5))
 (setq L 0)
 (setq M (sslength ss))
 (while (< L M)
  (setq DT (ssname ss L))
  (command ".copy" DT "" dc p2)
  (command ".rotate" "last" "" p2 p5)
  (command ".rotate" "last" "" p2 180)
  (setq L (1+ L))
)
(setvar "osmode"luubatdiem)
(princ)
)
;;;;;;;;;;;;;;;;;;;;;;;;
(defun COPYQUAY(/ p3)
(setq luubatdiem (getvar "osmode"))
  (setvar "osmode" 0)
(setq d3 (+ (dautinh doanxuatphat (* chieudaidoan index)) 0.001))
(setq p3 (vlax-curve-getPointAtDist chondd d3))
(setvar "osmode"luubatdiem)
(Cond
((= p3 nil) (copycuoiquay))
((/= p3 nil)
 (setq L 0)
 (setq M (sslength ss))
(setq luubatdiem (getvar "osmode"))
  (setvar "osmode" 0)
 (while (< L M)
  (setq DT (ssname ss L))
  (command ".copy" DT "" dc p2)
  (command ".rotate" "last" "" p2 p3)
  (setq L (1+ L))
)
(setvar "osmode"luubatdiem)
)
)


(princ)
)
;;;;;;;;;;;;;;;;;;;;;;;;
(defun COPYKOQUAY()
(setq luubatdiem (getvar "osmode"))
  (setvar "osmode" 0)
(command ".copy" ss "" dc p2 "")
(setvar "osmode"luubatdiem)
(princ)
)
;;;;;;;;;;;;;;
(Defun c:vdd ()

(setq ddd (entsel "\nChon duong dan:"))
(while
(or
(null ddd)
(or (= "TEXT" (cdr (assoc 0 (entget (car ddd))))) (= "MTEXT" (cdr (assoc 0 (entget (car ddd))))) (= "HATCH" (cdr (assoc 0 (entget (car ddd))))) (= "INSERT" (cdr (assoc 0 (entget (car ddd))))) (= "REGION" (cdr (assoc 0 (entget (car ddd))))) (= "DIMENSION" (cdr (assoc 0 (entget (car ddd)))))
)
)
(setq ddd (entsel "\nDoi tuong khong the lam duong dan! Chon lai"))
)

  (setq chondd (car ddd))
(setq L (vlax-curve-getDistAtParam chondd (vlax-curve-getEndParam chondd)))
(setq diemdau (vlax-curve-getPointAtDist chondd 0))
(setq diemcuoi (vlax-curve-getPointAtDist chondd l))
(setq dc (getpoint "\nChon diem goc: "))
(command ".line" dc diemcuoi "")
(command ".line" dc diemdau "")

  (princ)
)
Về Đầu Trang Go down
http://banxaydung.blogspot.com/
 
Lisp rải đối tượng theo đường dẩn
Về Đầu Trang 
Trang 1 trong tổng số 1 trang
 Similar topics
-
» Ứng dụng Lisp để cắm mốc đường
» Lisp tính diện tích cho dân Cầu đường
» Lisp nối nhiều hacth thành 1 đối tượng
» Kiến trúc nội thất đẹp theo chủ nghĩa đương đại tối giản
» Lisp vẽ mái taluy

Permissions in this forum:Bạn không có quyền trả lời bài viết
 :: THƯ VIỆN XÂY DỰNG :: Autocad & Autolisp cad-
Chuyển đến