机械必威体育网址

标题: solidworks的宏程序怎么定义单位? [打印本页]

作者: jy00304574    时间: 2015-5-22 15:15
标题: solidworks的宏程序怎么定义单位?
        [attach]354178[/attach][attach]354179[/attach]
6 ?0 }7 z8 I$ D& n9 _. o9 d1 x1 u; X5 L8 ]+ ?
$ S  [' _# l' E& w2 K
        今天用solidworks的宏程序在3D草图里面输入了一组坐标点的数据,运行宏后发现其数值放大了1000倍,后来从新操作录制了一条新的测试的宏,发现数值也是1000倍的差距,是不是宏程序里面的数值默认是米为单位?5 J% e4 n1 o5 G; \, w
        那么问题来了?怎么在宏程序里面把单位设置为毫米啊?8 Y, I! P$ ^' X, g

作者: 寂静天花板    时间: 2015-5-22 15:37
你不如上传宏程序,来证明你的所言非虚
作者: jy00304574    时间: 2015-5-22 15:58
寂静天花板 发表于 2015-5-22 15:37
( |& M, v3 _1 G9 U2 J# G1 T你不如上传宏程序,来证明你的所言非虚

% W- g8 F9 w, |* A, ?' ******************************************************************************
3 H; j; j, M3 I' C:\Users\Administrator\AppData\Local\Temp\swx8008\Macro1.swb - macro recorded on 05/22/15 by Administrator/ K4 X3 d: c. G, J' m
' ******************************************************************************0 f- Z) }! R; \7 r
Dim swApp As Object) a9 f, v: l# o: j, y% U

: _/ E. c. O# Z; \* F5 N$ qDim Part As Object: W+ G- }8 X, |
Dim boolstatus As Boolean
: a9 v# l! M0 aDim longstatus As Long, longwarnings As Long
- v* b$ z/ V) R! U" n
3 V+ {3 u( u5 O4 [5 X. j' E% a. oSub main()2 f* [" ]( b* _8 U! c

; v0 a( [& N. ]8 |8 u7 ^& p/ ^( y/ \Set swApp = _
0 Y0 s7 j& I9 b9 oApplication.SldWorks! x  H  M1 V+ R3 O9 `" y1 Y$ M
0 u0 U, O! J+ E( b5 }: X6 f  |
Set Part = swApp.ActiveDoc! o  g( Q( D6 U% ~; j, d
Dim skPoint As Object
  _% y! o( t' N3 z9 aSet skPoint = Part.SketchManager.CreatePoint(11111.11111, 11111.11111, 11111.11111)
  m) y( i& H8 a" K4 MSet skPoint = Part.SketchManager.CreatePoint(22222.22222, 22222.22222, 22222.22222)
2 h& ?% n1 L- k: F! J3 KSet skPoint = Part.SketchManager.CreatePoint(33333.33333, 33333.33333, 33333.33333)
# F. C; Y* o6 J" `Set skPoint = Part.SketchManager.CreatePoint(44444.44444, 44444.44444, 44444.44444)  o( Z4 Y  O, n- I& t
End Sub
" P# x- t4 O4 ?" h4 S. }0 z, O  q0 Q5 W
" p% D- z8 U% `' g# K2 N
-------------------------------以上,进入3D草图后执行这个宏程序,结合EXCEL就能批量描点了,只是发现单位有问题,1000倍差距,不知道是哪里出了问题, J, M. b# G5 y2 m2 Z

2 s' Q4 a. Q- ~
作者: ryouss    时间: 2015-5-22 16:17
jy00304574 发表于 2015-5-22 15:58
3 ]% n* I. d* _/ h  d" S9 j' ******************************************************************************
$ K9 x, `! X- Z5 U0 E  M* S/ ~- H' C:\Users\Admin ...
; c; V( [) m1 I$ x
宏里所執行的尺寸值之單位皆內定為 " 米",
% G( e1 k0 O' J" X+ H) o7 r所以尺寸值原為 "mm" 者,在宏里皆要 除以 1000.
4 f& Z: h" S0 Y4 p. i
作者: jy00304574    时间: 2015-5-22 16:18
ryouss 发表于 2015-5-22 16:17 ' k+ t7 k+ {/ J6 V" P0 r3 N% J" m/ b
宏里所執行的尺寸值之單位皆內定為 " 米",0 X9 K2 J+ c$ h: J: ]0 [
所以尺寸值原為 "mm" 者,在宏里皆要 除以 1000.
7 b1 s( O9 V# K
所以说宏程序里面是没办法设定单位的了?5 B( ^5 Q1 K" s- T' s

作者: ryouss    时间: 2015-5-22 16:25
jy00304574 发表于 2015-5-22 16:18
! t6 u' J4 @$ |& r所以说宏程序里面是没办法设定单位的了?
- k6 @7 E1 r. G& D8 ~& @
是的,內定死的,改不了!(對一般使用者來說,若碰到大神動用.DLL,就不知道能改否)1 n# L% w& G1 j: a

作者: jy00304574    时间: 2015-5-22 16:26
ryouss 发表于 2015-5-22 16:25
+ L: s5 {, s- d' s9 K是的,內定死的,改不了!(對一般使用者來說,若碰到大神動用.DLL,就不知道能改否)
7 r/ t  [) ^$ S+ w# ~; t6 _' X
多谢了; U6 C, N. o+ Z. v7 k3 A$ N





欢迎光临 机械必威体育网址 (//www.szfco.com/) Powered by Discuz! X3.4