Chuyển đến nội dung
Diễn đàn CADViet
  • Thông báo

    • Nguyen Hoanh

      CADViet đã hoàn tất nâng cấp   14/09/2017

      Chào các bạn, CADViet đã hoàn tất việc nâng cấp lên phiên bản mới. Tất cả các chức năng đã hoạt động theo kỳ vọng của ban quản trị. Nếu có vấn đề gì cần phản hồi, các bản post ở đây nhé: Trân trọng, Nguyễn Hoành.
Nguyen Hoanh

Viết Lisp theo yêu cầu

Các bài được khuyến nghị

hailuavnn    1
Bạn có thể post yêu cầu về autolisp ở topic này.

Cadviet.com có thể viết dùm mình một lisp giống như lệnh Wall trong Revit được không nghĩa là lúc mình chọn lệnh (giả sử là Wall đi nha) thì lisp sẽ cho mình chọn chiều dày tường (100 hoặc 200) sau đó chọn cách vẽ ( theo tâm trục hoặc theo biên) và các Wall khi vẽ khi giao nhau sẽ cắt nhau luôn không.

Chỉnh sửa theo hailuavnn

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
thanhlamct    70

Chào các bác!

Mình có một tuyến ống đặt trong file đo đạc địa hình, trên đó có rất nhiều các điểm cốt mặt đất, trên tuyến ống đã đánh số thứ tự của các cọc tính toán (ví dụ 50m/cọc). các cọc này là các block tên là "coc".

Mình cần 1 file lisp có chức năng: sau khi select các block "coc" thì lấy 1 giá trị cốt mặt đất gần các block đó nhất và xuất ra 1 file excel.

Có ai biết thì giúp mình với.

Xin cảm ơn!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
hailuavnn    1
Cadviet.com có thể viết dùm mình một lisp giống như lệnh Wall trong Revit được không nghĩa là lúc mình chọn lệnh (giả sử là Wall đi nha) thì lisp sẽ cho mình chọn chiều dày tường (100 hoặc 200) sau đó chọn cách vẽ ( theo tâm trục hoặc theo biên) và các Wall khi vẽ khi giao nhau sẽ cắt nhau luôn không.

Không có ai trả lời mình hết vậy ta :bigsmile: :bigsmile: :bigsmile: :)

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
tomboy    20
Chào các bác!

Mình có một tuyến ống đặt trong file đo đạc địa hình, trên đó có rất nhiều các điểm cốt mặt đất, trên tuyến ống đã đánh số thứ tự của các cọc tính toán (ví dụ 50m/cọc). các cọc này là các block tên là "coc".

Mình cần 1 file lisp có chức năng: sau khi select các block "coc" thì lấy 1 giá trị cốt mặt đất gần các block đó nhất và xuất ra 1 file excel.

Có ai biết thì giúp mình với.

Xin cảm ơn!

------------------------------------------

ok, mình đã viết xong cho bạn rồi, bạn hãy làm theo cách này nhé:

thứ nhất : thứ tự của các cọc phải nằm trong layer "STT" , cao độ mặt đất phải nằm trong lớp "DO CAO" và tên Block phải là "COC" và có điểm chèn của Block phải nằm lân cận Block đó, nếu nằm đúng tim của nó thì càng tốt. tất cả Layer và tên Block không phân biệt chữ hoa hay thường

thứ hai: tên của số thứ tự phải nằm gần Block đó, không phân biệt Number hay alphabet, nếu là number thì càng tốt

thứ ba: tất cả các đối tượng đang xét đó phải là TEXT và không được lock nhé:

Note: Lệnh là XLS, nếu trùng lệnh nào trong acad thì bạn hãy dùng notepad để sửa lại nhé, cách sửa tìm chữ C:XLS có trong file đó và sửa thành C: + TÊN LỆNH mà bạn muốn.

