Đến nội dung


Hình ảnh

Đố vui


  • Please log in to reply
1743 replies to this topic

#21 Nguyen Hoanh

Nguyen Hoanh

    biết lệnh adcenter

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

Đã gửi 07 May 2007 - 09:42 PM

Vậy đố vui kỳ này có được xem là giải được không vậy???

Xem như là đã giải được.

Không ngờ ADT mạnh đến như vậy!
bowxman đang sử dụng ADT version mấy, có xảo thuật gì trong khi refedit không?
  • 0

#22 bowxman

bowxman

    biết vẽ pline

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

Đã gửi 09 May 2007 - 07:15 PM

Dạ em đang dùng AA2008, em chẳng dùng xảo thuật gì cả, cứ ref là được, hên thiệt :lol:
  • 0

#23 cadviettt

cadviettt

    biết vẽ circle

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

Đã gửi 17 May 2007 - 09:38 AM

Bác Ng Hoanh o'i cho iem hỏi cách tạo 1 file bản DWG vẽ có sẵn và biến chúng thành 1block đóng băng như bài đố vui của Pác thì làm thế nào? Thanks.THânchào
  • 0

#24 kncam

kncam

    biết lệnh rotate

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

Đã gửi 07 June 2007 - 08:43 PM

CAD2008 chỉ cần Double click thì sẽ hiệu chỉnh được block ở dạng minsert (bằng lệnh Bedit)
Sử dụng lệnh XMINSERT là các Block sẽ rời ra thành nhiều Block
  • 0
nongdan@sg

#25 thaiha175

thaiha175

    biết vẽ ellipse

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

Đã gửi 21 July 2007 - 11:38 PM

bác ơi em có thấy cái lệnh xminsert ở đâu nhỉ
  • 0
sống trên đời phải có 1 tấm lòng ,để gió cuốn đi

#26 be_chanh

be_chanh

    biết lệnh adcenter

  • Moderator
  • PipPipPipPipPipPipPip
  • 1712 Bài viết
Điểm đánh giá: 889 (rất tốt)

Đã gửi 22 July 2007 - 03:29 AM

;;;CADALYST 01/07 Tip 2169: XMINSERT.lsp Explode Minsert © 2007 Jeffery P. Sanders

;;;--- XMINSERT - Replace a minsert entity with individual blocks arrayed.
;;;
;;;
;;;
;;;--- This program will delete the XMINSERT entity after an array is created.
;;; It will restore the attribute values contained inside the minsert.


