Skip to content

Commit d49f7af

Browse files
authored
Add distance math node (AcademySoftwareFoundation#1333)
Adding distance math node to measure the distance between two points.
1 parent 7b229d1 commit d49f7af

2 files changed

Lines changed: 55 additions & 0 deletions

File tree

libraries/stdlib/stdlib_defs.mtlx

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2201,6 +2201,26 @@
22012201
<output name="out" type="float" default="0.0" />
22022202
</nodedef>
22032203

2204+
<!--
2205+
Node: <distance>
2206+
Measures the distance between two points in 2D, 3D, or 4D.
2207+
-->
2208+
<nodedef name="ND_distance_vector2" node="distance" nodegroup="math">
2209+
<input name="in1" type="vector2" uiname="in1" value="0.0, 0.0" />
2210+
<input name="in2" type="vector2" uiname="in2" value="0.0, 0.0" />
2211+
<output name="out" type="float" />
2212+
</nodedef>
2213+
<nodedef name="ND_distance_vector3" node="distance" nodegroup="math">
2214+
<input name="in1" type="vector3" uiname="in1" value="0.0, 0.0, 0.0" />
2215+
<input name="in2" type="vector3" uiname="in2" value="0.0, 0.0, 0.0" />
2216+
<output name="out" type="float" />
2217+
</nodedef>
2218+
<nodedef name="ND_distance_vector4" node="distance" nodegroup="math">
2219+
<input name="in1" type="vector4" uiname="in1" value="0.0, 0.0, 0.0, 0.0" />
2220+
<input name="in2" type="vector4" uiname="in2" value="0.0, 0.0, 0.0, 0.0" />
2221+
<output name="out" type="float" />
2222+
</nodedef>
2223+
22042224
<!--
22052225
Node: <dotproduct>
22062226
Perform a dot product of two 2-4 channel vectors

libraries/stdlib/stdlib_ng.mtlx

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1291,6 +1291,41 @@
12911291
<output name="out" type="vector2" nodename="N_switch_operationorder" />
12921292
</nodegraph>
12931293

1294+
<!--
1295+
Node: <distance>
1296+
Measures the distance between two points in 2D, 3D, or 4D.
1297+
-->
1298+
<nodegraph name="NG_distance_vector2" nodedef="ND_distance_vector2">
1299+
<subtract name="N_mtlxsubtract" type="vector2">
1300+
<input name="in1" type="vector2" interfacename="in1" />
1301+
<input name="in2" type="vector2" interfacename="in2" />
1302+
</subtract>
1303+
<magnitude name="N_mtlxmagnitude" type="float">
1304+
<input name="in" type="vector2" nodename="N_mtlxsubtract" />
1305+
</magnitude>
1306+
<output name="out" type="float" nodename="N_mtlxmagnitude" />
1307+
</nodegraph>
1308+
<nodegraph name="NG_distance_vector3" nodedef="ND_distance_vector3">
1309+
<subtract name="N_mtlxsubtract" type="vector3">
1310+
<input name="in1" type="vector3" interfacename="in1" />
1311+
<input name="in2" type="vector3" interfacename="in2" />
1312+
</subtract>
1313+
<magnitude name="N_mtlxmagnitude" type="float">
1314+
<input name="in" type="vector3" nodename="N_mtlxsubtract" />
1315+
</magnitude>
1316+
<output name="out" type="float" nodename="N_mtlxmagnitude" />
1317+
</nodegraph>
1318+
<nodegraph name="NG_distance_vector4" nodedef="ND_distance_vector4">
1319+
<subtract name="N_mtlxsubtract" type="vector4">
1320+
<input name="in1" type="vector4" interfacename="in1" />
1321+
<input name="in2" type="vector4" interfacename="in2" />
1322+
</subtract>
1323+
<magnitude name="N_mtlxmagnitude" type="float">
1324+
<input name="in" type="vector4" nodename="N_mtlxsubtract" />
1325+
</magnitude>
1326+
<output name="out" type="float" nodename="N_mtlxmagnitude" />
1327+
</nodegraph>
1328+
12941329
<!-- ======================================================================== -->
12951330
<!-- Adjustment nodes -->
12961331
<!-- ======================================================================== -->

0 commit comments

Comments
 (0)