Houdini_VEX属性术语表

如有错误,可在评论区指正。

1、全局变量

wrangles中可用的变量。类型指示器不是必需的,但包含在内作为提醒。

// 在所有 SOP  wrangles 中可用

f@Frame //当前浮动帧号,相当于 $FF Hscript 变量
f@Time //当前时间(以秒为单位),相当于 $T Hscript 变量
i@SimFrame //整数模拟时间步数 ($SF),仅出现在 DOP 上下文中。
f@SimTime //以秒为单位的模拟时间($ST),仅存在于 DOP 上下文中。
f@TimeInc //当前用于模拟或回放的时间步长。

// 可在 Attribute Wrangle 中使用(点、顶点、图元和细节)
v@P // 当前元素的位置。
i@ptnum //附加到当前处理元素的点号。
i@vtxnum //当前处理顶点的线性数。
i@primnum //附加到当前处理的元素的原始编号。
i@elemnum //当前处理元素的索引号。
i@numpt //几何中的点总数。
i@numvtx //当前处理元素的图元中的顶点数。
i@numprim //几何体中图元的总数。
i@numelem //正在处理的元素总数。

// 在 Volume Wrangle
v@P 中可用// 当前体素的位置。
f@@density //当前体素位置的密度场值。
v@center //当前体积的中心。
v@dPdx, v@dPdy, v@dPdz //这些向量存储 x、y 和 z 体素索引中发生的 P 变化。
i@ix, i@iy, i@iz //体素索引。对于密集体积(非 VDB),这些范围从 0 到分辨率-1。
i@resx, i@resy, i@resz //当前volume的分辨率 (或者理解为长宽高)。

2、常见几何属性

// Int
@id // 在整个模拟过程中保持不变的唯一编号。

// float
@pscale // 粒子半径大小。统一尺度。将显示粒子设置为“光盘”以进行可视化。
@width // 曲线的厚度。在对象节点上启用“在视口中对开放曲线进行着色”以进行可视化。
@Alpha // Alpha 透明度覆盖。视口使用它来设置 OpenGL 几何体的 Alpha。
@Pw // 样条权重。

// Vector3
@P // 点位置。用它来在 3D 空间中布置点。
@Cd // 漫反射颜色覆盖。视口使用它来为 OpenGL 几何体着色。
@N // 曲面或曲线法线。如果此属性不存在,Houdini 将计算法线。
@scale //矢量比例。允许定向缩放或拉伸(沿一个方向)。
@rest // 由程序图案和纹理用于粘贴在变形和动画表面上。
@up // 向上向量。局部空间的向上方向,通常为 (0, 1, 0)。
@uv // 该点/顶点的 UV 纹理坐标。
@v // 点速度。移动的方向和速度(以每秒为单位)。

// Vector4
@orient // 点的局部方向(表示为四元数)。
@rot // 在 orient、N 和 up 属性之后应用附加旋转。

// String
@name // 一个唯一的名称,用于标识哪些基元属于哪个部分。也用于标记卷。
@instance // 在渲染时实例化的对象节点的路径。

3、指定VEX数据类型

float f@name // 浮点标量值。
vector2 u@name // 两个浮点值。可用于存储 2D 位置。
vector3 v@name // 三个浮点值。通常是位置、方向、法线、UVW 或颜色。
vector4 p@name // 四个浮点值。通常是旋转四元数,或颜色和 Alpha (RGBA)。
int i@name // 整数值(VEX 使用 32 位整数)。
Matrix2 2@name // 四个浮点值,表示一个 2D 旋转矩阵。
Matrix3 3@名称 // 表示 3D 旋转矩阵或 2D 变换矩阵的九个浮点值。
Matrix4 4@name // 代表 3D 变换矩阵的十六个浮点值。
string s@name // 字符串。

4、Channel快捷语法

ch( 'flt1' ); // 浮动
chf( 'flt2' ); // 浮点数
chi( 'int' ); // 整数
chv( 'vecparm' ); // 向量 3
chp( 'quat' ); // 向量 4 / 四元数
ch3( 'm3' ); // 3x3 矩阵
ch4( 'm4' ); // 4x4 矩阵
chs( 'str' ); // 字符串
chramp( 'r' , X); // 样条斜坡
vector(chramp('c', X)); // RGB 渐变

