BlenderCN论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 5199|回复: 24

(BlenderCN首发)Smart two edges intersect tool (cad VTX)

[复制链接]
发表于 2014-5-23 16:10:56 | 显示全部楼层 |阅读模式
先说tinyCAD的缺点,当然还是感谢原作者。
1.jpg
2.jpg
3.jpg
4.jpg
我的smart VTX,出场:
smart.gif
表现良好

还贴心的加了一个选项,不共面的edge也能给你强制共面,不过,什么时候用自己把握。

5.jpg

脚本:
smart_edges_intersect_tool.zip (2.18 KB, 下载次数: 2500)
发表于 2014-5-23 16:58:17 | 显示全部楼层
保留面太重要了,在原插件上更上一层楼,太棒了!
回复 支持 反对

使用道具 举报

发表于 2014-5-24 12:03:33 | 显示全部楼层
32的32次方次赞,交叉线自动断点太重要了。
那个插件也有个 VTX ALL 版,支持多组线条同时切,那样的话就perfect了。Luxuy能否挑战一下?  

理想中,全选部分或所有元素后,一键自动切断所有重合面。典型的应用像是这样:

5453.jpg

回复 支持 反对

使用道具 举报

发表于 2014-5-24 15:21:51 | 显示全部楼层
本帖最后由 云风如我 于 2014-5-24 15:24 编辑
老猫 发表于 2014-5-24 12:03
32的32次方次赞,交叉线自动断点太重要了。
那个插件也有个 VTX ALL 版,支持多组线条同时切,那样的话就pe ...


这个应该算是平面的布尔(合集)操作的一种。在 AI 或 CR 里面很常见……

MAX 的样条线操作也自带这个……

理想中的 Blender 布尔修改器,应该还能支持样条线来着,可惜现在不行……


回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-24 16:01:23 | 显示全部楼层
老猫 发表于 2014-5-24 12:03
32的32次方次赞,交叉线自动断点太重要了。
那个插件也有个 VTX ALL 版,支持多组线条同时切,那样的话就pe ...

我的第一感觉是包装一下knife_project,没必要重新造轮子。
说一下简单的思路:
1. 将所有选择元素的一部分(linked)分离。
2. 用knife project
3. 进入分离的部分,再来一次knife project
4. 合并mesh
5. remove doubles
6. ok

有兴趣的同学人肉操作一下看看。

回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-24 16:02:49 | 显示全部楼层
云风如我 发表于 2014-5-24 15:21
这个应该算是平面的布尔(合集)操作的一种。在 AI 或 CR 里面很常见……

MAX 的样条线操作也自带这个… ...

max ai不熟,inkscape和blender的逻辑一样,当然,如果自带了工具就不用自己弄了。
回复 支持 反对

使用道具 举报

发表于 2014-5-24 18:12:35 | 显示全部楼层
本帖最后由 云风如我 于 2014-5-24 18:16 编辑

你说的手工的方法肯定行。而且不用这么麻烦,由于新版的布尔支持多边面了,直接挤出一些厚度,进行布尔计算。然后留下底面就行(如果布尔支持 0 厚度网格(同一平面)的计算就好了)。

但这只适合东西要合并的部分不多的情况,就像老猫给的图例。

如果要合并的“物体”或者“要产生交点的位置”异常的多,一个个手工调整,显然不太现实。

MAX 图形布尔逻辑基本和 AI 差不多,也就是说,合并后中间的交点是不会保留的。能想象 Y 字形状的贝赛尔曲线么?显然是不存在的。所以如果需要图中的例子,还是得手工调整……

这种合并后还能留下交线交点的例子,也许 CAD 里面会有吧。


回复 支持 反对

使用道具 举报

发表于 2014-5-24 22:55:29 | 显示全部楼层
luxuy 发表于 2014-5-24 16:01
我的第一感觉是包装一下knife_project,没必要重新造轮子。
说一下简单的思路:
1. 将所有选择元素的一部 ...

第一,固然可行,但这明显是效率问题。一个是马车轮子,一个是汽车轮子。
第二,即使是VTX ALL也还并不完美,你的插件有补面的优点,他的插件也并非适用于所有情况。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-25 01:09:01 | 显示全部楼层
云风如我 发表于 2014-5-24 18:12
你说的手工的方法肯定行。而且不用这么麻烦,由于新版的布尔支持多边面了,直接挤出一些厚度,进行布尔计算 ...

(^o^) 嗨 ,我上面说的是代码的算法:)。不仅仅是手工操作哦。
回复 支持 反对

使用道具 举报

发表于 2014-5-25 08:15:15 | 显示全部楼层
luxuy 发表于 2014-5-25 01:09
(^o^) 嗨 ,我上面说的是代码的算法:)。不仅仅是手工操作哦。

哦 批处理啊 想必是可以的
回复 支持 反对

使用道具 举报

发表于 2014-5-25 19:22:24 | 显示全部楼层
113行 return前面因该恢复边选择模式。

context.tool_settings.mesh_select_mode = (False,True,False)
return {"FINISHED"}

不然接下来会很难多选边,总是选到面,体验会很奇怪。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-25 23:01:38 | 显示全部楼层
老猫 发表于 2014-5-25 08:15
哦 批处理啊 想必是可以的

差不多就是你说的“批处理”吧,但使用起来和脚本一样一样的,因为用户并不关心底层。我过几天写个原型,想得基本差不多,我之前说的思路可行,不难的。
回复 支持 反对

使用道具 举报

发表于 2014-5-25 23:07:33 | 显示全部楼层
luxuy 发表于 2014-5-25 23:01
差不多就是你说的“批处理”吧,但使用起来和脚本一样一样的,因为用户并不关心底层。我过几天写个原型, ...

我只是在想极限的情况:如果重合的不是两个面,而是n个面,那么这样相互之间的刀投次数岂不是要阶乘了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-25 23:07:38 | 显示全部楼层
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-25 23:10:01 | 显示全部楼层
nirenyang 发表于 2014-5-25 19:22
113行 return前面因该恢复边选择模式。

context.tool_settings.mesh_select_mode = (False,True,False)

我之前之所以让edge和face同时选中,是为了强调face被分割的快感,让face的分割视觉化。
你的建议很好,做完之后切换回去是应该的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-25 23:15:45 | 显示全部楼层
老猫 发表于 2014-5-25 23:07
我只是在想极限的情况:如果重合的不是两个面,而是n个面,那么这样相互之间的刀投次数岂不是要阶乘了 ...

老猫果然是认真想过的
我现在想的是,只要提取所有的edge,然后knife project即可。不要linked之类的,一步到位。
回复 支持 反对

使用道具 举报

发表于 2016-4-16 16:09:25 | 显示全部楼层
很好的东西!!暂时用不上!!!
回复 支持 反对

使用道具 举报

发表于 2017-7-9 22:03:47 | 显示全部楼层
发帖者你好,我怎么无法正常使用你的插件呢?
请问是什么原因呢?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

Blender最新中文教学视频|Blender头条|小黑屋|手机版|Archiver|Blender中国 ( 蜀ICP备17002929号 )360网站安全检测平台

GMT+8, 2021-1-25 17:51 , Processed in 0.124212 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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