今天突然遇到了一个问题,像下边这幅图(正视图),如果模型上我已经卡好了线,突然需要对这些线进行均匀分布,该怎么办呢?当然重做也是一个办法,就是有点麻烦,所以我就想着,看能不能通过脚本来实现这个功能。
MAYA的精准化控制
一、问题提出
(1)简化并提出问题
这里我用一个简单的模型来举例子,模型上边的线条是我已经卡好的,接下来我们的主要目的就是让这些线条实现均匀水平分布:
(2)这个问题的应用场景
如果能解决这个问题,倒是蛮有趣的,毕竟只要涉及建模必定涉及布线,虽说一开始布好线很重要,但是难免出现需要调整的情况,比如我们要做一把梳子,或者其他有重复部件的模型,那么对于线条的水平分布非常重要了。
二、关于脚本
(1)单线条拟合方向并均匀排布
经过尝试,单条线上点的均匀排布还是很稳定的。
这里是脚本,直接粘贴进去运行就可以了,如果不知道怎么操作可以看一下我的这个文章:在MAYA中使用Python脚本进行批量轴居中(点击跳转)
import maya.cmds as cmds
import numpy as np
def fit_line(points):
vectors = points[1:] - points[:-1]
direction = np.