5、DOP粒子属性

粒子系统由属性驱动,以下是使用的一些属性。

f@age // 自粒子诞生以来的时间(以秒为单位)。
f@life // 允许粒子存活的时间(以秒为单位)。当f@age>f@life时,i@dead将被设置为1。
f@nage //标准化年龄,f@age除以f@life。隐式属性,您无法写入此属性。
i@dead // 粒子是活的 (0) 还是死的 (1)。死粒子在收割阶段被删除。
i@id // 粒子的唯一 ID,在一次模拟中保持不变。

i@stopped // 粒子是移动 (0) 还是停止 (1)。
i@stuck // 粒子是自由的 (0) 还是被卡住的 (1)。
i@sliding // 粒子是自由的 (0) 还是沿着表面滑动 (1)。
f@cling // 向内滑动粒子的力(根据碰撞的表面法线)。
s@pospath // 粒子碰撞对象的路径。
i@posprim // 我们希望引用路径几何中哪个碰撞基元的位置。
v@posuv // 碰撞基元上的参数化 uv。

i@hittotal // 粒子所有命中的累积总数(每个时间步仅递增一次)。
i@has_pprevious // 如果 v@pprevious 包含有效值,则该值设置为 1。
v@pprevious // 存储粒子在前一帧上的位置。用于碰撞检测。
i@hitnum // 上次 POP Collision Detect 中粒子碰撞的次数。
s@hitpath // 被击中的对象的路径。磁盘上文件的路径或 op: 路径。
i@hitprim // 原始命中。如果碰撞检测器无法找出哪个 prim,则可能为 -1。
v@hituv // 基元上的参数化 UV 空间。
v@hitpos // 实际发生命中的位置。如果碰撞物体正在移动,则很有用。
v@hitnml // 碰撞时表面的法线。
v@hitv // 碰撞时表面的速度。
f@hittime // 碰撞发生时,可能发生在帧内。
f@hitimpulse // 记录碰撞解决所需的脉冲量。随时间步长变化。
f@bounce // 当粒子从另一个物体反弹时,这控制它们保留多少能量。
f@bounceforward // 控制它们在切线方向上保留多少能量。
f@friction // 当粒子弹跳时,它们的速度会根据撞击的力度成比例地减慢。
s@collisionignore // 匹配此模式的对象不会发生碰撞。

f@force // 此帧中粒子上的力。
f@mass // 粒子的惯性。
v@spinshape // 将其乘以 f@pscale 以确定旋转惯性粒子的形状。
f@drag // 粒子受风效应影响的程度。
f@dragexp // 范围从 1 到 2,默认值在求解器上设置。用于角度和线性阻力。
v@dragshape // 粒子在其每个局部轴上被拖动的程度。
v@dragcenter // 如果指定,阻力也会在粒子上产生扭矩。
v@targetv // 当地风速。被认为是粒子的目标或目标速度。
f@airresist// 匹配风速有多重要。空气的厚度。
f@speedmin // 粒子可以移动的最小速度,以每秒单位为单位。
f@speedmax // 粒子可以移动的最大速度,以每秒单位为单位。

p@orient // 粒子的方向。用于计算“本地/local”力量。
v@w // 粒子的角速度。给出旋转轴的向量。
v@torque // 相当于旋转的力。不支持惯性张量(相当于质量)。
v@targetw // 该粒子的目标旋转方向和速度。
f@spinresist // 匹配目标有多重要w。
f@spinmin // 粒子可以旋转的最小速度(以弧度每秒为单位)。
f@spinmax // 粒子可以旋转的最大速度(以弧度每秒为单位)。

6、DOP Grains属性

POP Grains 控制下的粒子的“ispbd”属性设置为 1。这会导致它们绕过 POP Solver 中的运动更新,因为实际的运动更新是由 POP Grains 节点完成的。

