Lee Mac 发表于 2022-7-6 07:07:14

思想,与
还是我错过了什么?
</blockquote>
正如Henrique所建议的那样,使用实体名称参数的等效方法是:
假设变量ent指向DXF数据列表(我知道这很混乱,但我只是遵循OP提供的变量)。
 
对于圆,这些方法是等效的,因为圆坐标是在OCS中定义的,但是,请注意,当使用实体名称作为椭圆或多行文字实体等实体的trans-output参数时,坐标将在WCS中返回(即使这些是平面实体),而当为这些实体使用拉伸向量(DXF组210)时,这些点将通过为该实体计算的OCS(使用任意轴算法)返回。
 
为了演示,请在WCS平面以外的平面中绘制椭圆,并运行以下代码:
请注意使用实体名称参数和拉伸向量参数返回的差异。
 
只是需要记住的一件事。

hmsilva 发表于 2022-7-6 07:10:48

李写道:
"...
请注意,使用实体名称参数和拉伸向量参数返回的结果不同。
只是需要记住的一件事。"
 
真的是。。。
非常感谢。
 
亨里克

fixo 发表于 2022-7-6 07:13:57

那么在任何ucs中都可以尝试一下
8
我这边的结果也一样

hmsilva 发表于 2022-7-6 07:15:50

嗨,菲索,
Lee Mac演示的是,当OCS与WCS不平行(需要旋转z轴)时,使用实体名称而不是拉伸向量,结果是不正确的。。。
在多个UCS中测试,我仅使用与WCS不平行的UCS检测错误。
从现在起,我将使用DXF组210进行坐标系转换(如果我没有忘记,我太老了)。
 
干杯,我的朋友
亨里克

fixo 发表于 2022-7-6 07:20:49

谢谢Henrique我知道
我也测试了旋转的Z轴和X轴,结果相同
干杯

Lee Mac 发表于 2022-7-6 07:24:27

 
不客气,亨里克!
 
 
是的,由于椭圆已经相对于WCS定义,trans函数不会以任何方式更改提供的坐标,因为表达式等效于:
然而,我的观点是,当将坐标从UCS/WCS转换为平面实体的OCS时,如果使用实体名称代替椭圆或多行文字等实体的拉伸向量,结果将不同(因为这些平面实体是例外,是根据WCS而不是OCS定义的)。
 
 
你是对的,但是,请注意,这种差异仅适用于椭圆和多行文字等实体,尽管它们是平面的,但相对于WCS而不是与其他平面实体一样的OCS来定义-可能还有其他例外,但这两个实体浮现在脑海中。
 
如前所述:
 
 
我希望我的解释清楚!

pBe 发表于 2022-7-6 07:25:46

很好的解释

Lee Mac 发表于 2022-7-6 07:29:34

 
非常感谢pBe;我提出的这一点相当微妙,但我过去在处理这些平面实体时,使用实体名称代替拉伸向量,这是OCS的例外。

hmsilva 发表于 2022-7-6 07:31:19

李写道:
"...
我希望我的解释清楚!"
 
和往常一样,你的解释很清楚。
 
非常感谢。
亨里克
页: 1 [2]
查看完整版本: a中心坐标