Đế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

#1381 hadongnat

hadongnat

    biết vẽ line

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

Đã gửi 19 December 2008 - 12:48 PM

Hy vọng đoạn Code này chạy theo đúng ý của bạn :
Tên lệnh là DTL

(defun c:DTL() 
(setq TL (getreal "\nNhap he so ti le :"))
(setq TLe (/ 1 TL))
(command "dimlfac" TLe)
(command "graphscr")
(prompt "Ban ghi kich thuoc :")
(command "dimaligned")
(princ)
)
Chúc thành công. :cheers:

khả năng là khó anh à. vì nó can thiệp cả đến line,dim... gần như tất cả các lệnh vẽ cơ bản anh à.
  • 0

#1382 black_mask

black_mask

    Chưa sử dụng CAD

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

Đã gửi 19 December 2008 - 12:53 PM

Xin chào anh Nguyễn Hoành và tất cả các bạn. Lúc trýớc mình nhờ fix cái lisp sắp dim. Mà chýa thấy trả lời, mình ðang mong lắm. Thanks trýớc nha.

Với mình có 1 yêu cầu nữa, mong các bạn giúp. Mình thấy có 1 cái lisp vẽ các ðiểm theo toạ ðộ từ file text, vậy thì mình có thể lấy dữ liệu từ file text ( nhý là các toạ ðộ trong 1 bảng có nhiều dòng và nhiều cột ) và viết thành 1 bảng trong cad ðýợc không ?
PS: hoặc lấy toạ ðộ trực tiếp của các ðiểm trong cad và viết thành bảng cũng ðựoc.
  • 0

#1383 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 19 December 2008 - 01:12 PM

cám ơn anh đã trả lời em. em đã dùng thử nhưng không được anh à. em nói rõ hơn anh nhá. em vẽ 1-1 sau đó sc xuống 1/25 = 0.04 sau đó dimlfac 25 thi sẽ đo dim trong hình vẽ là tỉ lệ 1/25 nhưng sau đó em muốn vẽ gì đó trong hình vẽ đã sc đó ví dụ em muốn vẽ 1 đoạn line dài 1000 thì em phải nhập là 40 ( =1000/25). ý em là mình có thể dùng lisp để có thể không cần chia cho 25 khi vẽ đường line đó. cảm ơn anh ạ.

Bạn xem ở đây nhé : http://www.cadviet.c...o...=205&st=320
  • 0

#1384 Auhtumn

Auhtumn

    biết zoom

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

Đã gửi 19 December 2008 - 01:36 PM

Mọi người ơi em đang học năm 2 kiến trúc - dhxd, em đang vẽ trường tiểu học, có mấy vấn đề phát sinh quá mà chẳng có ai giải thích, post bài lên diễn đàn rồi đợi các bạn trả lời thì..., nick chat của em là : bring_me_your_dream_of_love.
Mọi người add nick em vào, có gì tư vấn cho em vài cái mẹo vẽ, em vẽ gần xong rồi còn mỗi cái MC AA, mọi người add giùm em nhé, em cám ơn rất nhiều:D
  • 0

#1385 hadongnat

hadongnat

    biết vẽ line

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

Đã gửi 19 December 2008 - 02:10 PM

Bạn xem ở đây nhé : http://www.cadviet.c...o...=205&st=320

Vâng. Cám ơn anh đã nhiệt tình giúp đỡ. Đúng là cái em đang cần. Em cũng đang học về layou nhưng những người mới biết vẽ như em đều gặp phải trường hợp như thế này. Hi vọng dần em sẽ chuyển dần sang layout. Chúc anh thành công trong cuộc sống.
  • 0

#1386 hadongnat

hadongnat

    biết vẽ line

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

Đã gửi 19 December 2008 - 02:12 PM

Tất cả có 6 lệnh: Line, Circle, Rectangle, Copy, Move, Offset. Có lẽ cũng đủ dùng cho các thao tác cơ bản?
Xin lưu ý các dòng nhắc nhở ở đầu chương trình. Tác giả vẫn bảo lưu quan điểm và mong rằng đến một lúc nào đó sẽ không còn ai cần đến chuơng trình này nữa!

Anh có thể viết thêm lệnh ML nữa được không à. Em hay vẽ với lệnh ML. Cám ơn anh trước à
  • 0

#1387 Saudoihamchoi08