(defun c:xls (/ input xuly output data val)

(defun input (/ text_loc sset stt docao block sslen i entn entg dxf la

p blname)

(defun text_loc (entn / p entg text jum72 jum73 i loc ketqua)

(setq p '())

(setq entg (entget entn))

(setq text (cdr (assoc 0 entg)))

(if (= text "TEXT")

(progn

(setq jum72 (cdr (assoc 72 entg)))

(setq jum73 (cdr (assoc 73 entg)))

(cond

((= jum72 1) (setq i 11))

((= jum72 2) (setq i 11))

((= jum72 4) (setq i 11))

((= jum72 3) (setq i 10))

((= jum72 5) (setq i 10))

((= jum72 0)

(progn

(if (= jum73 0)

(setq i 10)

(setq i 11)

)

)

)

)

(setq loc (cdr (assoc i entg)))

(setq p loc)

)

)

(setq ketqua p)

)

;;; ----------mainsub----------

(alert

"\n B¹n ph¶i ®Æt tªn Layer vµ Block nh­ sau:

\nLayer: \"STT\" lµ sè thø tù cäc, \"Do cao\" lµ ®é cao mÆt ®Êt

\nBlock: ®Æt tªn lµ \"Coc\""

)

(setq sset (ssget))

(setq stt '()

docao '()

block '()

sslen (sslength sset)

i 0

)

 

(if sset

(progn

(repeat sslen

(setq entn (ssname sset i))

(setq entg (entget entn))

(setq dxf (cdr (assoc 0 entg)))

(cond

((= dxf "TEXT")

(progn

(setq la (strcase (cdr (assoc 8 entg))))

(cond

((= la "STT")

(setq p (text_loc entn)

p (subst 0 (nth 2 p) p)

stt

(append

stt

(list

(list (cdr (assoc 1 entg)) p)

)

)

)

)

((= la "DO CAO")

(setq p (text_loc entn)

p (subst 0 (nth 2 p) p)

docao (append docao

(list (list (cdr (assoc 1 entg))

p

)

)

)

)

)

)

)

)

((= dxf "INSERT")

(progn

(setq blname (strcase (cdr (assoc 2 entg))))

(if (= blname "COC")

(setq p (cdr (assoc 10 entg))

p (subst 0 (nth 2 p) p)

block (append block (list p))

)

)

)

)

)

(setq i (+ i 1))

)

)

)

(list stt docao block)

)

;;; -------------end input--------------

(defun xuly (data / stt docao block len i n kqbl

pbl j mss line txt p d kq kqtt

linett ptt linebl caodo

)

(setq stt (nth 0 data)

docao (nth 1 data)

block (nth 2 data)

)

(if (and stt docao block)

(progn

(setq len (length block)

i 0

n (length docao)

kqbl '()

)

(repeat len

(setq pbl (nth i block))

(setq j 0)

(setq mss 2000000000)

(repeat n

(setq line (nth j docao)

txt (nth 0 line)

p (nth 1 line)

d (distance pbl p)

)

(if (< d mss)

(setq mss d

kq (list txt pbl)

)

)

(setq j (+ j 1))

)

(setq kqbl (append kqbl (list kq)))

(setq i (+ i 1))

)

(setq len (length stt)

i 0

n (length kqbl)

kqtt '()

)

(repeat len

(setq linett (nth i stt)

tt (nth 0 linett)

ptt (nth 1 linett)

j 0

n (length kqbl)

mss 2000000000

)

(repeat n

(setq linebl (nth j kqbl)

caodo (nth 0 linebl)

pbl (nth 1 linebl)

j (+ j 1)

d (distance ptt pbl)

)

(if (< d mss)

(setq mss d

kq (list tt caodo (atof tt))

)

)

)

(setq kqtt (append kqtt (list kq)))

(setq i (+ i 1))

)

(setq kqtt (vl-sort kqtt

(function (lambda (e1 e2)

(< (nth 2 e1) (nth 2 e2))

)

)

)

)

)

)

kqtt

)

;;; -------------end xuly --------------

(defun output (val / path fn f n i line lines)

(if val

(progn

(setq path (getvar "dwgprefix"))

(setq fn

(getfiled "Select a Lisp File" path "txt;dat;sl;kq;elv" 1)

)

(if fn

(progn

(setq f (open fn "w"))

(setq n (length val)

i 0

)

(repeat n

(setq line (nth i val)

lines (strcat (nth 0 line) "\t" (nth 1 line))

i (+ i 1)

)

(write-line lines f)

)

(close f)

)

)

(alert (strcat "Xem kÕt qu¶ trong file: " fn))

)

)

)

;;; --------------------MAIN------------------

(setq data (input))

(setq val (xuly data))

(output val)

)

  • Vote tăng 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
tomboy    20
- Chào cadviet. Hôm nay mình có 1 việc nhờ mọi người viết dùm mình 1 đọan lisp in nhiều bản vẽ cùng lúc trong 1 file cad,

mình có tìm trên cadviet có phần Mplot của bạn Nguyen Hoanh sử dụng rất hiệu quả nhưng do công ty mình dùng cadLT bản quyền nên không dùng được *.VLX. Công việc của mình in rất nhiều nên mình rất cần đọan lisp tương tự như Mplot. Đọan lisp chỉ cần chọn Block là khung bản vẽ và in tòan bộ bản vẽ đó ra. Rất mong sự giúp đỡ của mọi người.

ý tưởng của bạn rất hay tại vì mình thấy công việc in ấn trên bản vẽ là rất vất vả nếu như đang gấp mà phải đóng hồ sơ đi mà lúc đó mới in bản vẽ thì quả là rất cực . nhiều lúc mình cũng muốn viết 1 đoạn code để giải quyết công việc này nhưng tại vì nếu viết ra thì người sử dụng nó bắt buộc phải quản lý bản vẽ theo 1 tiêu chuẩn riêng do đó sẽ khó khăn hoặc không thuận tiện cho những người chưa rành về cad. công việc này đòi hỏi bạn muốn in bản vẽ nào thì phải áp khung bản vẽ đó, mà khung bản vẽ đó phải do tác giả lập nên, do vậy để thuận tiện cho cả người dùng lẫn người viết chương trình thì bạn có thể gửi cho mình 1 số khung bản vẽ được không, vụ KHUNG A1, A2, A3, A4 chứ không mình viết xong lại không đúng với tiêu chuẩn khung của bạn đang xài. đc email của mình: qanh060275@yahoo.com và gửi thêm 1 bản vẽ mà bạn đã sắp xếp thứ tự để chỉ việc in rồi nhé:

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
tomboy    20
Không có ai trả lời mình hết vậy ta :bigsmile: :bigsmile: :bigsmile: :)

