本帖最后由 guohq 于 2025-9-30 01:20 编辑
通过 Entity 的 GeometricExtents 可以获取图形的范围,但对于部分有特殊线型的曲线而言,此范围并不准确。请问如何能获取到图形的实际外包框?
网友答: 好问题,同求网友答: 我又试出来一个方法,包管好用,用代码实现也没多少行。复制对象,粘贴为块到坐标原点,旋转对象180度,复制旋转后的对象,粘贴为块到坐标原点,分别计算2个块的包围盒,合并包围盒,就可以得到期望的真实包围盒了。要点:图元对象做成块以后,插入点正是像素范围的左下角点。网友答: 针对问题:请问如何能获取到图形的实际外包框?我的办法真的能行。你要代码,我也试过,接近成功。图元横着一次(command "_.zoom" "_e"),竖着一次(command "_.zoom" "_e"),要求不高的话,也可以搞到包围盒。网友答: 本帖最后由 你有种再说一遍 于 2025-9-30 23:45 编辑
好问题,我也不知道.
1,图元包围盒是数据层的.
2,渲染层是带线型的,会发现 鼠标的选择矩形框 如果在虚线中间空位是选择不了线段的.
3,你想获取渲染层信息,按照线型数据把曲线离散化,
解析线型包围盒,解析线型支持的SHX字体的包围盒.
网友答: 框选图形获取x轴和y的轴最小最大值画矩形。网友答: 这个就复杂了,需要解析线型了网友答: 把原图发过来测一下,你这带线型的网友答: 逼近法
1.先获取初步外框R1
2.新框R2=R1*1.5倍(介于1-2),用SSGET W 和SSGET C 来测试图元在是否在R2内,否则扩大R2
3.设置小步长向内偏移R2(从上下左右四个方向),找到R2最小值,即是实际外包框的近似值网友答:
已经上传到压缩包,包括:DWG文件、形文件
网友答: 分解线型,再取包围框网友答: 本帖最后由 战神凯哥 于 2025-9-30 23:42 编辑
线形有点困难
网友答:
挺自信的兄弟。希望你成功。
通过 Entity 的 GeometricExtents 可以获取图形的范围,但对于部分有特殊线型的曲线而言,此范围并不准确。请问如何能获取到图形的实际外包框?
网友答: 好问题,同求网友答: 我又试出来一个方法,包管好用,用代码实现也没多少行。复制对象,粘贴为块到坐标原点,旋转对象180度,复制旋转后的对象,粘贴为块到坐标原点,分别计算2个块的包围盒,合并包围盒,就可以得到期望的真实包围盒了。要点:图元对象做成块以后,插入点正是像素范围的左下角点。网友答: 针对问题:请问如何能获取到图形的实际外包框?我的办法真的能行。你要代码,我也试过,接近成功。图元横着一次(command "_.zoom" "_e"),竖着一次(command "_.zoom" "_e"),要求不高的话,也可以搞到包围盒。网友答: 本帖最后由 你有种再说一遍 于 2025-9-30 23:45 编辑
好问题,我也不知道.
1,图元包围盒是数据层的.
2,渲染层是带线型的,会发现 鼠标的选择矩形框 如果在虚线中间空位是选择不了线段的.
3,你想获取渲染层信息,按照线型数据把曲线离散化,
解析线型包围盒,解析线型支持的SHX字体的包围盒.
网友答: 框选图形获取x轴和y的轴最小最大值画矩形。网友答: 这个就复杂了,需要解析线型了网友答: 把原图发过来测一下,你这带线型的网友答: 逼近法
1.先获取初步外框R1
2.新框R2=R1*1.5倍(介于1-2),用SSGET W 和SSGET C 来测试图元在是否在R2内,否则扩大R2
3.设置小步长向内偏移R2(从上下左右四个方向),找到R2最小值,即是实际外包框的近似值网友答:
biya 发表于 2025-9-30 08:47
把原图发过来测一下,你这带线型的
已经上传到压缩包,包括:DWG文件、形文件
网友答: 分解线型,再取包围框网友答: 本帖最后由 战神凯哥 于 2025-9-30 23:42 编辑
线形有点困难
网友答:
biya 发表于 2025-9-30 08:47
把原图发过来测一下,你这带线型的
挺自信的兄弟。希望你成功。