i@ispbd // 值为 1 会使粒子表现为颗粒。
f@pscale // 用于确定每个粒子的半径。
f@repulsionweight // 粒子碰撞力的加权量。
f@repulsionstiffness // 粒子保持分离的强度。值越高,弹性排斥力越小。
f@attractionweight // 粒子靠近时会自然粘在一起的程度。
f@attractionstiffness // 附近粒子相互粘附的强度。
v@targetP // 粒子被限制在这个位置。
f@targetweight // v@targetP 约束的权重。
f@targetstiffness // 粒子固定到其 v@targetP 属性的刚度。

f@restlength // 由折线连接的粒子将被迫保持这个距离(prim 属性)。
f@constraintweight // 缩放,基于约束力的每个粒子。
f@constraintstiffness // 这控制每个粒子的刚度。
f@strain // 这个原始属性记录约束被拉伸的程度。
f@strength // 如果 f@strain 超过此原始属性,则约束将被删除。

7、DOP Packed RBD属性

Bullet Solver 使用多个点属性来存储打包对象的每个部分的属性。

i@active // 指定该对象是否能够对其他对象做出反应。
i@animated // 指定是否应在每个时间步从其 SOP 几何体更新变换。
i@deforming // 指定是否应在每个时间步从其 SOP 几何体重建碰撞形状。

f@bounce // 物体的弹性。
i@bullet_add_impact // 模拟期间发生的影响将记录在影响或反馈数据中。
i@bullet_ignore // 指定 Bullet 解算器是否应完全忽略该对象。
f@bullet_angular_sleep_threshold // 物体角速度的休眠阈值。
f@bullet_linear_sleep_threshold // 物体线速度的睡眠阈值。
i@bullet_want_deactivate // 禁用对不移动对象的模拟,直到该对象再次移动。
i@computecom // 指定是否应根据碰撞形状计算质心。
i@computemass // 指定是否应根据碰撞形状和密度计算质量。
f@creationtime // 存储创建对象的模拟时间。
i@dead // 指定在下一次求解期间是否应删除该对象。
f@density // 物体的质量等于其体积乘以密度。
f@friction // 物体的摩擦系数。
f@inertialtensorstiffness // 旋转刚度。应用于惯性张量的比例因子。
i@inheritvelocity // SOP 几何体中的 v 和 w 点属性将覆盖初始速度。
f@mass // 物体的质量。
s@name // 对象的唯一名称。由约束网络使用。
p@orient // 对象的方向。
v@P // 物体质心的当前位置。
v@pivot // 方向适用的枢轴。如果 i@computecom 非零,则这是自动计算的。
v@v // 物体的线速度。
v@w // 物体的角速度,以弧度每秒为单位。

i@bullet_adjust_geometry // 缩小碰撞几何体。
i@bullet_autofit // 使用长方体、胶囊体、圆柱体、球体或平面的对象边界。
f@bullet_collision_margin // 碰撞形状之间的填充距离。
s@bullet_georep // 可以是凸包、凹面、盒子、胶囊、圆柱体、复合体、球体或平面。
i@bullet_groupconnected // 创建每组连接基元的凸包。
f@bullet_length // Capsule 或 Cylinder 碰撞形状在 Y 方向的长度。
v@bullet_primR // 盒子、胶囊、圆柱体或平面碰撞形状的方向。
v@bullet_primS // 盒子碰撞形状的大小。
v@bullet_primT // 长方体、球体、胶囊体、圆柱体或平面碰撞形状的位置。
f@bullet_radius // 球体、胶囊体或圆柱体碰撞形状的半径。
f@bullet_shrink_amount // 指定收缩碰撞几何体完成的大小调整量。

s@activationignore // 不会因与任何匹配此模式的对象发生碰撞而被激活。
s@collisiongroup // 指定该对象所属的碰撞组的名称。
s@collisionignore // 该对象不会与任何匹配此模式的对象发生碰撞。
f@min_activation_impulse// 导致对象从非活动状态切换到活动状态的最小脉冲。

f@speedmin // 粒子可以移动的最小速度,以每秒单位为单位。
f@speedmax // 粒子可以移动的最大速度,以每秒单位为单位。
f@spinmin // 粒子可以旋转的最小速度(以弧度每秒为单位)。
f@spinmax // 粒子可以旋转的最大速度(以弧度每秒为单位)。
f@accelmax // 限制由于强制约束而导致的对象速度变化。
f@angaccelmax // 限制由于强制约束而导致的对象角速度的变化。