trong lĩnh vực thiết kế xây dựng của bạn thì mình không rành về chuyên môn lắm, nên bạn có thể gửi bản vẽ có wall trong đó đc không, tại vì mình không biết wall mà bạn vẽ thuộc đối tượng nào: LINE hay LWPOLYLINE, vẽ nét đôi hay nét đơn ... và tim trục nằm ở đâu. Nếu được mình sẽ cố gắng giúp bạn

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
duy782006    1.374
Các bạn có lisp chuyển text của font TCVN3(ABC) về font VNI Windows cho tớ xin nha. Chứ chuyển thủ công đuối quá.

(Hiện nay mình mới viết được phần này còn chuyễn ngược lại thì chưa thành công).

*Tên lệnh: TCVN-VNI

Nhập lệnh xong lisp hỏi chọn đối tượng bạn chọn các text muốn chuyễn mã lisp sẽ tự tạo 1 textstyle tên THEP font VNI-HELVE và chuyễn các text này về textstryle này tất nhiên đã chuyễn mã rồi, bây giờ bạn có thể chỉnh sửa các text này bằng bảng mã VNI.*** như bình thường. Lưu ý các text sau khi chuyễn mã sẽ viết hoa toàn bộ bất kể trước đó viết thường hay hoa.

http://www.4shared.com/file/106030590/30e7821b/chuyenma.html

  • Vote tăng 3

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
viennv    2

Chào các bác! Em muốn đánh số thứ tự 1A, 2A, 3A ... . Bác nào đã viết lisp mà chỉ cần copy 1A thì tự động

những text sau là 2A, 3A ko a. Nếu có thì có thể post lên được ko ạ. Cảm ơn các bác nhiều.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
viennv    2

Chào các bác! Em muốn đánh số thứ tự 1A, 2A, 3A ... . Bác nào đã viết lisp mà chỉ cần copy 1A thì tự động

