Đến nội dung


Hình ảnh

lệnh MA


  • Please log in to reply
11 replies to this topic

#1 oizdoi_oi

oizdoi_oi

    biết dimlinear

  • Members
  • PipPipPipPipPip
  • 306 Bài viết
Điểm đánh giá: 452 (tốt)

Đã gửi 09 June 2009 - 01:45 PM

liệu có thể MA text mà có thể MA được cả các thuộc tính VD như điểm chèn(căn chữ) kô nhỉ?
  • 0
KTS không bao giờ chết đói...mà chỉ đói đến lúc chết!

#2 trumxike8x

trumxike8x

    biết vẽ line

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

Đã gửi 14 June 2009 - 02:05 PM

liệu có thể MA text mà có thể MA được cả các thuộc tính VD như điểm chèn(căn chữ) kô nhỉ?

Có thể làm thế.....
mình ma như binh thuờng nhưng đôi khi bản vẽ của người khác sử dụng rồi có một số text ho dùng ed nên ko thể ma bt
  • 0

#3 haanh

haanh

    biết lệnh adcenter

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

Đã gửi 14 June 2009 - 02:47 PM

Lenh MA, kho' quá
http://www.cadviet.c...showtopic=10300
  • 0

“Sống trong đời sống cần có một tấm lòng / Để làm gì em biết không ? / Để gió cuốn đi, để gió cuốn đi...”


#4 oizdoi_oi

oizdoi_oi

    biết dimlinear

  • Members
  • PipPipPipPipPip
  • 306 Bài viết
Điểm đánh giá: 452 (tốt)

Đã gửi 15 June 2009 - 01:41 PM

Có thể làm thế.....
mình ma như binh thuờng nhưng đôi khi bản vẽ của người khác sử dụng rồi có một số text ho dùng ed nên ko thể ma bt

ma cả điểm canh lề chữ cơ mà
vd như leftn right, center, midle.....
  • 0
KTS không bao giờ chết đói...mà chỉ đói đến lúc chết!

#5 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 15 June 2009 - 02:26 PM

ma cả điểm canh lề chữ cơ mà
vd như leftn right, center, midle.....

Chào oizdoi_oi
Theo mình nghĩ : cách làm đơn giản như sau :

1. Chọn đối tượng nguồn -> Bấm Ctrol+1 -> Xem nó ở dạng canh lề nào

2. Đánh lệnh MA

Command: ma MATCHPROP
Select source object:
Current active settings: Color Layer Ltype Ltscale Lineweight Thickness
PlotStyle Text Dim Hatch Polyline Viewport

Select destination object(s) or [Settings]: Specify opposite corner:

Select destination object(s) or [Settings]:

3. Sử dụng lệnh justifytext

Command: justifytext

Select objects: p : gõ P để chọn lại đối tượng Text mới bị MA
3 found

Select objects: Enter

Enter a justification option
[Left/Align/Fit/Center/Middle/Right/TL/TC/TR/ML/MC/MR/BL/BC/BR] <Left>: R : chọn kiểu canh chỉnh đã xem ở bước 1
  • 0

#6 oizdoi_oi

oizdoi_oi

    biết dimlinear

  • Members
  • PipPipPipPipPip
  • 306 Bài viết
Điểm đánh giá: 452 (tốt)

Đã gửi 16 June 2009 - 10:50 AM

ac ac ac neu thế minh hơỉ làm gì để mất thời gian của bạn. thi` bình thường mình vẫn làm theo cách này hoặc cách nhanh hơn là chọn tất cả chữ rồi ấn ctrl+1 rồi chọn canh lề chữ 1 phát luôn là xong.
nhưng dù sao 2 cách trên vẫn lâu vì khi các chữ không cùng canh lề thì khi MA và sau khi chỉnh canh lề sẽ nhảy lung tung. i' mình là giả sử có 10 hàng text mỗi hàng có canh lề khác nhau và hàng đầu tiên là canh lề left chẳng hạn thì bây giờ mình muốn MA 9 hàng text sau theo canh lề left của hàng đầu tiên, mà ko bị nhảy lung tung. MA các canh lề khác cũng tương tự. thank vì sự hợp tac.
mình có file đi kèm nè.

Hình đã gửi

nếu chữ to nhỏ khác nhau

Hình đã gửi

file cad nè
http://www.cadviet.c...xxxxxxxxxxx.zip
  • 0
KTS không bao giờ chết đói...mà chỉ đói đến lúc chết!

#7 Zuy782006

Zuy782006

    biết vẽ line

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

Đã gửi 16 June 2009 - 11:11 AM

ac ac ac neu thế minh hơỉ làm gì để mất thời gian của bạn. thi` bình thường mình vẫn làm theo cách này hoặc cách nhanh hơn là chọn tất cả chữ rồi ấn ctrl+1 rồi chọn canh lề chữ 1 phát luôn là xong.
nhưng dù sao 2 cách trên vẫn lâu vì khi các chữ không cùng canh lề thì khi MA và sau khi chỉnh canh lề sẽ nhảy lung tung. i' mình là giả sử có 10 hàng text mỗi hàng có canh lề khác nhau và hàng đầu tiên là canh lề left chẳng hạn thì bây giờ mình muốn MA 9 hàng text sau theo canh lề left của hàng đầu tiên, mà ko bị nhảy lung tung. MA các canh lề khác cũng tương tự. thank vì sự hợp tac.
mình có file đi kèm nè.

