QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
goto3d 说: 版主微信号:caivin811031;还未入三维微信群的小伙伴,速度加
2022-07-04
全站
goto3d 说: 此次SW竞赛获奖名单公布如下,抱歉晚了,版主最近太忙:一等奖:塔山817;二等奖:a9041、飞鱼;三等奖:wx_dfA5IKla、xwj960414、bzlgl、hklecon;请以上各位和版主联系,领取奖金!!!
2022-03-11
查看: 3725|回复: 5
收起左侧

[讨论结束] VBA:import方法导入文件,位置总不对

[复制链接]
发表于 2011-8-9 12:06:15 | 显示全部楼层 |阅读模式

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

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

x
如下一段代码,如将插入点设在第三象限,插入的对象才会出现在第一象限,且其位置不但与插入基点有关,而且与比例也有关系
5 j3 [' B/ y+ U( t" ^
' `. H% C3 h& T" {这是不是BUG呢?貌似这样设置没有任何好处啊# K: z& X# R: I1 b

9 {4 {6 F  O7 |2 d) j/ c2 u8 C7 a- `9 I1 s, x* `4 i

  1. $ D5 V5 O/ M; c* K! C
  2. Dim importFile As String3 I9 T" E. r, h; E4 ?" e
  3.     Dim p1(0 To 2) As Double
      M7 A) [6 c1 j. Y% ~) l: i
  4.     Dim scalefactor As Double! Y7 H' Z" W, z7 r: t
  5.     importFile = "d:\import.dxf"  ' Adjust path for your system0 X- S* u8 q# n4 T# ?1 `. a
  6.     p1(0) = -10000: p1(1) = -10000: p1(2) = 0  k% f7 k: I8 A! k5 s- K1 l9 N
  7.     scalefactor = 3
    * ?# ^; n6 c4 z0 H
  8.     ThisDrawing.Import "C:\Program Files\uelevator\block2.dxf", p1, 2
    3 X) _% Q: R9 T7 Z# P
  9.     & Z! |0 m3 Y6 \% \' R7 V# }0 G* @
  10.     ' Import the file0 h: E" g8 O" p% g/ J3 T. |
  11.     ThisDrawing.Import importFile, p1, scalefactor
    / R  ~( `1 \4 |# j
  12.     ZoomAll, V& P1 j3 [* \3 b
  13. '    Scal = 503 v7 |& e, A4 v8 L$ Y$ J* f
复制代码
发表于 2011-8-9 17:40:37 | 显示全部楼层
你是对的.插入点只能选择原点,否则会出现意想不到的问题
 楼主| 发表于 2011-8-18 15:07:47 | 显示全部楼层
通过测试发现,插入点坐标值要考虑插入比例,即待插入点坐标值除以插入比例得到的值就是插入点;
8 E4 A8 b( C2 ]% a而如果要将对象插入到第一象限,在其插入坐标要取其关于原点的对称坐标点+ `# i; |. ?# L- x
: _5 F/ d: X3 d, Y+ A. m, k
比如目标插入点为(100,-200,0),插入比例为5
; S6 l" E* g9 k. y则带入import方法的点应该是(-20,40,0)
发表于 2011-8-18 16:54:00 | 显示全部楼层
不对吧?不知你是用哪个版本尝试的.. g! `1 V/ d* S8 e8 [2 g# v! r9 p; j
我尝试的结果是:
( j' q9 W2 H; O" T, ]# |+ `, k0 C1.当比例不等于零时
( d; M6 s7 s# X% V) r6 _' j7 L实际插入结果点="插入点"*(1-比例)...... 含负比例1 Z4 A$ d* h! n3 Q/ o
即:当比例为1时,无论"插入点在哪里,输入的图形都将出现在原点;当比例不为1也不为0时,可以按 "插入点"=预期插入点/(1-比例) 计算., g' M! w6 Y; ]$ M/ R
2.当比例等于零时
! a/ E$ L: `9 V二维多段线将出现在原点;其它对象(仅仅指我尝试过的对象)仍符合上式.此时,如果对象是块参照,而块定义中含有标注对象(比如转角标注),炸开该块参照后,转角标注会变得不可思议:尺寸界线的原点在插入点,而尺寸线和文字会跑到原点......乱套了,呵呵.
 楼主| 发表于 2011-8-20 09:13:55 | 显示全部楼层
06/08/10都有,而且已经在使用中,不止我一个人,几个出图的同事都在用,没有发现问题,当然我的比例总是正比例,不会出现零比例或者负比例
发表于 2019-10-18 16:28:57 | 显示全部楼层
woaishuijia 发表于 2011-8-18 16:54
8 i. b) C) c# X& \' s: k% Y( X不对吧?不知你是用哪个版本尝试的.
) H* x4 e) `% W9 d# z- x# |我尝试的结果是:; A1 U. l4 w  X9 \
1.当比例不等于零时

6 d( o5 s( I; E" r7 s  x. S/ R% C. ^' s测试结果与你相同。困扰了我好一阵。
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备13008828号-1 )

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