Đến nội dung


Hình ảnh

Nối thành polyline


  • Please log in to reply
21 replies to this topic

#1 nguyenhangngaxd

nguyenhangngaxd

    biết zoom

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

Đã gửi 03 March 2014 - 09:55 PM

Em chào các anh chị ạ,

 

Em mới dùng Cad3D nên chưa có kinh nghiệm gì. Em có 1 liste tọa độ (X,Y,Z) trong Excel và em muốn:

 

Bước 1: Chuyển đống tọa độ thành 1 đường polyline trong Cad3D và em muốn kết quả là 1 đường trơn. Tạm gọi là Polyline 1

Bước 2: offset đường Polyline 2 lên theo trục Z khoảng 2m

Bước 3: Vẽ 1 đường ống mà trục là đường Polyline 2

 

Em dùng lisp của diễn đàn và đưa vào được thành 1 đường nhưng nó k phải là đường trơn. Em dùng nn.lisp nối nhưng không được. Dùng cả lệnh Pe cũng không dc luôn :P  Do vậy k làm được tiếp bước 2 và 3.

 

Anh chị nào có kinh nghiệm trong vụ này chỉ em với ạ :D

Em cảm ơn trước ạ!

 


  • 0

#2 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 03 March 2014 - 10:28 PM

Em chào các anh chị ạ,

 

Em mới dùng Cad3D nên chưa có kinh nghiệm gì. Em có 1 liste tọa độ (X,Y,Z) trong Excel và em muốn:

 

Bước 1: Chuyển đống tọa độ thành 1 đường polyline trong Cad3D và em muốn kết quả là 1 đường trơn. Tạm gọi là Polyline 1

Bước 2: offset đường Polyline 2 lên theo trục Z khoảng 2m

Bước 3: Vẽ 1 đường ống mà trục là đường Polyline 2

 

Em dùng lisp của diễn đàn và đưa vào được thành 1 đường nhưng nó k phải là đường trơn. Em dùng nn.lisp nối nhưng không được. Dùng cả lệnh Pe cũng không dc luôn :P  Do vậy k làm được tiếp bước 2 và 3.

 

Anh chị nào có kinh nghiệm trong vụ này chỉ em với ạ :D

Em cảm ơn trước ạ!

Hề hề hề,

Bạn dùng lisp nào thì post cái lisp đó lên, đồng thới post cả cái file bản vẽ mà bạn đã làm ra lên để mọi người có thể khám bệnh chứ. Cái kiểu khám bệnh "qua loa" này thì dễ vào nhà ...... đá lắm.....


  • 0
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#3 nguyenhangngaxd

nguyenhangngaxd

    biết zoom

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

Đã gửi 04 March 2014 - 08:47 PM

File Cad mình đây nhé ^^

 

http://www.cadviet.c...eologique_1.dwg

 

Còn đây là lisp nối:

 