(defun C:XMINSERT()



;;;--- Function to change an attributes value

(defun repAttVal(en tagName newVal)

;;;--- Get the DXF group codes of the entity
(setq enlist(entget en))

;;;--- Get the name of the block
(setq blkName(cdr(assoc 2 enlist)))

;;;--- Check to see if the block's attribute flag is there
(if(cdr(assoc 66 enlist))
(progn

;;;--- Get the entity name
(setq en(entnext en))

;;;--- Get the entity dxf group codes
(setq enlist(entget en))

;;;--- Get the type of block
(setq blkType (cdr(assoc 0 enlist)))

;;;--- If group 66 then there are attributes nested inside this block
(setq group66(cdr(assoc 66 enlist)))

;;;--- Loop while the type is an attribute or a nested attribute exist
(while(or (= blkType "ATTRIB")(= group66 1))

;;;--- Get the block type
(setq blkType (cdr(assoc 0 enlist)))

;;;--- Get the block name
(setq entName (cdr(assoc 2 enlist)))

;;;--- Check to see if this is the first attribute
(if(= blkType "ATTRIB")
(progn

;;;--- Get the attribute tag
(setq attTag(cdr(assoc 2 enlist)))

;;;--- Get the value of the attribute
(setq attVal(cdr(assoc 1 enlist)))

;;;--- If this tag matches our search tag name
(if(= (strcase tagName)(strcase attTag))
(progn

;;;--- Replace the attribute's value
(setq enlist(subst (cons 1 newVal)(assoc 1 enlist)enlist))
(entmod enlist)
(entupd en)
)
)
)
)
;;;--- Get the next sub-entity or nested entity as you will
(setq en(entnext en))

;;;--- Get the dxf group codes of the next sub-entity
(setq enlist(entget en))

;;;--- Get the block type of the next sub-entity
(setq blkType (cdr(assoc 0 enlist)))

;;;--- See if the dxf group code 66 exist. if so, there are more nested attributes
(setq group66(cdr(assoc 66 enlist)))

)
)
)
)









;;;--- Function to return a list of tags and values from attributes in a block

(defun getAttData(en / attList attVal enlist blkType group66)

(setq attList(list))

;;;--- Get the DXF group codes of the entity
(setq enlist(entget en))

;;;--- Check to see if the block's attribute flag is there
(if(cdr(assoc 66 enlist))
(progn

;;;--- Get the entity name
(setq en(entnext en))

;;;--- Get the entity dxf group codes
(setq enlist(entget en))

;;;--- Get the type of block
(setq blkType (cdr(assoc 0 enlist)))

;;;--- If group 66 then there are attributes nested inside this block
(setq group66(cdr(assoc 66 enlist)))

;;;--- Loop while the type is an attribute or a nested attribute exist
(while(or (= blkType "ATTRIB")(= group66 1))

;;;--- Get the block type
(setq blkType (cdr(assoc 0 enlist)))

;;;--- Check to see if this is an attribute
(if(= blkType "ATTRIB")
(progn

;;;--- If this matches your tag name
(setq attTag(cdr(assoc 2 enlist)))

;;;--- Get the value of the attribute
(setq attVal(cdr(assoc 1 enlist)))

(setq attList(append attList (list (list attTag attVal))))
)
)

;;;--- Get the next sub-entity or nested entity as you will
(setq en(entnext en))

;;;--- Get the dxf group codes of the next sub-entity
(setq enlist(entget en))

;;;--- Get the block type of the next sub-entity
(setq blkType (cdr(assoc 0 enlist)))

;;;--- See if the dxf group code 66 exist. if so, there are more nested attributes
(setq group66(cdr(assoc 66 enlist)))

)
)
)
attList
)






;;;--- Main application

(setvar "cmdecho" 0)

;;;--- If the user selects an object
(if(setq ent(entsel "\nSelect MINSERT: "))
(progn

;;;--- If it is an object selected and not an point
(if(setq en(car ent))
(progn

;;;--- Make a copy of the entity name
(setq origEn en)

;;;--- Get the entities dxf group codes
(setq enlist(entget en))

;;;--- Get the data from the minsert
(setq blkName(cdr(assoc 2 enlist)))
(setq layName(cdr(assoc 8 enlist)))
(setq insPt(cdr(assoc 10 enlist)))
(setq cols(cdr(assoc 70 enlist)))
(setq rows(cdr(assoc 71 enlist)))
(setq colWidth(cdr(assoc 44 enlist)))
(setq rowWidth(cdr(assoc 45 enlist)))
(setq xScale(cdr(assoc 41 enlist)))
(setq yScale(cdr(assoc 42 enlist)))
(setq rAngle(cdr(assoc 50 enlist)))

;;;--- If group code 66 exist [ attributes follow flag ]
(if(assoc 66 enlist)

;;;--- Get the group code 66
(setq group66(cdr(assoc 66 enlist)))
)

;;;--- If it equals 1 then attributes follow..so
(if(= group66 1)
(progn

;;;--- Turn off attribute request during insertion
(setq oldAttReq(getvar "attreq"))
(setvar "attreq" 0)

;;;--- Get the attribute tags and values
(setq attList(getAttData en))
)
)

;;;--- Insert the new block
(command "-insert" blkName insPt xScale yScale (angtos rAngle))

;;;--- If it had attributes ...
(if(= group66 1)

;;;--- Reset the attribute request
(setvar "attreq" oldAttReq)
)

;;;--- Get the last entity created...
(if(setq en(entlast))
(progn

;;;--- Get the group codes
(setq enlist(entget en))

;;;--- Get the name of the block
(setq blkName2(cdr(assoc 2 enlist)))

;;;--- If this is the block I just created...
(if(= blkName blkName2)
(progn

;;;--- If it has an attributes flag code...
(if(assoc 66 enlist)
(progn

;;;--- And attributes follow [code 66 = 1]
(if(= (cdr(assoc 66 enlist)) 1)
(progn

;;;--- Replace the attribute values
(foreach a attList
(repAttVal en (car a) (cadr a))
)
)
)
)
)

;;;--- Delete the minsert entity
(entdel origEn)

;;;--- Array the new block to represent the minsert entity
(command "-array" en "" "R" rows cols rowWidth colWidth)

;;;--- Inform the user
(setq str(itoa (* rows cols)))
(alert (strcat "Deleted MINSERT and added (" str ") blocks."))
)
)
)
)
)
)
)
)
(princ)
)

  • 0

