yealor 发表于 2023-11-21 23:44:45

VBA 自由调整面积(记录一下)

1、曾经看过一个插件,按比例分面积的插件,但是是以直线分割,哪有那样的地块哟,我设想的是按比例分地块,是以一条复合线进行分割地块。

2、曾经看过一个插件,自由调整地块面积,就是鼠标夹住两地块的公共边,左右移动,自由调整两边的面积,好像也是一条直线。

我也试试编写这样的功能,可发现好难啊,首先是线构面就烧脑:这个面其实就是闭合线,不是真正的面,如何依据在闭合线上的复合线构建闭合线就好麻烦。
慢慢琢磨吧,开个贴记录一下思路历程。

yealor 发表于 2023-11-21 23:51:12

本帖最后由 yealor 于 2023-12-14 21:21 编辑

就是这样的图形

panliang9 发表于 2023-11-22 09:28:57

本帖最后由 panliang9 于 2023-11-22 10:00 编辑

这是一个分割面积的插件:
https://www.cadstudio.cz/en/apps/splitarea/

据说能分割面积,可以尝试下。事实上,即使它是以一条直线裁切了你需要的面积,但后面的工作就简单了,你只需要沿着这条截切线画出一个折线,保证折线和这条直线两边的面积相等,这应该还是很好调节的。


自贡黄明儒 发表于 2023-11-22 10:21:04

用bpoly命令,产生两个封闭多段线,比较面积,采用逼近法,分割线无论是直线还是其它线,都是可以的。

yealor 发表于 2023-11-22 18:53:14

panliang9 发表于 2023-11-22 09:28
这是一个分割面积的插件:
https://www.cadstudio.cz/en/apps/splitarea/



这种插件其实很多,但共同的问题就是都是直线,而我认为这样不符合现实的情况,建筑物可以,但土地,林地不行

tiancao100 发表于 2023-11-22 20:58:21

你是想绕过某建筑物进行分割吗?

ashan 发表于 2023-11-27 08:26:50

自贡黄明儒 发表于 2023-11-22 10:21
用bpoly命令,产生两个封闭多段线,比较面积,采用逼近法,分割线无论是直线还是其它线,都是可以的。

用bpoly的问题是程序运行过程中,如何确定拾取点?就是如何确定这个点刚好在多段线内部?
页: [1]
查看完整版本: VBA 自由调整面积(记录一下)