机械必威体育网址

 找回密码
 注册会员

QQ登录

只需一步,快速开始

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

SolidWorks 二次开发 求助

[复制链接]
跳转到指定楼层
1#
发表于 2016-1-10 22:28:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请问有没有哪位大哥大姐对用c++对SolidWorks进行二次开发比较熟悉的,比如下面这个轮毂怎么用C++程序画出来" n& f$ g; ^/ d: y" `) M7 N
这是轮毂源文件* T* o! c) V' v7 L% e+ w# V% E: V
各位大哥大姐如有其他三维建模程序的,能不能传给小弟我学习学习,感激不尽了!小弟这边也有些机械方面的资料可以和大家共享。0 `" z) s0 ?7 g( r  K
下面是小弟编的一个程序,新建文件——创建圆柱。1 y) D, D0 ]' W1 j
/* NOTE: You will need to add the -GX flag to your Project Options in Project->Settings->C/C++*/
- ?/ W8 |& C9 E: G+ l* Z// swobj.cpp : Implementation of Cswobj+ q% f, a- x: w
#include "stdafx.h"
6 ?. y% C5 \9 t* ^#include "111.h"
+ c/ ]7 O# r7 `  U# S#include "swobj.h"
& {0 Y( u: E6 X% U- k4 d
5 u; x4 g  ^( D/////////////////////////////////////////////////////////////////////////////
6 }0 t7 Z% c/ A// Cswobj
7 s# ?. i/ D- y! V2 I1 D; ~) e( V& i
( M$ R: c9 z5 p/ lvoid Cswobj::AddUserInterface()
; ~+ E! a, \" p' e6 U1 ?1 W$ a: f! c{
- B/ w# Y% p( b        AddToolbar();1 H' D  Q2 |( f/ f0 n) q$ ?) T& |* k
        AddMenus();
" O2 _( ~( g: k}- A4 s0 I- X+ R, U- i9 @
6 ~% `, n2 ?6 ~5 l9 c, A
void Cswobj::RemoveUserInterface(), E( |# R# Y) |: i% p  H$ s9 Z
{4 v6 R4 X2 s  q  q* H% g+ w) J
        RemoveMenus();
& _- O" |* W1 S( I& U        RemoveToolbar();
" c0 i7 ~# u1 X* R/ `}
7 \" P- s& ?1 }6 ?! n7 f8 q) G5 G- u
void Cswobj::AddMenus()
/ O2 p  w/ u2 C+ g8 y% k{, C8 H" Z9 \  z2 k+ l$ l
        long retval = 0;5 Q' {$ v2 P2 r8 R
        VARIANT_BOOL ok;4 ~* @7 X- T0 d' T
        long type;( T! Q; P( u6 C5 A
        long position;
7 g* f; e2 N/ G9 }4 N6 ^/ l        CComBSTR menu;
2 o& W& Z: l4 ?5 N. f) S5 q1 Z        CComBSTR method;5 A+ T' y& V6 ]$ \  z# e  @
        CComBSTR update;
. k0 p) U- h  A* R* M        CComBSTR hint;$ T2 l$ R2 z+ Y7 [8 U4 h3 N
+ N2 a* A7 Z+ w5 L
        // Add menu for main frame
8 C7 [) v+ y& z) e$ @: ?- U( d        type = swDocNONE;0 l- m9 ?* C9 Y$ E# L; |- P; E
        position = 3;! k, M  c0 q; O: W( o
        menu.LoadString(IDS_MY1_MENU);
% f; ^( {" B$ z, y4 `        m_iSldWorks->AddMenu(type, menu, position, &retval);
/ H; }, N. t* L& |! n7 M
9 T3 a7 p$ O- l$ y; ~        position = -1;$ Z. r! ]4 E6 {$ C
        menu.LoadString(IDS_MY1_START_NOTEPAD_ITEM);
$ l3 R# @; Y* M3 z        method.LoadString(IDS_MY1_START_NOTEPAD_METHOD);; S" Y  A# s# S0 F, U( u- |: {. l
        hint.LoadString(IDS_MY1_START_NOTEPAD_HINT);
4 h( ]/ y$ D! U0 V0 \        m_iSldWorks->AddMenuItem2(type, m_swCookie, menu, position, method, update, hint, &ok);
6 P8 I# b8 t5 H  p& j" s/ U5 [; s+ M- [1 ~0 H
        position = -1;  //wb' `$ o8 {# h) }' x
        menu.LoadString(IDS_111_ITEM);) [, ?' r5 G5 i
        method.LoadString(IDS_111_METHOD);
  P& T4 |# U5 Z/ F( n        hint.LoadString(IDS_111_HINT);
6 T! X+ B: r3 Q4 I  u        m_iSldWorks->AddMenuItem2(type, m_swCookie, menu, position, method, update, hint, &ok);. ]- h; T9 u9 @- n$ w/ t
8 |/ L; M  {% A. h6 R
        // Add menu for part frame
- X  |/ Y' ?6 i( `0 T1 [2 O        type = swDocPART;
% n! K' R% X5 B- Q7 u5 M( E! ^        position = 5;" \0 V! W8 j0 J: H9 a
        menu.LoadString(IDS_MY1_MENU);$ @; G! w, R% j6 A1 F2 M+ B# E
        m_iSldWorks->AddMenu(type, menu, position, &retval);
6 j, a% O+ e  d$ t
2 q. V( R1 y, P8 Q        position = -1;  //wb
0 w  q" z  B+ ]7 {9 b& J6 n+ f        menu.LoadString(IDS_111_ITEM);# {) {0 Y, J3 C# z4 ?
        method.LoadString(IDS_111_METHOD);
% B  {; i/ [) D$ ~# J. \+ f( b        hint.LoadString(IDS_111_HINT);( Q9 J) R! Y2 v: u
        m_iSldWorks->AddMenuItem2(type, m_swCookie, menu, position, method, update, hint, &ok);
9 M2 v3 P- H) B! `$ z' u& L2 n6 z4 p
        position = -1;  //wb# |" [) \" F& m1 B' u
        menu.LoadString(IDS_111_ITEM2);; k. j4 Q8 G% j4 c" Z, ?+ ?
        method.LoadString(IDS_111_METHOD2);  j7 b) l( x6 f+ D
        hint.LoadString(IDS_111_HINT2);2 Y  h5 B8 W: {
        m_iSldWorks->AddMenuItem2(type, m_swCookie, menu, position, method, update, hint, &ok);! ^- z" @) j/ d

/ m  Y0 h+ J5 J$ H        position = -1;
: p4 z3 R# P( b2 V% U$ x        menu.LoadString(IDS_MY1_START_NOTEPAD_ITEM);7 ^: ?2 c' E# @9 z% c
        method.LoadString(IDS_MY1_START_NOTEPAD_METHOD);
1 J8 ?0 }8 w& l9 \7 O        hint.LoadString(IDS_MY1_START_NOTEPAD_HINT);8 J* G% A( T# N; X. N' A- e; g
        m_iSldWorks->AddMenuItem2(type, m_swCookie, menu, position, method, update, hint, &ok);3 _( o0 F: g8 w( A; c* `! C
$ k3 d' U/ ]: Z
        // Add menu for assembly frame
) g0 r5 R( b5 \% h        type = swDocASSEMBLY;( Q9 R& u' q! P. D1 _) c
        position = 5;4 m% a* u1 y' x' f' Z
        menu.LoadString(IDS_MY1_MENU);2 o* f% O3 M# ^  ^  W
        m_iSldWorks->AddMenu(type, menu, position, &retval);& k$ L9 N$ \$ W

0 k  W: W5 c2 n. I        position = -1;/ V- y' @4 h* R+ t! t
        menu.LoadString(IDS_MY1_START_NOTEPAD_ITEM);( ^% X) A8 N, G( A: S
        method.LoadString(IDS_MY1_START_NOTEPAD_METHOD);4 I  g4 J/ g' x0 z% u
        hint.LoadString(IDS_MY1_START_NOTEPAD_HINT);
) V7 X* ?6 a0 `6 T1 c0 ~        m_iSldWorks->AddMenuItem2(type, m_swCookie, menu, position, method, update, hint, &ok);
( v8 I$ l' R( U' b+ j1 K
: n. t1 Y7 i# x4 B: _0 \        // Add menu for drawing frame5 A) [( n: _6 n7 j  q$ ]
        type = swDocDRAWING;! L9 }8 a' X- K1 d. ?
        position = 5;
8 g2 S6 J7 G+ ]0 V& b% H. C        menu.LoadString(IDS_MY1_MENU);" D5 W+ Y9 h9 F$ T8 z
        m_iSldWorks->AddMenu(type, menu, position, &retval);
/ L& d. M, W5 T* }- T0 b' h  T, W/ t9 ?        position = -1;; [4 Q6 f! q. H! i+ A
        menu.LoadString(IDS_MY1_START_NOTEPAD_ITEM);4 r8 E' J8 q' m1 l
        method.LoadString(IDS_MY1_START_NOTEPAD_METHOD);" B+ E' X) z/ `' ~% P( q) R$ I4 N
        hint.LoadString(IDS_MY1_START_NOTEPAD_HINT);
5 Y0 i  Q" u1 o) V4 \% G        m_iSldWorks->AddMenuItem2(type, m_swCookie, menu, position, method, update, hint, &ok);
9 t1 Z$ ~$ n6 W5 l4 N9 d* K" J3 g5 S- B2 @" u" d
}; W6 A; I* z& V4 r' N' X$ Q
; B' w  F9 B  P! N
void Cswobj::RemoveMenus()9 ^* u$ _8 V2 M& U; x
{1 u* _  q$ o& o/ F8 N
        VARIANT_BOOL ok;
/ L% c% J3 o  B, t4 R  m9 W  F        CComBSTR menu;& f+ `$ h' v7 Z6 K  {' k
3 ?  T: k- W$ A, {8 `
        menu.LoadString(IDS_MY1_MENU);
4 r; @+ j1 r2 u2 q5 x        m_iSldWorks->RemoveMenu(swDocNONE, menu, NULL, &ok);
3 L! k/ I5 L- a- K        m_iSldWorks->RemoveMenu(swDocPART, menu, NULL, &ok);  R: b  q, B2 q: ^6 S
        m_iSldWorks->RemoveMenu(swDocASSEMBLY, menu, NULL, &ok);, @; F" p9 P; _' n  ]% G+ S
        m_iSldWorks->RemoveMenu(swDocDRAWING, menu, NULL, &ok);! k$ P. n* j1 q9 z- M. b% a$ O
}( k( G! R5 ?8 A' }2 ]/ r4 ~
& V; J( Y3 v, J; m. m, U
void Cswobj::AddToolbar()
8 I  P1 R$ {: l{
, \/ c# `. ?$ F1 m; q/ o2 m2 \        VARIANT_BOOL stat = VARIANT_FALSE;
7 X& G5 J0 B7 [2 s, g        VARIANT_BOOL ok;
4 X2 e3 l" C! I: j# S( k' [4 c( R        HRESULT hres;4 k+ d. E0 {; F5 K7 a' G
2 E/ X) {1 _5 `$ n  i$ n+ W( n. @4 A
        CComBSTR title;% [; y# @1 n$ ?. r& C/ W2 X
        CComBSTR callback;
; ?8 @+ ~: `% ^% [0 \        CComBSTR update;. h$ r: a) e$ T$ _9 t4 E( |
        CComBSTR tip;
# Q, f6 u* _- n        CComBSTR hint;
1 Y- v& m! \& E! @0 {        if (m_lToolbarID == 0)* K1 n. b7 ]" ?6 h+ H/ M8 B5 |
        {0 j7 z3 @# o; \, E) c
                title.LoadString(IDS_MY1_TOOLBAR_TITLE);
. }4 ~8 |4 m9 A2 N. r                callback.LoadString(IDS_MY1_TOOLBAR_CALLBACK);  Z1 h6 f; a9 Y4 f, V: P+ \
                update.LoadString(IDS_MY1_TOOLBAR_UPDATE);
# J  V$ n8 Y0 P. k% _. L( I9 ?                tip.LoadString(IDS_MY1_TOOLBAR_TIP);1 s/ I5 c6 K9 c& E! s
                hint.LoadString(IDS_MY1_TOOLBAR_HINT);
/ H  ~& I. c; w
2 L6 q- r" x5 p5 H1 o# J                hres = m_iSldWorks->AddToolbar3(m_swCookie, title, IDR_TOOLBAR_SMALL, IDR_TOOLBAR_LARGE, -1,
  h& W2 F+ y: e" c# |                                                                                swDocTemplateTypeNONE|swDocTemplateTypePART|swDocTemplateTypeASSEMBLY|swDocTemplateTypeDRAWING, &m_lToolbarID);
7 ^' e1 W6 ]) W9 c/ _2 B& M% |5 ?: d8 i+ |1 ~% ~" S+ w
                m_iSldWorks->AddToolbarCommand2(m_swCookie, m_lToolbarID, 0, callback, update, tip, hint, &ok);: i2 E3 m3 D' L
                m_iSldWorks->AddToolbarCommand2(m_swCookie, m_lToolbarID, 1, callback, update, tip, hint, &ok);+ r1 O  T, y0 s* v" g5 I4 p
                m_iSldWorks->AddToolbarCommand2(m_swCookie, m_lToolbarID, 2, callback, update, tip, hint, &ok);
! i  j1 C9 g5 M/ g7 q3 S0 z
; l2 a1 b) G3 i* Q! N        }3 O4 O6 i$ P7 l" B) U5 h
}& \$ M$ I- \! G7 y
/ I7 |! G6 k  `; w. @# a
void Cswobj::RemoveToolbar()1 u; `- Z6 k7 [4 G( K' _) @! L
{) }$ t5 i# _; u4 s
        if (m_lToolbarID != 0)
" |/ @4 I7 _2 T2 F& c  ^# d        {
  K5 X) ]9 ]+ u" C& X                VARIANT_BOOL stat;+ |/ r5 T1 U) `0 L
/ F+ N% f% I0 Q  d; |
                HRESULT hres = m_iSldWorks->RemoveToolbar2( m_swCookie, m_lToolbarID, &stat);
) E3 }# M! M7 Q; k                m_lToolbarID = 0;8 C) T  t# z* o- E
        }
+ ?. Z# \4 p! c; h8 X: M}
$ I! B9 f: z; y" R9 `, H! j9 A' c7 p. D
! j/ v" [6 @: ]' [& D4 R5 n- H
+ X/ S( G0 m* J& d' E/////////////////////////////////////////////////////////////////////////////' I, L9 L8 i9 @
// ISwAddin implementation4 n7 `$ u& O, _# p8 c
! m% t$ X3 o5 q" a7 g- N
STDMETHODIMP Cswobj::ConnectToSW(IDispatch * ThisSW, LONG Cookie, VARIANT_BOOL * IsConnected)
/ U2 O6 V( h" H{, G- c3 r1 U0 q" Q
        VARIANT_BOOL status;. g3 j( U  ?# ?! `! ?3 Y

' O" ^9 C& A% e/ ?' E        if (IsConnected == NULL)5 t6 R. o8 r$ f! l1 H# A" q% H) y
                return E_POINTER;
5 z0 a1 e2 T& ?( p
1 c/ S8 J6 M4 g% t. M& b        ! S, Z/ w: {" |7 ^
        m_swCookie = Cookie;
4 d1 k4 j1 n+ z$ T# g; b! p. G        m_iSldWorks = CComQIPtr<ISldWorks, &__uuidof(ISldWorks)>(ThisSW);
. s( }5 e" _- E" E! v        if (m_iSldWorks != NULL)# P4 q+ K2 n8 d0 ^
        {       
0 J2 S  s; Z: ^; t3 Y- v3 m0 Y" c                m_iSldWorks->SetAddinCallbackInfo((long)_Module.GetModuleInstance(), static_cast<Iswobj*>(this), m_swCookie, &status);# b' t* G  |( ]  v+ g
                AddUserInterface();
+ j  {# }' j5 q' u        }- d6 ~/ b6 q, ~) y* \" S
3 H- {  z) H; H1 V
        return S_OK;
. m( X+ u3 q, Z4 W}
4 ?$ `; P% \* `( L9 J
; Z$ N7 C6 }, B9 [% r) C% eSTDMETHODIMP Cswobj:isconnectFromSW(VARIANT_BOOL * IsDisconnected)
+ f6 a2 H' {) d5 v{
* P+ m* h; z- ?: N8 Z6 p) I        if (IsDisconnected == NULL)! U" {4 R! g. b0 T& S: H5 _
                return E_POINTER;
2 z' r/ X, k' X7 m
- ]! @  C, N$ M: `- I2 i  A        if (m_iSldWorks != NULL)' R  e! s- `* y# @5 s
        {
, h, E, |9 Y  r; r0 z; U8 `0 Z                RemoveUserInterface();
% Z8 ?% ^( Y/ Y. x3 c3 P2 T                m_iSldWorks.Release();& b3 ?7 ^/ P: A; z
        }
1 w( g% W+ p5 T( {, ]0 X
$ D" Q3 k: t2 f( m" ^  K        return E_NOTIMPL;
& ]5 [$ e5 z6 H6 X$ j5 H% X}
" y$ a" a8 m% A$ j. T
& {% H6 O! t( @) u, S/ F( ]/ \$ f. W5 D6 j  n+ K  G; j1 D$ A) ]
/////////////////////////////////////////////////////////////////////////////& x1 f$ E- I) M: l. B
// DSldWorksEvents implementation) k8 S8 [3 X  @7 U& j- z
1 k1 ]' F5 _/ ]6 k2 [1 F* O
1 M9 g( _. C. R2 q6 f- s- T; m
/////////////////////////////////////////////////////////////////////////////
9 \! \1 q0 k8 Q5 u! n* n// Iswobj implementation& E" s* u8 Y* j0 ~' s/ [( t

) q1 f4 ^4 w) C- {; ?& USTDMETHODIMP Cswobj::StartNotepad()
! x( M. }4 J) r0 {$ a{
% _/ J% Y, U& V3 M( W, T* {% r        // TODO: Add your implementation code here
# `* Z- U  z+ V/ Z6 K        ::WinExec("Notepad.exe", SW_SHOW);: M6 W7 N. ^, ~' ^

4 z' M$ R6 U7 J) M( s5 \/ R) [        return S_OK;
6 `: f9 j4 z8 c/ P( s}
/ j( Z- s6 x% N% C: H7 x4 l
! X# y/ Y# Q* a, G; }STDMETHODIMP Cswobj::ToolbarUpdate(long *status)9 a. S( k# N/ B! w% V
{& V6 g$ z+ M& q% v5 m; H
        HRESULT retval = S_OK;
& h, [$ G: y5 V& o- W( E
5 A) a( i4 H3 a$ j: |0 ~" k2 s# P        *status = 1;
: @, ?: f( W  H, ~8 \1 l; o, X* _' W2 I  u" _/ j, _
        return S_OK;
/ T! i! Z& D! h}
( n# K- G$ Z+ W) E4 B+ K2 H
) L/ ?1 R. z5 K* u: G' ]STDMETHODIMP Cswobj::first()//新建文件
: h6 G5 N, v0 n# U" ~* I4 J& i2 O{7 Q+ |3 S% ^3 W; c) _6 K' S* L
        AFX_MANAGE_STATE(AfxGetStaticModuleState())
  M1 F7 b& g9 L' w% [
. K7 n2 ]! `* z* v; Y: P        // TODO: Add your implementation code here
* l2 T$ O& ]2 W* q+ `3 D        HRESULT retval;6 H5 n" L9 x5 M$ i- F/ h
        7 X4 @* N) y$ m- H
        CComPtr<IPartDoc>pPartDoc = NULL;
/ r8 }0 {* C) m! u: A/ f        retval = m_iSldWorks->NewPart((IDispatch**)&pPartDoc);& O- D7 ^8 o4 N" J2 _: p7 O. I
        if(pPartDoc == NULL)2 m2 _9 G; U! M7 w" X% Q# {5 c
        {* u3 _8 I3 e- R! t6 J
                AfxMessageBox(_T("新建零件文件失败"));4 m7 ~2 A' G$ _8 a$ L& m7 W3 d% t/ ?
                return S_FALSE;+ R" S3 x8 A: ?2 R9 y
        }6 a% X6 _5 m8 Y# i2 e2 i8 N) u
        return S_OK;3 N) r( P9 F% J& F8 V
}7 H# ]+ @* H$ f6 p
7 I) X9 i/ L7 Y4 u1 Q1 H4 ~
STDMETHODIMP Cswobj::second()//创建圆柱
3 S! L: l3 b# n5 l  C{3 t( e" W# Q- Q/ V: M2 ~+ w" J3 x
        AFX_MANAGE_STATE(AfxGetStaticModuleState())
+ `) P% U2 p; `0 U8 G1 u- R, g6 w: I5 N3 s1 o5 L7 O
        // TODO: Add your implementation code here
; o' W$ b$ m9 m( W1 PVARIANT_BOOL bRetval = VARIANT_FALSE;: K" w9 w, T6 m0 M2 g7 e
" e/ F# y; [1 V8 c! q" N
        CComPtr<IModelDoc2> swDoc;//定义ModelDoc对象9 b! Z0 `9 I& q7 T9 a
        CComPtr<IModelDocExtension> swDocExt;//定义ModelDocExtension对象
* K- G, P4 U$ ?, O2 j        CComPtr<IFeatureManager> swFeatMgr;//定义FeatureManager对象- e# ?5 Q% ^* n
& h) Z- b4 c. H' H: d# D# G. S
        m_iSldWorks->get_IActiveDoc2(&swDoc);///获得当前活动文档对象
0 n! n1 N8 @4 ~' Y        swDoc->get_Extension(&swDocExt);///获得当前ModelDocExtension对象
( Z4 q5 F+ g: B4 e8 W        swDoc->get_FeatureManager(&swFeatMgr);///获得当前特征管理器对象
, L/ q3 a6 }. X) U
% z! H9 l' p' c9 E2 H# i        CComPtr<ISketch> swSketch;//定义Sketch对象
. I% r: {% V1 q: C        swDoc->IGetActiveSketch2(&swSketch);///获得当前激活的草图对象
# R: m- f+ }! X7 k
1 w/ J# x7 F5 L  o1 S3 R; r7 ^        if (swSketch == NULL)///如果当前没有激活的草图对象
! g4 Y! ^! l) l* N- |- J        {2 f6 \. D- P% j8 W
                swDocExt->SelectByID2(L"Front Plane", L"LANE", 0.0, 0.0, 0.0, VARIANT_FALSE, 0, NULL, swSelectOptionDefault, &bRetval);///选择前视基准面
1 g) D3 S: P: M                swDoc->InsertSketch2(VARIANT_TRUE);///添加草图
9 }/ ?$ V' D, H( |2 w# J5 X7 `3 S        }  b5 B9 K' k" F: M1 S
3 c# s9 x7 o+ Q: j- F
        CComPtr<ISketchSegment> swSkSeg;//定义SketchSegment对象* i4 @  e1 m# r- K- L- u. J. I# q
        swDoc->ICreateCircle2(0.0, 0.0, 0.0, 0.050, 0.0, 0.0, &swSkSeg);///新建一个圆
8 ^  W1 }" g+ B6 t$ i        CComPtr<IFeature> swFeat;//定义Feature对象
; `& c; o" D+ H
0 ?1 U" @; p3 m  b3 z; q        swFeatMgr->FeatureExtrusion2(VARIANT_FALSE, VARIANT_FALSE, VARIANT_FALSE,0, 0, 0.100, 0.100,///拉伸
$ v/ X2 t* `% N8 J, {  V. \. m8 n% p( s% O# R; s$ G
        VARIANT_FALSE, VARIANT_FALSE, VARIANT_FALSE, VARIANT_FALSE, 0.0, 0.0,+ p/ t$ A# N4 P# ?0 [9 }2 x, f3 W

- Z# u9 k8 ^4 B/ O        VARIANT_FALSE, VARIANT_FALSE, VARIANT_FALSE, VARIANT_FALSE,( e) u8 c7 R, S5 x/ v

" X0 e0 Z9 O" i9 v# T; [" Z        VARIANT_TRUE, VARIANT_FALSE, VARIANT_TRUE, 0, 0.0, VARIANT_FALSE, &swFeat);
' B& m. E' F) r( K        return S_OK;, d4 N2 p' H0 U6 ?1 z$ o
}0 A, e0 `7 A+ W) M& l+ [  Y6 y
/ B  H! n% Z: i. B  J9 @2 l
  p; S$ s& M$ v+ \# p' t! E

本帖子中包含更多资源

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

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
* E3 L* k( j( d% w* @2 i还要学习高级编程语言,搞这么复杂,主要用在什么方面?
% _) m; x- F0 f; Q- D( e
这个好搞零件库
回复 支持 反对

使用道具 举报

9#
 楼主| 发表于 2016-1-11 17:53:28 | 只看该作者
余存 发表于 2016-1-11 11:35
5 [- A+ A7 P6 s2 u弱弱的问一句,为啥要用二次开发画呢?这玩意不是能直接画出来吗?好像也不是特别难得样子啊。。。小白我完 ...

* _4 ~/ u' n# Z5 `要弄零件库,和各种轮胎装配
回复 支持 反对

使用道具 举报

10#
 楼主| 发表于 2016-1-11 17:54:03 | 只看该作者
Brian_Hou 发表于 2016-1-11 11:00 * V: ~) h6 ~" l! ^) a
额,我做过VB的SolidWorks二次开发。C++的不会,跟你说一下VB下的SolidWorks二次开发大致思路吧,希望对你有 ...

* L0 H) y& Y, W1 D1 w9 K1 C初学小弟感觉很难啊
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-20 00:34 , Processed in 0.063033 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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