những text sau là 2A, 3A ko a. Nếu có thì có thể post lên được ko ạ. Cảm ơn các bác nhiều.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
duytrung    2
(Hiện nay mình mới viết được phần này còn chuyễn ngược lại thì chưa thành công).

*Tên lệnh: TCVN-VNI

Nhập lệnh xong lisp hỏi chọn đối tượng bạn chọn các text muốn chuyễn mã lisp sẽ tự tạo 1 textstyle tên THEP font VNI-HELVE và chuyễn các text này về textstryle này tất nhiên đã chuyễn mã rồi, bây giờ bạn có thể chỉnh sửa các text này bằng bảng mã VNI.*** như bình thường. Lưu ý các text sau khi chuyễn mã sẽ viết hoa toàn bộ bất kể trước đó viết thường hay hoa.

http://www.4shared.com/file/106030590/30e7821b/chuyenma.html

 

cảm ơn rất nhiều vi thực hiện rất nhanh, nhưng còn chữ thường thì còn phải chỉnh lại

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
duy782006    1.374
cảm ơn rất nhiều vi thực hiện rất nhanh, nhưng còn chữ thường thì còn phải chỉnh lại

Do mình vẽ bản vẽ KT toàn dùng chử hoa nên mới làm thế. Bạn dùng lệnh TCASE có sẳn của cad để chỉnh chữ thường và hoa. Tin rằng cũng rất nhanh.

  • Vote tăng 2

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
thanhlamct    70
------------------------------------------

ok, mình đã viết xong cho bạn rồi, bạn hãy làm theo cách này nhé:

 

Cảm ơn Tomboy rất nhiều.

Chương trình thật tuyệt vời, như mình mong muốn. Chương trình giúp mình khâu nhập dữ liệu vốn mất rất nhiều thời gian.

Quá hay. :bigsmile:

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
svba1608    624

Hôm nay mình muốn nhờ diễn đàn 2 việc:

Mình thường dùng lệnh overkill để dọn dẹp bản vẽ nhưng không hiểu sao sau khi dùng lệnh này bản vẽ lại nặng hơn. Vậy nhờ mọi người giúp mình viết lisp có tác dụng tương tự như lệnh này nhưng làm bản vẽ nhẹ đi.

Thứ 2 là mình muốn nhờ viết 1 lisp "nhân (hoặc chia) dim". Có nghĩa là sau khi gõ lệnh, chọn toàn bộ dim muốn nhân hoặc chia rồi chọn số muốn nhân (hoặc chia) thì giá trị dim sẽ tăng lên (hoặc giảm đi) bằng số mà mình đã nhập.

Cảm ơn!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Tue_NV    3.841
Mình thường dùng lệnh overkill để dọn dẹp bản vẽ nhưng không hiểu sao sau khi dùng lệnh này bản vẽ lại nặng hơn. Vậy nhờ mọi người giúp mình viết lisp có tác dụng tương tự như lệnh này nhưng làm bản vẽ nhẹ đi.

 

Thứ 2 là mình muốn nhờ viết 1 lisp "nhân (hoặc chia) dim". Có nghĩa là sau khi gõ lệnh, chọn toàn bộ dim muốn nhân hoặc chia rồi chọn số muốn nhân (hoặc chia) thì giá trị dim sẽ tăng lên (hoặc giảm đi) bằng số mà mình đã nhập.

Cảm ơn!

Cái thứ nhất : Em có thể upload file .dwg lên diễn đàn.

 

Cái thứ hai : Tue_NV chưa rõ ý

SVBA có thể nói rõ hơn không ?

Thứ nhất : chọn số muốn nhân : Cái này nhập từ bàn phím hay là chọn 1 text trên màn hình?

Thứ hai : là kết quả đầu ra : Em muốn xuất kết quả như thế nào? Kết quả Cập nhật trực tiếp vào DIMENSION đã chọn hay là....

SVBA muốn độ chế DIM à?

 

SVBA nói rõ nhé

  • Vote tăng 2

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
svba1608    624
Cái thứ nhất : Em có thể upload file .dwg lên diễn đàn.

 

Cái thứ hai : Tue_NV chưa rõ ý

SVBA có thể nói rõ hơn không ?

