Đến nội dung


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

Viết lisp theo yêu cầu [phần 2]


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

#1501 Thaistreetz

Thaistreetz

    biết lệnh adcenter

  • Advance Member
  • PipPipPipPipPipPipPip
  • 903 Bài viết
Điểm đánh giá: 505 (tốt)

Đã gửi 06 August 2010 - 06:59 PM

khổ thân tôi quá, lại gặp 1 vấn đề nữa nhờ mấy cao thủ giúp đỡ : nhờ mấy bác viết dùm em 1 cái lisp như sau
- nhập lệnh
- Chọn tất cả text trên màn hìn (kể cả những đường line,poly,spline,tròn.... bao quanh text)
- nhập hệ số scale- enter
thì tất cả các text và các hình bao nó tự scale tại chỗ không nhảy tùm lum được ko mấy bác
@ tại tôi cần scale hàng nghìn cái như thế , cám ơn

Mình đoán là bạn cần phải thay đổi tỷ lệ in của bản vẽ khi mà đã hoàn thiện nó với tỷ lệ khác.
Vấn đề này đúng như anh duy nói. không thể giải quyết hàng loạt đc đâu. làm sao để biết những đối tượng nào nằm cùng nhóm cần scale với 1 text.
Cad 2008 trở lên bắt đầu được hỗ trợ annotation. chắc bạn chưa làm quen và sử dụng nó để xây dựng chuẩn bản vẽ nên mới vấp phải trường hợp này.
  • 1

Hình đã gửi
IN HIM, I TRUST. THE TRUST IN MY GOD


#1502 minhvan21287

minhvan21287

    biết vẽ pline

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

Đã gửi 07 August 2010 - 03:01 PM

Scale thì phải có tâm scale và hệ số tỉ lệ. Hệ số tỉ lệ thì nhập vô rồi, còn tâm scale nằm chổ mô vậy bạn?
Bạn nói rõ thì mới giúp được. Có lẽ bạn nên upload file .dwg minh hoạ và nói rõ hơn.
Vậy nhé

bác ơi bác có thể giúp em viết một cái lip mà khi sử dụng lệnh f (fillet) thì ta có thể sử dụng nhiều lần như là lệnh copy được ko ah. ví dụ như là khi mình thực hiện lệnh f với 2 đường rùi sau đó lại làm lại được luôn mà ko phải dùng phim enter or phim cách or phím phải chuột.
  • 0

#1503 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 07 August 2010 - 05:16 PM

bác ơi bác có thể giúp em viết một cái lip mà khi sử dụng lệnh f (fillet) thì ta có thể sử dụng nhiều lần như là lệnh copy được ko ah. ví dụ như là khi mình thực hiện lệnh f với 2 đường rùi sau đó lại làm lại được luôn mà ko phải dùng phim enter or phim cách or phím phải chuột.

Không cần phải sử dụng đến Lisp
-> CAD đã làm chuyện đó như sau :
-> Gõ Multiple -> gõ F (fillet) -> sẽ được như ý

Command: multiple

Enter command name to repeat: f
FILLET
Current settings: Mode = TRIM, Radius = 0.0000
Select first object or [Undo/Polyline/Radius/Trim/Multiple]:
Select second object or shift-select to apply corner:
FILLET
Current settings: Mode = TRIM, Radius = 0.0000
Select first object or [Undo/Polyline/Radius/Trim/Multiple]:
Select second object or shift-select to apply corner:
FILLET
Current settings: Mode = TRIM, Radius = 0.0000
Select first object or [Undo/Polyline/Radius/Trim/Multiple]: *Cancel*