f@airresist// 指定匹配目标速度 (v@targetv) 的重要性。
f@drag // v@targetv 和 f@airresist 属性对对象的影响程度。
f@dragexp // 范围从 1 到 2,默认值在求解器上设置。用于角度和线性阻力。
v@force // 指定将施加到对象质心的力。
f@spinresist // 指定匹配目标角速度 (v@targetw) 的重要性。
v@targetv // 物体的目标速度。与 f@airresist 属性结合使用。
v@targetw // 物体的目标角速度。与 f@spinresist 属性结合使用。
v@torque // 指定将应用于对象的扭矩。

i@bullet_autofit_valid // 存储解算器是否已经计算碰撞形状属性。
i@bullet_sleeping // 跟踪对象是否已被解算器置于睡眠状态。
f@deactivation_time // 速度低于线性阈值或角度阈值的时间量。
i@found_overlap // 求解器使用它来确定是否执行了重叠测试。
i@id // 对象的唯一标识符。
i@nextid // 存储求解器将分配给下一个新对象的 i@id。

8、DOP RBD约束属性

几何体上的属性可自定义每个约束行为和类型。如果存在与约束属性(例如阻尼damping)同名的基本属性,则属性值将与约束子数据的值相乘。

s@constraint_name // 按名称指定一段关系数据,例如“Glue”或“Spring”。
s@constraint_type // 指定约束是否影响“位置”、“旋转”或“所有”自由度。
f@restlength // 指定要强制执行的约束的所需长度。
f@width // 每条边的宽度。
f@density // 每个点的密度。
p@orient // 每个点的初始方向。以四元数形式存储的值。
v@v // 每个点的初始速度。
v@w // 每个点的初始角速度,以弧度每秒为单位测量。
f@friction // 每个点的摩擦力。
f@klinear // 定义导线抵抗拉伸的强度。
f@damplinear // 定义导线抵抗拉伸力引起的振动的强度。
f@kangular // 定义电线抵抗弯曲的强度。
f@dampangular // 定义导线抵抗弯曲力引起的振动的强度。
f@targetstiffness // 定义导线抵抗动画位置变形的强度。
f@targetdamping // 定义导线抵抗拉伸力引起的振荡的强度。
f@normaldrag // 垂直于导线方向的拖动分量。
f@tangentdrag // 与导线相切方向的拖动分量。
i@nocollide // 禁用边缘的碰撞检测(仅在碰撞处理为 SDF 时使用)。
v@restP // 每个点的静止位置。
p@restorient // 每个点的静止方向。
i@gluetoanimation // 使点的位置和方向受到输入几何体的约束。
i@pintoanimation // 使点的位置受限于输入几何体。
v@animationP // 每个点的目标位置。
p@animationorient // 每个点的目标方向。
v@animationv // 每个点的目标速度。
v@animationw // 每个点的目标角速度。
i@independentcollisionallowed // 切换外部碰撞(仅限非 SDF 几何碰撞)。
i@independentcollisionresolved // 未解决的外部碰撞(仅限非 SDF 几何碰撞)。
i@codependentcollisionallowed // 切换软体碰撞(仅限非 SDF 几何碰撞)。
i@codependentcollisionresolved // 未解决的切换软体碰撞(仅限非 SDF 几何碰撞)。
i@selfcollisionallowed // 切换自碰撞(仅限非 SDF 几何碰撞)。
i@selfcollisionresolved // 未解决的切换自碰撞(仅限非 SDF 几何碰撞)。
i@propagate_rate // 指定碰撞产生的脉冲如何在约束网络中传播。
i@propagationiterations // 指定胶合的冲击传播迭代次数。

9、DOP FLIP属性

FLIP 求解器包含嵌入式 POP解算器,因此上面列出的所有 POP 属性都适用。