t: 097.323.1199 | m: cudstk@gmail.com | w: http://www.aicollect.com


#27 gp14

gp14

    DO TUAN GIAP

  • Moderator
  • PipPipPipPipPipPipPip
  • 1860 Bài viết
Điểm đánh giá: 1120 (rất tốt)

Đã gửi 30 January 2008 - 11:56 AM

Để vẽ một hình như thế này, bạn sẽ làm theo cách nào để nhanh nhất?
http://www.mediafire.com/?3sidnzmtdpe
  • 0

#28 nemo2004

nemo2004

    biết lệnh break

  • Advance Member
  • PipPipPipPip
  • 229 Bài viết
Điểm đánh giá: 98 (tàm tạm)

Đã gửi 21 April 2008 - 03:11 PM

nếu để vẽ hình trên thì nhanh nhất cũng cần sử dụng 12 lệnh để được 1 hình hoan chỉnh.
nhưng không biết cách vẽ nào là nhanh nhất cả.
  • 0

Spoiler


#29 abu8310

abu8310

    Chưa sử dụng CAD

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

Đã gửi 21 April 2008 - 04:27 PM

bemove đã giải được bài đố vui kỳ này, xin chúc mừng.

Ai có câu hỏi gì hay post lên mọi người cùng giải đáp. Nhớ là những phạm vi mà ai cũng biết đấy nhé.



Nếu tạo 1 block bằng cách đó thì còn sửa được, còn 1 cách không explore được khi tạo block nữa đấy, nó sẽ báo lỗi khi explore
  • 0

#30 cuulong

cuulong

    Chưa sử dụng CAD

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

Đã gửi 07 May 2008 - 02:42 PM

Để vẽ một hình như thế này, bạn sẽ làm theo cách nào để nhanh nhất?
http://www.mediafire.com/?3sidnzmtdpe

Hình này thì mình có thể dùng 8 lệnh để hoàn chỉnh...không biết có bạn nào có thủ thuật rút ngắn lệnh hơn nữa không! :cheers:
1- vẽ hình chữ nhật
2- tiếp tục vẽ hình chữ nhật
3- vẽ đường tròn nhỏ
4- vẽ đường tròn lớn ( tâm aray)
5- array (1,2,3)
6- vẽ hình bất kỳ bao hết tất cả lại
7- BOUNDARY
8- xóa rác!
  • 0

#31 duy782006

duy782006

    PHẠM QUỐC DUY

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

Đã gửi 07 May 2008 - 03:48 PM

Hình này thì mình có thể dùng 8 lệnh để hoàn chỉnh...không biết có bạn nào có thủ thuật rút ngắn lệnh hơn nữa không! :blush:
1- vẽ hình chữ nhật
2- tiếp tục vẽ hình chữ nhật
3- vẽ đường tròn nhỏ
4- vẽ đường tròn lớn ( tâm aray)
5- array (1,2,3)
6- vẽ hình bất kỳ bao hết tất cả lại
7- BOUNDARY
8- xóa rác!



Sau bước 1 và 2 chắc chắn bạn phải có 1 lệnh move thì mới ổn.
Tôi cthì dùng copy hoặc insert là xong . 1 lệnh chớ mấy. :cheers:
  • 0