Nhấn Esc thoát lệnh :(
  • 2

#1504 minhvan21287

minhvan21287

    biết vẽ pline

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

Đã gửi 07 August 2010 - 08:11 PM

Không cần phải sử dụng đến Lisp
-> CAD đã làm chuyện đó như sau :
-> Gõ Multiple -> gõ F (fillet) -> sẽ được như ý

Command: multiple

Enter command name to repeat: f
FILLET
Current settings: Mode = TRIM, Radius = 0.0000
Select first object or [Undo/Polyline/Radius/Trim/Multiple]:
Select second object or shift-select to apply corner:
FILLET
Current settings: Mode = TRIM, Radius = 0.0000
Select first object or [Undo/Polyline/Radius/Trim/Multiple]:
Select second object or shift-select to apply corner:
FILLET
Current settings: Mode = TRIM, Radius = 0.0000
Select first object or [Undo/Polyline/Radius/Trim/Multiple]: *Cancel*

Nhấn Esc thoát lệnh :(

vâng ah. em làm được rùi. nhưng mà bác ơi có thể cho cái lệnh đó ngắn lại để thao tác cho nhanh được ko ah.
  • 0

#1505 minhvan21287

minhvan21287

    biết vẽ pline

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

Đã gửi 07 August 2010 - 08:15 PM

vâng ah. em làm được rùi. nhưng mà bác ơi có thể cho cái lệnh đó ngắn lại để thao tác cho nhanh được ko ah.

hì. em cũng làm đưọc rùi.hi.em cám ơn bác nhìu nha.
  • 0

#1506 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 07 August 2010 - 09:25 PM

vâng ah. em làm được rùi. nhưng mà bác ơi có thể cho cái lệnh đó ngắn lại để thao tác cho nhanh được ko ah.

Bạn có thể thiết lập lệnh tắt cho lệnh Multiple trong file acad.pgp

Mình có một bản vẽ bao gồm các point với các thông tin của point là tên điểm, độ cao và mô tả dạng text đi kèm:
http://www.cadviet.c...s/3/textxyz.dwg
Muốn chuyển nhanh sang định dạng block như bản vẽ sau:
http://www.cadviet.c.../3/blockxyz.dwg
Nhờ các bạn viết lisp: nhập lệnh, quét chọn những đối tượng cần chuyển, Enter.
(Tag block tên điểm là FPT_NUM, Tag của độ cao là FPT_ALT, Tab của mô tả là FPT_DES)
Cám ơn trước

Chào 'tnmtpc'
Tue_NV không download file của bạn về được. Khi download theo đường link của bạn thì nó hiện ra cái này :
Hình đã gửi
Không hiểu là do nguyên nhân gì nữa?
Bạn có thể upload lại file được không?
  • 1

#1507 hoan2182

hoan2182

    biết lệnh adcenter

  • Members
  • PipPipPipPipPipPipPip
  • 2646 Bài viết
Điểm đánh giá: 832 (rất tốt)

Đã gửi 07 August 2010 - 09:46 PM

Không hiểu là do nguyên nhân gì nữa?

Chắc máy của anh bị lỗi gì đó... máy em download bình thường:
Đây là 2 file bản vẽ em vừa download và Upload:
http://www.cadviet.c...es/3/anhtue.rar
  • 1

Gió đưa cây cải về trời

Rau răm ở lại chịu lời đắng cay...


#1508 tnmtpc

tnmtpc

    biết dimcontinue

  • Members
  • PipPipPipPipPip
  • 370 Bài viết
Điểm đánh giá: 206 (khá)

Đã gửi 08 August 2010 - 09:29 AM

Tue_NV không download file của bạn về được. Không hiểu là do nguyên nhân gì nữa?
Bạn có thể upload lại file được không?

Tue_NV : link vẫn bình thường mà, có thể down theo link của bạn hoan 2182
  • 0

#1509 baodenhp

baodenhp

    biết vẽ arc

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

Đã gửi 08 August 2010 - 10:27 AM

Chào mọi người, E có bài toán về LISP mọi người xem giúp. E muốn chèn điểm độ cao từ file số liệu xyh theo định dạng file đính kèm [url="http://www.mediafire.com/?a5tzd3za0dr2q2h"] (file cad, lxs và scr). Thông số đầu vào như sau:
1. Tỷ lệ bản vẽ
2. Độ chính xác điểm cao độ (Precision)
với chiều cao text:
- phần số nguyên: 2.5mm x tỷ lệ bản vẽ
- phần thập phân: 1.7mm x tỷ lệ bản vẽ
Thanks!
  • 0

#1510 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 09 August 2010 - 08:45 AM

Mình có một bản vẽ bao gồm các point với các thông tin của point là tên điểm, độ cao và mô tả dạng text đi kèm:
http://www.cadviet.c...s/3/textxyz.dwg
Muốn chuyển nhanh sang định dạng block như bản vẽ sau:
http://www.cadviet.c.../3/blockxyz.dwg
Nhờ các bạn viết lisp: nhập lệnh, quét chọn những đối tượng cần chuyển, Enter.
(Tag block tên điểm là FPT_NUM, Tag của độ cao là FPT_ALT, Tab của mô tả là FPT_DES)
Cám ơn trước

Chào tnmtpc
Có 1 điểm mà Tue_NV muốn hỏi bạn tnmtpc là :
Trong file blockxyz.dwg
Tag block tên điểm là FPT_NUM -> ten Block là : FPT_NUM
Tag của độ cao là FPT_ALT -> ten Block là : FPT_ALT
Còn Tab của mô tả là FPT_DES là Tab gì? trong bản vẽ thấy không thể hiện và không hiểu nó là cái gì nữa?
Còn point thì sao?
Đại khái là không hiểu được ý của bạn?
Bạn vui lòng giải thích rõ nhé
  • 1

#1511 truongthanh

truongthanh

    biết lệnh text

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

Đã gửi 09 August 2010 - 09:52 AM

Nhờ các bạn viết dùm mình LISP cắt ảnh Xref theo 1 Pline chọn sẵn!
Vì lệnh Xclip để cắt hình với Option là Polygon chỉ cho phép mình vẽ lại thôi, ko cho mình select object với 1 pline đã có sẵn!
Thanks mọi người!
  • 0

#1512 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 09 August 2010 - 10:00 AM

Nhờ các bạn viết dùm mình LISP cắt ảnh Xref theo 1 Pline chọn sẵn!
Vì lệnh Xclip để cắt hình với Option là Polygon chỉ cho phép mình vẽ lại thôi, ko cho mình select object với 1 pline đã có sẵn!
Thanks mọi người!

Truongthanh đã thử chưa?

Command: XCLIP
Select objects: 1 found -> Pick chon đối tượng Xref

Select objects: -> enter

Enter clipping option
[ON/OFF/Clipdepth/Delete/generate Polyline/New boundary] : -> enter
Outside mode - Objects outside boundary will be hidden.
Specify clipping boundary or select invert option:
[Select polyline/Polygonal/Rectangular/Invert clip] : S -> gõ S
Select polyline: -> Chọn Polyline

Successful!
  • 2

#1513 tnmtpc

tnmtpc

    biết dimcontinue

  • Members
  • PipPipPipPipPip
  • 370 Bài viết
Điểm đánh giá: 206 (khá)

Đã gửi 09 August 2010 - 10:19 AM

Chào tnmtpc
Có 1 điểm mà Tue_NV muốn hỏi bạn tnmtpc là :
Trong file blockxyz.dwg
Tag block tên điểm là FPT_NUM -> ten Block là : FPT_NUM
Tag của độ cao là FPT_ALT -> ten Block là : FPT_ALT
Còn Tab của mô tả là FPT_DES là Tab gì? trong bản vẽ thấy không thể hiện và không hiểu nó là cái gì nữa?
Còn point thì sao?
Đại khái là không hiểu được ý của bạn?
Bạn vui lòng giải thích rõ nhé

Chà thiếu sót quá, tên tag của mô tả trùng với tên block như hai thằng kia vậy. Mô tả ở đây là ghi chú cho điểm ấy mà, do trong file dữ liệu thiếu mất trường này này nó không có trên bản vẽ. Point là dạng ký hiệu chuẩn của Cad thôi mà, vị trí của nó là điểm chèn các thông tin của điểm.
Nôm na là hai bản vẽ trên nếu xét về tọa độ thì không có gì thay đôi, nhưng có một số tiện ích không thực thi với đối tượng text nên phải chuyển sang block để thao tác
  • 0

#1514 lp_hai

lp_hai

    biết lệnh measure

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

Đã gửi 09 August 2010 - 01:10 PM

Nhờ các bạn viết dùm mình LISP cắt ảnh Xref theo 1 Pline chọn sẵn!
Vì lệnh Xclip để cắt hình với Option là Polygon chỉ cho phép mình vẽ lại thôi, ko cho mình select object với 1 pline đã có sẵn!
Thanks mọi người!

bạn dùng lệnh CLIPIT thử xem. sau khi dánh lệnh bạn chọ polyline rồi chọn xref hoặc block sau đó enter
  • 3
Hình đã gửi

#1515 truongthanh

truongthanh

    biết lệnh text

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

Đã gửi 09 August 2010 - 01:42 PM

Truongthanh đã thử chưa?

Command: XCLIP
Select objects: 1 found -> Pick chon đối tượng Xref

Select objects: -> enter

Enter clipping option
[ON/OFF/Clipdepth/Delete/generate Polyline/New boundary] : -> enter
Outside mode - Objects outside boundary will be hidden.
Specify clipping boundary or select invert option:
[Select polyline/Polygonal/Rectangular/Invert clip] : S -> gõ S
Select polyline: -> Chọn Polyline

Successful!

cách của TUE mình làm với IMAGE ko được!
Thanks các bạn đã quan tâm!
  • 0

#1516 romeo1982

romeo1982

    biết lệnh mirror

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

Đã gửi 09 August 2010 - 03:49 PM

Scale thì phải có tâm scale và hệ số tỉ lệ. Hệ số tỉ lệ thì nhập vô rồi, còn tâm scale nằm chổ mô vậy bạn?
Bạn nói rõ thì mới giúp được. Có lẽ bạn nên upload file .dwg minh hoạ và nói rõ hơn.
Vậy nhé

trước hết cám ơn bác đã quan tâm, líp chọn bắt điểm của mổi text là điểm chèn của text đó rùi scale quanh điểm chèn được ko bác đồng thời tìm object bao xung quanh nó (giống như kí hiệu trục vậy) và scale luôn
  • 0

#1517 tnmtpc

tnmtpc

    biết dimcontinue

  • Members
  • PipPipPipPipPip
  • 370 Bài viết
Điểm đánh giá: 206 (khá)

Đã gửi 12 August 2010 - 05:22 PM

Mình có một bản vẽ bao gồm các point với các thông tin của point là tên điểm, độ cao và mô tả dạng text đi kèm:
http://www.cadviet.c...s/3/textxyz.dwg
Muốn chuyển nhanh sang định dạng block như bản vẽ sau:
http://www.cadviet.c.../3/blockxyz.dwg
Nhờ các bạn viết lisp: nhập lệnh, quét chọn những đối tượng cần chuyển, Enter.
(Tag block tên điểm là FPT_NUM, Tag của độ cao là FPT_ALT, Tab của mô tả là FPT_DES)
Cám ơn trước

Chưa có ai giúp mình cái này ??
  • 0

#1518 vansulich

vansulich

    biết pan

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

Đã gửi 12 August 2010 - 08:01 PM

Nhờ các bác nghiên cứu làm cho em cái lisp có chức năng như sau:

Chắc hẳn các bạn đều biết lệnh m2p hoặc mtp rồi đúng không

Nhưng gõ lệnh này thực sự hơi bất tiện, giờ mình muốn chuyển nó về lệnh khác có chức năng tương tự (chỉ khi vẽ line hay chọn đối tượng thì ta mới sử dụng được lệnh này) giống như lệnh m2p và mtp của nó

Chằng hạn như
Khi vẽ Line rồi mình sẽ gõ vào là t2 chẳng hạn nó sẽ yêu cầu mình chọn 2 điểm và tự biến nó về có tọa độ là trung điểm 2 điểm đó
Nói chung là hoàn toàn giống như là m2p và mtp chỉ có điều là rút ngắn lệnh
  • 0

#1519 hdt4151

hdt4151

    biết vẽ pline

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

Đã gửi 12 August 2010 - 08:57 PM

Mình hatch 1 vùng, sau đó muốn đo diện tích vùng đó nhưng ko muốn pick lại vùng đó giống như khi hatch.
Mình muốn có 1 lisp sao cho chỉ cần chọn phần hatch thì sẽ xuất ra diện tích của hatch đó vào text có sẵn.
Mình có hơn 200 cái hatch như vậy làm thủ công (nhấn Li, xem dt, ghi lại vào text) mất thời gian quá. Bạn nào giúp mình nhé, thanks !!
  • 0

#1520 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 13 August 2010 - 05:49 PM

Chưa có ai giúp mình cái này ??

Chào bác tnmtpc,
Thực ra mình cũng đã thử làm theo yêu cầu của bác nhưng quả thật là có chỗ bí. Nếu chỉ tạo thành một block thông thường thì có nhẽ có thể không phiền lắm, nhưng để tạo thành block có chứa các thuộc tính đúng như bác yêu cầu thì hơi gay. Cái bí nhất chính là làm sao chuyển được các mã dxf của các text đã có thành các mã chứa trong thuộc tính của block. Mình loay hoay mà chưa có giải pháp nào khả dĩ. Bác cố gắng chờ thêm vậy...
Chúc bác vui.

À mà sao mấy hôm nay không thể load mấy cái file bác gửi về để thí nghiệm cả bác ạ. Bác thử gửi lại xem 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.