f@pscale // 粒子尺度
v@v // 粒子速度
f@viscosity // 流体的“厚度”。
f@density //单位体积的质量。
f@temperature // 流体的温度。
f@vorticity // 测量流体中的循环量。
f@divergence // 正值导致粒子散开,负值导致粒子聚集在一起。
v@rest // 用于跟踪流体随时间的位置。
v@rest2 // 用于混合双重休息属性,避免拉伸。
f@droplet // 识别与流体主体分离的颗粒。
f@underresolved // 网格上尚未完全解析的粒子。
i@ballistic // 指定流体求解将忽略的粒子。
v@Lx // 角动量 X 轴
v@Ly // 角动量 Y 轴
v@Lz // 角动量 Z 轴

10、DOP Vellum Point属性

//Vellum几何体也被视为粒子,因此上面列出的所有 POP 属性都适用。

i@isgrain // 值为 1 时,粒子表现为颗粒,值为 0 时,粒子表现为布料。
f@attractionweight // 粒子在接近时会自然粘在一起的程度,零会禁用结块。
f@friction // 静摩擦力的缩放比例。
f@dynamicfriction // 动摩擦缩放多少。
f@inertia // 粒子对旋转约束的阻力。如果为零,粒子将不会旋转。
v@v // 点速度。
p@w //(头发或电线)角速度。
p@orient //(头发或金属丝)方向。
i@stopped // 用于固定点(0=自由,1=无运动,2=无旋转,3=无旋转或移动)。
i@pintoanimation // 如果为 1,固定点的位置将更新以匹配目标点。
i@gluetoanimation // 如果为 1,则位置和方向都会更新
s@target_path // 任何引脚的目标路径(当 Target 参数在 Vellum Source 中设置时)
i@target_pt // 任何引脚的目标点编号(当Target 参数在 Vellum Source 中设置)
f@targetweight // 使用 0..1 权重值影响固定点的强度。
i@weld // 将此点焊接到一个点号。如果有@id属性,则指向一个点id。
i@branchweld // 当被迫分割点进行头发模拟时,由头发约束构建。
i@collisionweld // 根据需要生成,为缠结算法提供单个焊缝。
f@breakthreshold // 断裂焊缝和分支焊缝的阈值
s@breaktype // 'stretchstress'、'bendstress'、'stretchdistance'、'stretchratio' 或'bendangle'。

// 碰撞
f@pscale // 用于确定布料的厚度或每个粒子的半径。
f@overlap_self // 存储原始 pscale 的重叠量。
f@overlap_external // 存储原始 pscale 的重叠量。
i@layer // 表示属于不同的布料层。数字越大表示层数越高。
i@disableself // 值为 0 表示该点将使用自碰撞。
i@disableexternal // 值为 0 表示该点将使用外部碰撞。
s@collisionignore // 存储对象和碰撞组不发生碰撞的模式。
s@collisiongroup // 给出该点所属的碰撞组。

// 内部工作变量(保留以避免每帧删除/添加属性)
v@pprevious // 对于一阶积分,前一帧位置(时间步的开始)。
v@plast // 对于二阶积分,是前两帧的位置。
v@vprevious // 对于一阶积分,前一帧速度(时间步长的开始)。
v@vlast // 对于二阶积分,前两帧的速度。
p@orientprevious // 对于一阶积分,前一帧方向(时间步长的开始)。
p@orientlast // 对于二阶积分,前两帧的方向。
p@wprevious // 对于一阶积分,前一帧角速度(时间步长的开始)。
p@wlast // 对于二阶积分,前两帧的角速度。
f@dP // 约束位移。可能是最后一次迭代。
f@dPw // 约束权重。可能是最后一次迭代。
s@patchname // 标识模拟中生成的每个补丁,以便可以更新/替换它。
// 当点是压力约束的一部分时,这些属性保存在约束更新期间计算的值。
v@PressureGradient // 沿着最大体积增益方向向外指向的向量。
i[]@volumepts // 包含计算体积属性所需的点的数组。
i@volume // 与压力约束的剩余长度值进行比较。

11、DOP Vellum约束属性

约束有多种类型,因此这些变量的含义通常取决于约束类型。它们通常在primitive。