Thứ nhất : chọn số muốn nhân : Cái này nhập từ bàn phím hay là chọn 1 text trên màn hình?

Thứ hai : là kết quả đầu ra : Em muốn xuất kết quả như thế nào? Kết quả Cập nhật trực tiếp vào DIMENSION đã chọn hay là....

SVBA muốn độ chế DIM à?

 

SVBA nói rõ nhé

 

Cảm ơn anh Tue_NV! Anh xem file này giúp em. Hiện tại Cad của em đang bị lỗi nên em chưa xóa được một số thứ không liên quan. File này có thể mô tả cả 2 câu hỏi của em.

 

Câu thứ nhất: Anh xem phần Chi tiết phễu thoát sàn hay Chi tiết lavabo, xí bệt; Chi tiết hộp chữa cháy... Đa phần đều bị 2 đối tượng trùng lên nhau. (Em không biết có phải do em copy từ bản vẽ này sang bản vẽ khác không). Text cũng bị trùng lên nhau, nhưng em đã dùng lisp xóa text trùng của anh lần trước xóa đi rồi. Với hầu hết các bản vẽ, em dùng lệnh Pu thấy bản vẽ nhẹ đi, còn dùng lệnh Overkill lại thấy bản vẽ nặng lên. Anh xem giùm em.

 

Câu thứ 2: Em muốn chọn số muốn nhân nhập từ bàn phím, kết quả đầu ra nhập trực tiếp vào DIMENSION.

Anh xem trong bản vẽ, phần Chi tiết bể tự hoại. Sau khi em dùng lệnh MA, các DIM đã bị tăng lên 4 lần, giờ em muốn giảm nó đi 4 lần.

 

Còn 1 chi tiết nữa, không liên quan đến câu hỏi của em, mà liên quan tới câu đố của bác KE AN MAY DI VANG. Ở chi tiết ống thông hơi qua mái, em thấy rất lạ là có đối tượng di chuột đến thì sáng lên, có đối tượng di chuột đến thì ẩn đi, mặc dù chúng cùng Layer và bảng Properties giống nhau. Ai biết xin giải thích dùm.

Cảm ơn anh Tue_NV! Cảm ơn Diễn đàn.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
tomboy    20
Cái thứ nhất : Em có thể upload file .dwg lên diễn đàn.

 

Cái thứ hai : Tue_NV chưa rõ ý

SVBA có thể nói rõ hơn không ?

Thứ nhất : chọn số muốn nhân : Cái này nhập từ bàn phím hay là chọn 1 text trên màn hình?

Thứ hai : là kết quả đầu ra : Em muốn xuất kết quả như thế nào? Kết quả Cập nhật trực tiếp vào DIMENSION đã chọn hay là....

SVBA muốn độ chế DIM à?

 

SVBA nói rõ nhé

mình nghĩ cái này không cần phải lisp đâu tại vì cad đã hỗ trợ rồi. Bạn dùng lệnh DIMSTYLE chọn dimstyle mà bạn muốn sửa chữa hoặc bạn có thể tạo dimstyle mới sau đó nhấp vào nút Modify và chọn vào thẻ Primary Units và vào tiếp mục Measurement Scale tại ô Scale factor bạn chọn giá trị cần tăng hay giảm tỉ lệ của dimstyle đó. Chúc bạn thành công

  • Vote tăng 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
t031285    1

Các bạn viết giùm 1 lisp như sau với:khi ta đánh dim100 thì sẽ hiện ra 1 loại dim giá trị như dim100 trong dimtyle,tương tự

dim20,dim50....Chân thành cảm ơn.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
svba1608    624
mình nghĩ cái này không cần phải lisp đâu tại vì cad đã hỗ trợ rồi. Bạn dùng lệnh DIMSTYLE chọn dimstyle mà bạn muốn sửa chữa hoặc bạn có thể tạo dimstyle mới sau đó nhấp vào nút Modify và chọn vào thẻ Primary Units và vào tiếp mục Measurement Scale tại ô Scale factor bạn chọn giá trị cần tăng hay giảm tỉ lệ của dimstyle đó. Chúc bạn thành công

 

