Đến nội dung


Hình ảnh
* * * * * 3 Bình chọn

[Đã xong] Multipurpose Calculator : Lisp tính toán trên Cad, xuất kết quả ra bản vẽ, Excel, hoặc Clipboard


  • Please log in to reply
32 replies to this topic

#21 KangKung

KangKung

    biết lệnh array

  • Members
  • PipPipPip
  • 189 Bài viết
Điểm đánh giá: 227 (khá)

Đã gửi 16 May 2013 - 02:50 PM

@ThuyLinh: Mình cũng dùng các hàm vla để lấy thông tin đối tượng tuy nhiên với Cad2004 thì không có thuộc tính area của Hatch. Hàm này chỉ áp dụng từ Cad2005 hoặc 2007 trở lên thì phải (Test trên Cad 2008 thì được)

@Bác ĐVH: Inbox file .lsp vào hòm thư cho bác nghiên cứu để tìm ra lỗi nhé. Không dùng Win8 nên chưa biết bệnh gì.


  • 0

#22 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 16 May 2013 - 02:55 PM

1). Dùng biện pháp cũ chuối này thì khỏi sợ tương lai, đó thêm dòng code này vào đầu lisp, thay vì dùng arxload:

(command "cal" "1+2")

2). KK coi lỗi gì mà máy mình load xong, gọi CA và xuất hiện dialog xong thì treo cad luôn?


  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#23 KangKung

KangKung

    biết lệnh array

  • Members
  • PipPipPip
  • 189 Bài viết
Điểm đánh giá: 227 (khá)

Đã gửi 16 May 2013 - 03:25 PM

@cd2k44: Bạn down lại Lisp ở link #1 nhé. Đã cập nhật thêm hatch khi pick điểm chọn diện tích.


  • 0

#24 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 16 May 2013 - 06:39 PM

Nhờ có lsp và nhờ máy ở nhà có cad2013 nên tôi đã test cho bạn, và quả đúng là:

Command: (arxload "geomcal.arx")
; error: ARXLOAD failed

Cad2007 thì OK

Đề nghị 1 trong 2 cách sửa lỗi:

1). Dùng cái này (tức là cắt đuôi .arx đi):

(or cal (arxload "geomcal"))

Cái trên hay hơn cái này:

(arxload "geomcal")

2). Treo củ chuối này ở đầu hoặc cuối lisp:

(command "cal" "1")

Sẽ nghiên cứu thêm để góp ý giùm bạn.


  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#25 KangKung

KangKung

    biết lệnh array

  • Members
  • PipPipPip
  • 189 Bài viết
Điểm đánh giá: 227 (khá)

Đã gửi 16 May 2013 - 07:56 PM

Đã Test rồi bác ạ. (command "cal" "1") không chạy được với Cad2004 còn Cad2008 thì được

Phương án thay thế: (C:cal "1+2") chạy được trên cả Cad2004 và 2008.

Lisp mới sửa đây bác xaydungit.vn hoặc bác nào nhà có điều kiện Test thử trên các loại Cad giúp xem có vấn đề gì không. Thanks

http://www.cadviet.c...alculator_2.zip


  • 0

#26 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 16 May 2013 - 08:23 PM

1). Sao KK có thể dùng (C:Cal "1+2") khi mà hàm Cal chưa được load? Load file fas là lỗi ngay liền:

command:

               By KangKung - 15/05/2013

 

             Nhap CA de chay chuong trinh

; error: no function definition: C:CAL

KK chỉ có thể dùng lệnh command thôi (khác hàm).

Hoặc dùng hàm theo p/a 1 ở trên.

2). KK đã chú ý đến hàm D2R mà quên mất R2D >> bổ sung luôn nhé!

3). Phát hiện ra lỗi treo cad rồi!

Phải: (setvar "dimzin" 0)

 

Command:
               By KangKung - 15/05/2013
 
             Nhap CA de chay chuong trinh
; error: no function definition: C:CAL
KK chỉ có thể dùng (command "cal" "1+2"), bởi nó khác bản chất với hàm trên.
Hoặc KK dùng phương án 1 ở bài trên cũng được.
2). KK đã có chú ý đến hàm R2D mà thiếu mất hàm D2R >> bổ sung luôn nhé!

  • 3

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#27 Song Nhi