Cứ ngỡ trần gian là cõi thật.Cho nên tất bật đến bây giờ.
Tạo hộp thoại bằng lisp My blog QUY ĐỊNH ĐẶT TÊN TOPIC TRONG CHUYÊN MỤC LISPD http://ktsduy.wordpress.com/
Để cám ơn chỉ cần nhấn rep_up.png
(Là nhấn vào nút đó phía bài viết của người ta í chứ đừng có nhè cái hình này mà nhấn miết đi nha :-D


#32 ssg

ssg

    biết lệnh adcenter

  • Vip
  • PipPipPipPipPipPipPip
  • 1228 Bài viết
Điểm đánh giá: 1087 (rất tốt)

Đã gửi 07 May 2008 - 06:05 PM

Để vẽ một hình như thế này, bạn sẽ làm theo cách nào để nhanh nhất?
http://www.mediafire.com/?3sidnzmtdpe

Mình vẽ với 6 lệnh:

Hình đã gửi
  • 4

#33 gp14

gp14

    DO TUAN GIAP

  • Moderator
  • PipPipPipPipPipPipPip
  • 1860 Bài viết
Điểm đánh giá: 1120 (rất tốt)

Đã gửi 07 May 2008 - 06:08 PM

Mình vẽ với 6 lệnh:

Hình đã gửi

Đúng ý em rồi đấy!chuyên gia cơ khí có khác.
  • 0

#34 henbap

henbap

    biết pan

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

Đã gửi 13 October 2008 - 04:33 PM

EM có file này xin mời các bác thử sức :
- Hiện tại file ko thể copy qua file khác được ...> làm thế nào có thể copy cả mặt bằng để có thể ghép với các file khác
file down đây :
http://www.megaupload.com/?d=UGM5JX3X
  • 0

#35 Fontanka

Fontanka

    biết pan

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

Đã gửi 02 December 2008 - 06:18 AM

chịu roài! :cheers:
  • 0

#36 traitimsat034

traitimsat034

    biết vẽ pline

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

Đã gửi 02 December 2008 - 09:07 AM

EM có file này xin mời các bác thử sức :
- Hiện tại file ko thể copy qua file khác được ...> làm thế nào có thể copy cả mặt bằng để có thể ghép với các file khác
file down đây :
http://www.megaupload.com/?d=UGM5JX3X

nếu chỉ muốn copy sang file khác thì bạn chỉ cần block toàn bộ rồi copy bình thường. sang bản vẽ khác thì bạn explope sau.
còn sâu xa thế nào và cách tạo ra sao thì mình chịu. mong các cao thủ chỉ giáo.
đây là file mình đã copy sang bản khác.
http://www.cadviet.c...file_da_sua.rar
  • 0

#37 hiepquang

hiepquang

    biết dimradius

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

Đã gửi 02 December 2008 - 09:07 AM

Tui không copy được bác ơi :cheers: . Nhưng dùng Xref để ghép các mảnh lại thì được và sẽ tiện lợi hơn trong sửa chữa bác nhỉ ?
  • 0
There was something wrong. I just never read between the lines...

#38 icoffshore

icoffshore

    biết vẽ pline

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

Đã gửi 18 March 2009 - 03:49 PM

Ðây là 1 file DWG có chứa 1 block bị ðóng bãng.
Ðố ai sửa ðýợc block này?

Thử sức nhé!

Mong bác Hoành hãy nói cho các bạn biết cách làm nhý thế nào ðể ðýợc nhý thế. Rất cảm õn bác!
  • 0
Có những lần say rượu té bờ ao
Vợ bắt được chưa đánh roi nào đã khóc
Có cô bé nhà bên nhìn tôi cười khúc khích
Chị giận rồi, tối sang ngủ với em....
http://www.cadviet.c...othed_tiger.jpg
Sống, chiến đấu, học tập, lao động theo gương Bác Hồ vĩ đại!

#39 haanh

haanh

    biết lệnh adcenter

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

Đã gửi 18 March 2009 - 04:13 PM

Ðây là 1 file DWG có chứa 1 block bị ðóng bãng.
Ðố ai sửa ðýợc block này?

Thử sức nhé!

Mong bác Hoành hãy nói cho các bạn biết cách làm nhý thế nào ðể ðýợc nhý thế. Rất cảm õn bác!


Trên CADVIỆT có tất cả hơn ba chục bài viết về chủ đề này rồi mất thời gian!

Không explore được block!, mặc dù đã dùng X và XP?!!
http://www.cadviet.c...Block dóng bang
không explore đối tượng block, khi đã bị modify
http://www.cadviet.c...Block dóng bang
Block ko thể explode đuợc!! Giải quyết thế nào đây???, Mặc dù đã cố gắng, nhưng vẫn pó tay
http://www.cadviet.c...Block dóng bang
  • 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...”


#40 macico

macico

    biết zoom

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

Đã gửi 19 March 2009 - 09:48 AM

Mình vẽ với 6 lệnh:

Hình đã gửi


hay nhỉ, đến lệnh REG thì em bó tay ko bit bác chỉ lại cho em
  • 0