Saudoihamchoi08

    biết pan

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

Đã gửi 19 December 2008 - 04:47 PM

Gửi bạn saudoihamchoi08,
Quả thực mình không hiểu nổi bạn nữa. Bạn hãy tự xem lại các bài post trước của bạn đi. Yêu cầu của bạn không phải không thực hiện được mà không ai có thể hiểu được bạn muốn gì khi mỗi lần bạn yêu cầu một kiểu.
Cái lisp của mình nếu bạn chịu khó đọc, bạn hoàn toàn có thể sửa nó theo ý của bạn và áp dụng nó cho bài 2 của bạn.
Thực tề nếu như bạn muốn vẽ n đường thẳng không phải là việc khó nhưng quy luật của các đường này ra sao chứ, vẽ bừa thì nó sẽ như cái mà mình đã gửi bạn.
Bạn có hiểu tại sao mình đặt tên lisp là trò mèo không???
Cái lisp trò mèo 1 chỉ là cải tiến tí chút từ cái trò mèo mà thôi. Bạn suy nghĩ và làm việc kiểu đại khái như vậy thì thực chất bạn đang làm cái trò mèo đó đấy.
Mình nhắc lại, bạn cần phải hiểu bạn muốn cái gì và trình bày cụ thể, chính xác cái yêu cầu mình muốn theo đúng ngôn ngữ mà người kỹ thuật sử dụng.
Ở bài 1, theo yêu cầu lần trước bạn không hề nói tới việc chọn điểm thứ hai phải là đầu của đoạn thẳng kế tiếp, thậm chí bạn cũng không thèm nói tới yêu cầu là đường thẳng thứ hai sẽ vuông góc với đường thẳng thứ nhất. Bạn cần nhớ khác phương không có nghĩa là vuông góc. Sở dĩ trong cái trò mèo 1 mình làm vuông góc vì mình nhìn cái hình của bạn thôi. Trong bài 1 rõ ràng bạn nói sau khi vẽ xong L5 thì kết thúc. Vậy mà bấy giờ bạn lại bảo vẽ n đường. Và n đường này theo quy luật nào chứ. Thậm chí cái quy luật mà bạn nói với n=5 cũng đã sai toét tòe loe so với cái hình bạn post lần trước. Bạn không tin hả? Cái L4 của bạn trên hình làm sao mà vẽ với quy luật đó.Bạn nghĩ cái gì vậy.?
Ở bài 2, lần trước bạn có đưa hình mẫu cho n=1, 2, 3 nhưng với n=4, n=5 ..... thì không và chẳng hề có một thông số gì để người đọc phát hiện ra cái quy luật bạn muốn. Lần này bạn lại cung cấp trần sì chỉ có n=2 và cũng chẳng hề cho biết cái quy luật của nó ra sao.Bạn có giới hạn n=5 là quá dể dàng rồi nhưng vẫn phải có quy định cho n=3,4,5 mới có thể vẽ được. Lại còn khi nào thì bạn sẽ chọn l1 là đường đối xứng, và khi nào thì là l2 nữa hay là tuỳ nghi lựa chọn. Dù thế nào bạn cũng phải cung cấp thông tin cho chính xác thì người khác mới giúp bạn được. Bằng không tất cả chỉ là trò mèo vì người viết như tôi cũng chả biết để làm gì , và người cần như bạn cũng quẳng đi.
Bạn là người làm kỹ thuật, đừng bao giờ nói những điều mà chính mình cũng không hiểu. Hảy tìm hiểu cho kỹ, hiểu cho bằng được cái mình cần đã.
Mình rất không thích khi phải nói với bạn thế này, nhưng không thể không nói vì ít nhất cũng để bạn hiểu mình nghĩ gì về bạn.
Rất mong bạn sẽ suy nghĩ nghiêm túc về những điều mình nói, và đừng giận mình lâu.
Cám ơn bạn đã đọc bài.

TB: Bạn có thể sử dụng cái lisp của mình miễn phí. Hãy đọc kỹ nó và vận dụng vào yêu cầu của bạn. Nếu có khó khăn chỗ nào thì post lên để cùng trao đổi.
Việc bạn yêu cầu lisp khi vẽ phải thể hiện con trỏ chữ thập mình chưa biết làm bạn ạ. Có thể có cách nhưng mình chưa biết, bạn hãy tìm hiểu thêm nhưng theo mình điều đó không thực sự cần vì lisp nó tự động chạy rất nhanh chả thể theo dõi cái con trỏ đó nó chạy đâu. Nếu muốn bạn cứ tìm hiểu thêm nhé.
Chúc bạn thành công.