Song Nhi

    biết vẽ rectang

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

Đã gửi 16 May 2013 - 10:22 PM

Em muốn góp một vài ý kiến nhỏ này!
 
1. Bác KangKung tập trung hoàn thiện chương trình hiện tại trước, ý kiến của anh chị em trên diễn đàn thì muôn hình vạn trạng lắm, tuỳ thuộc vào nhu cầu công việc của mỗi người, và không thể nào có một công cụ "vạn năng" được, những ý tưởng thể hiện trong chương trình của bác ngay từ đầu đã thực sự là đầy đủ lắm rồi, nếu mà chiều theo hết các ý kiến khác e rằng không xuể?! Bác nên tập trung vào ý kiến các bác đã tham gia test LISP của bác, như vậy là thiết thực nhất!
 
2. Bác nên tập trung theo hướng, làm cho chương trình giao tiếp thân thiện với người dùng, càng tiện dụng và càng gọn thì càng tối ưu, em nói vậy với góc nhìn của em là amateur thui! Tất nhiên, đối với các bác thì chắc chắn là các bác triệt để các vấn đề này rồi!
 
3. Em thích ý tưởng này của chị ThuyLinh nè:
 

Thêm ý kiến nữa (cái này là quan điểm cá nhân thui nhé): Mình thấy cái hình mặt cười cho vào khiến cho chương trình giảm đi 1 phần giá trị. hơi xì tin bạn ạ. Nếu mình là bạn, mình sẽ bỏ nó hoặc thay nó bằng 1 cái logo của mình hoặc công ty, hoặc đơn giản là 1 dòng chữ copyright đánh dấu bản quyền ^^

 
4. Còn sau cùng là một ý kiến của em: bác có thể nhập dòng biểu thức tính toán (Justify = left) và kết quả (Justify = right), đồng thời mở rộng theo chiều dọc box này để lưu được ít nhất 3 dòng tính toán, vì em nghĩ trong lúc tính toán, mọi người sẽ có nhu cầu kiểm tra lại biểu thức, hoặc giả, có thể "kế thừa" trích một đoạn biểu thức nào đó (hoặc toàn biểu thức) để sửa sai hoặc làm tiếp một phép toán mới. Nếu mà có thêm một nút replay với một số bước hạn định thôi, cũng sẽ thật tuyệt diệu!
 
118347_jhbubebjnhi_1.jpg

5. Vấn đề hộp số, em thấy QuickCalc tích hợp trong Acad rất hợp lý!
 
118347_jhbubebjnhi2.jpg
 
6. Nếu có thể bổ xung thêm các hàm lượng giác thì càng tốt - tuy nhiên, đối với những thành phần "không thường trực" này bác nên xếp gọn lại, khi cần thì bung ra: More Options (Alt + >)/Less Options (Alt + <).

Hix, em không biết với DCL thì có thể làm được những điều em nói hay không, nên nếu không được thì các bác tha thứ nhé!


  • 2

#28 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 16 May 2013 - 10:33 PM

Mình phát hiện ra 1 cách để đọc comment của Song Nhi rồi, đó là đọc từ dưới lên trên, từ (6.) đến (2.). Sau đó KK uống 1 hớp nước, hít 1 hơi thật sâu, suy nghĩ thật kỹ càng, rồi đọc tiếp điều (1.). Thế là ổn phải không Song Nhi?  :lol:  :lol:  :lol:


  • 1

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#29 KangKung

KangKung

    biết lệnh array

  • Members
  • PipPipPip
  • 189 Bài viết
Điểm đánh giá: 227 (khá)

Đã gửi 16 May 2013 - 11:04 PM

Post lại Lisp đã sửa lỗi theo comment của bác Hà. Nếu còn lỗi gì phát sinh nữa thì hẹn các bác tuần sau nhé.

 

New Updatehttp://www.cadviet.c...alculator_3.zip

Hy vọng lần này Cad2013 không làm máy bị treo nữa.