s@type // 约束的类型。
s@type = 'distance' // 显示几何图形中的每条边都转换为保持该边长度的距离约束。
s@type = 'stitch' // 使用距离约束将同一几何体中的点缝合在一起。这些点实际上不需要通过几何图形连接。这对于保持夹克闭合或防止口袋摆动很有用
s@type = 'branchstitch' //
s@type = 'ptprim' //
s@type = 'bend' // 每对三角形(或隐含三角形,如果输入为四边形或更高)创建一个保持三角形之间初始二面角的约束。'trianglebend' // 每对三角形(如果输入是四边形或更高,则为隐含三角形)都会创建一个约束,以维持三角形之间的初始二面角。
angle
tetvolume
pressure // 由 Define Pieces 参数确定的每个部件都存储其原始体积,并构建多点约束来维护它。执法是全球性的,因此压扁一个地方就会膨胀另一个地方,就像气球一样。
Attach, pin AttachNormal Pinorient Bendtwist StretchShear TetFiber Triarap Tetarap*
f@stiffness // 约束的刚度,控制约束拉动的强度。
f@restlength f@restlengthorig f@dampingratio // 评估约束时,阻尼通过释放能量来减少抖动。阻尼太大会导致约束无法得到满足。必须使用小于 1 的值。
f@stress // 约束所做工作的估计(由 Vellum 求解器更新)。
s@constraint_tag // 创建约束的节点的名称。

12、KineFX属性

KineFX 层次结构或骨架由多边形线连接的点的集合表示。层次结构中关节之间的父子关系由顶点顺序决定。

s@name // 关节名称属性
3@transform // 点的世界空间 3×3 变换(旋转、缩放和剪切)。
4@localtransform // 点相对于其父点的变换。
i@scaleinheritance // 确定点如何从其父点继承局部比例。

13、View port显示属性

覆盖viewport显示模式

i@gl_wireframe // 细节属性,强制线框 (1) 或阴影 (-1)
i@gl_lit // 细节属性,使用照明 (1) 或无照明 (0) 绘制
i@gl_showallpoints // 细节属性,均匀绘制点如果连接到几何体
f@vm_cuspangle // 细节属性,用于生成尖角法线的角度
i@gl_spherepoints // 细节属性,(1) 导致未连接的点绘制为球体
i@gl_xray // 细节属性,(1) 几何体即使隐藏在其他几何体后面也可见
v@Cd // 颜色漫反射
f@Alpha // 表面不透明度
v@N // 光照的表面法线
f@width // 曲线宽度
f@pscale // 如果不存在 pscale,则视口默认为 1.0,而 Mantra 默认为 0.1
s@spritepath s@shop_materialpath i@group__3d_hidden_primitives // 将图元添加到该组将它们从 3D 视口中隐藏
f@intrinsic:volumevisibledesired // 控制体积不透明度的原始内在属性。
f@volvis_shadowscale // 控制体积阴影强度的详细属性。

14、复制和实例化属性

当复制或实例化时,Houdini 会查找这些点属性来转换每个副本/实例。

p@orient // 副本的方向。
f@pscale // 统一比例。
v@scale // 非均匀缩放。
v@N // 正常(+Z 轴副本,如果没有 p@orient)。
v@up // 副本的向上向量(+副本的 Y 轴,如果没有 p@orient)。
v@v // 副本的速度(运动模糊),如果没有 p@orient 或 v@N,则用作 +Z 轴。
p@rot // 附加旋转(在上面的方向属性之后应用)。
v@P // 副本的翻译。
v@trans // 除了 v@P 之外,还翻译了副本。
v@pivot // 副本的本地枢轴点。
3@transform 或 4@transform // 变换矩阵覆盖除 v@P、v@pivot 和 v@trans 之外的所有内容。
s@shop_materialpath // 实例化对象使用此材质。
s@material_override // 将材质参数名称映射到值的序列化 Python 字典。
s@instance s@instancefile // 指示要实例化的几何体的文件路径。
s@instancepath // 实例的几何图形。这是磁盘上文件的路径或 op: 路径。

15、访问其它输入

此语法用于引用连接到争论输入的节点或网络中的其他节点。

// 'opinput:X' 是最清晰且始终有效的(第一个输入是输入 0)。
point( 'opinput:0' , 'P' , i@ptnum)
point( 'opinput:1' , 'P' , i@ptnum)
point( 'opinput:2' , 'P' , i@ptnum)
point( 'opinput:3' , 'P' , i@ptnum)