Bộ tớ nói khó hiểu lắm hả. :s_big:
Có bác nào hiểu ý đồ của tớ không vậy. :cheers:
Tớ không phải bày trò để đùa giỡn trên diễn đàn nhưng đây là cái mà tớ đang cần.
Mọi người tin tưởng tớ nhé.
Tớ càng nói rõ yêu cầu thì càng gây khó hiểu thật sao.
Tớ không hiểu ti gì về lisp cả.
Ngày mai tớ sẽ cố gắng nói lại 1 lần nữa thật dễ hiểu cho bác bình và các cao thủ giúp đỡ.
  • 0

#1388 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 19 December 2008 - 05:40 PM

Bộ tớ nói khó hiểu lắm hả. :s_big:
Có bác nào hiểu ý đồ của tớ không vậy. :cheers:
Tớ không phải bày trò để đùa giỡn trên diễn đàn nhưng đây là cái mà tớ đang cần.
Mọi người tin tưởng tớ nhé.
Tớ càng nói rõ yêu cầu thì càng gây khó hiểu thật sao.
Tớ không hiểu ti gì về lisp cả.
Ngày mai tớ sẽ cố gắng nói lại 1 lần nữa thật dễ hiểu cho bác bình và các cao thủ giúp đỡ.

Bạn add địa chỉ Yahoo của mình vào cho dễ trao đổi, không nên làm phiền diễn đàn vì chuyện không đáng nói nữa. pt_binh@yahoo.com níck pt_binh
  • 0
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#1389 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 19 December 2008 - 06:19 PM

Anh có thể viết thêm lệnh ML nữa được không à. Em hay vẽ với lệnh ML. Cám ơn anh trước à

Rất tiếc, ML không làm theo các kiểu trên được. Mong bạn thông cảm!
  • 0

#1390 Mr Cuong

Mr Cuong

    biết zoom

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

Đã gửi 19 December 2008 - 10:29 PM

Ở trong CAD có sẳn rồi bạn ơi.
Lệnh ghi kích thước theo đường thẳng :
Command: _dimlinear
Specify first extension line origin or < select object >: Gõ enter để chọn đối tượng

Select object to dimension: : Chọn đối tượng để ghi kích thước
Specify dimension line location or
[Mtext/Text/Angle/Horizontal/Vertical/Rotated]:
Dimension text = 3620

Lệnh ghi kích thước theo đường xiên :
Command: _dimaligned
Specify first extension line origin or < select object >: Gõ enter để chọn đối tượng

Select object to dimension: : Chọn đối tượng để ghi kích thước
Specify dimension line location or
[Mtext/Text/Angle]:
Dimension text = 14051

Chúc thành công :cheers:


Bạn oi! Lệnh đó chỉ đo được 1 đối tượng thôi. Mình cần đo nhiều đối tượng một lúc cơ. Có cách nào khác không ban ?
  • 0

#1391 Mr Cuong

Mr Cuong

    biết zoom

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

Đã gửi 19 December 2008 - 10:34 PM

bạn dùng lệnh qdim(quickdim) là nhanh nhất.lệnh này cho phép dim nhiều đối tượng 1 lúc.

Mình thử Lệnh này của bạn mà không được Nó báo thế này này:(Unknown command "QUICKDIM". Press F1 for help.) Mình tim trong phần help mà không có phần nào nói về lệnh này Có cách nào giúp minh không
  • 0

#1392 Mr Cuong

Mr Cuong

    biết zoom

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

Đã gửi 19 December 2008 - 10:41 PM

Help me! Help me!
Có cách nào giúp em xuất toạ độ X,Y, Khoảng cách giữa các đỉnh liên tiếp của 1 đường polyline thành 1 bảng không ?
  • 0

#1393 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 20 December 2008 - 12:04 PM

Help me! Help me!
Có cách nào giúp em xuất toạ độ X,Y, Khoảng cách giữa các đỉnh liên tiếp của 1 đường polyline thành 1 bảng không ?