(defun c:nn (/ tdt ssdt sodt index)

(defun ObjName (ssdt /)

(cdr (assoc '0 (entget ssdt)))

)

(defun MoPL (ssdt /)

(= (cdr (assoc '70 (entget ssdt))) 0)

)

(defun NoiPL (ssdt /)

(if            (MoPL ssdt)

(command ".PEDIT" ssdt "J" "All" "" "X")

)

)

(defun NoiLC (ssdt /)

(command ".PEDIT" ssdt "Y" "J" "All" "" "X")

)

(setq

tdt          (ssget)

sodt (sslength tdt)

index 0

)

(repeat sodt

(setq

ssdt (ssname tdt index)

index (1+ index)

)

(if            (or (= (Objname ssdt) "LWPOLYLINE")

(= (Objname ssdt) "POLYLINE")

)

(NoiPL ssdt)

)

(if            (or (= (Objname ssdt) "LINE") (= (Objname ssdt) "ARC"))

(NoiLC ssdt)

)

)

(princ)

)

 

Giúp mình với nha! Cái này cực quan trọng :))


  • 0

#4 Hoan1111

Hoan1111

    biết lệnh adcenter

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

Đã gửi 04 March 2014 - 09:58 PM

Em chào các anh chị ạ,

 

Em mới dùng Cad3D nên chưa có kinh nghiệm gì. Em có 1 liste tọa độ (X,Y,Z) trong Excel và em muốn:

 

Bước 1: Chuyển đống tọa độ thành 1 đường polyline trong Cad3D và em muốn kết quả là 1 đường trơn. Tạm gọi là Polyline 1

Bước 2: offset đường Polyline 2 lên theo trục Z khoảng 2m

Bước 3: Vẽ 1 đường ống mà trục là đường Polyline 2

 

Em dùng lisp của diễn đàn và đưa vào được thành 1 đường nhưng nó k phải là đường trơn. Em dùng nn.lisp nối nhưng không được. Dùng cả lệnh Pe cũng không dc luôn :P  Do vậy k làm được tiếp bước 2 và 3.

 

Anh chị nào có kinh nghiệm trong vụ này chỉ em với ạ :D

Em cảm ơn trước ạ!

 

 Bước 2 và 3 đơn giản , chỉ có bước 1 là củ chuối, anh thử làm theo cách sau xem sao???

 

Ý kiến của Hoằn là AutoCAD đã giải quyết được, không nên dùng lisp, dành thời gian cho việc khác, cần thiết hơn!

Cách chuyển Spline sang Polyline mà vẫn cong trơn như Spline làm theo hai bước sau:

114276_321777_1.png


  • 0

66 Câu Phật Học Cho Cuộc Sống : http://ngocchinh.com...-cho-cuoc-song/

Gió đưa cây cải về trời / Rau răm ở lại chịu lời đắng cay...

 

 


#5 nguyenhangngaxd

nguyenhangngaxd

    biết zoom

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

Đã gửi 04 March 2014 - 10:38 PM

 Bước 2 và 3 đơn giản , chỉ có bước 1 là củ chuối, anh thử làm theo cách sau xem sao???

Bạn Hoằn ơi cám ơn bạn nhé!

Nhưng í tớ là tớ có nhiều đường line nối nhau liên tiếp. Tớ muốn biến nó thành 1 đường trơn thôi. Vì để nhiều đường như cũ (1100 đường nối với nhau) thì offset đến gãy tay chưa xong :( (bạn xem cái file cad tớ đính ở trên đó) 


  • 0

#6 Hoan1111

Hoan1111

    biết lệnh adcenter

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

Đã gửi 04 March 2014 - 11:30 PM

Giả sử có 2 000 000  (hai triệu) đường nối với nhau chỉ cần dùng lệnh copy >> cóp 1 phát là được
1/Sao anh bảo là: "Em dùng lisp của diễn đàn và đưa vào được thành 1 đường nhưng nó k phải là đường trơn. "???

 

Đang chạy thử cái lisp nối nn  anh gửi lên, nó đang chạy lâu quá, hết đêm nay không biết có xong không????

Bó tay rồi, em lên chuồng đây! :) :) :)


  • 0

66 Câu Phật Học Cho Cuộc Sống : http://ngocchinh.com...-cho-cuoc-song/

Gió đưa cây cải về trời / Rau răm ở lại chịu lời đắng cay...

 

 


#7 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 05 March 2014 - 09:07 AM

File Cad mình đây nhé ^^

 

http://www.cadviet.c...eologique_1.dwg

 

Còn đây là lisp nối:

 

(defun c:nn (/ tdt ssdt sodt index)

(defun ObjName (ssdt /)

(cdr (assoc '0 (entget ssdt)))

)

(defun MoPL (ssdt /)

(= (cdr (assoc '70 (entget ssdt))) 0)

)

(defun NoiPL (ssdt /)

(if            (MoPL ssdt)

(command ".PEDIT" ssdt "J" "All" "" "X")

)

)

(defun NoiLC (ssdt /)

(command ".PEDIT" ssdt "Y" "J" "All" "" "X")

)

(setq

tdt          (ssget)

sodt (sslength tdt)

index 0

)

(repeat sodt

(setq

ssdt (ssname tdt index)

index (1+ index)

)

(if            (or (= (Objname ssdt) "LWPOLYLINE")

(= (Objname ssdt) "POLYLINE")

)

(NoiPL ssdt)

)

(if            (or (= (Objname ssdt) "LINE") (= (Objname ssdt) "ARC"))

(NoiLC ssdt)

)

)

(princ)

)

 

Giúp mình với nha! Cái này cực quan trọng :))

Hề hề hề,

Lisp nn dùng để nối các đường 2D polyline, trong khi các đường trên bản vẽ của bạn là các 3D line nên việc nối không thể đơn giản như vầy được.

Nều bạn đã nối được thành một đường liền mà không trơn thì chỉ việc dùng cách của bác hoan2182 để chuyển nó thành Spline thì nó sẽ trơn.


  • 0
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#8 nguyenhangngaxd

nguyenhangngaxd

    biết zoom

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

Đã gửi 05 March 2014 - 02:24 PM

hì hì

mọi người vẫn hơi hơi hiểu sai í tớ 1 tí.

 

Tức là tớ đã làm cho các điểm nối vào được với nhau thành 1 hình. Nhưng khi nhấn chuột trái vào cái hình đó thì không chọn được cả hình, chỉ chọn được đường giữa 2 điểm. Giờ tớ phải làm sao để nhấp chuột 1 cái thì chọn được cả hình? Rồi sau đó còn vẽ ống 


  • 0

#9 Hoan1111

Hoan1111

    biết lệnh adcenter

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

Đã gửi 05 March 2014 - 07:35 PM

hì hì

mọi người vẫn hơi hơi hiểu sai í tớ 1 tí.

 

Tức là tớ đã làm cho các điểm nối vào được với nhau thành 1 hình. Nhưng khi nhấn chuột trái vào cái hình đó thì không chọn được cả hình, chỉ chọn được đường giữa 2 điểm. Giờ tớ phải làm sao để nhấp chuột 1 cái thì chọn được cả hình? Rồi sau đó còn vẽ ống 

 

Hôm qua, em đã chạy thử lisp của anh gửi lên, nó chạy lâu quá, nhiệt độ không ngừng tăng lên làm nóng đỏ rực cả chíp . Hốt quá , em  phải tắt điện, rồi chuồn vội lên chuồng ngủ! :) :) :)

Anh "đã làm cho các điểm nối vào được với nhau thành 1 hình" rồi, còn chần chừ gì nữa mà không gửi file lên đây???

(Em đã nói rồi:" Bước 2 và 3 đơn giản , chỉ có bước 1 là củ chuối" thôi)


  • 0

66 Câu Phật Học Cho Cuộc Sống : http://ngocchinh.com...-cho-cuoc-song/

Gió đưa cây cải về trời / Rau răm ở lại chịu lời đắng cay...

 

 


#10 nguyenhangngaxd

nguyenhangngaxd

    biết zoom

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

Đã gửi 05 March 2014 - 07:49 PM

http://www.cadviet.c...eologique_2.dwg

 

File đây bạn ơi! Tớ là con gái :( đừng gọi tớ là anh 


  • 0

#11 Hoan1111

Hoan1111

    biết lệnh adcenter

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

Đã gửi 05 March 2014 - 08:07 PM

http://www.cadviet.c...eologique_2.dwg

 

File đây bạn ơi! Tớ là con gái :( đừng gọi tớ là anh 

Anh là con gái à? :D :D :D
Không biết em có nhầm nhọt gì không, mở file của em,

chị thấy nó là các đối tượng rời rạc gồm: 1029 found???


  • 0

66 Câu Phật Học Cho Cuộc Sống : http://ngocchinh.com...-cho-cuoc-song/

Gió đưa cây cải về trời / Rau răm ở lại chịu lời đắng cay...

 

 


#12 nguyenhangngaxd

nguyenhangngaxd

    biết zoom

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

Đã gửi 05 March 2014 - 09:04 PM

đúng rồi bạn! có 1 đống đối tượng rời rạc. Giờ làm sao nó thành 1 đường bây giờ? (khổ văn tớ kém ăn nói hơi khó hiểu) :(


  • 0

#13 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 05 March 2014 - 11:42 PM

đúng rồi bạn! có 1 đống đối tượng rời rạc. Giờ làm sao nó thành 1 đường bây giờ? (khổ văn tớ kém ăn nói hơi khó hiểu) :(

Hề hề hề,

Muốn nối được các line này trước hết phải là phẳng chúng đã. Như vậy lại mất toi các cao độ mà việc phục hồi các cao độ này xem ra còn khó chơi hơn là nối chúng.

Vậy chứ bạn muốn sao nhỉ???

Vì sao từ cái bảng tọa độ không cho ra luôn spline mà lại chơi cái line 3d này cho nó tủn mủn thế hè???

Nếu có thể thử gửi cái bàng tọa độ lên để mình thử xuất thành spline xem có ngon không nhé.


  • 0
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#14 Hoan1111

Hoan1111

    biết lệnh adcenter

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

Đã gửi 06 March 2014 - 10:36 AM

đúng rồi bạn! có 1 đống đối tượng rời rạc. Giờ làm sao nó thành 1 đường bây giờ? (khổ văn tớ kém ăn nói hơi khó hiểu) :(

 

Văn kém sao bài văn tả cảnh số #1 của mợ rất dễ hiểu, hùng biện và khúc triết nữa: "Em dùng lisp của diễn đàn và đưa vào được thành 1 đường nhưng nó k phải là đường trơn" :) :) :)

1029 found  nối mỗi giây hết một found , vị chi số thời gian để nối là 1029 / 60giây = 17.15 phút. Nếu làm chậm lắm cũng chỉ mất đến 25 phút là cùng.

Chốt lại cách làm nhanh nhất là mợ dùng lệnh 3dpoly để nối, sau đó làm mượt nó là được


  • 0

66 Câu Phật Học Cho Cuộc Sống : http://ngocchinh.com...-cho-cuoc-song/

Gió đưa cây cải về trời / Rau răm ở lại chịu lời đắng cay...

 

 


#15 nguyenhangngaxd

nguyenhangngaxd

    biết zoom

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

Đã gửi 06 March 2014 - 02:27 PM

http://www.cadviet.c.../128484_tfs.txt

 

File các điểm đây bạn Thanh Bình !

 

Tớ dùng 3dPoly rồi bạn Hoằn ơi! Lệnh đó k giải quyết được trong trường hợp này :(


  • 0

#16 conghoa

conghoa

    biết lệnh attdef

  • Members
  • PipPipPipPipPipPip
  • 411 Bài viết
Điểm đánh giá: 88 (tàm tạm)

Đã gửi 06 March 2014 - 03:07 PM

http://www.cadviet.c...eologique_2.dwg

 

Có phải bạn định nối như thế này không?


  • 0

#17 Hoan1111

Hoan1111

    biết lệnh adcenter

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

Đã gửi 06 March 2014 - 03:16 PM

Tớ dùng 3dPoly rồi bạn Hoằn ơi! Lệnh đó k giải quyết được trong trường hợp này :(

 

:) :) :)

114276_jjjjssss.png

 

Làm thủ công, nếu nối bằng spline, bắt điểm hơi bị loằng ngoằng, vì thế tớ mới dùng 3dpoly cho dễ bắt điểm. Sau khi vẽ xong rồi làm mượt nó bằng cách bấm chọn Spline curve, đảm bảo mượt mà mềm mịn và nên thơ nữa!


  • 0

66 Câu Phật Học Cho Cuộc Sống : http://ngocchinh.com...-cho-cuoc-song/

Gió đưa cây cải về trời / Rau răm ở lại chịu lời đắng cay...

 

 


#18 nguyenhangngaxd

nguyenhangngaxd

    biết zoom

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

Đã gửi 06 March 2014 - 04:27 PM

@Conghoa!!! Cảm ơn nghìn lần! Chuẩn là tớ muốn như vậy! Làm như nào đấy bạn ơi? Tớ còn vài đường nữa cần làm như vậy.

@hoằn: Bạn ơi cái file bạn Conghoa gửi kìa. Như vậy đấy. 


  • 0

#19 nguyenhangngaxd

nguyenhangngaxd

    biết zoom

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

Đã gửi 06 March 2014 - 04:42 PM

Nhưng lại k vẽ ống được từ đường đó bạn Conghoa ơi :( rối bời thật!


  • 0

#20 conghoa

conghoa

    biết lệnh attdef

  • Members
  • PipPipPipPipPipPip
  • 411 Bài viết
Điểm đánh giá: 88 (tàm tạm)

Đã gửi 06 March 2014 - 04:46 PM

Vẽ ống thì mình chịu :D còn nối nó vào như thế thì đơn giản lắm, bạn đánh lệnh join rồi chọn hết các line đó là được :)


  • 0