xiaocainiao
发表于 2024-11-17 12:36:23
gzcsun 发表于 2024-11-17 09:54
vla-Offset,先做一个(正),如果检查不对,删掉再做个(负)。
谢谢、现在就是这么干了
xiaocainiao
发表于 2024-11-17 12:38:40
wang2006zhi 发表于 2024-11-17 09:41
鼠标向量叉乘曲线上某点切向量
这个有点高级了、不太会玩
llsheng_73
发表于 2024-11-17 13:25:57
本帖最后由 llsheng_73 于 2024-11-17 13:28 编辑
以线的前进方向为准,左负右正。。。
xiaocainiao
发表于 2024-11-17 14:59:28
llsheng_73 发表于 2024-11-17 13:25
以线的前进方向为准,左负右正。。。
如何判断先的前进方向啊
GEGEYANG88
发表于 2024-11-17 16:13:39
以包围盒中心为落点就可以搞掂vla-getboundingbox
qazxswk
发表于 2024-11-17 19:26:33
本帖最后由 qazxswk 于 2024-11-17 19:30 编辑
;;闭合多段线偏移,负数向外,正数向内。
自贡黄明儒
发表于 7 天前
查宝典,上面是这么说的
Distance : Double; input-only
The distance to offset the object. The offset can be a positive or negative number, but it cannot equal zero. If the offset is negative, this is interpreted as being an offset to make a "smaller" curve (that is, for an arc it would offset to a radius that is "Distance less" than the starting curve's radius). If "smaller" has no meaning, then it would offset in the direction of smaller X, Y, and Z WCS coordinates.
xiaocainiao
发表于 7 天前
qazxswk 发表于 2024-11-17 19:26
;;闭合多段线偏移,负数向外,正数向内。
这个偏移距离的正负、确实是楼上大神说的、和多段线的顺时针逆时针生成有关
xiaocainiao
发表于 7 天前
自贡黄明儒 发表于 2024-11-18 07:29
查宝典,上面是这么说的
Distance : Double; input-only
The distance to offset the object. The offset ...
大师!宝典这个说明没完全看懂、之前理解的是正数向内偏移、但实测不一定
llsheng_73
发表于 7 天前
本帖最后由 llsheng_73 于 2024-11-18 10:45 编辑
xiaocainiao 发表于 2024-11-17 14:59
如何判断先的前进方向啊
起点到下一点的方向啊(站在起点位置往下一点方向看,用负值一定是往左偏移的,正值一定是往右),这个与线是否闭合都适用的,闭合属于特殊情况,它的前进方向表现为顺时针或逆时针方向,如果为了固定往闭合线外偏(或内偏),就需要判断它的顺逆特征,逆时针方向正值往外偏,负值往内偏(顺时针方向则刚好相反),实际上也是符合前进方向左负右正的
多说一句,offset方法返回的是一个variant,因为线段的转折角和偏移量的原因,可能偏移后产生0条线段(因为偏移量过大往内偏移产生错误,比如对圆以大于等于半径的量往内偏移)或多条线段,可以对返回值通过vlax-variant-value转为safearray数组,然后就可以访问所有因为OFFSET产生的新图元对象了