机械必威体育网址

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 5987|回复: 11
打印 上一主题 下一主题

SolidWorks 二次开发 求助

[复制链接]
跳转到指定楼层
1#
发表于 2016-1-10 22:28:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请问有没有哪位大哥大姐对用c++对SolidWorks进行二次开发比较熟悉的,比如下面这个轮毂怎么用C++程序画出来  W8 N' B/ I/ j$ t; Y6 s& m: L
这是轮毂源文件1 ?4 Q7 a) g5 ?# }0 Q6 Z. H. s
各位大哥大姐如有其他三维建模程序的,能不能传给小弟我学习学习,感激不尽了!小弟这边也有些机械方面的资料可以和大家共享。
% `7 O( k6 ^6 B5 V5 r; L下面是小弟编的一个程序,新建文件——创建圆柱。1 h1 F8 `3 |3 d$ N, N4 _& _
/* NOTE: You will need to add the -GX flag to your Project Options in Project->Settings->C/C++*/
7 e4 i- n8 F8 @. |2 K; {// swobj.cpp : Implementation of Cswobj3 {0 L3 k* n" |* |& P
#include "stdafx.h"
& U; Z, r: F& F9 k#include "111.h"' [5 j& Y  k1 d" c
#include "swobj.h"/ N* c( q& K: G; Y) O

* @1 r, z+ _) Q, t/////////////////////////////////////////////////////////////////////////////
3 f! H7 o) @" r; @7 D// Cswobj& {2 t! u& G) l, y5 F
% q0 N1 U" D1 S5 A
void Cswobj::AddUserInterface()* I; `1 o0 X7 N* T' N5 f7 f! ]
{, V" Y! m2 o4 W. V" L. I5 D5 F
        AddToolbar();" K1 }8 {( l- d
        AddMenus();2 y  p) b" Y8 N
}
8 Q6 a3 C6 c- `) W! J* E5 @) T# y5 y& a  l
void Cswobj::RemoveUserInterface()
) K* n7 B) I3 X6 e7 v( y$ G{5 T9 l: s: R( X! H+ n
        RemoveMenus();( C4 D( v5 M+ L  ?5 j
        RemoveToolbar();
1 Q  ~$ m. G: S  w4 n: l}
! R) c7 V7 |* s: D* c6 M" O4 G% C( d$ j& m3 z
void Cswobj::AddMenus()9 S4 s+ _2 r6 V* D
{
, |2 j/ A7 W3 c( |0 u8 ^+ R        long retval = 0;" k9 ^( `; i4 S& r) [* z
        VARIANT_BOOL ok;6 `9 G. Q1 \" q
        long type;4 a% ?& v/ E; F: N* M3 L/ y
        long position;" s& q: Q# O1 x1 B* i
        CComBSTR menu;
; @# E/ J) F1 w( @7 E: K+ y; F        CComBSTR method;
, ^+ t2 U9 |; u0 i- I( y; N2 U8 P        CComBSTR update;
+ w' w6 |$ d# w4 {) X+ s        CComBSTR hint;
- o, p* x( \/ W4 @7 q/ O0 q; J3 h1 X
        // Add menu for main frame
9 _5 Z% ]  ]7 E4 M        type = swDocNONE;
6 @0 b) P' Y7 M" n6 t5 W        position = 3;
$ ~9 O1 v' I3 F# U* N# X* f+ p& m        menu.LoadString(IDS_MY1_MENU);
4 L3 p% g- f: H% w( T0 X( h        m_iSldWorks->AddMenu(type, menu, position, &retval);
% _8 i  z; D1 t: f' W/ M( o/ W; O* M& J! [# B0 r9 D' w0 Q6 s. |
        position = -1;
8 f/ k2 y$ j' x, t, b        menu.LoadString(IDS_MY1_START_NOTEPAD_ITEM);, M; {8 W7 v  b" P& p
        method.LoadString(IDS_MY1_START_NOTEPAD_METHOD);' y  n4 B; R" \6 x
        hint.LoadString(IDS_MY1_START_NOTEPAD_HINT);
/ t( z6 a3 C! e) b8 C        m_iSldWorks->AddMenuItem2(type, m_swCookie, menu, position, method, update, hint, &ok);9 B$ X! V2 P7 N8 g

3 y9 Q1 K! n+ n        position = -1;  //wb
  E3 T- e* U( \$ a5 B+ X; p        menu.LoadString(IDS_111_ITEM);# {3 K9 ^- Z/ _6 ~+ x' f
        method.LoadString(IDS_111_METHOD);+ m6 ?+ F5 v! P' g( j8 V4 a
        hint.LoadString(IDS_111_HINT);
# G& ^1 m% `1 B  y& b        m_iSldWorks->AddMenuItem2(type, m_swCookie, menu, position, method, update, hint, &ok);
& p1 `. ~$ ^# J" _; t
; l5 V0 `0 u( L5 h; ^        // Add menu for part frame1 Q* b& d9 T" m" n  L4 S6 a6 S
        type = swDocPART;
2 d; Z9 l2 U9 @, D# S& x( ^! s        position = 5;
7 y# u4 x' U( Y( T/ s( Z2 w        menu.LoadString(IDS_MY1_MENU);
6 u  u  I* Q7 y; d5 {        m_iSldWorks->AddMenu(type, menu, position, &retval);* j" C4 j- z9 R" [
4 \; C3 }2 w1 D2 l% k0 R
        position = -1;  //wb6 m% d( q( o5 J) A
        menu.LoadString(IDS_111_ITEM);
+ l( J, N1 h! u        method.LoadString(IDS_111_METHOD);7 k: A  `/ H6 M5 f
        hint.LoadString(IDS_111_HINT);8 @1 N) i% k1 e9 D. J& v
        m_iSldWorks->AddMenuItem2(type, m_swCookie, menu, position, method, update, hint, &ok);
3 d8 ^* ~3 N! ?' s. @" W5 e! Y
1 Q/ O+ z. s- C        position = -1;  //wb7 F: F1 y3 C) m9 u6 V2 L
        menu.LoadString(IDS_111_ITEM2);
, k3 ?4 a0 v3 A( S        method.LoadString(IDS_111_METHOD2);1 y+ Q1 h# E; T2 ~
        hint.LoadString(IDS_111_HINT2);
, J0 k" W5 |, \1 d+ k8 D* j! z  z        m_iSldWorks->AddMenuItem2(type, m_swCookie, menu, position, method, update, hint, &ok);
: i  ^0 J5 X% ]0 ]+ {; ~% ^
. R" P7 \( D! f7 z6 F* g7 }9 ?* {        position = -1;2 ?* a, P! W9 W* s* N5 ]) E
        menu.LoadString(IDS_MY1_START_NOTEPAD_ITEM);
1 K8 _* J% y$ }/ ~  H: s$ C        method.LoadString(IDS_MY1_START_NOTEPAD_METHOD);! U- x$ I2 l: ~
        hint.LoadString(IDS_MY1_START_NOTEPAD_HINT);' \+ h1 e* W+ |, A* c' M
        m_iSldWorks->AddMenuItem2(type, m_swCookie, menu, position, method, update, hint, &ok);1 c4 w& o" N) ^" Z7 N) K% n

4 z# {! N, W4 ?+ ]3 ~) r; [9 v# r0 ^        // Add menu for assembly frame
9 u; _& ^' l# w: ^. W        type = swDocASSEMBLY;
2 r$ j3 y8 R! e        position = 5;6 }/ e2 N5 V$ ~2 ?3 n9 M% X) }- N/ Y
        menu.LoadString(IDS_MY1_MENU);% [! D& ?$ Q7 R* Z$ V% X4 h1 G
        m_iSldWorks->AddMenu(type, menu, position, &retval);
3 y6 W5 w4 `5 e
. U( {8 V+ K2 J* ^  q; [        position = -1;
7 a! ^, I, r4 j; }- J        menu.LoadString(IDS_MY1_START_NOTEPAD_ITEM);
; ^/ V0 o4 w  o        method.LoadString(IDS_MY1_START_NOTEPAD_METHOD);3 x% C" F) d9 o3 A# V- }
        hint.LoadString(IDS_MY1_START_NOTEPAD_HINT);
0 d. r6 _  ^* z6 l6 C8 X4 Q5 M2 F        m_iSldWorks->AddMenuItem2(type, m_swCookie, menu, position, method, update, hint, &ok);- N1 ~  S  m% {: x
4 [4 m( N: P$ q6 ?9 x$ [
        // Add menu for drawing frame
, W+ A" f- p" G1 F3 \' P        type = swDocDRAWING;
, R  [  H9 S0 r& z        position = 5;
4 Y% i+ S) c- x; r( J( O3 w+ }        menu.LoadString(IDS_MY1_MENU);
' r/ [  c4 U$ N" Z        m_iSldWorks->AddMenu(type, menu, position, &retval);
; `$ y5 [4 v' |" B* ?5 L        position = -1;& ?: A; a1 @0 \5 K6 I( z* A
        menu.LoadString(IDS_MY1_START_NOTEPAD_ITEM);
1 d1 ^# Z1 b+ I) c. h) E" Z( D        method.LoadString(IDS_MY1_START_NOTEPAD_METHOD);
8 s. C$ q" A- d( k8 w/ O        hint.LoadString(IDS_MY1_START_NOTEPAD_HINT);- T9 x. Q) g7 |7 {+ n  b
        m_iSldWorks->AddMenuItem2(type, m_swCookie, menu, position, method, update, hint, &ok);
6 X' e2 ^* T$ X# J+ G6 E7 _& d
% x9 f4 W3 M9 d' a: a- D4 n2 F}
1 N4 j/ D; O0 p. o, ~, I( R2 v6 x% r7 b
void Cswobj::RemoveMenus()
5 E  r$ s+ K+ i! i' S6 ~8 D{  p6 }' C& ^4 U& d3 {
        VARIANT_BOOL ok;
$ ]( J; ^+ l4 J- ~        CComBSTR menu;
( M  ?% [. C' D- ]$ X
( c5 @6 Q$ R8 P: {' |* F        menu.LoadString(IDS_MY1_MENU);
( [/ Z% U( U# a: Y' v        m_iSldWorks->RemoveMenu(swDocNONE, menu, NULL, &ok);% v, a0 V$ M* S0 P
        m_iSldWorks->RemoveMenu(swDocPART, menu, NULL, &ok);9 W* Z3 d3 a+ u! f% d
        m_iSldWorks->RemoveMenu(swDocASSEMBLY, menu, NULL, &ok);# ]; v+ L: g! _0 e# ?" N
        m_iSldWorks->RemoveMenu(swDocDRAWING, menu, NULL, &ok);$ u" X- ?% Q- N8 ]5 w1 p( }  A" d
}8 C5 Q4 x) E0 C% V2 s: }, `
+ L" s& j- c  K7 g; ?+ e. o, |
void Cswobj::AddToolbar()6 ?' J& M  E5 |' ]
{
8 E0 n+ H+ `$ V, b        VARIANT_BOOL stat = VARIANT_FALSE;
9 C) P" ~. g3 P. E        VARIANT_BOOL ok;5 U. W* X3 o' a" P  U
        HRESULT hres;8 f' T! G, E: R" @* n: }

9 K( A& J0 j8 b- B' L        CComBSTR title;6 C# T5 l3 l* O& f. y8 }
        CComBSTR callback;7 N& r# u% C/ A; X  M$ a  R
        CComBSTR update;
2 ]7 n# ~, Q( H/ L& B0 A        CComBSTR tip;
* i" I# n; Y, X  }/ H4 F; ]/ [9 X( W# [        CComBSTR hint;; k% e/ }3 @- W7 E9 N0 y
        if (m_lToolbarID == 0)
" l/ c: V. r: K" U! m        {
! Y/ f& _$ i7 v4 ^: V; L                title.LoadString(IDS_MY1_TOOLBAR_TITLE);
, ]1 ~$ G: S! j# p                callback.LoadString(IDS_MY1_TOOLBAR_CALLBACK);9 {# _5 ?3 D. ^1 F* c( N
                update.LoadString(IDS_MY1_TOOLBAR_UPDATE);5 I8 A- |0 o3 S- O) S8 ?, y: J$ j
                tip.LoadString(IDS_MY1_TOOLBAR_TIP);& e" H6 ]  h$ E8 l: f4 |
                hint.LoadString(IDS_MY1_TOOLBAR_HINT);: X* h" b* q( B4 e1 |1 ?1 q

6 B& b$ M  F1 r' ?  a                hres = m_iSldWorks->AddToolbar3(m_swCookie, title, IDR_TOOLBAR_SMALL, IDR_TOOLBAR_LARGE, -1,
& h' D# ~9 ]$ }$ C. J                                                                                swDocTemplateTypeNONE|swDocTemplateTypePART|swDocTemplateTypeASSEMBLY|swDocTemplateTypeDRAWING, &m_lToolbarID);
  f& N/ j$ B; v: R7 d) }
- o# L+ Z3 \% [2 G                m_iSldWorks->AddToolbarCommand2(m_swCookie, m_lToolbarID, 0, callback, update, tip, hint, &ok);
& o3 o$ [, w, A8 U" z% R+ h7 _( p) s                m_iSldWorks->AddToolbarCommand2(m_swCookie, m_lToolbarID, 1, callback, update, tip, hint, &ok);8 F1 p# i, I: ]* e3 j
                m_iSldWorks->AddToolbarCommand2(m_swCookie, m_lToolbarID, 2, callback, update, tip, hint, &ok);& W* s- I' U# J. [7 }
8 x2 m" c0 P) D3 K1 o' q
        }* p& h+ Y. J( r1 @. S; T
}3 c( n& O9 ^  b& p
3 L; P! ]: E" y- B5 @" U
void Cswobj::RemoveToolbar()8 ^( s1 A! K  U( X5 A* u
{: h7 N' f5 l! f7 c( q
        if (m_lToolbarID != 0)  S: w3 d0 y, U
        {: `& ?: D& D8 k
                VARIANT_BOOL stat;, G* e( |2 j  W+ I- \
2 u: e  g6 ^" H: N! n6 x" ~
                HRESULT hres = m_iSldWorks->RemoveToolbar2( m_swCookie, m_lToolbarID, &stat);
( y$ [5 d4 ]" C                m_lToolbarID = 0;
% L* q! ~: [' `$ @& R' N& d& B1 q        }
/ L- h  y4 S# n2 s" n- m) N}
6 i, h) |! v1 f" c4 B- j2 o: X8 ]+ a3 z+ I0 z3 o( `/ l& h# V- p
6 }: s" q8 x% K# ]
/////////////////////////////////////////////////////////////////////////////
$ r' q& f& f: @1 Z// ISwAddin implementation2 k8 Y" T! K$ g, T: c' J) [: w% S
% e* ~" C* |) |, k  ~
STDMETHODIMP Cswobj::ConnectToSW(IDispatch * ThisSW, LONG Cookie, VARIANT_BOOL * IsConnected)* |% a; F- |6 b+ b8 W, e
{2 T3 [. T$ ?1 U0 R4 {( ^1 o
        VARIANT_BOOL status;
, K& w* P$ ~" G( V2 \( k* n" W" W6 X) a+ x, R  j  u3 Q
        if (IsConnected == NULL)
' X; A: {" y2 z2 U" `) ?4 M                return E_POINTER;, R4 j- U! g( C

) J0 w1 h9 z2 n+ Z% ^( m$ L4 t       
! `$ V! {3 M/ ^, F' ~9 m: W' R+ M5 |        m_swCookie = Cookie;; d' J' K8 e* m" u7 O; i
        m_iSldWorks = CComQIPtr<ISldWorks, &__uuidof(ISldWorks)>(ThisSW);
) e) b/ v. C5 d        if (m_iSldWorks != NULL)
" s! r( V- t- N+ ?! N/ u% O        {        & t! D& B/ Y; F8 B1 C" Y! `, _
                m_iSldWorks->SetAddinCallbackInfo((long)_Module.GetModuleInstance(), static_cast<Iswobj*>(this), m_swCookie, &status);
8 Y- K# O/ G1 Y# v; d9 G* O* k7 V                AddUserInterface();
' S! |9 c6 F' w        }" N5 F; S" o; J: Z7 }

1 K% C" p; z! ^$ r! p5 f) K8 S6 ~        return S_OK;' ]' t/ Y5 Y1 T+ W3 B( P
}
+ t* i4 B8 ^0 ]* ]( F8 C9 F/ F7 @$ p" ?, H* [% y
STDMETHODIMP Cswobj:isconnectFromSW(VARIANT_BOOL * IsDisconnected)' s5 Z& g9 |3 P; w2 J" W( F! n
{( g4 n& g# h1 `: [: _
        if (IsDisconnected == NULL)
: s" F# F, `9 x7 `; v0 Q$ S                return E_POINTER;/ U- ^  v) D- G, |

: u: {, k  S8 f  l        if (m_iSldWorks != NULL)
; [' C9 x9 ?: a5 `, a; \        {
3 J1 ?4 w% a- S5 t) |' E7 x, M5 C& h                RemoveUserInterface();& p1 I# [& D" K* K  R; Q1 G6 L9 _
                m_iSldWorks.Release();( v" g# v" @4 B3 W
        }
; x: g& E2 s# A. m) |% h- m
/ n3 Z9 D: T7 Y- w        return E_NOTIMPL;& M4 S8 k2 s# V4 q9 W$ \
}' C, m+ c' {0 ~% B& {; D8 G

' F8 h! m* w7 v$ H  ?$ r  k' D$ r1 P, G* _2 B
/////////////////////////////////////////////////////////////////////////////6 `- G/ Y; T2 q. K. T" b
// DSldWorksEvents implementation( f  X0 Z8 T; q/ @9 I1 o, d
5 \; X0 |* _+ c+ m3 Z; w2 `+ O3 \
  y& f! ~& l! f0 Z$ a1 e
/////////////////////////////////////////////////////////////////////////////! B4 Z4 b4 n, [2 _% [; n& J$ t4 _8 \
// Iswobj implementation
. e% j- y8 b/ g* \3 q4 F6 t+ }
1 w/ X6 b* n1 ySTDMETHODIMP Cswobj::StartNotepad()
$ U6 d8 v) s! q4 F! m2 r( ~% P" `{/ E7 i8 C+ B( }, E  q/ W, G1 d/ l
        // TODO: Add your implementation code here
. ?' k) Y0 X6 j" a; T" {0 w        ::WinExec("Notepad.exe", SW_SHOW);
% k2 U! r4 ^. Z7 m$ C
; g4 b6 ^8 k; e! M6 ~' A        return S_OK;4 O# n/ F/ W: B2 q
}
" u. C% ?/ d6 g8 k" m" @3 D8 H0 i
0 U; x* K2 y2 M* G6 Q5 L) XSTDMETHODIMP Cswobj::ToolbarUpdate(long *status)
) X! `" `* f6 I: ?{% V/ [" h/ H2 V$ N% X( |
        HRESULT retval = S_OK;
6 h, S  H2 V1 ~2 \. B
* U7 O+ H6 T& O1 I' m* t6 I        *status = 1;7 Y5 g. C  ~; t/ S
: |0 D7 l! w2 _) w/ ?$ a
        return S_OK;7 K3 e' z' q* x
}
" j" y" H) ]. b* i) u1 [- ~' @  ~  O0 V, E3 s- [
STDMETHODIMP Cswobj::first()//新建文件3 O; W8 Y. q, {
{
3 O! {/ J$ [/ p* m/ t$ t  M        AFX_MANAGE_STATE(AfxGetStaticModuleState()). J4 F1 a0 R* C; s

9 l8 P9 Y- y1 v9 T0 F+ k        // TODO: Add your implementation code here$ o' @; r4 J1 m4 S! B
        HRESULT retval;! U/ q: M- ]5 e& |
       
1 f* z0 K- ?. _" S        CComPtr<IPartDoc>pPartDoc = NULL;
  z6 U3 J* R' K8 O# S        retval = m_iSldWorks->NewPart((IDispatch**)&pPartDoc);
8 T( z, |* O  k1 [7 F/ m        if(pPartDoc == NULL)
3 _, r  z5 \/ b. x! e        {
- Z1 R' ^8 q" y, P5 _- `                AfxMessageBox(_T("新建零件文件失败"));
# _) P% `. ^$ f. k                return S_FALSE;: v5 Q! d* f0 B. E- D0 l4 @! }$ Y- x
        }; P# s. M, ?" Y! H
        return S_OK;; v2 d7 ]* d1 P! ]2 t6 ^
}
- O) Q2 A0 H9 R2 j+ u4 o4 A: l; b) S8 v- Z, a! X9 G) w" g: c
STDMETHODIMP Cswobj::second()//创建圆柱2 D* p) ~* ]4 k
{
* r* {( ^9 V  W/ S% `        AFX_MANAGE_STATE(AfxGetStaticModuleState())9 V- k% c0 O/ {* q8 M- T7 \7 k- E# `

* E2 S7 }/ `  `3 P  _# \  i        // TODO: Add your implementation code here
3 \3 @6 Z2 t5 ^; H3 _+ N! \7 XVARIANT_BOOL bRetval = VARIANT_FALSE;
  W( H1 P& `. R' v7 D5 @) e# l' Z2 L, {" B) b
        CComPtr<IModelDoc2> swDoc;//定义ModelDoc对象( i, x5 P, h) g( P! y
        CComPtr<IModelDocExtension> swDocExt;//定义ModelDocExtension对象
3 ~: k/ X. `1 x6 G& n        CComPtr<IFeatureManager> swFeatMgr;//定义FeatureManager对象
; {/ B& y; A, n2 {5 S
# \0 T+ M# p! K. y- E        m_iSldWorks->get_IActiveDoc2(&swDoc);///获得当前活动文档对象- n- p) I# N! ~. y, e8 [; o5 d$ Q8 h
        swDoc->get_Extension(&swDocExt);///获得当前ModelDocExtension对象* A5 b/ ^( E1 v* P
        swDoc->get_FeatureManager(&swFeatMgr);///获得当前特征管理器对象0 z1 d" e# K& _0 N% \9 S  g
8 y# c9 \# X7 Y0 L' R! U1 k: [
        CComPtr<ISketch> swSketch;//定义Sketch对象
/ w+ c$ @: f& S- M( M        swDoc->IGetActiveSketch2(&swSketch);///获得当前激活的草图对象
2 u3 r$ a. |3 V& [: s
- @; J9 U: I9 [0 D* j. H7 E6 }        if (swSketch == NULL)///如果当前没有激活的草图对象' m. O+ _6 m1 z% T
        {
5 R' \; M2 N" {7 e* O* E/ K                swDocExt->SelectByID2(L"Front Plane", L"LANE", 0.0, 0.0, 0.0, VARIANT_FALSE, 0, NULL, swSelectOptionDefault, &bRetval);///选择前视基准面2 _3 D: G- W, e" c1 M, ?  q# }: N0 z
                swDoc->InsertSketch2(VARIANT_TRUE);///添加草图) ]) l4 N% d8 h" q
        }
. Q" d+ c5 h2 ^5 c* O. s% J( s# i# p+ e' c" V
        CComPtr<ISketchSegment> swSkSeg;//定义SketchSegment对象5 W( i8 T1 e+ C/ u  w! |3 {  y
        swDoc->ICreateCircle2(0.0, 0.0, 0.0, 0.050, 0.0, 0.0, &swSkSeg);///新建一个圆
1 ?! y. t/ Q0 T) Z3 J        CComPtr<IFeature> swFeat;//定义Feature对象- T( G: ]" c% M6 q( f1 ], l' y% R

, |8 M; q  C& e7 o; @- P$ H        swFeatMgr->FeatureExtrusion2(VARIANT_FALSE, VARIANT_FALSE, VARIANT_FALSE,0, 0, 0.100, 0.100,///拉伸
' N6 T- O6 N3 o
$ [+ F& D. ]7 I% H3 s        VARIANT_FALSE, VARIANT_FALSE, VARIANT_FALSE, VARIANT_FALSE, 0.0, 0.0,
1 H4 e4 m4 ^+ u0 N( @8 u' t+ T1 _' q" {" R0 F/ o
        VARIANT_FALSE, VARIANT_FALSE, VARIANT_FALSE, VARIANT_FALSE," U* c+ l0 a# w1 ~; J

: N' i1 Z9 h# \2 @" Y2 l        VARIANT_TRUE, VARIANT_FALSE, VARIANT_TRUE, 0, 0.0, VARIANT_FALSE, &swFeat);/ Y' m- y9 |# ~
        return S_OK;
8 z+ O1 x/ G5 @$ A- G- Q}
; t/ N0 |9 s" t6 U* d1 M
, Y  n7 g0 c" L" b# m; c5 P) [% ]) |. }* U& ?" R

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册会员

x

评分

参与人数 1威望 +1 收起 理由
a99335 + 1 玩的高深

查看全部评分

回复

使用道具 举报

2#
发表于 2016-1-10 23:39:54 | 只看该作者
还要学习高级编程语言,搞这么复杂,主要用在什么方面?

点评

不才认为纯属多余 !  发表于 2016-1-11 09:15
回复 支持 反对

使用道具 举报

3#
发表于 2016-1-11 07:50:51 | 只看该作者
看的眼都花了
回复 支持 反对

使用道具 举报

4#
发表于 2016-1-11 08:18:41 | 只看该作者
尤记  哪年哪月学过c语言 c++  好像成绩还不错 现在这 扎一看 不明觉厉a 
回复 支持 反对

使用道具 举报

5#
发表于 2016-1-11 09:52:10 | 只看该作者
二次开发对复杂装配体的变型设计才有用吧,单个零件拿来干嘛,做重构库?
回复 支持 反对

使用道具 举报

6#
发表于 2016-1-11 11:00:06 | 只看该作者
额,我做过VB的SolidWorks二次开发。C++的不会,跟你说一下VB下的SolidWorks二次开发大致思路吧,希望对你有些帮助。我当时做的时候,是通过录制宏及查阅API的help文档做的,单个零件建模的话,其实就是不断的草图绘制和特征建立,而这里面最难的就是草图、基准面什么的选取,找准ID就好了,你可以录制macro文件之后看看。至于你说的这个轮毂的建模,难度应该不大,就只是工作量的问题。
回复 支持 反对

使用道具 举报

7#
发表于 2016-1-11 11:35:55 | 只看该作者
弱弱的问一句,为啥要用二次开发画呢?这玩意不是能直接画出来吗?好像也不是特别难得样子啊。。。小白我完全不会用二次开发,但是感觉好像也能画出来。
回复 支持 反对

使用道具 举报

8#
 楼主| 发表于 2016-1-11 17:52:20 | 只看该作者
喂我袋盐 发表于 2016-1-10 23:39
5 u; `5 `. j! j% ]7 ?* |( B还要学习高级编程语言,搞这么复杂,主要用在什么方面?
' {1 Q1 Y4 M0 k: E, J
这个好搞零件库
回复 支持 反对

使用道具 举报

9#
 楼主| 发表于 2016-1-11 17:53:28 | 只看该作者
余存 发表于 2016-1-11 11:35 1 |0 S& V3 ^4 ~6 j" I  v+ U
弱弱的问一句,为啥要用二次开发画呢?这玩意不是能直接画出来吗?好像也不是特别难得样子啊。。。小白我完 ...

% b, p% b# Z0 g/ @" V要弄零件库,和各种轮胎装配
回复 支持 反对

使用道具 举报

10#
 楼主| 发表于 2016-1-11 17:54:03 | 只看该作者
Brian_Hou 发表于 2016-1-11 11:00 6 z: t' Z+ G0 R+ m4 z/ ~
额,我做过VB的SolidWorks二次开发。C++的不会,跟你说一下VB下的SolidWorks二次开发大致思路吧,希望对你有 ...
# p" _. F& g) Y# y4 A: ]/ `% I
初学小弟感觉很难啊
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

小黑屋|手机版|Archiver|机械必威体育网址 ( 京ICP备10217105号-1,京ICP证050210号,浙公网安备33038202004372号 )

GMT+8, 2025-2-19 06:48 , Processed in 0.061792 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表