@SongNhi: Cảm ơn những góp ý của bạn. Mình sẽ hoàn thiện tối đa Lisp trong khả năng của mình. Các vấn đề bạn Comment mình sẽ cân nhắc tuy nhiên có vấn đề số 4 không khả thi vì Edit_box chỉ cho phép nhập dữ liệu trên cùng 1 hàng. Nếu muốn biểu diễn số liệu nhiều hàng thì phải dùng nhiều editbox. Như thế nhìn sẽ rất xấu mà không có tác dụng gì.


  • 3

#30 ketxu

ketxu

    Copier - Paster - Editor

  • Moderator
  • PipPipPipPipPipPipPip
  • 5678 Bài viết
Điểm đánh giá: 2605 (tuyệt vời)

Đã gửi 17 May 2013 - 09:23 AM

 Các vấn đề bạn Comment mình sẽ cân nhắc tuy nhiên có vấn đề số 4 không khả thi vì Edit_box chỉ cho phép nhập dữ liệu trên cùng 1 hàng. Nếu muốn biểu diễn số liệu nhiều hàng thì phải dùng nhiều editbox. Như thế nhìn sẽ rất xấu mà không có tác dụng gì.

 

Bổ sung 1 listbox bên trên textbox. History là hợp lý bạn ạ


  • 0

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#31 ThuyLinh313

ThuyLinh313

    biết lệnh mtext

  • Members
  • PipPipPipPip
  • 288 Bài viết
Điểm đánh giá: 142 (tàm tạm)

Đã gửi 17 May 2013 - 09:32 AM

Vấn đề số 4 hoàn toàn khả thi. Có thể dùng List box rất đơn giản. Vấn đề là KK đánh giá chức năng đó thế nào và có muốn làm nó hay không thôi. Mình thì nghĩ nó không cần thiết cho lắm vì cách làm hiện tại vẫn đảm bảo đáp ứng nhu cầu
  • 0

#32 KangKung

KangKung

    biết lệnh array

  • Members
  • PipPipPip
  • 189 Bài viết
Điểm đánh giá: 227 (khá)

Đã gửi 17 May 2013 - 11:08 AM

Mình đã thử list box ngay từ phiên bản đầu tiên của Lisp này nhưng lại là vấn đề bố trí thế nào trên dialog. Không khó khăn gì khi lập trình mà là vấn đề thẩm mỹ. Bố trí hợp lý cũng là điều khó khăn trong khi khiếu thẩm mỹ của mình có hạn :D. Ý tưởng ban đầu của mình là dùng 1 list box để lưu history hoặc thêm 1 nút bấm Add to list để lưu những kết quả cần thiết vào list box. Nhưng do hộp thoại to quá nên bỏ đi rồi.
  • 0

#33 engineer0405

engineer0405

    biết vẽ polygon

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

Đã gửi 14 October 2013 - 11:02 AM

Tôi viết Lisp này xuất phát từ ý tưởng của bạn ThuyLinh313 trong Topic

http://www.cadviet.c...y-tinh-cua-cad/

Sau khi đọc xong bài viết của ThuyLinh, thấy ý tưởng hay và ứng dụng tốt nên đã viết code để phục vụ cho công việc của mình. Nay code đã xong, thêm màu mè vào tí và chia sẻ cho anh em CadViet. Ai có nhu cầu thì down về sử dụng. Lisp đang trong quá trình thử nghiệm nên có thể phát sinh lỗi. Ai gặp lỗi xin vui lòng phản hồi để sửa lại code cho hoàn thiện hơn.

Trong Lisp có sử dụng hàm con chuyển số nguyên thành số thực. Bác Hà và bác TueNV test thử xem có lỗi gì không. Thanks các bác.

Đây là giao diện của chương trình + Lisp và hướng dẫn sử dụng.

 

Giao diện chương trình:

71162_muca.jpg

 

Download Lisp tại đây: 

Update ngày 15/05/2013 (xem nội dung Update tại #8) http://www.cadviet.c...calculator2.zip

Update ngày 16/05/2013 (xem nội dung Update tại #14) http://www.cadviet.c...alculator_1.zip

Và hướng dẫn sử dụng Lisp:

http://www.cadviet.c...1162_manual.pdf

Similar topics from web:

Anh ơi lisp này sao chạy trên cad 2013 binhg thường mà qua cad 2014 là bị đứng miết anh à

Ah xem lại em với


  • 0