houdini - 如何根据Houdini中的属性删除点?
问题描述
我创建了一条有几个点的曲线。现在我想根据其中一个属性(will_be_removed)删除一些点。
如上图所示,那些i@will_be_removed
设置为 1 的点将被删除。
我尝试使用下面的 VEX 代码,但它表示类型的下标无效:int.will_be_removed
if(@ptnum.will_be_removed == 1)
{
removepoint(0, @ptnum);
}
如何正确引用这些点?
解决方案
此代码中的错误
if(@ptnum.will_be_removed == 1)
{
removepoint(0, @ptnum);
}
是因为@ptnum
是VEX 类型 int。@ptnum
也可以写成i@ptnum
明确指示它的类型,但由于它是一个众所周知的属性(请参阅链接中的文档),您也可以将其简写为@ptnum
.
int
类型是数字,不包含其他数据的集合。
关于属性,您还需要记住它们是顶点、点、图元还是细节属性。
属性优先级
当同一几何中的两个组件具有同名属性时,使用几何“较低级别”上的属性,因此:
顶点属性,覆盖:
点属性,覆盖:
覆盖以下内容的原始属性:
细节(整个几何)属性
推荐阅读
- javascript - 如何访问渲染中构造函数中定义的 react-natve 变量?
- android - Kotlin - AsyncTask 不会从 API 链接获取 JSON 数据,也不会在应用程序中显示它
- c - 如何正确销毁 C 中多个进程使用的共享未命名信号量?
- laravel-blade - HTML 代码在 Laravel 的 Blade 模板中不起作用
- spring - SPRING 5.2.5 和 DefaultSftpSessionFactory 中缺少 setTestSession() 方法
- kubernetes - 将 k8s 迁移到 RBAC 的问题
- c++ - 参数包扩展未在 C++ 中编译
- php - 类“”不是有效的实体或映射的超类
- java - 检测类是 kotlin 还是 java
- python - 如何使 QScrollArea 正常工作?