Dành cho những bạn nào quan tâm đến solidworks macro

  • Thread starter huysu
  • Ngày mở chủ đề
H

huysu

Author
Mình có sưu tầm được một số macro như những modun nhỏ trong solidworks. Muốn chỉa sẻ với những bạn nào quan tâm. Đây là link down ạ http://www.mediafire.com/?ku92iqqfpuiytbv

Bạn nào quan tâm đến solidwork macro thì chia sẻ mình với. Tớ đang rất cần hiểu được ý nghĩa của việc thiết kế tham số này. Chú Đào Chi Lăng có ghé thăm topic này thì chỉ giùm cháu nhé
 
Last edited by a moderator:
H

huysu

Author
Ðề: Dành cho những bạn nào quan tâm đến solidworks macro

Dạ đúng là nó giống autolips, nó có tác dụng tự động hóa thiết kế, nhưng mình vẫn đang băn khoăn không hiểu ý nghĩa của việc tự động hóa này là gì, có pro nào biết chỉ mình với
 
P

phongoan

Author
Ðề: Dành cho những bạn nào quan tâm đến solidworks macro

Macro là phần dành cho lập trình,dành cho những người có chút kiến thức về lập trình nhằm tạo ra những chuơng trình tự động nho nhỏ để nâng cao hiệu quả thiết kế của riêng bản thân,về cơ bản tạo ra 1 macro giống như tạo ra một lệnh mới vậy,người sử dụng lập trình sao cho khi chạy macro đó sẽ thực hiện những thao tác mà mình mong muốn mà trong solidworks chưa có lệnh hỗ trợ hoặc phải thực hiện bằng cách kết hợp nhiều lệnh khác nhau.
Ta cũng có thể tạo những macro cho riêng mình với chức năng record macro trong tool macro,tuy nhiên quá trình ghi macro thường hay vấp phải lỗi người dùng phải biết chút ít về lập trình(cụ thể là ngôn ngữ visual basic) mới debug được những lỗi vấp phải để hoàn thiện macro của mình được.
Nói chung là không nên nghiên cứu cái này làm gì cho đau đầu,cứ vận dụng tốt những công cụ có sẵn của Solidworks là phục vụ tốt công việc của mình rồi
 
H

huysu

Author
Ðề: Dành cho những bạn nào quan tâm đến solidworks macro

Bạn ơi, nếu nói như bạn thì người ta nghĩ ra cai macro làm gì hả bạn. Bạn có nghĩ rằng dùng macro để thực hiện lệnh vẽ sẽ đỡ tốn thời gian hơn nhiều không
 
Q

quyethaui

Author
Ðề: Dành cho những bạn nào quan tâm đến solidworks macro

em đang học chút về phần này . bác nào có thể hướng dẫn 1 bài đơn giản được không ạ?
 
Ðề: Dành cho những bạn nào quan tâm đến solidworks macro

Chào các bạn quan tâm đến solidworks macro
Vừa rồi mình có làm thư viện part solidworks. rất nhiều part và được yêu cầu xuất ra các định dạng khác nhau (igs,x_t,...)
vậy nên việc export ra khá là mất thời gian.
Sẵn có tính thích "vọoc" macro, mình đã viết một con để làm việc đó (chỉ bấm một phát là xuất ra đủ các định dạng)
rất vui được chia sẻ với mọi người

file: auto_export.swp
'written by headgear
Dim swApp As Object
Dim longstatus As Long
Dim vModels As Variant
Dim swModel As SldWorks.ModelDoc2
Sub main()
Set swApp = Application.SldWorks
Count = swApp.GetDocumentCount
vModels = swApp.GetDocuments
For Index = LBound(vModels) To UBound(vModels)
Set swModel = vModels(Index)
DocType = swModel.GetType
If DocType=swDocPART Then
FileName=swModel.GetPathName
FileNameLen=Strings.Len(FileName)
If FileNameLen <> 0 Then
FileNameRoot = Strings.Left(FileName, FileNameLen-6)
longstatus = swModel.SaveAs3(FileNameRoot + "IGS", 0, 0)
'save thêm bất cứ định dạng cho phép nào khác ở đây bằng cách thêm đuôi
End If
End If
Next Index
End Sub

macro này sẽ lấy tên các file *.sldprt đang mở và save as dưới dạng các đuôi khác
vào customize/command gán macro này cho một command button mới trên toolbar Macro
vậy là mỗi lần muốn xuất ra hơn chục định dạng, chỉ cần click vào button đó
 
Lượt thích: umy
Ðề: Dành cho những bạn nào quan tâm đến solidworks macro

Chào các bạn
còn đây là một con dùng để render các file .sldprt đang mở ra JPEG
render thường khá lâu, nếu ko muốn ngồi đợi để render từng cái một thì chỉ cần bấm một lần, đi chơi về là sẽ có sản phẩm


'written by headgear
dim swapp as object
dim vmodels as variant
dim part as object
dim boolstatus as boolean
dim longstatus as long, longwarnings as long
dim swraytracerenderer as sldworks.raytracerenderer


sub main()
set swapp=application.sldworks
vmodels=swapp.getdocuments
set swraytracerenderer=swapp.getraytracerenderer(swphotoview)
boolstatus=swraytracerenderer.closeraytracerenderer
for each swmodel in vmodels
swapp.activedoc2 swmodel.gettitle,false,longstatus
doctype=swmodel.gettype
if doctype=swdocpart then
filenamepart=swmodel.getpathname
filenamejpeg=strings.left(filenamepart,len(filenamepart)-6)+"JPG"
if len(filenamejpeg)>3 then
swmodel.shownamedview2 "*Isometric",7
swmodel.viewzoomtofit2
boolstatus=swraytracerenderer.rendertofile(filenamejpeg,0,0)
boolstatus=swraytracerenderer.closeraytracerender
end if
end if
next
boolstatus=swraytracerenderer.closeraytracerender
msgbox "OK. finish rendering"
end sub
 
Lượt thích: umy
U

umy

Author
@giangvn2000 !

Muốn hiểu, cách sử dụng và tự viết MACRO được >> PHẢI hiểu tiếng Anh và biết ít nhiều về ngôn ngử lập trình. > xem 2 bài viết của cậu headgear

Thiếu kiến thức, ko hiểu được lại >> cương ẩu dùng qc viagra để quậy phá >> thấy ngố quá ! Trẻ hư thiếu văn hóa!!
 
Last edited by a moderator:
Top