Mình hiểu ý bạn, nhưng bạn chưa hiểu ý mình. Nếu mình chỉnh Dimstyle thì toàn bộ Dim trong Dimstyle sẽ bị thay đổi. Nhưng mình chỉ muốn thay đổi một số Dim trong Dimstyle đó thôi. Mình không muốn tạo Dimstyle mới. Cảm ơn bạn đã quan tâm!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Tue_NV    3.841
Mình hiểu ý bạn, nhưng bạn chưa hiểu ý mình. Nếu mình chỉnh Dimstyle thì toàn bộ Dim trong Dimstyle sẽ bị thay đổi. Nhưng mình chỉ muốn thay đổi một số Dim trong Dimstyle đó thôi. Mình không muốn tạo Dimstyle mới. Cảm ơn bạn đã quan tâm!

Chào em svba. Sinh nhật vui vẻ nhé.

 

Điiều em nói trên thì chưa cần sử dụng tới Lisp. Lệnh này sẽ giúp em: DIMOVERRIDE

Command: DIMOVERRIDE (1)

Enter dimension variable name to override or [Clear overrides]: dimlfac (2)

 

Enter new value for dimension variable : 0.25 (3)

 

Enter dimension variable name to override: (4)

 

Select objects: Specify opposite corner: 208 found (5)

 

Select objects: (6)

 

(1) : gõ DIMOVERRIDE

(2) : Hàng này xác định tên biến sẽ thay đổi kích thước. ở đây mình xác định biến DimLfac sẽ thay đổi

(3) : giá trị biến sẽ thay đổi. Ở đây là số 0.25 . Kích thước thật giảm 4 lần (1/4)

(4) : Xác định tiếp tên biến sẽ thay đổi. Cón không xác định nữa thì ấn Enter. Ở đây ta ấn Enter

(5) : Quét vùng chọn DIMENSION. Các sẽ tự lọc ra đối tượng nào là DIM để cập nhật giá trị biến DIMLFAC = 0.25 cho nó

(6) : Thôi chọn đối tượng -> Enter -> Xong

 

 

Các bạn viết giùm 1 lisp như sau với:khi ta đánh dim100 thì sẽ hiện ra 1 loại dim giá trị như dim100 trong dimtyle,tương tự

dim20,dim50....Chân thành cảm ơn.

Chào bạn t031285

Bạn sử dụng code này xem nhé :

(defun c:dim100() 
(if (tblsearch "Dimstyle" "dim100")
(command "dimstyle" "R" "dim100")
(alert "Chua co Dimstyle DIM100. Moi ban tao kieu Dímtyle Dim100 tren ban ve ")
)
(command "graphscr")
(princ)
)

  • Vote tăng 3

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
t031285    1

Cảm ơn bạn,mình muốn khi đánh dim100 nó sẽ tự tạo tất cả các thông số của dim100 khi đó chỉ việc sử dụng thôi.Bạn có thể viết giùm mình được không.Thanks

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Chào conghoan1003 và Tue_NV,

Thiep cũng có một thời gian làm việc cùng với Bảm đảm An toàn Hàng Hải II, nạo vét luồng SG - Vũng Tàu từ Tân Cảng đến Ghềnh Rái, Người ta nạo vét đến cots 8.2m sai số 0.3m (mốc cao độ Mũi Nai). Còn yêu cầu của Conghoan thi vét bùn theo bề mặt địa hình tự nhiên rồi offset xuống, lại không có sai số nạo vét!

Thôi thì cũng theo yêu cầu này, Thiep xin gánh cho Tue một chút tạo ra lisp như ý muốn của CongHoan:

Cảm ơn Thiệp đã giúp đỡ!

Cái này chạy tốt lắm nhưng có một số điểm chưa được hoàn thiện lắm Thiêp cố gắn chỉnh lại cho mình tí để lisp hoàn thiện hơn.

