Đến nội dung


Hình ảnh
* * * - - 2 Bình chọn

Viết Lisp theo yêu cầu


  • Chủ đề bị khóa Chủ đề bị khóa
2780 replies to this topic

#1881 vinhqc

vinhqc

    biết pan

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

Đã gửi 20 April 2009 - 03:31 PM

Chào mọi người!
Nhờ các bác xem giúp sao đoạn lisp này của em khi nó hông chịu kết thúc cứ phải bấm Éc thi nó mới thoát. còn không thì nó cứ sửa Text sau cùng sau mổi lần bấm enter mà không chọn điểm.


(Defun C:ct ( )
(prompt "\nChon Text mau.")
(setq DTD (car (entsel)))
(setq DT (entget DTD))
(setq NDT (cdr (assoc 1 DT)))

(Prompt "\nChon cac doi tuong chep theo...")
(Setq CDT (Ssget))

(setq a (getpoint "\nChon diem lam chuan: "))
(setq xa (car a))
(setq ya (cadr a))

(while
(luuos)
(setvar "osmode" 0)

(setq b (getpoint "\nChon diem dat moi: "))
(setq xb (car :cheers:)
(setq yb (cadr :))
(command "copy" CDT "" (list xa ya) (list xb yb))
(command "copy" DTD "" (list xa ya) (list xb yb))
(setq DTDM (entlast))

(if (and (>= (ascii NDT) 48) (<= (ascii NDT) 57))
(setq NDT (itoa (+ (atoi NDT) 1)))
(setq NDT (chr (+ (ascii NDT) 1)))
)

(setq Elist (entget DTDM))
(setq Oldlist (assoc 1 Elist))
(setq Oldtext (cdr Oldlist))
(setq Oldtext (strcase Oldtext nil))
(setq Newlist (cons '1 NDT))
(setq Elist (subst Newlist Oldlist Elist))
(entmod Elist)

(traos)
)

(Princ)
)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun luuos ()
(setq
DUY_OSMODE (getvar "OSMODE")
DUY_AUTOSNAP (getvar "AUTOSNAP")
DUY_LAYERHH (getvar "CLAYER")
DUY_THANGXEOHH (getvar "ORTHO")
DUY_filletrad (getvar "FILLETRAD")
DUY_TEXTSTYLE (getvar "TEXTSTYLE")
)
)
(defun traos ()
(if DUY_OSMODE
(setvar "OSMODE" DUY_OSMODE)
)
(if DUY_LAYERHH
(setvar "CLAYER" DUY_LAYERHH)
)
(if DUY_THANGXEOHH
(setvar "ORTHO" DUY_THANGXEOHH)
)
(if DUY_AUTOSNAP
(setvar "AUTOSNAP" DUY_AUTOSNAP)
)
(if DUY_filletrad
(setvar "FILLETRAD" DUY_filletrad)
)
(if DUY_TEXTSTYLE
(setvar "TEXTSTYLE" DUY_TEXTSTYLE)
)


)


  • 0

#1882 vinhqc

vinhqc

    biết pan

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

Đã gửi 20 April 2009 - 03:36 PM

Chào mọi người!
Nhờ các bác xem giúp sao đoạn lisp này của em khi nó hông chịu kết thúc cứ phải bấm Éc thi nó mới thoát. còn không thì nó cứ sửa Text sau cùng sau mổi lần bấm enter mà không chọn điểm.


(Defun C:ct ( )
(prompt "\nChon Text mau.")
(setq DTD (car (entsel)))
(setq DT (entget DTD))
(setq NDT (cdr (assoc 1 DT)))

(Prompt "\nChon cac doi tuong chep theo...")
(Setq CDT (Ssget))

(setq a (getpoint "\nChon diem lam chuan: "))
(setq xa (car a))
(setq ya (cadr a))

(while
(luuos)
(setvar "osmode" 0)

(setq b (getpoint "\nChon diem dat moi: "))
(setq xb (car :cheers:)
(setq yb (cadr :))
(command "copy" CDT "" (list xa ya) (list xb yb))
(command "copy" DTD "" (list xa ya) (list xb yb))
(setq DTDM (entlast))

(if (and (>= (ascii NDT) 48) (<= (ascii NDT) 57))
(setq NDT (itoa (+ (atoi NDT) 1)))
(setq NDT (chr (+ (ascii NDT) 1)))
)

(setq Elist (entget DTDM))
(setq Oldlist (assoc 1 Elist))
(setq Oldtext (cdr Oldlist))
(setq Oldtext (strcase Oldtext nil))
(setq Newlist (cons '1 NDT))
(setq Elist (subst Newlist Oldlist Elist))
(entmod Elist)

(traos)
)

(Princ)
)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun luuos ()
(setq
DUY_OSMODE (getvar "OSMODE")
DUY_AUTOSNAP (getvar "AUTOSNAP")
DUY_LAYERHH (getvar "CLAYER")
DUY_THANGXEOHH (getvar "ORTHO")
DUY_filletrad (getvar "FILLETRAD")
DUY_TEXTSTYLE (getvar "TEXTSTYLE")
)
)
(defun traos ()
(if DUY_OSMODE
(setvar "OSMODE" DUY_OSMODE)
)
(if DUY_LAYERHH
(setvar "CLAYER" DUY_LAYERHH)
)
(if DUY_THANGXEOHH
(setvar "ORTHO" DUY_THANGXEOHH)
)
(if DUY_AUTOSNAP
(setvar "AUTOSNAP" DUY_AUTOSNAP)
)
(if DUY_filletrad
(setvar "FILLETRAD" DUY_filletrad)
)
(if DUY_TEXTSTYLE
(setvar "TEXTSTYLE" DUY_TEXTSTYLE)
)


)


  • 0

#1883 vinhqc

vinhqc

    biết pan

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

Đã gửi 20 April 2009 - 03:40 PM

Chào mọi người!
Nhờ các bác xem giúp sao đoạn lisp này của em khi nó hông chịu kết thúc cứ phải bấm Éc thi nó mới thoát. còn không thì nó cứ sửa Text sau cùng sau mổi lần bấm enter mà không chọn điểm.


(Defun C:ct ( )
(prompt "\nChon Text mau.")
(setq DTD (car (entsel)))
(setq DT (entget DTD))
(setq NDT (cdr (assoc 1 DT)))

(Prompt "\nChon cac doi tuong chep theo...")
(Setq CDT (Ssget))

(setq a (getpoint "\nChon diem lam chuan: "))
(setq xa (car a))
(setq ya (cadr a))

(while
(luuos)
(setvar "osmode" 0)

(setq b (getpoint "\nChon diem dat moi: "))
(setq xb (car :cheers:)
(setq yb (cadr :))
(command "copy" CDT "" (list xa ya) (list xb yb))
(command "copy" DTD "" (list xa ya) (list xb yb))
(setq DTDM (entlast))

(if (and (>= (ascii NDT) 48) (<= (ascii NDT) 57))
(setq NDT (itoa (+ (atoi NDT) 1)))
(setq NDT (chr (+ (ascii NDT) 1)))
)

(setq Elist (entget DTDM))
(setq Oldlist (assoc 1 Elist))
(setq Oldtext (cdr Oldlist))
(setq Oldtext (strcase Oldtext nil))
(setq Newlist (cons '1 NDT))
(setq Elist (subst Newlist Oldlist Elist))
(entmod Elist)

(traos)
)

(Princ)
)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun luuos ()
(setq
DUY_OSMODE (getvar "OSMODE")
DUY_AUTOSNAP (getvar "AUTOSNAP")
DUY_LAYERHH (getvar "CLAYER")
DUY_THANGXEOHH (getvar "ORTHO")
DUY_filletrad (getvar "FILLETRAD")
DUY_TEXTSTYLE (getvar "TEXTSTYLE")
)
)
(defun traos ()
(if DUY_OSMODE
(setvar "OSMODE" DUY_OSMODE)
)
(if DUY_LAYERHH
(setvar "CLAYER" DUY_LAYERHH)
)
(if DUY_THANGXEOHH
(setvar "ORTHO" DUY_THANGXEOHH)
)
(if DUY_AUTOSNAP
(setvar "AUTOSNAP" DUY_AUTOSNAP)
)
(if DUY_filletrad
(setvar "FILLETRAD" DUY_filletrad)
)
(if DUY_TEXTSTYLE
(setvar "TEXTSTYLE" DUY_TEXTSTYLE)
)


)


  • 0

#1884 vinhqc

vinhqc

    biết pan

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

Đã gửi 20 April 2009 - 03:46 PM

Xin lổi vì mình mới tham gia diễn đàn nên chưa biết cách chọn trả lời. Nên tin vừa rồi gửi đi không có nội dung gì hết!Sorry!
Đoạn lisp của bạn Duy chỉ cần chuyển vị trí của dòng lệnh : (setq b (getpoint "\nChon diem dat moi: ")) lên ngay sau vòng lặp (While như trích đoạn sau là được.

(while
(setq b (getpoint "\nChon diem dat moi: "))
(luuos)
(setvar "osmode" 0)
(setq xb (car :cheers:)
(setq yb (cadr :))
  • 1

#1885 binharch77

binharch77

    biết dimcontinue

  • Members
  • PipPipPipPipPip
  • 372 Bài viết
Điểm đánh giá: 163 (tàm tạm)

Đã gửi 20 April 2009 - 03:54 PM

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

Hình đã gửi
có đồng chí nào giúp mình được cái này không :
mình muốn tạo một cái lisp sao cho khi quét các đối tượng line, nếu 2 line vuông góc nhau thì insert block A như hình vẽ (đương nhiên trục block sẽ theo 2 trục của line tạo ra, nếu có 2 line vuông góc nhưng dư ra thì insert block B như hình vẽ.

cám ơn các bác nhiều.
mình nghĩ cái này hơn khó đấy.
  • 0

#1886 conghoan1003

conghoan1003

    biết vẽ point

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

Đã gửi 21 April 2009 - 02:52 PM

Ai có cái lisp ghi độ dốc dọc của một đoạn thẳng cho mình xin với. mình muốn tính độ dốc dọc của mặt đường cũ, mà nó nhiều mặt cắt quá mỗi lần tính lại phải đo chiều dài rồi nhân chia ra khổ quá. Ai biết chỉ mình với.
Thank!
  • 0
Học học nữa học mãi.
Đúp học lại!

#1887 conghoan1003

conghoan1003

    biết vẽ point

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

Đã gửi 21 April 2009 - 03:02 PM

Em cũng đang cần 1 lips tính diện tích giới hạn bởi các layer nữa ! các giúp em cả hai lips trên suất ra text luôn với nhé! chắc em phải học cách viết lips thôi!

Cái bạn cần đang dùng OK lắm, bạn dùng thử xem. Dùng lệnh "AR" hoặc "AR2" để tính nghe!

(defun DXF (code elist)
(cdr (assoc code elist))
);dxf

(defun c:AR(/ dtl dtcon pt1 pt2 ss et oslast vsize)
(if (= tl nil) (progn
(setq tl (getreal "\nDrawing scale : "))
; (setq ntl (/ 1000 tl))
; (setq tl2 (* ntl ntl))
)
)
(setq dtl 0)
(setq ss (ssadd))
(setq oslast (getvar "OSMODE"))
(command "osnap" "")
(setq ntl (/ 1000 tl))
(setq tl2 (* ntl ntl))

(print)
(print)
(setq pt1 (getpoint "\nPick internal point : "))
(while (/= pt1 nil)
(command "-boundary" pt1 "")
(setq et (entlast))
(ssadd et ss)
(command "area" "e" "last")
(setq vsize ( /(getvar "VIEWSIZE") 5))
(command "hatch" "SOLID" vsize "0" "l" "")
(setq et (entlast))
(ssadd et ss)
(setq dtcon (/ (getvar "AREA") tl2))
(setq dtl (+ dtcon dtl))
(prompt (strcat "\nComponent area : " (rtos dtcon 2 4)))
(print)
(print)
(setq pt1 (getpoint "\nPick internal point : "))
)
(command "setvar" "OSMODE" oslast)
(command "erase" ss "")
(setq ss nil)
(command "redraw")
; (setq dtl (/ (/ dtl tl2) 2))
; (setq dtl (/ dtl 2))
(print)
(prompt (strcat "\nTotal area : " (rtos dtl 2 4)))
(print)
(setq pt2 (getpoint "\nPoint to write: "))
(if (/= 0 (DXF 40 (tblsearch "STYLE" (getvar "TEXTSTYLE"))))
(command "text" pt2 "0" (rtos dtl 2 2))
(command "text" pt2 "2" "0" (rtos dtl 2 2))
);if
(princ)
);defun AR
;------------------------------------------------------------------------
(defun c:AR2(/ dtl dtcon pt1 pt2 ss et oslast vsize)
(if (= tl nil) (progn
(setq tl (getreal "\nDrawing scale : "))
; (setq ntl (/ 1000 tl))
; (setq tl2 (* ntl ntl))
)
)
(setq dtl 0)
(setq ss (ssadd))
(setq oslast (getvar "OSMODE"))
(command "osnap" "")
(setq ntl (/ 1000 tl))
(setq tl2 (* ntl ntl))

(print)
(print)
(setq pt1 (getpoint "\nPick internal point : "))
(while (/= pt1 nil)
(command "-boundary" pt1 "")
(setq et (entlast))
(ssadd et ss)
(command "area" "e" "last")
(setq vsize ( /(getvar "VIEWSIZE") 5))
(command "hatch" "ANSI31" vsize "0" "last" "")
(setq et (entlast))
(ssadd et ss)
(setq dtcon (/ (getvar "AREA") tl2))
(setq dtl (+ dtcon dtl))
(prompt (strcat "\nComponent area : " (rtos dtcon 2 4)))
(print)
(print)
(setq pt1 (getpoint "\nPick internal point : "))
)
(command "setvar" "OSMODE" oslast)
(command "erase" ss "")
(setq ss nil)
(command "redraw")
; (setq dtl (/ (/ dtl tl2) 2))
(setq dtl (/ dtl 2))
(print)
(prompt (strcat "\nHaft total area : " (rtos dtl 2 4)))
(print)
(setq pt2 (getpoint "\nPoint to write: "))
(if (/= 0 (DXF 40 (tblsearch "STYLE" (getvar "TEXTSTYLE"))))
(command "text" pt2 "0" (rtos dtl 2 2))
(command "text" pt2 "2" "0" (rtos dtl 2 2))
);if
(princ)
);defun AR2
;-------------------------------------------------------------------------------
(defun C:vd()
(print)
(print)
(print)
(setq last (getvar "OSMODE"))
(command "setvar" "OSMODE" "33")
(command "setvar" "DIMZIN" 0 )

(if (= tl nil) (setq tl (getreal "Ty le ban ve : ")))

(setq PT1 (getpoint "Diem 1 : "))
; (setq PT2 (getpoint "Diem 2 : "))
; (setq dist1 (distance pt1 pt2))
; (setq ntl (/ 1000 tl))
; (setq dist (/ dist1 ntl))
(setq sum 0)

(while (/= pt1 nil)
(setq PT2 (getpoint "Diem 2 : "))
(print)
(setq dist1 (distance pt1 pt2))
(setq ntl (/ 1000 tl))
(setq dist (/ dist1 ntl))
(prompt (strcat "\n Chieu dai doan vua do la " (rtos dist 2 4)))
(print)
(setq sum (+ sum dist))
(setq PT1 (getpoint "Diem 1 : "))
);while

(prompt (strcat "\n Tong chieu dai la " (rtos sum 2 4)))
(print)
(command "setvar" "OSMODE" "64")
(setq pt3 (getpoint "Viet vao cho nao ? : "))
;(setq x (+ (car pt3) 2))
;(setq pt3 (list x (cadr pt3)))
(setq sum2 (/ sum 2))

(command "text" "S" "2" pt3 "0" (rtos sum2 2 2))

(command "setvar" "OSMODE" last)
(princ)
)

(prompt "\n Start with AR to calculate area by pick points method")
(prompt "\n Start with AR2 to calculate haft area by pick points method")
(prompt "\n Danh VD de tinh tong chieu dai ")
(prompt "\n This version is used for Nguyen Cong Hoan-Cienco 625 only - 25/05/2007")
(princ)
  • 0
Học học nữa học mãi.
Đúp học lại!

#1888 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 21 April 2009 - 03:19 PM

Ai có cái lisp ghi độ dốc dọc của một đoạn thẳng cho mình xin với. mình muốn tính độ dốc dọc của mặt đường cũ, mà nó nhiều mặt cắt quá mỗi lần tính lại phải đo chiều dài rồi nhân chia ra khổ quá. Ai biết chỉ mình với.
Thank!

Bạn hãy đọc bài viết này : Lisp ghi độ dốc của một đoạn thẳng :http://www.cadviet.c...o...205&st=1680
Nếu có gì chưa được hãy post bài lên đây nhé.

To "mr duong" : Lỗi này cũng do bạn mà ra cả thôi. Tại sao bạn không nói rõ là bạn có n đường curve và bạn cần kiểm tra điểm bắt dính của Middle Center của Text trên n đường Curve đó. Hình vẽ bạn post bài lên đầu tiên chỉ có 1 curve và yêu cầu kiểm tra điểm bắt dính của Middle Center của Text trên 1 đường Curve đó. Tue_NV đang cố gắng hoàn thiện đoạn Code nhưng chưa thành công. Các bác có gợi ý thêm gì xin góp ý thêm để Tue_NV hoàn thiện đoạn Code : http://www.cadviet.c...o...205&st=1860
  • 0

#1889 binharch77

binharch77

    biết dimcontinue

  • Members
  • PipPipPipPipPip
  • 372 Bài viết
Điểm đánh giá: 163 (tàm tạm)

Đã gửi 21 April 2009 - 03:23 PM

Hình đã gửi
có đồng chí nào giúp mình được cái này không :
mình muốn tạo một cái lisp sao cho khi quét các đối tượng line, nếu 2 line vuông góc nhau thì insert block A như hình vẽ (đương nhiên trục block sẽ theo 2 trục của line tạo ra, nếu có 2 line vuông góc nhưng dư ra thì insert block B như hình vẽ.

cám ơn các bác nhiều.
mình nghĩ cái này hơn khó đấy.

HELP ME

có ai giúp được mình không vậy??? :cheers:
  • 0

#1890 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

  • Moderator
  • PipPipPipPipPipPipPip
  • 6009 Bài viết
Điểm đánh giá: 3113 (tuyệt vời)

Đã gửi 21 April 2009 - 07:42 PM

HELP ME

có ai giúp được mình không vậy??? :cheers:

Chào bạn Binharch77,
Như bạn biết, bài toán bạn đặt ra khá phức tạp vì có khá nhiều phương án chọn lựa phải cân nhắc. Hoàn toàn không phải chỉ đơn giản như hình bạn post. Ví dụ khi hai đường thẳng vuông góc với nhau nhưng lại bị xoay đi một góc, hoặc khi hai đường giao nhau tạo thành nút chữ thập chứ không phải chữ T, hoặc hai đường vuông góc nhưng lại không cắt nhau, .....
Do vậy để xử lý được hết các tình huống cần có thời gian phân tích chứ không thể nhanh như bạn muốn được. Hiện tại mình cũng đang thử xem sao nhưng mới chỉ được trong vài trường hợp đơn giản, còn phải kiểm tra lại chứ chưa thể trả lời bạn được. Rất mong bạn bình tĩnh, để mình cố xem sao.
Hy vọng sớm giải quyết được yêu cầu của bạn.
Chúc bạn vui.
  • 1
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#1891 binharch77

binharch77

    biết dimcontinue

  • Members
  • PipPipPipPipPip
  • 372 Bài viết
Điểm đánh giá: 163 (tàm tạm)

Đã gửi 21 April 2009 - 08:38 PM

Chào bạn Binharch77,
Như bạn biết, bài toán bạn đặt ra khá phức tạp vì có khá nhiều phương án chọn lựa phải cân nhắc. Hoàn toàn không phải chỉ đơn giản như hình bạn post. Ví dụ khi hai đường thẳng vuông góc với nhau nhưng lại bị xoay đi một góc, hoặc khi hai đường giao nhau tạo thành nút chữ thập chứ không phải chữ T, hoặc hai đường vuông góc nhưng lại không cắt nhau, .....
Do vậy để xử lý được hết các tình huống cần có thời gian phân tích chứ không thể nhanh như bạn muốn được. Hiện tại mình cũng đang thử xem sao nhưng mới chỉ được trong vài trường hợp đơn giản, còn phải kiểm tra lại chứ chưa thể trả lời bạn được. Rất mong bạn bình tĩnh, để mình cố xem sao.
Hy vọng sớm giải quyết được yêu cầu của bạn.
Chúc bạn vui.

chào bạn, không phải mình cần gấp đâu... hihi, mình cũng đang nghiên cứu lisp,nhưng đến khúc này sao nó vật vã quá. vấn đề được đặt ra để giải quyết một trong những bài toán mà dân xây dựng rất và thường gặp phải.

nhưng cảm ơn bạn nhiều vì đã xem vấn đề này.
xong, mình sẽ post cho cadviet 1giải pháp cực kỳ hữu ích cho dân xây dựng mình.
cụng ly nào :cheers:
  • 0

#1892 tdvn

tdvn

    biết lệnh rotate

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

Đã gửi 21 April 2009 - 11:52 PM

chào bạn, không phải mình cần gấp đâu... hihi, mình cũng đang nghiên cứu lisp,nhưng đến khúc này sao nó vật vã quá. vấn đề được đặt ra để giải quyết một trong những bài toán mà dân xây dựng rất và thường gặp phải.

nhưng cảm ơn bạn nhiều vì đã xem vấn đề này.
xong, mình sẽ post cho cadviet 1giải pháp cực kỳ hữu ích cho dân xây dựng mình.
cụng ly nào :cheers:

Bạn binharch77 ơi, bạn nói mình thấy khó hiểu quá. Lúc thì bạn nói "nhưng đến khúc này sao nó vật vã", sau đó lại "post cho cadviet 1giải pháp cực kỳ hữu ích". Có nghĩa là bạn đã giải xong bài toán này rồi và muốn post cho anh em xem hay bạn nói đến vấn đề khác. Nếu bạn chưa giải quyết xong thì bạn nên post file lên, vì hình ảnh của bạn đưa lên nhiều nét bị khuất. Thêm nữa, bạn nên đưa ra tất cả những tình huống có thể có để bạn Phamthanhbinh không phải lúng lúng vì không biết sẽ có bao nhiêu tình huống. Và bạn cũng nên nói sơ qua công việc mình làm dẫn đến dùng cái lisp này, và file của bạn lớn cỡ nào, có khoảng bao nhiêu line tham gia. Nếu biết sơ qua về độ lớn dữ liệu, người lập trình dễ chọn nên dùng mô hình nào để lưu trữ dữ liệu ...
  • 1

#1893 tdvn

tdvn

    biết lệnh rotate

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

Đã gửi 22 April 2009 - 12:11 AM

Bạn hãy đọc bài viết này : Lisp ghi độ dốc của một đoạn thẳng :http://www.cadviet.c...o...205&st=1680
Nếu có gì chưa được hãy post bài lên đây nhé.

To "mr duong" : Lỗi này cũng do bạn mà ra cả thôi. Tại sao bạn không nói rõ là bạn có n đường curve và bạn cần kiểm tra điểm bắt dính của Middle Center của Text trên n đường Curve đó. Hình vẽ bạn post bài lên đầu tiên chỉ có 1 curve và yêu cầu kiểm tra điểm bắt dính của Middle Center của Text trên 1 đường Curve đó. Tue_NV đang cố gắng hoàn thiện đoạn Code nhưng chưa thành công. Các bác có gợi ý thêm gì xin góp ý thêm để Tue_NV hoàn thiện đoạn Code : http://www.cadviet.c...o...205&st=1860

Mình nghĩ bạn nên dùng (ssget "c" p1 p2 '((0 . "LINE,SPLINE ....",
Với p1, p2 đc tính từ Middle Center của Text về 2 phía, mỗi phía 0.2; Nếu không có đối tượng nào thì đánh dấu lỗi, nếu có đối tượng thì có thể kiểm tra khoảng cách (hoặc không) rồi đưa ra kết luận.
Mình nghĩ bạn "mr duong" nên post một file thật phức tạp để làm ví dụ.
  • 1

#1894 LXD

LXD

    biết vẽ pline

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

Đã gửi 22 April 2009 - 09:01 AM

Cho Em xin lỗi.

Em có việc ngoài List mà lại nói ở đây. Nhưng đây là nơi Em hay đọc nhất, nên tiện thể luôn.

Em vừa có bài bên "Góc tuyển dụng", Bác nào quan tâm mời ghé qua đọc.

Thanks các Pro./.
  • 0

#1895 binharch77

binharch77

    biết dimcontinue

  • Members
  • PipPipPipPipPip
  • 372 Bài viết
Điểm đánh giá: 163 (tàm tạm)

Đã gửi 22 April 2009 - 11:01 AM

Bạn binharch77 ơi, bạn nói mình thấy khó hiểu quá. Lúc thì bạn nói "nhưng đến khúc này sao nó vật vã", sau đó lại "post cho cadviet 1giải pháp cực kỳ hữu ích". Có nghĩa là bạn đã giải xong bài toán này rồi và muốn post cho anh em xem hay bạn nói đến vấn đề khác. Nếu bạn chưa giải quyết xong thì bạn nên post file lên, vì hình ảnh của bạn đưa lên nhiều nét bị khuất. Thêm nữa, bạn nên đưa ra tất cả những tình huống có thể có để bạn Phamthanhbinh không phải lúng lúng vì không biết sẽ có bao nhiêu tình huống. Và bạn cũng nên nói sơ qua công việc mình làm dẫn đến dùng cái lisp này, và file của bạn lớn cỡ nào, có khoảng bao nhiêu line tham gia. Nếu biết sơ qua về độ lớn dữ liệu, người lập trình dễ chọn nên dùng mô hình nào để lưu trữ dữ liệu ...

giải pháp hay + chưa giải quyết được thuật toán = pó tay
  • 0

#1896 lelenlau2

lelenlau2

    biết pan

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

Đã gửi 23 April 2009 - 10:33 AM

Xin chào các Bác trên diễn đàn. Em thì không hiểu gì về lisp lắm, nhưng lisp làm việc rất hiệu quả. Em đã lên diễn đàn nhièu lần và thu thập cho mình được nhiều lisp rất hay trên diễn đàn cadviẹt này.
Hôm nay Em lên diễn đàn này là để hỏi về lisp:
Em muốn có một lisp có thể tự động nội suy cao độ trong nova14, trong nova14 có thể nội suy được cao độ bằng lệnh CDTN nhưng nội suy một cách thủ công lâu quá.
Ý của Em là cần có một lisp tự động nội suy được trong nova14 theo ý mình muốn. Ví dụ: Nội suy tại tâm đường tròn, còn các đường tròn này là do mình tạo ra trên nova.
Mong các Bác bàn luận về vấn đề này và giúp Em viết lisp này với. Em xin chân thành cám ơn!
Phai Nova của Em như sau:
http://www.cadviet.c..._04_2009bak.rar
  • 0

#1897 lelenlau2

lelenlau2

    biết pan

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

Đã gửi 23 April 2009 - 10:38 AM

[quote name='lelenlau2' date='Apr 23 2009, 10:33' post='56966']
Xin chào các Bác trên diễn đàn. Em thì không hiểu gì về lisp lắm, nhưng lisp làm việc rất hiệu quả. Em đã lên diễn đàn nhièu lần và thu thập cho mình được nhiều lisp rất hay trên diễn đàn cadviẹt này.
Hôm nay Em lên diễn đàn này là để hỏi về lisp:
Em muốn có một lisp có thể tự động nội suy cao độ trong nova14, trong nova14 có thể nội suy được cao độ bằng lệnh CDTN nhưng nội suy một cách thủ công lâu quá.
Ý của Em là cần có một lisp tự động nội suy được trong nova14 theo ý mình muốn. Ví dụ: Nội suy tại tâm đường tròn, còn các đường tròn này là do mình tạo ra trên nova.
Mong các Bác bàn luận về vấn đề này và giúp Em viết lisp này với. Em xin chân thành cám ơn!
Phai Nova của Em như sau:
http://www.cadviet.c...4_2009bak_1.rar
ANH EM TRÊN DIÊN ĐÀN BÀN LUẬN VỀ VẤN ĐỀ NÀY VIẾT GIÙM EM CÁI LISP NHA!
  • 0

#1898 nataca

nataca

    biết lệnh adcenter

  • Members
  • PipPipPipPipPipPipPip
  • 712 Bài viết
Điểm đánh giá: 553 (tốt)

Đã gửi 23 April 2009 - 11:09 AM

Xin chào các Bác trên diễn đàn. Em thì không hiểu gì về lisp lắm, nhưng lisp làm việc rất hiệu quả. Em đã lên diễn đàn nhièu lần và thu thập cho mình được nhiều lisp rất hay trên diễn đàn cadviẹt này.
Hôm nay Em lên diễn đàn này là để hỏi về lisp:
Em muốn có một lisp có thể tự động nội suy cao độ trong nova14, trong nova14 có thể nội suy được cao độ bằng lệnh CDTN nhưng nội suy một cách thủ công lâu quá.
Ý của Em là cần có một lisp tự động nội suy được trong nova14 theo ý mình muốn. Ví dụ: Nội suy tại tâm đường tròn, còn các đường tròn này là do mình tạo ra trên nova.
Mong các Bác bàn luận về vấn đề này và giúp Em viết lisp này với. Em xin chân thành cám ơn!
Phai Nova của Em như sau:
http://www.cadviet.c...4_2009bak_1.rar
ANH EM TRÊN DIÊN ĐÀN BÀN LUẬN VỀ VẤN ĐỀ NÀY VIẾT GIÙM EM CÁI LISP NHA!

Theo mình thì không làm được. Bản thân nội suy cao độ trong Nova nó chỉ hiện kết quả ở dòng command. Nếu bạn muốn nội suy thì phải tự nội suy bằng lisp riêng thôi. Trên diễn đàn đã có lisp này. Bạn tìm kiếm xem.
  • 0

#1899 lelenlau2

lelenlau2

    biết pan

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

Đã gửi 23 April 2009 - 02:25 PM

Đã có lisp nội suy cao độ rồi hả Bác? Em không biết nó có chính xác như nova không nữa và như Em muốn nó nội suy đúng tâm đường tròn được không? Và nó có tự động nội suy hay mình phải kích từng điểm?
  • 0

#1900 lelenlau2

lelenlau2

    biết pan

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

Đã gửi 23 April 2009 - 02:29 PM

Các Bác xem vấn đề Em đặt ra thử có làm được không? viết giúp Em cái lisp với vì với một mạng lưới đường ống thật to thì phải nội suy từng điểm thật sự là một cực hình các Bác à! :cheers:
Các Bác hãy bàn luận thử xem có làm được không? Em đang chờ và theo dõi từng ngày trên diễn đàn để xem bàn luận của mọi người đấy.
cám ơn các bác.
  • 0