// 整数输入数(第一个输入为 0)。有些函数不支持此功能,但它很容易输入。
point( 0 , 'P' , i@ptnum)
point( 1 , 'P' ,, i@ptnum)
point( 3 , 'P' , i@ptnum)

// @OpInputX 也可以工作,但要小心,因为它不是基于 0 的,而是从 1 开始,这很令人困惑
point(@OpInput1, ' P' , i@ptnum)
point(@OpInput2, 'P' , i@ptnum)
point(@OpInput3, 'P' , i@ptnum)
point(@OpInput4, 'P' , i@ptnum)

// v@opinputX_* 从编号输入上的同一元素读取属性(第一个输入是输入 0)。
v@opinput0_P
v@opinput1_P
v@opinput2_P
v@opinput3_P

// 到其他节点的绝对路径和相对路径如下所示。
point('op:/obj/geo1/OUT', 'P', i@ptnum)
point('op:../../OUT', 'P', i@ptnum)

16、For循环元数据

详细属性,您可以通过“获取元数据”Block Begin 节点获取此信息。

i@numiterations // 预期的迭代总数

i@iteration // 当前迭代次数,始终从 0 开始,每次循环加 1。

f@value // 在分段循环中,这是属性的当前值

i@ivalue // 在简单重复中,这是 value 的整数版本。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/63062.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

20230829工作心得:如何把大List 切割为多个小List?

1 怎么看这个方法谁在调用它? 解决:按ctrl,然后点进去看。 idea里看方法的具体细节,和谁在调用这个方法,都可以通过按ctrl,然后单击查看。 2 请求的时候,如果时间yyyy-MM-dd HH:mm:ss在url里会…

Ingress IN Kubernetes

摘要 Ingress的设计旨在提供一种统一的方式来管理和暴露集群中的服务,以及灵活地配置和调整服务的访问规则。通过与底层的网络实现解耦,Ingress使得服务的部署和调度更加灵活,同时通过SSL/TLS加密和负载均衡等功能,保证了服务的安…

【chrome扩展开发】如何在项目中判断插件是否已安装