Chào mr Cuong,
Đây là đoạn lisp lấy tất cả các tọa độ đỉnh của một polyline mình mót được trong tài liệu của cụ Jeff Sander. Bạn có thể tham khảo. Trong lisp này chưa có phần tính khoảng cách giũa các đỉnh như bạn yêu cầu. Việc này không khó khi bạn đã có tọa độ các đỉnh. Hy vọng bạn sẽ biết cách làm.
http://www.cadviet.c...aydinhpline.lsp
Nếu bạn thực sự không thể làm được, hãy post lên mọi người sẽ giúp.
Theo mình bạn nên tự làm để hiểu rõ hơn về lisp và có thể tự mình xoay xở được với công việc của bạn.
Chúc bạn thành công.
TB: Nếu bạn cần tài liệu để học về lisp, hãy tham khảo ngay trên diễn đàn này.
  • 0
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#1394 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 20 December 2008 - 01:43 PM

Help me! Help me!
Có cách nào giúp em xuất toạ độ X,Y, Khoảng cách giữa các đỉnh liên tiếp của 1 đường polyline thành 1 bảng không ?

Nếu là dân địa chính, bạn dùng thử chương trình sau. File lisp hoàn chỉnh ở bài của ssg post lúc 14:08, Nov 8 2008. Tên lệnh VC:

http://www.cadviet.c...o...60&start=60

Nếu không phải dân địa chính, có thể sửa chương trình 1 chút (địa chính đảo ngược hệ toạ độ X tung Y hoành). Bạn không tự sửa được thì reply, ssg sẽ sửa theo ý bạn.
  • 0

#1395 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 20 December 2008 - 01:53 PM

Mình thử Lệnh này của bạn mà không được Nó báo thế này này:(Unknown command "QUICKDIM". Press F1 for help.) Mình tim trong phần help mà không có phần nào nói về lệnh này Có cách nào giúp minh không

Tên lệnh là qdim chứ không phải là quickdim. Lệnh này cho phép chọn đối tượng cùng một lúc và ghi kích thước dưới dạng dimlinear. Bạn gõ quickdim là sai rồi.
  • 0

#1396 transu

transu

    biết vẽ spline

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

Đã gửi 20 December 2008 - 04:32 PM

Mình thử Lệnh này của bạn mà không được Nó báo thế này này:(Unknown command "QUICKDIM". Press F1 for help.) Mình tim trong phần help mà không có phần nào nói về lệnh này Có cách nào giúp minh không

ra lệnh tắt là qdim lệnh này ko có trong program nhưng có ở thanh công cụ dimension đó
  • 0

#1397 Mr Cuong

Mr Cuong

    biết zoom

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

Đã gửi 22 December 2008 - 12:09 AM

ra lệnh tắt là qdim lệnh này ko có trong program nhưng có ở thanh công cụ dimension đó

Rất cảm ơn bạn nha.Lệnh này chỉ đo theo hướng vuông góc thôi còn hướng siên thì sao ha ban.
  • 0

#1398 Mr Cuong

Mr Cuong

    biết zoom

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

Đã gửi 22 December 2008 - 12:37 AM

Nếu là dân địa chính, bạn dùng thử chương trình sau. File lisp hoàn chỉnh ở bài của ssg post lúc 14:08, Nov 8 2008. Tên lệnh VC:

http://www.cadviet.c...o...60&start=60

Nếu không phải dân địa chính, có thể sửa chương trình 1 chút (địa chính đảo ngược hệ toạ độ X tung Y hoành). Bạn không tự sửa được thì reply, ssg sẽ sửa theo ý bạn.

Rất cảm ơn bạn ssg nha. Cái này rát đúng với yêu cầu của mình. Chúc bạn luôn vui khoẻ đạt được nhìu thành công trong cuộc sống !
  • 0

#1399 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 December 2008 - 01:13 PM

Chào PROs!

Tôi đang có 1 công việc cần làm, tôi nghĩ là Lisp có thể giải quyết được. Vì vậy tôi viết lên đây mong nhận được sự giúp đỡ.
File dữ liệu của tôi là các đường Polyline, tôi vẽ hình dạng đường giao thông. Hiện nay tôi muốn có Centerline của các đường đó. Tôi hi vọng Lisp có thể chạy ra được. Chân thành cảm ơn.
  • 0

#1400 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 December 2008 - 01:14 PM

Tôi xin lưu ý thêm, không thể Offset, vì tôi muốn có đương centerline liền luôn.

Thanks!
  • 0