Hình đã gửi

nếu chữ to nhỏ khác nhau

Hình đã gửi

file cad nè
http://www.cadviet.c...xxxxxxxxxxx.zip

Trường hợp này có thể dùng lisp. bạn muốn ma cả độ lớn layer và color luôn không (trong hình thì mình thấy là có nhưng hỏi lại cho chắc)
*Lưu ý thêm nếu các text trước khi thực hiện lệnh mà không thẳng hàng thì sau khi thực hiện lệnh cũng không thẳng hàng. (lisp chỉ làm việc giử nguyên vị trí text chỉ thay đổi cách canh lề của text thôi nhé)
  • 0
Ơ hay, tại sao ta sống chốn này?
Quay cuồng mãi, vậy có gì vui !!!

#8 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 16 June 2009 - 11:22 AM

ac ac ac neu thế minh hơỉ làm gì để mất thời gian của bạn. thi` bình thường mình vẫn làm theo cách này hoặc cách nhanh hơn là chọn tất cả chữ rồi ấn ctrl+1 rồi chọn canh lề chữ 1 phát luôn là xong.
nhưng dù sao 2 cách trên vẫn lâu vì khi các chữ không cùng canh lề thì khi MA và sau khi chỉnh canh lề sẽ nhảy lung tung. i' mình là giả sử có 10 hàng text mỗi hàng có canh lề khác nhau và hàng đầu tiên là canh lề left chẳng hạn thì bây giờ mình muốn MA 9 hàng text sau theo canh lề left của hàng đầu tiên, mà ko bị nhảy lung tung. MA các canh lề khác cũng tương tự. thank vì sự hợp tac.
mình có file đi kèm nè.

Chào 'oizdoi_oi'
Nếu bạn sử dụng ctrl+1 rồi chọn canh lề chữ 1 phát luôn thì chữ sẽ nhảy lung tung ngay.
Nếu bạn sử dụng lệnh justifytext để canh lề thì sẽ không nhảy nữa.
Chú ý : Phải sử dụng lệnh justifytext trước khi sử dụng lệnh Ma thì vấn đề của bạn được giải quyết
1.Chọn đối tượng nguồn -> Bấm Ctrol+1 -> Xem nó ở dạng canh lề nào (Ví dụ Left)
2.Sử dụng lệnh justifytext

Command: justifytext

Select objects:
3 found

Select objects: Enter

Enter a justification option
[Left/Align/Fit/Center/Middle/Right/TL/TC/TR/ML/MC/MR/BL/BC/BR] <Left>: L : chọn kiểu canh chỉnh đã xem ở bước 1

3. Đánh lệnh MA thử xem -> :lol2:
  • 2

#9 oizdoi_oi

oizdoi_oi

    biết dimlinear

  • Members
  • PipPipPipPipPip
  • 306 Bài viết
Điểm đánh giá: 452 (tốt)

Đã gửi 16 June 2009 - 11:37 AM

uh rat hay, tu truoc minh chưa dùng cách này
nhưng nếu có lit thì vẫn hay hơn nhỉ, sao cad ko có tham số nào để ma toàn bộ các thuộc tính đối tượng nhỉ
cam on bạn nhé
mình pick THANK rồi đấy
ban Zuy co lít thì cho đi
  • 0
KTS không bao giờ chết đói...mà chỉ đói đến lúc chết!

#10 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 16 June 2009 - 01:05 PM

uh rat hay, tu truoc minh chưa dùng cách này
nhưng nếu có lit thì vẫn hay hơn nhỉ, sao cad ko có tham số nào để ma toàn bộ các thuộc tính đối tượng nhỉ
cam on bạn nhé
mình pick THANK rồi đấy
ban Zuy co lít thì cho đi

Ngày hôm qua, Tue_NV có viết cái Lisp này nhưng không thành công vì khi cập nhật vào cơ sở dữ liệu của Text thì chữ nhảy lung tung như 'oizdoi_oi' thấy đấy.
Tue_NV đã viết cái Lisp khác.
'oizdoi_oi' hãy chạy thử cái Lisp này. Tue_NV vẫn biết còn có 1 điểm nhỏ chưa hoàn thiện.

(defun c:MAT()
(setq goc (car(entsel "\n Select source object :")))
(prompt "\n Select destination object(s) :")
(setq ss (ssget))
(Command "select" "P" "")
(prompt "\n Chon kieu canh le cho Text :")
(command "justifytext" "P" "" Pause)
(Command "MATCHPROP" goc "P" "")
(princ)
)

  • 0

#11 gia_bach

gia_bach

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1436 Bài viết
Điểm đánh giá: 1426 (rất tốt)

Đã gửi 17 June 2009 - 09:33 AM

...........
giả sử có 10 hàng text mỗi hàng có canh lề khác nhau và hàng đầu tiên là canh lề left chẳng hạn thì bây giờ mình muốn MA 9 hàng text sau theo canh lề left của hàng đầu tiên, mà ko bị nhảy lung tung. MA các canh lề khác cũng tương tự. thank vì sự hợp tac.
mình có file đi kèm nè.
nếu chữ to nhỏ khác nhau
Hình đã gửi
................

Chào oizdoi_oi
Bạn chạy thử LISP này.
(defun c:MJT(/ ent ss data elst id) ; MJT -> Matchprop_Justify_Text
(vl-load-com)
(command "UNDO" "begin")
(defun dxf(id data) (cdr (assoc id data)) )
(defun dataMod (code val data) (subst (cons code val) (assoc code data) data));databae Modify
; ham chinh
(while
(not
(and
(setq ent (car (entsel "\nChon Text chuan : ")))
(if ent (= (cdr (assoc 0 (entget ent))) "TEXT") )
)
)
(princ "\nChon lai : ")
)
(princ "\nChon Text can thay doi : ")
(if (setq ss (ssget '((0 . "TEXT")) ))
(progn
(setq data (entget ent))
(foreach elst (mapcar 'entget
(vl-remove-if 'listp
(mapcar 'cadr (ssnamex ss))))
; thuoc tinh
(foreach id (list 8 40 7 62 6 48 370);layer height textstyle color linetype linetypescale lineweight
(if (dxf id data)
(if (dxf id elst)
(setq elst (dataMod id (dxf id data) elst))
(setq elst (append elst (list (cons id (dxf id data)))) )
)
(if (dxf id elst)
(cond
((eq id 62) (setq elst (dataMod id 256 elst)))
((eq id 48) (setq elst (dataMod id 1 elst)))
((eq id 6) (setq elst (dataMod id "ByLayer" elst)))
((eq id 370)(setq elst (dataMod id -1 elst)))
)
)
)
)
; vi tri
(setq elst (subst (cons 10 (list (cadr (assoc 10 data))
(caddr (assoc 10 elst))
(cadddr (assoc 10 elst))))
(assoc 10 elst) elst)
elst (dataMod 11 (dxf 10 elst) elst)
elst (dataMod 72 0 elst)
)
(entmod elst)
)
)
)
(command "UNDO" "end")
(princ)
)

  • 0

#12 oizdoi_oi

oizdoi_oi

    biết dimlinear

  • Members
  • PipPipPipPipPip
  • 306 Bài viết
Điểm đánh giá: 452 (tốt)

Đã gửi 18 June 2009 - 02:35 PM

Chào oizdoi_oi
Bạn chạy thử LISP này.

(defun c:MJT(/ ent ss data elst id) ; MJT -> Matchprop_Justify_Text
(vl-load-com)
(command "UNDO" "begin")
(defun dxf(id data) (cdr (assoc id data)) )
(defun dataMod (code val data) (subst (cons code val) (assoc code data) data));databae Modify
; ham chinh
(while
(not
(and
(setq ent (car (entsel "\nChon Text chuan : ")))
(if ent (= (cdr (assoc 0 (entget ent))) "TEXT") )
)
)
(princ "\nChon lai : ")
)
(princ "\nChon Text can thay doi : ")
(if (setq ss (ssget '((0 . "TEXT")) ))
(progn
(setq data (entget ent))
(foreach elst (mapcar 'entget
(vl-remove-if 'listp
(mapcar 'cadr (ssnamex ss))))
; thuoc tinh
(foreach id (list 8 40 7 62 6 48 370);layer height textstyle color linetype linetypescale lineweight
(if (dxf id data)
(if (dxf id elst)
(setq elst (dataMod id (dxf id data) elst))
(setq elst (append elst (list (cons id (dxf id data)))) )
)
(if (dxf id elst)
(cond
((eq id 62) (setq elst (dataMod id 256 elst)))
((eq id 48) (setq elst (dataMod id 1 elst)))
((eq id 6) (setq elst (dataMod id "ByLayer" elst)))
((eq id 370)(setq elst (dataMod id -1 elst)))
)
)
)
)
; vi tri
(setq elst (subst (cons 10 (list (cadr (assoc 10 data))
(caddr (assoc 10 elst))
(cadddr (assoc 10 elst))))
(assoc 10 elst) elst)
elst (dataMod 11 (dxf 10 elst) elst)
elst (dataMod 72 0 elst)
)
(entmod elst)
)
)
)
(command "UNDO" "end")
(princ)
)

hay qua' thank hai ban Tue_nv va Gia bach nha'
  • 0
KTS không bao giờ chết đói...mà chỉ đói đến lúc chết!