3DSMAX MaxScript 修改数据顶点坐标

最近接手了 3DSMAX的项目,学习了一些maxscript知识,进行总结一下。

加载数据 保存数据

loadMaxFile "路径" //加载数据

saveMaxFile "路径"//保存数据

可以设置几个button 来进行数据的打开和保存

max file open    //打开
max file save    //保存
max file saveas  //另存为

对于对象顶点坐标的修改,在修改前需要将对象选中后,将其转换为可编辑网格。

select $Box01//选中打开的图像

macros.run "Modifier Stack" "Convert_to_Mesh"//转换为可编辑网格

getnumverts $ 获取选中网格的 顶点数目
getvert $ 顶点序号   获取顶点坐标    //getvert $ 1
setvert $ 顶点序号    修改顶点坐标   //setvert $ 1 [1,2,3]
deletevert $ 顶点序号

setvertselection $ #{1..6}  指定某个点被选中,(示例为选中1到6号点)
move $.selectedverts [10,0,0]  对选中的点进行移动

若一个场景中有多个对象,则需要加入循环语句来遍历。

for g in geometry do //遍历场景中的 gemoetry
(
	select g //选中当前的 gemoetry
	macros.run "Modifier Stack" "Convert_to_Mesh"
	x=getnumverts $//当前对象的顶点数
	
	for i=1 to x do //遍历所有顶点
	(
		vert = getvert $ i //将顶点数值保存在vert中
		vert[1]=vert[1]+(random 0 100) //修改示例
		vert[2]=vert[2]+(random 0 100)
		vert[3]=vert[3]+(random 0 100)
		setvert $ i vert
	)
		messagebox "修改成功"
)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CodeMak1r

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值