由于安全限制,本文采取间接的方式实现 1、项目部分 比如通过cookie、localStorage等进行状态存储 1.1、初始化判断 function getCookie(name){let arr document.cookie.match(new RegExp("(^| )"name"([^;]*)(;|$)"))if(arr ! null){return u…

最小生成树 -prim算法

一般无向图建图稠密图-prim算法稀疏图-kruskal算法 prim : 加点法 1.先随机选一个点,加入集合 ,之后寻找最短的距离的点加入集合,行程最小生成树。 2.注意最小生成树是不能有回路的, 所以可以把回路设置成最大值,即假装…

【大数据】图解 Hadoop 生态系统及其组件

图解 Hadoop 生态系统及其组件 1.HDFS2.MapReduce3.YARN4.Hive5.Pig6.Mahout7.HBase8.Zookeeper9.Sqoop10.Flume11.Oozie12.Ambari13.Spark 在了解 Hadoop 生态系统及其组件之前,我们首先了解一下 Hadoop 的三大组件,即 HDFS、MapReduce、YARN&#xff0…

Linux测开常用命令总结

文章目录 Linux系统中文件目录树 基本指令的使用: Linux命令的帮助信息查看 --help command --help 说明: 显示command 命令的帮助信息通过man命令查看帮助信息 man command( 命令的名称) man 命令查看的帮助信息更加详细ls,pwd&#xff0c…

传输层—UDP原理详解

目录 前言 1.netstat 2.pidof 3.UDP协议格式 4.UDP的特点 5.面向数据报 6.UDP的缓冲区 7.UDP使用注意事项 8.基于UDP的应用层协议 总结 前言 在之前的文章中为大家介绍了关于网络协议栈第一层就是应用层,包含套接字的使用,在应用层编码实现服务…

springboot实战(三)之多环境部署配置文件生效方式

环境: jdk:1.8 springboot版本:2.7.15 配置: 1.新建yml文件 在resources包中创建application-dev.yml、application-testing.yml两个yml文件 2.配置 在application.yml进行配置生效文件 3.注意事项 新建yml的名称必须以&qu…

9.6 【C语言】使用枚举类型

如果一个变量只有几种可能的值,则可以定义为枚举类型,所谓“枚举”就是指把可能的值一一列举出来,变量的值只限于列举出来的值的范围内。 声明枚举类型用enum开头,例如: enum Weekday{sun,mon,tue,wed,thu,fri,sar};…

CF Edu152 C

Problem - C - Codeforces 题意: 思路: 首先,观察样例可知 这种是等效的 推广一下 0000.....111111 ..l..............r...... 这种是等效的 容易想到维护后面第一个1的位置和前面第一个0的位置,然后把所有区间都等效一下&…

CSS :has伪类

一、什么是has 有时候我们会遇到一些场景,比如样式涉及到父子父子组件:我们使用了element-ui的Tree 树形控件,但是我们不希望使用其自带的样式,比如父级不希望有选中样式之类,中国社会科学院就可以用has。 :has伪类的…

Scrum敏捷开发工具:提高团队协作与交付效率

随着软件开发行业的不断发展和进步,Scrum敏捷开发工具逐渐成为了备受关注的话题。 Scrum是一种灵活且高效的项目管理方法,旨在提高团队协作和交付效率,使团队能够更快地响应变化和需求。 本文将深入探讨Scrum敏捷开发工具的基本概念、使用方…

Docker资源控制cgroups

文章目录 一、docker资源控制1、资源控制工具2、Cgroups四大功能 二、CPU 资源控制1、设置CPU使用率上限2、CPU压力测试3、Cgroups限制cpu使用率4、设置CPU资源占用比(设置多个容器时才有效)5、设置容器绑定指定的CPU 三、对内存使用的限制四、对磁盘IO配…

wxWidgets路线图

了解wxWidgets开发过程 首先,知道wxWidgets有稳定的发布分支和开发分支是很有用的。稳定分支在同一系列中的所有版本之间保留了API和ABI(二进制)兼容性,而开发分支可能(尽管很少,有时确实)破坏…

Shell - 根据PID过滤进程信息

文章目录 #!/bin/bash #Function: 根据用户输入的PID,过滤出该PID所有的信息 read -p "请输入要查询的PID: " P nps -aux| awk $2~/^$P$/{print $11}|wc -l if [ $n -eq 0 ];thenecho "该PID不存在!!"exit fi echo "…

直播预告!生鲜与零售商品识别系统产业实践与部署详解

生鲜零售作为民生消费的重要一环,在促进行业新消费升级的进程中有着至关重要的作用。在超市等无人零售场景中,目前结算方式主要有以下几种: 但是以上几种方法存在如下缺点: 条形码方式:对于成品包装的商品较为成熟&a…

石油化工智慧安监方案:TSINGSEE青犀视频AI智能识别安全生产风险预警平台建设

一、行业背景 石油化工生产存储企业属于高温、高压、易燃、易爆、有毒的危险行业,其生产装置大型化、密集化、生产工艺复杂、生产过程紧密耦合。随着互联网技术的发展,运用先进的AI、物联网、大数据、云计算等技术手段不断提高石油化工行业的安全监管水…

自动化方案不合理的原因浅析

前言 一直以来,测试团队都面临一个迫在眉睫的问题:自动化测试收效甚微,甚至被认为是”为了实现自动化而自动化“。之前写过一篇博客自动化测试的评价维度,其实自动化的评价不乏有其他的评价指标。但这里想说的一点是,自…

【DevOps视频笔记】8. Jenkins 配置

一、Jenkins 入门配置 1. 工具 / 插件 介绍 二、插件和工具配置 1. 配置 JDK 和 Maven Stage 1:将服务器中 JDK 和 Maven 映射到 jenkins 容器中 Stage 2:jenkins 全局配置中 -- 指定JAVA_HOME目录 Stage 3:jenkins 全局配置中 -- 指定…

Stable Diffusion 从入门到企业级实战0401

一、概述 本章是《Stable Diffusion 从入门到企业级实战》系列的第四部分能力进阶篇《Stable Diffusion ControlNet v1.1 图像精准控制》第01节, 利用Stable Diffusion ControlNet Inpaint模型精准控制图像生成。本部分内容,位于整个Stable Diffusion生…