Thứ nhất: Mình muốn các thông số như mái dốc vét, chiều sâu vét mình chỉ nhập vào đối với mặt cắt đầu tiên thôi, còn các mặt cắt sau thì lisp tự hiểu như mặt cắt đầu. Sau khi thực hiện xong mặt cắt thứ nhất thì lisp tự động thực hiện lệng cho mặt cắt tiếp theo cho đến khi bấm Esc thì kết thúc lệnh. Có nghĩa là đối với các mặt cắt sau mình chỉ cần kích 3 lần: chọn polyline, chọn điểm giới hạn bên trái, bên phải thì được. Vì mình có rất nhiều mặt cắt nên cần làm cho thật nhanh nên hy vong Thiêp sữa lại để lisp thực hiên cho nhanh.

Thứ hai: đường vét là đường offet đường tự nhiên xuống chứ không phải coppy xuống như lisp của Thiêp.

Cảm ơn thiêp đã giúp đỡ! Mong hồi âm của Thiệp!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Tue_NV    3.841
Cảm ơn bạn,mình muốn khi đánh dim100 nó sẽ tự tạo tất cả các thông số của dim100 khi đó chỉ việc sử dụng thôi.Bạn có thể viết giùm mình được không.Thanks

[Chào bạn t031285

Bạn có thể nói rõ các thông số của Dim100 bao gồm các thông số nào được thiết lập

Viết Lisp cho bạn thì Tue_NV sẽ viết được nhưng dữ liệu đầu vào bạn nói chưa rõ ràng

thông số của dim100 bao gồm thông số nào?? Nó bằng bao nhiêu?

 

Mong bạn nói rõ ý

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
t031285    1
[Chào bạn t031285

Bạn có thể nói rõ các thông số của Dim100 bao gồm các thông số nào được thiết lập

Viết Lisp cho bạn thì Tue_NV sẽ viết được nhưng dữ liệu đầu vào bạn nói chưa rõ ràng

thông số của dim100 bao gồm thông số nào?? Nó bằng bao nhiêu?

 

Mong bạn nói rõ ý

Mình gửi file đính kèm đây.Cảm ơn bạn đã quan tâm giúp đỡ.

http://www.cadviet.com/upfiles/2/dim100_1.rar

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Tue_NV    3.841
Cảm ơn Thiệp đã giúp đỡ!

Cái này chạy tốt lắm nhưng có một số điểm chưa được hoàn thiện lắm Thiêp cố gắn chỉnh lại cho mình tí để lisp hoàn thiện hơn.

Thứ nhất: Mình muốn các thông số như mái dốc vét, chiều sâu vét mình chỉ nhập vào đối với mặt cắt đầu tiên thôi, còn các mặt cắt sau thì lisp tự hiểu như mặt cắt đầu. Sau khi thực hiện xong mặt cắt thứ nhất thì lisp tự động thực hiện lệng cho mặt cắt tiếp theo cho đến khi bấm Esc thì kết thúc lệnh. Có nghĩa là đối với các mặt cắt sau mình chỉ cần kích 3 lần: chọn polyline, chọn điểm giới hạn bên trái, bên phải thì được. Vì mình có rất nhiều mặt cắt nên cần làm cho thật nhanh nên hy vong Thiêp sữa lại để lisp thực hiên cho nhanh.

Thứ hai: đường vét là đường offet đường tự nhiên xuống chứ không phải coppy xuống như lisp của Thiêp.

Cảm ơn thiêp đã giúp đỡ! Mong hồi âm của Thiệp!

Chào conghoan

Lisp này Tue_NV đã viết xong. Conghoan chạy thử xem sao :

http://www.cadviet.com/upfiles/2/vbun6.lsp

Conghoan cho ý kiến nhé

 

 

Mình gửi file đính kèm đây.Cảm ơn bạn đã quan tâm giúp đỡ.

Chào bạn t031285

file của bạn hoàn toàn không thể đọc được.

 

 

 

Thôi thì cũng theo yêu cầu này, Thiep xin gánh cho Tue một chút tạo ra lisp như ý muốn của CongHoan:

Cảm ơn Thiep rất nhiều. Nếu có thể giúp được Tue_NV thì nếu trong khả năng của bạn có thể vui lòng trả lời cho Tue_NV bài viết này không?

( - Bài viết số 20)

http://www.cadviet.com/forum/index.php?sho...amp;#entry54934

Cảm ơn Thiep

  • Vote tăng 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Khách
Chủ đề này bây giờ đã bị đóng lại để trả lời thêm.

×