diff --git a/otls/MOPS_Align.hda/INDEX__SECTION b/otls/MOPS_Align.hda/INDEX__SECTION
index ce25bd5e..934c38bc 100644
--- a/otls/MOPS_Align.hda/INDEX__SECTION
+++ b/otls/MOPS_Align.hda/INDEX__SECTION
@@ -38,5 +38,5 @@ Inputs: 1 to 1
Subnet: true
Python: false
Empty: false
-Modified: Tue Nov 24 10:06:22 2020
+Modified: Mon Dec 7 22:50:13 2020
diff --git a/otls/MOPS_Align.hda/MOPS_8_8Sop_1Align_8_81.2/Contents.dir/.OPdummydefs b/otls/MOPS_Align.hda/MOPS_8_8Sop_1Align_8_81.2/Contents.dir/.OPdummydefs
index e058c533..8755f083 100644
Binary files a/otls/MOPS_Align.hda/MOPS_8_8Sop_1Align_8_81.2/Contents.dir/.OPdummydefs and b/otls/MOPS_Align.hda/MOPS_8_8Sop_1Align_8_81.2/Contents.dir/.OPdummydefs differ
diff --git a/otls/MOPS_Align.hda/MOPS_8_8Sop_1Align_8_81.2/Contents.dir/Contents.mime b/otls/MOPS_Align.hda/MOPS_8_8Sop_1Align_8_81.2/Contents.dir/Contents.mime
index 96aadd3a..d4affc81 100644
--- a/otls/MOPS_Align.hda/MOPS_8_8Sop_1Align_8_81.2/Contents.dir/Contents.mime
+++ b/otls/MOPS_Align.hda/MOPS_8_8Sop_1Align_8_81.2/Contents.dir/Contents.mime
@@ -32,24 +32,25 @@ Content-Type: text/plain
sopflags sopflags =
comment ""
-position 0.103097 -0.17445
-connectornextid 1
-flags = lock off model off template off footprint off xray off bypass off display on render on highlight off unload off savedata off compress on colordefault on exposed on
+position -13.3944 -11.5489
+connectornextid 2
+flags = lock off model off template on footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
outputsNamed3
{
+1 "output1"
}
inputsNamed3
{
-0 MOPs_Typography 0 1 "input1"
+0 MOPs_Transform_Modifier 1 1 "input1"
}
inputs
{
-0 MOPs_Typography 0 1
+0 MOPs_Transform_Modifier 0 1
}
stat
{
- create 1606239627
- modify 1606241141
+ create 1607303225
+ modify 1607410210
author Henry@GlaDOS
access 0777
}
@@ -74,32 +75,7 @@ Content-Disposition: attachment; filename="hdaroot.inp"
Content-Type: text/plain
1
-0 -4.3967336955224088 9.4503295562118499 2 0 __NO_OWNER_NETWORK_BOX__ "FROMOUTPUT"
-
---HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/__stickynote1.postitinit"
-Content-Type: text/plain
-
-type = postitnote
-matchesdef = 0
-
---HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/__stickynote1.postitdef"
-Content-Type: text/plain
-
-text "align to bbox needs a WORLD vs LOCAL space mode!"
-position -10.2781 2.27813
-size 3.99278 3.75777
-flags = minimize off
-stat
-{
- create 1584678986
- modify 1584679001
- author Henry@LAPPY586
- access 0777
-}
-color UT_Color RGB 1 0.969 0.522
-end
+0 0.16646419954828673 9.9230961920389085 2 0 __NO_OWNER_NETWORK_BOX__ "FROMOUTPUT"
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
Content-Disposition: attachment; filename="hdaroot/centroid.init"
@@ -114,7 +90,7 @@ Content-Type: text/plain
sopflags sopflags =
comment ""
-position -4.05068 3.58284
+position -13.9416 0.469432
connectornextid 2
flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
outputsNamed3
@@ -123,16 +99,16 @@ outputsNamed3
}
inputsNamed3
{
-0 attribpromote1 1 1 "input1"
+0 (__dot1) "" 1 "input1"
}
inputs
{
-0 attribpromote1 0 1
+0 (__dot1) 0 1
}
stat
{
create 1584071885
- modify 1588459411
+ modify 1607408766
author Henry@LAPPY586
access 0777
}
@@ -466,7 +442,7 @@ Content-Type: text/plain
sopflags sopflags =
comment ""
-position 9.5617 3.00728
+position 9.59723 -2.07296
connectornextid 2
flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
outputsNamed3
@@ -484,7 +460,7 @@ inputs
stat
{
create 1584071885
- modify 1588459411
+ modify 1607408786
author Henry@LAPPY586
access 0777
}
@@ -815,8 +791,9 @@ folder1 [ 0 locks=0 ] ( 0 0 )
pivot [ 0 locks=0 ] ( [ pivotx 0 ] [ pivoty 0 ] [ pivotz 0 ] )
move [ 0 locks=0 ] ( [ move 1 ] )
do_falloff [ 0 locks=0 ] ( [ do_falloff 0 ] )
-do_vexpression [ 0 locks=0 ] ( [ do_vexpression 1 ] )
-vexpression [ 0 locks=0 ] ( [ vexpression "pivot = set(old_pivot.x, -0.37, old_pivot.z);" ] )
+do_vexpression [ 0 locks=0 ] ( [ do_vexpression 0 ] )
+vexpression [ 0 locks=0 ] ( [ vexpression "// pivot = {0,0,0};
+// old_pivot = primintrinsic(0, \"pivot\", @elemnum);" ] )
bindname1 [ 0 locks=0 ] ( [ bindname1 mops_falloff ] )
bindparm1 [ 0 locks=0 ] ( attr )
}
@@ -845,7 +822,7 @@ Content-Type: text/plain
sopflags sopflags =
comment ""
-position 5.67995 2.75374
+position 5.71548 -2.3265
connectornextid 2
flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
outputsNamed3
@@ -863,7 +840,7 @@ inputs
stat
{
create 1584071885
- modify 1606241110
+ modify 1607310493
author Henry@LAPPY586
access 0777
}
@@ -1212,9 +1189,9 @@ pivot [ 0 locks=0 ] ( [ pivotx 0 ] [ pivoty 0 ] [ pivotz 0 ] )
local [ 0 locks=0 ] ( [ local 1 ] )
move [ 0 locks=0 ] ( [ move 1 ] )
do_falloff [ 0 locks=0 ] ( [ do_falloff 0 ] )
-do_vexpression [ 0 locks=0 ] ( [ do_vexpression 1 ] )
-vexpression [ 0 locks=0 ] ( [ vexpression "vector orig_pivot = primintrinsic(0, \"pivot\", @elemnum);
-pivot = set(orig_pivot.x, -0.37, orig_pivot.z);" ] )
+do_vexpression [ 0 locks=0 ] ( [ do_vexpression 0 ] )
+vexpression [ 0 locks=0 ] ( [ vexpression "// pivot = {0,0,0};
+// old_pivot = primintrinsic(0, \"pivot\", @elemnum);" ] )
bindname1 [ 0 locks=0 ] ( [ bindname1 mops_falloff ] )
bindparm1 [ 0 locks=0 ] ( attr )
}
@@ -1243,7 +1220,7 @@ Content-Type: text/plain
sopflags sopflags =
comment ""
-position 5.83641 -0.213922
+position 12.6903 -4.94145
connectornextid 2
flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
outputsNamed3
@@ -1252,16 +1229,16 @@ outputsNamed3
}
inputsNamed3
{
-0 attribpromote1 1 1 "input1"
+0 (__dot3) "" 1 "input1"
}
inputs
{
-0 attribpromote1 0 1
+0 (__dot3) 0 1
}
stat
{
create 1584071885
- modify 1606241126
+ modify 1607408792
author Henry@LAPPY586
access 0777
}
@@ -1580,9 +1557,9 @@ vex_precision [ 0 locks=0 ] ( auto )
folder1 [ 0 locks=0 ] ( 0 0 )
pivot [ 0 locks=0 ] ( [ pivotx 0 ] [ pivoty 0 ] [ pivotz 0 ] )
do_falloff [ 0 locks=0 ] ( [ do_falloff 0 ] )
-do_vexpression [ 0 locks=0 ] ( [ do_vexpression 1 ] )
-vexpression [ 0 locks=0 ] ( [ vexpression "vector orig_pivot = primintrinsic(0, \"pivot\", @elemnum);
-pivot = set(orig_pivot.x, -0.37, orig_pivot.z);" ] )
+do_vexpression [ 0 locks=0 ] ( [ do_vexpression 0 ] )
+vexpression [ 0 locks=0 ] ( [ vexpression "// pivot = {0,0,0};
+// old_pivot = primintrinsic(0, \"pivot\", @elemnum);" ] )
bindname1 [ 0 locks=0 ] ( [ bindname1 mops_falloff ] )
bindparm1 [ 0 locks=0 ] ( attr )
}
@@ -1692,7 +1669,7 @@ Content-Type: text/plain
sopflags sopflags =
comment ""
-position -2.18648 -4.8438
+position -2.16773 -12.1395
connectornextid 2
flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
outputsNamed3
@@ -1710,7 +1687,7 @@ inputs
stat
{
create 1584078821
- modify 1588459411
+ modify 1607409640
author Henry@LAPPY586
access 0777
}
@@ -1791,7 +1768,7 @@ Content-Type: text/plain
sopflags sopflags =
comment ""
-position 0.192041 1.93823
+position 1.71008 -2.77675
connectornextid 2
flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
outputsNamed3
@@ -1809,7 +1786,7 @@ inputs
stat
{
create 1584071885
- modify 1588459411
+ modify 1607408799
author Henry@LAPPY586
access 0777
}
@@ -2138,7 +2115,8 @@ mode [ 0 locks=0 ] ( [ mode 2 ] )
move [ 0 locks=0 ] ( [ move 1 ] )
do_falloff [ 0 locks=0 ] ( [ do_falloff 0 ] )
do_vexpression [ 0 locks=0 ] ( [ do_vexpression 0 ] )
-vexpression [ 0 locks=0 ] ( [ vexpression "// pivot = {0,0,0};" ] )
+vexpression [ 0 locks=0 ] ( [ vexpression "// pivot = {0,0,0};
+// old_pivot = primintrinsic(0, \"pivot\", @elemnum);" ] )
do_center [ 0 locks=0 ] ( 1 )
bindname1 [ 0 locks=0 ] ( [ bindname1 mops_falloff ] )
bindparm1 [ 0 locks=0 ] ( attr )
@@ -2168,8 +2146,8 @@ Content-Type: text/plain
sopflags sopflags =
comment ""
-position -2.18993 2.31603
-connectornextid 2
+position -3.35228 -5.49556
+connectornextid 3
flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
outputsNamed3
{
@@ -2178,15 +2156,17 @@ outputsNamed3
inputsNamed3
{
0 attribpromote1 1 1 "input1"
+2 align_world_method 1 1 "input2"
}
inputs
{
0 attribpromote1 0 1
+1 align_world_method 0 1
}
stat
{
create 1584071885
- modify 1606241081
+ modify 1607409986
author Henry@LAPPY586
access 0777
}
@@ -2475,34 +2455,34 @@ grouptype [ 0 locks=0 ] ( [ grouptype 0 ] )
class [ 0 locks=0 ] ( "point" )
vex_numcount [ 0 locks=0 ] ( 10 )
vex_threadjobsize [ 0 locks=0 ] ( 1024 )
-snippet [ 0 locks=0 ] ( "vector old_pivot = v@__pivot;
+snippet [ 0 locks=0 ] ( "int match = nametopoint(1, s@name);
+if(!haspointattrib(0, \"name\")) {
+ match = idtopoint(1, i@id);
+}
+vector old_pivot = v@__pivot;
+vector pivot = old_pivot;
float weight = @attr;
+int move = chi(\"move\");
if(!chi(\"do_falloff\")) {
weight = 1;
}
-float bounds[] = f[]@__bounds;
+
+// get minimum or maximum bounds based on parameter. use pmax or pmin vectors to set the bounds.
int mode = chi(\"mode\"); // -X, +X, -Y, +Y, -Z, +Z
int index = floor(mode / 2);
-matrix3 xform = matrix3(4@__xform);
-vector bounds_min = set(bounds[0], bounds[2], bounds[4]);
-vector bounds_max = set(bounds[1], bounds[3], bounds[5]);
-int move = chi(\"move\");
-vector pivot = old_pivot;
-
-// convert our bounding box to world space.
-bounds_min *= xform;
-bounds_max *= xform;
-float world_bounds[];
-push(world_bounds, bounds_min.x);
-push(world_bounds, bounds_max.x);
-push(world_bounds, bounds_min.y);
-push(world_bounds, bounds_max.y);
-push(world_bounds, bounds_min.z);
-push(world_bounds, bounds_max.z);
-
-pivot *= xform;
-pivot[index] = world_bounds[mode];
+vector min = point(1, \"pmin\", match);
+vector max = point(1, \"pmax\", match);
+float bounds[];
+push(bounds, min.x);
+push(bounds, max.x);
+push(bounds, min.y);
+push(bounds, max.y);
+push(bounds, min.z);
+push(bounds, max.z);
+pivot[index] = bounds[mode];
+// move pivot to local space equivalent
+matrix3 xform = matrix3(4@__xform);
pivot *= invert(xform);
// vexpression
@@ -2515,7 +2495,9 @@ vector offset = pivot - old_pivot;
if(move) {
@P += (offset * xform);
-}" )
+}
+
+setprimintrinsic(0, \"pivot\", @ptnum, pivot);" )
exportlist [ 0 locks=0 ] ( * )
vex_strict [ 0 locks=0 ] ( "off" )
autobind [ 0 locks=0 ] ( "on" )
@@ -2533,9 +2515,9 @@ folder1 [ 0 locks=0 ] ( 0 0 )
mode [ 0 locks=0 ] ( [ mode 2 ] )
move [ 0 locks=0 ] ( [ move 1 ] )
do_falloff [ 0 locks=0 ] ( [ do_falloff 0 ] )
-do_vexpression [ 0 locks=0 ] ( [ do_vexpression 1 ] )
-vexpression [ 0 locks=0 ] ( [ vexpression "vector orig_pivot = primintrinsic(0, \"pivot\", @elemnum);
-pivot = set(orig_pivot.x, -0.37, orig_pivot.z);" ] )
+do_vexpression [ 0 locks=0 ] ( [ do_vexpression 0 ] )
+vexpression [ 0 locks=0 ] ( [ vexpression "// pivot = {0,0,0};
+// old_pivot = primintrinsic(0, \"pivot\", @elemnum);" ] )
do_center [ 0 locks=0 ] ( 1 )
bindname1 [ 0 locks=0 ] ( [ bindname1 mops_falloff ] )
bindparm1 [ 0 locks=0 ] ( attr )
@@ -2553,19 +2535,19 @@ Content-Type: text/plain
}
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/MOPS_IN.init"
+Content-Disposition: attachment; filename="hdaroot/align_world_old.init"
Content-Type: text/plain
-type = null
-matchesdef = 0
+type = attribwrangle
+matchesdef = 1
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/MOPS_IN.def"
+Content-Disposition: attachment; filename="hdaroot/align_world_old.def"
Content-Type: text/plain
sopflags sopflags =
comment ""
-position -4.62662 7.87021
+position -0.367455 -0.828593
connectornextid 2
flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
outputsNamed3
@@ -2574,77 +2556,16 @@ outputsNamed3
}
inputsNamed3
{
-0 (0) "" 1 "input1"
-}
-inputs
-{
-0 (0) 0 1
-}
-stat
-{
- create 1555386448
- modify 1584676834
- author Henry@LAPPY586
- access 0777
-}
-color UT_Color RGB 0.6 0.7 0.77
-delscript ""
-exprlanguage hscript
-end
-
---HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/MOPS_IN.parm"
-Content-Type: text/plain
-
-{
-version 0.8
-copyinput [ 0 locks=0 ] ( "on" )
-cacheinput [ 0 locks=0 ] ( "off" )
-}
-
---HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/MOPS_IN.userdata"
-Content-Type: text/plain
-
-{
- "___Version___":{
- "type":"string",
- "value":"18.0.597"
- }
-}
-
---HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/output0.init"
-Content-Type: text/plain
-
-type = output
-matchesdef = 0
-
---HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/output0.def"
-Content-Type: text/plain
-
-sopflags sopflags =
-comment ""
-position -2.18003 -9.87855
-connectornextid 2
-flags = lock off model off template off footprint off xray off bypass off display on render on highlight off unload off savedata off compress on colordefault on exposed on
-outputsNamed3
-{
-1 "output1"
-}
-inputsNamed3
-{
-0 switch2 1 1 "input1"
+0 attribpromote1 1 1 "input1"
}
inputs
{
-0 switch2 0 1
+0 attribpromote1 0 1
}
stat
{
- create 1555387829
- modify 1591285494
+ create 1584071885
+ modify 1607408801
author Henry@LAPPY586
access 0777
}
@@ -2654,66 +2575,1282 @@ exprlanguage hscript
end
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/output0.parm"
+Content-Disposition: attachment; filename="hdaroot/align_world_old.spareparmdef"
Content-Type: text/plain
-{
-version 0.8
-outputidx [ 0 locks=0 ] ( 0 )
-}
+ group {
+ name "folder1"
+ label "Code"
---HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/output0.userdata"
-Content-Type: text/plain
+ parm {
+ name "group"
+ baseparm
+ label "Group"
+ export none
+ bindselector points "Modify Points"
+ "Select the points to affect and press Enter to complete."
+ 0 1 0xffffffff 0 grouptype 0
+ }
+ parm {
+ name "grouptype"
+ baseparm
+ label "Group Type"
+ export none
+ }
+ parm {
+ name "class"
+ baseparm
+ label "Run Over"
+ export none
+ }
+ parm {
+ name "vex_numcount"
+ baseparm
+ label "Number Count"
+ export none
+ }
+ parm {
+ name "vex_threadjobsize"
+ baseparm
+ label "Thread Job Size"
+ export none
+ }
+ parm {
+ name "snippet"
+ baseparm
+ label "VEXpression"
+ export all
+ }
+ parm {
+ name "exportlist"
+ baseparm
+ label "Attributes to Create"
+ export none
+ }
+ parm {
+ name "vex_strict"
+ baseparm
+ label "Enforce Prototypes"
+ export none
+ }
+ }
-{
- "___Version___":{
- "type":"string",
- "value":"18.0.597"
- }
-}
+ group {
+ name "folder1_1"
+ label "Bindings"
---HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/switch1.init"
-Content-Type: text/plain
+ parm {
+ name "autobind"
+ baseparm
+ label "Autobind by Name"
+ export none
+ }
+ multiparm {
+ name "bindings"
+ label "Number of Bindings"
+ baseparm
+ default 0
+ parmtag { "autoscope" "0000000000000000" }
+ parmtag { "multistartoffset" "1" }
-type = switch
-matchesdef = 0
+ parm {
+ name "bindname#"
+ baseparm
+ label "Attribute Name"
+ export none
+ }
+ parm {
+ name "bindparm#"
+ baseparm
+ label "VEX Parameter"
+ export none
+ }
+ }
---HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/switch1.def"
-Content-Type: text/plain
+ parm {
+ name "groupautobind"
+ baseparm
+ label "Autobind Groups by Name"
+ export none
+ }
+ multiparm {
+ name "groupbindings"
+ label "Group Bindings"
+ baseparm
+ default 0
+ parmtag { "autoscope" "0000000000000000" }
+ parmtag { "multistartoffset" "1" }
-sopflags sopflags =
-comment ""
-position -2.18693 -0.866262
-connectornextid 6
-flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
-outputsNamed3
-{
+ parm {
+ name "bindgroupname#"
+ baseparm
+ label "Group Name"
+ export none
+ }
+ parm {
+ name "bindgroupparm#"
+ baseparm
+ label "VEX Parameter"
+ export none
+ }
+ }
+
+ parm {
+ name "vex_cwdpath"
+ baseparm
+ label "Evaluation Node Path"
+ export none
+ }
+ parm {
+ name "vex_outputmask"
+ baseparm
+ label "Export Parameters"
+ export none
+ }
+ parm {
+ name "vex_updatenmls"
+ baseparm
+ label "Update Normals If Displaced"
+ export none
+ }
+ parm {
+ name "vex_matchattrib"
+ baseparm
+ label "Attribute to Match"
+ export none
+ }
+ parm {
+ name "vex_inplace"
+ baseparm
+ label "Compute Results In Place"
+ export none
+ }
+ parm {
+ name "vex_selectiongroup"
+ baseparm
+ label "Output Selection Group"
+ export none
+ }
+ parm {
+ name "vex_precision"
+ baseparm
+ label "VEX Precision"
+ export none
+ }
+ }
+
+ parm {
+ name "mode"
+ label "Mode"
+ type integer
+ default { "0" }
+ range { 0 10 }
+ }
+ parm {
+ name "move"
+ label "Move"
+ type integer
+ default { "0" }
+ range { 0 10 }
+ }
+ parm {
+ name "do_falloff"
+ label "Do Falloff"
+ type integer
+ default { "0" }
+ range { 0 10 }
+ }
+ parm {
+ name "do_vexpression"
+ label "Do Vexpression"
+ type toggle
+ default { "0" }
+ }
+ parm {
+ name "vexpression"
+ label "Vexpression"
+ type string
+ default { "" }
+ parmtag { "editor" "1" }
+ parmtag { "editorlang" "vex" }
+ }
+ parm {
+ name "do_center"
+ label "Do Center"
+ type integer
+ default { "0" }
+ range { 0 10 }
+ }
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/align_world_old.chn"
+Content-Type: text/plain
+
+{
+ channel do_falloff {
+ lefttype = extend
+ righttype = extend
+ default = 1
+ flags = 0
+ segment { length = 0 value = 1 1 expr = ch(\"../do_falloff\") }
+ }
+ channel move {
+ lefttype = extend
+ righttype = extend
+ default = 1
+ flags = 0
+ segment { length = 0 value = 1 1 expr = ch(\"../pivots_only\") }
+ }
+ channel bindname1 {
+ lefttype = extend
+ righttype = extend
+ defaultString = \"mops_falloff\"
+ flags = 0
+ segment { length = 0 expr = chs(\"../falloff_attribute\") }
+ }
+ channel mode {
+ lefttype = extend
+ righttype = extend
+ flags = 0
+ segment { length = 0 expr = ch(\"../align\") }
+ }
+ channel group {
+ lefttype = extend
+ righttype = extend
+ defaultString = \"\"
+ flags = 0
+ segment { length = 0 expr = chs(\"../group\") }
+ }
+ channel grouptype {
+ lefttype = extend
+ righttype = extend
+ flags = 0
+ segment { length = 0 expr = ch(\"../grouptype\") }
+ }
+ channel do_vexpression {
+ lefttype = extend
+ righttype = extend
+ flags = 0
+ segment { length = 0 expr = ch(\"../do_vexpression\") }
+ }
+ channel vexpression {
+ lefttype = extend
+ righttype = extend
+ defaultString = \"\"
+ flags = 0
+ segment { length = 0 expr = chs(\"../vexpression\") }
+ }
+ }
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/align_world_old.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+folder0 [ 0 locks=0 ] ( 0 0 )
+group [ 0 locks=0 ] ( [ group "" ] )
+grouptype [ 0 locks=0 ] ( [ grouptype 0 ] )
+class [ 0 locks=0 ] ( "point" )
+vex_numcount [ 0 locks=0 ] ( 10 )
+vex_threadjobsize [ 0 locks=0 ] ( 1024 )
+snippet [ 0 locks=0 ] ( "vector old_pivot = v@__pivot;
+float weight = @attr;
+if(!chi(\"do_falloff\")) {
+ weight = 1;
+}
+
+matrix fullxform = primintrinsic(0, \"packedfulltransform\", @elemnum);
+float bounds[] = primintrinsic(0, \"packedbounds\", @elemnum);
+int mode = chi(\"mode\"); // -X, +X, -Y, +Y, -Z, +Z
+int index = floor(mode / 2);
+matrix3 xform = matrix3(4@__xform);
+vector bounds_min = set(bounds[0], bounds[2], bounds[4]);
+vector bounds_max = set(bounds[1], bounds[3], bounds[5]);
+
+bounds_min *= fullxform;
+bounds_max *= fullxform;
+
+v@__min = bounds_min;
+v@__max = bounds_max;
+
+int move = chi(\"move\");
+vector pivot = old_pivot;
+
+// convert our bounding box to world space.
+float world_bounds[];
+push(world_bounds, bounds_min.x);
+push(world_bounds, bounds_max.x);
+push(world_bounds, bounds_min.y);
+push(world_bounds, bounds_max.y);
+push(world_bounds, bounds_min.z);
+push(world_bounds, bounds_max.z);
+
+pivot *= fullxform;
+pivot[index] = world_bounds[mode];
+pivot *= invert(fullxform);
+
+// vexpression
+`ifs(ch(\"do_vexpression\"), chs(\"vexpression\"), \"\")`
+
+pivot = lerp(old_pivot, pivot, weight);
+
+v@__pivot = pivot;
+vector offset = pivot - old_pivot;
+
+if(move) {
+ @P += (offset * xform);
+}" )
+exportlist [ 0 locks=0 ] ( * )
+vex_strict [ 0 locks=0 ] ( "off" )
+autobind [ 0 locks=0 ] ( "on" )
+bindings [ 0 locks=0 ] ( 1 )
+groupautobind [ 0 locks=0 ] ( "on" )
+groupbindings [ 0 locks=0 ] ( 0 )
+vex_cwdpath [ 0 locks=0 ] ( . )
+vex_outputmask [ 0 locks=0 ] ( * )
+vex_updatenmls [ 0 locks=0 ] ( "off" )
+vex_matchattrib [ 0 locks=0 ] ( id )
+vex_inplace [ 0 locks=0 ] ( "off" )
+vex_selectiongroup [ 0 locks=0 ] ( "" )
+vex_precision [ 0 locks=0 ] ( auto )
+folder1 [ 0 locks=0 ] ( 0 0 )
+mode [ 0 locks=0 ] ( [ mode 4 ] )
+move [ 0 locks=0 ] ( [ move 1 ] )
+do_falloff [ 0 locks=0 ] ( [ do_falloff 0 ] )
+do_vexpression [ 0 locks=0 ] ( [ do_vexpression 0 ] )
+vexpression [ 0 locks=0 ] ( [ vexpression "// pivot = {0,0,0};
+// old_pivot = primintrinsic(0, \"pivot\", @elemnum);" ] )
+do_center [ 0 locks=0 ] ( 1 )
+bindname1 [ 0 locks=0 ] ( [ bindname1 mops_falloff ] )
+bindparm1 [ 0 locks=0 ] ( attr )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/align_world_old.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":""
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/pointwrangle2.init"
+Content-Type: text/plain
+
+type = attribwrangle
+matchesdef = 1
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/pointwrangle2.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position -3.70459 -0.476421
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 foreach_begin2 0 1 "input1"
+}
+inputs
+{
+0 foreach_begin2 0 1
+}
+stat
+{
+ create 1607408284
+ modify 1607409640
+ author Henry@GlaDOS
+ access 0777
+}
+color UT_Color RGB 0.8 0.8 0.8
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/pointwrangle2.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+folder0 [ 0 locks=0 ] ( 0 0 )
+group [ 0 locks=0 ] ( "" )
+grouptype [ 0 locks=0 ] ( "guess" )
+class [ 0 locks=0 ] ( "point" )
+vex_numcount [ 0 locks=0 ] ( 10 )
+vex_threadjobsize [ 0 locks=0 ] ( 1024 )
+snippet [ 0 locks=0 ] ( "v@pmin = getbbox_min(0);
+v@pmax = getbbox_max(0);" )
+exportlist [ 0 locks=0 ] ( * )
+vex_strict [ 0 locks=0 ] ( "off" )
+autobind [ 0 locks=0 ] ( "on" )
+bindings [ 0 locks=0 ] ( 0 )
+groupautobind [ 0 locks=0 ] ( "on" )
+groupbindings [ 0 locks=0 ] ( 0 )
+vex_cwdpath [ 0 locks=0 ] ( . )
+vex_outputmask [ 0 locks=0 ] ( * )
+vex_updatenmls [ 0 locks=0 ] ( "off" )
+vex_matchattrib [ 0 locks=0 ] ( id )
+vex_inplace [ 0 locks=0 ] ( "off" )
+vex_selectiongroup [ 0 locks=0 ] ( "" )
+vex_precision [ 0 locks=0 ] ( auto )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/pointwrangle2.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":""
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/move_to_origin.init"
+Content-Type: text/plain
+
+type = attribwrangle
+matchesdef = 1
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/move_to_origin.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position -7.56213 3.32035
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 attribpromote1 1 1 "input1"
+}
+inputs
+{
+0 attribpromote1 0 1
+}
+stat
+{
+ create 1607409640
+ modify 1607410174
+ author Henry@GlaDOS
+ access 0777
+}
+color UT_Color RGB 0.8 0.8 0.8
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/move_to_origin.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+folder0 [ 0 locks=0 ] ( 0 0 )
+group [ 0 locks=0 ] ( "" )
+grouptype [ 0 locks=0 ] ( "guess" )
+class [ 0 locks=0 ] ( "point" )
+vex_numcount [ 0 locks=0 ] ( 10 )
+vex_threadjobsize [ 0 locks=0 ] ( 1024 )
+snippet [ 0 locks=0 ] ( "@P = 0;" )
+exportlist [ 0 locks=0 ] ( * )
+vex_strict [ 0 locks=0 ] ( "off" )
+autobind [ 0 locks=0 ] ( "on" )
+bindings [ 0 locks=0 ] ( 0 )
+groupautobind [ 0 locks=0 ] ( "on" )
+groupbindings [ 0 locks=0 ] ( 0 )
+vex_cwdpath [ 0 locks=0 ] ( . )
+vex_outputmask [ 0 locks=0 ] ( * )
+vex_updatenmls [ 0 locks=0 ] ( "off" )
+vex_matchattrib [ 0 locks=0 ] ( id )
+vex_inplace [ 0 locks=0 ] ( "off" )
+vex_selectiongroup [ 0 locks=0 ] ( "" )
+vex_precision [ 0 locks=0 ] ( auto )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/move_to_origin.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":""
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/pointwrangle4.init"
+Content-Type: text/plain
+
+type = attribwrangle
+matchesdef = 1
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/pointwrangle4.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position -7.56213 -3.29809
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 move_to_origin 1 1 "input1"
+}
+inputs
+{
+0 move_to_origin 0 1
+}
+stat
+{
+ create 1607410033
+ modify 1607410166
+ author Henry@GlaDOS
+ access 0777
+}
+color UT_Color RGB 0.8 0.8 0.8
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/pointwrangle4.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+folder0 [ 0 locks=0 ] ( 0 0 )
+group [ 0 locks=0 ] ( "" )
+grouptype [ 0 locks=0 ] ( "guess" )
+class [ 0 locks=0 ] ( "point" )
+vex_numcount [ 0 locks=0 ] ( 10 )
+vex_threadjobsize [ 0 locks=0 ] ( 1024 )
+snippet [ 0 locks=0 ] ( "float bounds[] = primintrinsic(0, \"bounds\", @ptnum);
+v@pmin = set(bounds[0], bounds[2], bounds[4]);
+v@pmax = set(bounds[1], bounds[3], bounds[5]);" )
+exportlist [ 0 locks=0 ] ( * )
+vex_strict [ 0 locks=0 ] ( "off" )
+autobind [ 0 locks=0 ] ( "on" )
+bindings [ 0 locks=0 ] ( 0 )
+groupautobind [ 0 locks=0 ] ( "on" )
+groupbindings [ 0 locks=0 ] ( 0 )
+vex_cwdpath [ 0 locks=0 ] ( . )
+vex_outputmask [ 0 locks=0 ] ( * )
+vex_updatenmls [ 0 locks=0 ] ( "off" )
+vex_matchattrib [ 0 locks=0 ] ( id )
+vex_inplace [ 0 locks=0 ] ( "off" )
+vex_selectiongroup [ 0 locks=0 ] ( "" )
+vex_precision [ 0 locks=0 ] ( auto )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/pointwrangle4.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":""
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/MOPS_IN.init"
+Content-Type: text/plain
+
+type = null
+matchesdef = 0
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/MOPS_IN.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position -0.0634221 8.34298
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 (0) "" 1 "input1"
+}
+inputs
+{
+0 (0) 0 1
+}
+stat
+{
+ create 1555386448
+ modify 1607405272
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.6 0.7 0.77
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/MOPS_IN.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+copyinput [ 0 locks=0 ] ( "on" )
+cacheinput [ 0 locks=0 ] ( "off" )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/MOPS_IN.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":"18.0.597"
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/output0.init"
+Content-Type: text/plain
+
+type = output
+matchesdef = 0
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/output0.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position -2.16128 -17.1742
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display on render on highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 switch2 1 1 "input1"
+}
+inputs
+{
+0 switch2 0 1
+}
+stat
+{
+ create 1555387829
+ modify 1607409988
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 0.8 0.8
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/output0.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+outputidx [ 0 locks=0 ] ( 0 )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/output0.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":"18.0.597"
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch1.init"
+Content-Type: text/plain
+
+type = switch
+matchesdef = 0
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch1.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position -2.16818 -8.16195
+connectornextid 6
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
5 "output1"
}
inputsNamed3
{
-1 centroid 1 1 "input1"
-0 switch_align_space 1 1 "input2"
-2 pivot_shift 1 1 "input3"
-3 local_pivot 1 1 "input4"
-4 world_pivot 1 1 "input5"
+1 (__dot2) "" 1 "input1"
+0 switch_align_space 1 1 "input2"
+2 pivot_shift 1 1 "input3"
+3 local_pivot 1 1 "input4"
+4 world_pivot 1 1 "input5"
+}
+inputs
+{
+0 (__dot2) 0 1
+1 switch_align_space 0 1
+2 pivot_shift 0 1
+3 local_pivot 0 1
+4 world_pivot 0 1
+}
+stat
+{
+ create 1584077764
+ modify 1607409640
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 1 0.7
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch1.chn"
+Content-Type: text/plain
+
+{
+ channel input {
+ lefttype = extend
+ righttype = extend
+ default = 1
+ flags = 0
+ segment { length = 0 value = 1 1 expr = ch(\"../mode\") }
+ }
+ }
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch1.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+input [ 0 locks=0 ] ( [ input 1 ] )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch1.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":"18.0.597"
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribpromote1.init"
+Content-Type: text/plain
+
+type = attribpromote
+matchesdef = 0
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribpromote1.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position -0.0668721 4.85958
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 primitivewrangle1 1 1 "input1"
+}
+inputs
+{
+0 primitivewrangle1 0 1
+}
+stat
+{
+ create 1584078559
+ modify 1607408862
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 0.8 0.8
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribpromote1.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+inname [ 0 locks=0 ] ( "__pivot __xform __bounds" )
+inclass [ 0 locks=0 ] ( "primitive" )
+outclass [ 0 locks=0 ] ( "point" )
+usepieceattrib [ 0 locks=0 ] ( "off" )
+pieceattrib [ 0 locks=0 ] ( name )
+method [ 0 locks=0 ] ( "first" )
+useoutname [ 0 locks=0 ] ( "off" )
+outname [ 0 locks=0 ] ( "" )
+deletein [ 0 locks=0 ] ( "on" )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribpromote1.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":"18.0.597"
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribpromote2.init"
+Content-Type: text/plain
+
+type = attribpromote
+matchesdef = 0
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribpromote2.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position -2.17163 -10.5253
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 switch1 5 1 "input1"
+}
+inputs
+{
+0 switch1 0 1
+}
+stat
+{
+ create 1584078793
+ modify 1607409640
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 0.8 0.8
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribpromote2.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+inname [ 0 locks=0 ] ( "__pivot __xform" )
+inclass [ 0 locks=0 ] ( "point" )
+outclass [ 0 locks=0 ] ( "primitive" )
+usepieceattrib [ 0 locks=0 ] ( "off" )
+pieceattrib [ 0 locks=0 ] ( name )
+method [ 0 locks=0 ] ( "first" )
+useoutname [ 0 locks=0 ] ( "off" )
+outname [ 0 locks=0 ] ( "" )
+deletein [ 0 locks=0 ] ( "off" )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribpromote2.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":"18.0.597"
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribdelete1.init"
+Content-Type: text/plain
+
+type = attribdelete
+matchesdef = 1
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribdelete1.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position -2.16473 -13.1774
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 primitivewrangle2 1 1 "input1"
+}
+inputs
+{
+0 primitivewrangle2 0 1
+}
+stat
+{
+ create 1584083062
+ modify 1607409640
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 0.8 0.8
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribdelete1.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+ptdel [ 0 locks=0 ] ( "__pivot __xform __bounds" )
+vtxdel [ 0 locks=0 ] ( "" )
+primdel [ 0 locks=0 ] ( "__orig_pivot __pivot __xform" )
+dtldel [ 0 locks=0 ] ( "" )
+updatevar [ 0 locks=0 ] ( "on" )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribdelete1.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":""
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch_align_space.init"
+Content-Type: text/plain
+
+type = switch
+matchesdef = 0
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch_align_space.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position -1.75658 -6.46012
+connectornextid 3
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+2 align_world 1 1 "input1"
+0 align_local 1 1 "input2"
+}
+inputs
+{
+0 align_world 0 1
+1 align_local 0 1
+}
+stat
+{
+ create 1584679030
+ modify 1607409640
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 1 0.7
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch_align_space.chn"
+Content-Type: text/plain
+
+{
+ channel input {
+ lefttype = extend
+ righttype = extend
+ default = 1
+ flags = 0
+ segment { length = 0 value = 1 1 expr = ch(\"../align_local\") }
+ }
+ }
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch_align_space.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+input [ 8 locks=0 ] ( [ input 0 ] )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch_align_space.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":"18.0.597"
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch2.init"
+Content-Type: text/plain
+
+type = switch
+matchesdef = 0
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch2.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position -2.16128 -15.7103
+connectornextid 3
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 attribdelete1 1 1 "input1"
+2 attribdelete2 1 1 "input2"
+}
+inputs
+{
+0 attribdelete1 0 1
+1 attribdelete2 0 1
+}
+stat
+{
+ create 1591285480
+ modify 1607409640
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 1 0.7
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch2.spareparmdef"
+Content-Type: text/plain
+
+ parm {
+ name "input"
+ baseparm
+ label "Select Input"
+ export all
+ }
+ parm {
+ name "spare_input0"
+ label "Spare Input 0"
+ type oppath
+ default { "" }
+ help "Refer to this in expressions as -1, such as: npoints(-1)"
+ parmtag { "opfilter" "!!SOP!!" }
+ parmtag { "oprelative" "." }
+ }
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch2.chn"
+Content-Type: text/plain
+
+{
+ channel input {
+ lefttype = extend
+ righttype = extend
+ flags = 0
+ segment { length = 0 expr = "!haspointattrib(-1, chs(\"../falloff_attribute\"))" }
+ }
+ }
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch2.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+input [ 8 locks=0 ] ( [ input 0 ] )
+spare_input0 [ 0 locks=0 ] ( ../MOPS_IN )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch2.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":"18.0.597"
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribdelete2.init"
+Content-Type: text/plain
+
+type = attribdelete
+matchesdef = 1
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribdelete2.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position -0.232533 -14.4325
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 attribdelete1 1 1 "input1"
+}
+inputs
+{
+0 attribdelete1 0 1
+}
+stat
+{
+ create 1591285572
+ modify 1607409640
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 0.8 0.8
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribdelete2.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+ptdel [ 0 locks=0 ] ( `chs(\"../falloff_attribute\")` )
+vtxdel [ 0 locks=0 ] ( "" )
+primdel [ 0 locks=0 ] ( "" )
+dtldel [ 0 locks=0 ] ( "" )
+updatevar [ 0 locks=0 ] ( "on" )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribdelete2.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":""
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/align_world_method.init"
+Content-Type: text/plain
+
+type = switch
+matchesdef = 0
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/align_world_method.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position -5.47736 -4.39606
+connectornextid 3
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 pointwrangle4 1 1 "input1"
+2 attribpromote4 1 1 "input2"
}
inputs
{
-0 centroid 0 1
-1 switch_align_space 0 1
-2 pivot_shift 0 1
-3 local_pivot 0 1
-4 world_pivot 0 1
+0 pointwrangle4 0 1
+1 attribpromote4 0 1
}
stat
{
- create 1584077764
- modify 1588459411
- author Henry@LAPPY586
+ create 1607408841
+ modify 1607410146
+ author Henry@GlaDOS
access 0777
}
color UT_Color RGB 0.8 1 0.7
@@ -2722,30 +3859,29 @@ exprlanguage hscript
end
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/switch1.chn"
+Content-Disposition: attachment; filename="hdaroot/align_world_method.chn"
Content-Type: text/plain
{
channel input {
lefttype = extend
righttype = extend
- default = 1
flags = 0
- segment { length = 0 value = 1 1 expr = ch(\"../mode\") }
+ segment { length = 0 expr = ch(\"../world_align_mode\") }
}
}
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/switch1.parm"
+Content-Disposition: attachment; filename="hdaroot/align_world_method.parm"
Content-Type: text/plain
{
version 0.8
-input [ 0 locks=0 ] ( [ input 3 ] )
+input [ 0 locks=0 ] ( [ input 0 ] )
}
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/switch1.userdata"
+Content-Disposition: attachment; filename="hdaroot/align_world_method.userdata"
Content-Type: text/plain
{
@@ -2756,19 +3892,19 @@ Content-Type: text/plain
}
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/attribpromote1.init"
+Content-Disposition: attachment; filename="hdaroot/unpack1.init"
Content-Type: text/plain
-type = attribpromote
+type = unpack
matchesdef = 0
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/attribpromote1.def"
+Content-Disposition: attachment; filename="hdaroot/unpack1.def"
Content-Type: text/plain
sopflags sopflags =
comment ""
-position -0.0668721 4.85958
+position -3.70159 2.74396
connectornextid 2
flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
outputsNamed3
@@ -2777,17 +3913,17 @@ outputsNamed3
}
inputsNamed3
{
-0 primitivewrangle1 1 1 "input1"
+0 move_to_origin 1 1 "input1"
}
inputs
{
-0 primitivewrangle1 0 1
+0 move_to_origin 0 1
}
stat
{
- create 1584078559
- modify 1584678356
- author Henry@LAPPY586
+ create 1607408853
+ modify 1607409641
+ author Henry@GlaDOS
access 0777
}
color UT_Color RGB 0.8 0.8 0.8
@@ -2796,24 +3932,24 @@ exprlanguage hscript
end
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/attribpromote1.parm"
+Content-Disposition: attachment; filename="hdaroot/unpack1.parm"
Content-Type: text/plain
{
version 0.8
-inname [ 0 locks=0 ] ( "__pivot __xform __bounds" )
-inclass [ 0 locks=0 ] ( "primitive" )
-outclass [ 0 locks=0 ] ( "point" )
-usepieceattrib [ 0 locks=0 ] ( "off" )
-pieceattrib [ 0 locks=0 ] ( name )
-method [ 0 locks=0 ] ( "first" )
-useoutname [ 0 locks=0 ] ( "off" )
-outname [ 0 locks=0 ] ( "" )
-deletein [ 0 locks=0 ] ( "on" )
+group [ 0 locks=0 ] ( "" )
+limit_iterations [ 0 locks=0 ] ( "on" )
+iterations [ 0 locks=0 ] ( 1 )
+detail_attributes [ 0 locks=0 ] ( "detail" )
+transfer_attributes [ 0 locks=0 ] ( "id name" )
+transfer_groups [ 0 locks=0 ] ( "" )
+apply_style_sheets [ 0 locks=0 ] ( "off" )
+scene_style_sheet [ 0 locks=0 ] ( "" )
+obj_style_sheet [ 0 locks=0 ] ( "" )
}
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/attribpromote1.userdata"
+Content-Disposition: attachment; filename="hdaroot/unpack1.userdata"
Content-Type: text/plain
{
@@ -2824,19 +3960,19 @@ Content-Type: text/plain
}
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/attribpromote2.init"
+Content-Disposition: attachment; filename="hdaroot/attribpromote3.init"
Content-Type: text/plain
type = attribpromote
matchesdef = 0
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/attribpromote2.def"
+Content-Disposition: attachment; filename="hdaroot/attribpromote3.def"
Content-Type: text/plain
sopflags sopflags =
comment ""
-position -2.19038 -3.22961
+position -3.70504 2.04184
connectornextid 2
flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
outputsNamed3
@@ -2845,17 +3981,17 @@ outputsNamed3
}
inputsNamed3
{
-0 switch1 5 1 "input1"
+0 unpack1 1 1 "input1"
}
inputs
{
-0 switch1 0 1
+0 unpack1 0 1
}
stat
{
- create 1584078793
- modify 1584676834
- author Henry@LAPPY586
+ create 1607409040
+ modify 1607409640
+ author Henry@GlaDOS
access 0777
}
color UT_Color RGB 0.8 0.8 0.8
@@ -2864,24 +4000,24 @@ exprlanguage hscript
end
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/attribpromote2.parm"
+Content-Disposition: attachment; filename="hdaroot/attribpromote3.parm"
Content-Type: text/plain
{
version 0.8
-inname [ 0 locks=0 ] ( "__pivot __xform" )
+inname [ 0 locks=0 ] ( "id name" )
inclass [ 0 locks=0 ] ( "point" )
outclass [ 0 locks=0 ] ( "primitive" )
usepieceattrib [ 0 locks=0 ] ( "off" )
pieceattrib [ 0 locks=0 ] ( name )
-method [ 0 locks=0 ] ( "first" )
+method [ 0 locks=0 ] ( "mean" )
useoutname [ 0 locks=0 ] ( "off" )
outname [ 0 locks=0 ] ( "" )
-deletein [ 0 locks=0 ] ( "off" )
+deletein [ 0 locks=0 ] ( "on" )
}
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/attribpromote2.userdata"
+Content-Disposition: attachment; filename="hdaroot/attribpromote3.userdata"
Content-Type: text/plain
{
@@ -2892,136 +4028,136 @@ Content-Type: text/plain
}
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/attribdelete1.init"
+Content-Disposition: attachment; filename="hdaroot/foreach_end2.init"
Content-Type: text/plain
-type = attribdelete
-matchesdef = 1
+type = block_end
+matchesdef = 0
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/attribdelete1.def"
+Content-Disposition: attachment; filename="hdaroot/foreach_end2.def"
Content-Type: text/plain
sopflags sopflags =
comment ""
-position -2.18348 -5.8817
+position -3.69999 -1.32868
connectornextid 2
-flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault off exposed on
outputsNamed3
{
1 "output1"
}
inputsNamed3
{
-0 primitivewrangle2 1 1 "input1"
+0 pointwrangle2 1 1 "input1"
}
inputs
{
-0 primitivewrangle2 0 1
+0 pointwrangle2 0 1
}
stat
{
- create 1584083062
- modify 1588460559
- author Henry@LAPPY586
+ create 1607409114
+ modify 1607409640
+ author Henry@GlaDOS
access 0777
}
-color UT_Color RGB 0.8 0.8 0.8
+color UT_Color RGB 0.75 0.4 0
delscript ""
exprlanguage hscript
end
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/attribdelete1.parm"
+Content-Disposition: attachment; filename="hdaroot/foreach_end2.parm"
Content-Type: text/plain
{
version 0.8
-ptdel [ 0 locks=0 ] ( "__pivot __xform __bounds" )
-vtxdel [ 0 locks=0 ] ( "" )
-primdel [ 0 locks=0 ] ( "__orig_pivot __pivot __xform" )
-dtldel [ 0 locks=0 ] ( "" )
-updatevar [ 0 locks=0 ] ( "on" )
+itermethod [ 0 locks=0 ] ( "pieces" )
+method [ 0 locks=0 ] ( "merge" )
+iterations [ 0 locks=0 ] ( 10 )
+startvalue [ 0 locks=0 ] ( 1 )
+increment [ 0 locks=0 ] ( 1 )
+class [ 0 locks=0 ] ( "primitive" )
+useattrib [ 0 locks=0 ] ( "on" )
+attrib [ 0 locks=0 ] ( "`ifs(haspointattrib(\"../MOPS_IN\", \"name\"), \"name\", \"id\")`" )
+usemaxiter [ 0 locks=0 ] ( "off" )
+maxiter [ 0 locks=0 ] ( 10 )
+blockpath [ 0 locks=0 ] ( ../foreach_begin2 )
+templatepath [ 0 locks=0 ] ( ../foreach_begin2 )
+resetcookpass [ 0 locks=0 ] ( 0 )
+dosinglepass [ 0 locks=0 ] ( "off" )
+singlepass [ 0 locks=0 ] ( 0 )
+stopcondition [ 0 locks=0 ] ( 0 )
+multithread [ 0 locks=0 ] ( "on" )
}
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/attribdelete1.userdata"
+Content-Disposition: attachment; filename="hdaroot/foreach_end2.userdata"
Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":""
+ "value":"18.0.597"
}
}
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/switch_align_space.init"
+Content-Disposition: attachment; filename="hdaroot/foreach_begin2.init"
Content-Type: text/plain
-type = switch
+type = block_begin
matchesdef = 0
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/switch_align_space.def"
+Content-Disposition: attachment; filename="hdaroot/foreach_begin2.def"
Content-Type: text/plain
sopflags sopflags =
comment ""
-position -1.77533 0.835571
-connectornextid 3
-flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+position -3.69999 0.36029
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault off exposed on
outputsNamed3
{
-1 "output1"
+0 "output1"
}
inputsNamed3
{
-2 align_world 1 1 "input1"
-0 align_local 1 1 "input2"
+1 compile_begin3 1 1 "input1"
}
inputs
{
-0 align_world 0 1
-1 align_local 0 1
+0 compile_begin3 0 1
}
stat
{
- create 1584679030
- modify 1588459411
- author Henry@LAPPY586
+ create 1607409114
+ modify 1607409640
+ author Henry@GlaDOS
access 0777
}
-color UT_Color RGB 0.8 1 0.7
+color UT_Color RGB 0.75 0.4 0
delscript ""
exprlanguage hscript
end
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/switch_align_space.chn"
-Content-Type: text/plain
-
-{
- channel input {
- lefttype = extend
- righttype = extend
- default = 1
- flags = 0
- segment { length = 0 value = 1 1 expr = ch(\"../align_local\") }
- }
- }
-
---HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/switch_align_space.parm"
+Content-Disposition: attachment; filename="hdaroot/foreach_begin2.parm"
Content-Type: text/plain
{
version 0.8
-input [ 8 locks=0 ] ( [ input 0 ] )
+method [ 0 locks=0 ] ( "piece" )
+blockpath [ 0 locks=0 ] ( ../foreach_end2 )
+resetcookpass [ 0 locks=0 ] ( 0 )
+createmetablock [ 0 locks=0 ] ( 0 )
+label1 [ 0 locks=0 ] ( "iteration, numiterations, value, ivalue" )
}
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/switch_align_space.userdata"
+Content-Disposition: attachment; filename="hdaroot/foreach_begin2.userdata"
Content-Type: text/plain
{
@@ -3032,92 +4168,123 @@ Content-Type: text/plain
}
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/switch2.init"
+Content-Disposition: attachment; filename="hdaroot/compile_end3.init"
Content-Type: text/plain
-type = switch
+type = compile_end
matchesdef = 0
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/switch2.def"
+Content-Disposition: attachment; filename="hdaroot/compile_end3.def"
Content-Type: text/plain
sopflags sopflags =
comment ""
-position -2.18003 -8.41462
-connectornextid 3
-flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+position -3.69999 -2.31749
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault off exposed on
outputsNamed3
{
1 "output1"
}
inputsNamed3
{
-0 attribdelete1 1 1 "input1"
-2 attribdelete2 1 1 "input2"
+0 foreach_end2 1 1 "input1"
}
inputs
{
-0 attribdelete1 0 1
-1 attribdelete2 0 1
+0 foreach_end2 0 1
}
stat
{
- create 1591285480
- modify 1591285717
- author Henry@LAPPY586
+ create 1607409127
+ modify 1607409640
+ author Henry@GlaDOS
access 0777
}
-color UT_Color RGB 0.8 1 0.7
+color UT_Color RGB 0.75 0.75 0
delscript ""
exprlanguage hscript
end
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/switch2.spareparmdef"
+Content-Disposition: attachment; filename="hdaroot/compile_end3.parm"
Content-Type: text/plain
- parm {
- name "input"
- baseparm
- label "Select Input"
- export all
- }
- parm {
- name "spare_input0"
- label "Spare Input 0"
- type oppath
- default { "" }
- help "Refer to this in expressions as -1, such as: npoints(-1)"
- parmtag { "opfilter" "!!SOP!!" }
- parmtag { "oprelative" "." }
- }
+{
+version 0.8
+docompile [ 0 locks=0 ] ( "on" )
+unload [ 0 locks=0 ] ( "always" )
+primarypath [ 0 locks=0 ] ( "" )
+forcerecompile [ 0 locks=0 ] ( 0 )
+delayillegal [ 0 locks=0 ] ( "off" )
+}
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/switch2.chn"
+Content-Disposition: attachment; filename="hdaroot/compile_end3.userdata"
Content-Type: text/plain
{
- channel input {
- lefttype = extend
- righttype = extend
- flags = 0
- segment { length = 0 expr = "!haspointattrib(-1, chs(\"../falloff_attribute\"))" }
- }
- }
+ "___Version___":{
+ "type":"string",
+ "value":"18.0.597"
+ }
+}
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/switch2.parm"
+Content-Disposition: attachment; filename="hdaroot/compile_begin3.init"
+Content-Type: text/plain
+
+type = compile_begin
+matchesdef = 0
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/compile_begin3.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position -3.69999 1.16251
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault off exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 attribpromote3 1 1 "input1"
+}
+inputs
+{
+0 attribpromote3 0 1
+}
+stat
+{
+ create 1607409127
+ modify 1607409640
+ author Henry@GlaDOS
+ access 0777
+}
+color UT_Color RGB 0.75 0.75 0
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/compile_begin3.parm"
Content-Type: text/plain
{
version 0.8
-input [ 8 locks=0 ] ( [ input 0 ] )
-spare_input0 [ 0 locks=0 ] ( ../MOPS_IN )
+blockpath [ 0 locks=0 ] ( ../compile_end3 )
+name [ 0 locks=0 ] ( "" )
+optional [ 0 locks=0 ] ( "off" )
+createbeginblock [ 0 locks=0 ] ( 0 )
}
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/switch2.userdata"
+Content-Disposition: attachment; filename="hdaroot/compile_begin3.userdata"
Content-Type: text/plain
{
@@ -3128,19 +4295,19 @@ Content-Type: text/plain
}
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/attribdelete2.init"
+Content-Disposition: attachment; filename="hdaroot/attribpromote4.init"
Content-Type: text/plain
-type = attribdelete
-matchesdef = 1
+type = attribpromote
+matchesdef = 0
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/attribdelete2.def"
+Content-Disposition: attachment; filename="hdaroot/attribpromote4.def"
Content-Type: text/plain
sopflags sopflags =
comment ""
-position -0.251286 -7.13681
+position -3.85353 -3.29709
connectornextid 2
flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
outputsNamed3
@@ -3149,17 +4316,17 @@ outputsNamed3
}
inputsNamed3
{
-0 attribdelete1 1 1 "input1"
+0 compile_end3 1 1 "input1"
}
inputs
{
-0 attribdelete1 0 1
+0 compile_end3 0 1
}
stat
{
- create 1591285572
- modify 1591285592
- author Henry@LAPPY586
+ create 1607409040
+ modify 1607409640
+ author Henry@GlaDOS
access 0777
}
color UT_Color RGB 0.8 0.8 0.8
@@ -3168,34 +4335,77 @@ exprlanguage hscript
end
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/attribdelete2.parm"
+Content-Disposition: attachment; filename="hdaroot/attribpromote4.parm"
Content-Type: text/plain
{
version 0.8
-ptdel [ 0 locks=0 ] ( `chs(\"../falloff_attribute\")` )
-vtxdel [ 0 locks=0 ] ( "" )
-primdel [ 0 locks=0 ] ( "" )
-dtldel [ 0 locks=0 ] ( "" )
-updatevar [ 0 locks=0 ] ( "on" )
+inname [ 0 locks=0 ] ( "id name" )
+inclass [ 0 locks=0 ] ( "primitive" )
+outclass [ 0 locks=0 ] ( "point" )
+usepieceattrib [ 0 locks=0 ] ( "off" )
+pieceattrib [ 0 locks=0 ] ( name )
+method [ 0 locks=0 ] ( "mean" )
+useoutname [ 0 locks=0 ] ( "off" )
+outname [ 0 locks=0 ] ( "" )
+deletein [ 0 locks=0 ] ( "on" )
}
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
-Content-Disposition: attachment; filename="hdaroot/attribdelete2.userdata"
+Content-Disposition: attachment; filename="hdaroot/attribpromote4.userdata"
Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":""
+ "value":"18.0.597"
}
}
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/__dot1.networkdotinit"
+Content-Type: text/plain
+
+{
+ "version":1,
+ "posx":-8.40363475372257973,
+ "posy":4.21703446828915141,
+ "pinned":false,
+ "color":"FROMOUTPUT",
+ "input":"attribpromote1 0 1"
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/__dot2.networkdotinit"
+Content-Type: text/plain
+
+{
+ "version":1,
+ "posx":-12.8143545897572082,
+ "posy":-6.52017240529009356,
+ "pinned":false,
+ "color":"FROMOUTPUT",
+ "input":"centroid 0 1"
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/__dot3.networkdotinit"
+Content-Type: text/plain
+
+{
+ "version":1,
+ "posx":13.1932989888813097,
+ "posy":2.11563091004369497,
+ "pinned":false,
+ "color":"FROMOUTPUT",
+ "input":"attribpromote1 0 1"
+}
+
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
Content-Disposition: attachment; filename="hdaroot.order"
Content-Type: text/plain
-17
+29
MOPS_IN
output0
centroid
@@ -3213,6 +4423,18 @@ switch_align_space
align_world
switch2
attribdelete2
+align_world_old
+align_world_method
+unpack1
+attribpromote3
+foreach_end2
+foreach_begin2
+compile_end3
+compile_begin3
+pointwrangle2
+attribpromote4
+move_to_origin
+pointwrangle4
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
Content-Disposition: attachment; filename="hdaroot.net"
diff --git a/otls/MOPS_Align.hda/MOPS_8_8Sop_1Align_8_81.2/DialogScript b/otls/MOPS_Align.hda/MOPS_8_8Sop_1Align_8_81.2/DialogScript
index 3b4ef4b2..0a036ffc 100644
--- a/otls/MOPS_Align.hda/MOPS_8_8Sop_1Align_8_81.2/DialogScript
+++ b/otls/MOPS_Align.hda/MOPS_8_8Sop_1Align_8_81.2/DialogScript
@@ -131,6 +131,16 @@
parmtag { "autoscope" "0000000000000000" }
parmtag { "script_callback_language" "python" }
}
+ parm {
+ name "world_align_mode"
+ label "Accurate Bounds (slow!)"
+ type toggle
+ default { "0" }
+ disablewhen "{ align_local 1 }"
+ range { 0! 10 }
+ parmtag { "autoscope" "0000000000000000" }
+ parmtag { "script_callback_language" "python" }
+ }
}
groupsimple {
diff --git a/otls/MOPS_extractAttributes.hda/INDEX__SECTION b/otls/MOPS_extractAttributes.hda/INDEX__SECTION
index 151919af..bd1661fc 100644
--- a/otls/MOPS_extractAttributes.hda/INDEX__SECTION
+++ b/otls/MOPS_extractAttributes.hda/INDEX__SECTION
@@ -10,5 +10,19 @@ Inputs: 1 to 1
Subnet: true
Python: false
Empty: false
-Modified: Mon Nov 23 12:26:55 2020
+Modified: Sun Dec 6 12:16:14 2020
+
+Operator: MOPS::Extract_Attributes::1.1
+Label: MOPs Extract Attributes
+Path: oplib:/MOPS::Sop/Extract_Attributes::1.1?MOPS::Sop/Extract_Attributes::1.1
+Icon: opdef:/MOPS::Sop/Extract_Attributes::1.1?IconSVG
+Table: Sop
+License:
+Extra:
+User:
+Inputs: 1 to 1
+Subnet: true
+Python: false
+Empty: false
+Modified: Tue Dec 8 10:27:02 2020
diff --git a/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.0/Contents.dir/.OPdummydefs b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.0/Contents.dir/.OPdummydefs
index 92e1d08d..066f9ff5 100644
Binary files a/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.0/Contents.dir/.OPdummydefs and b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.0/Contents.dir/.OPdummydefs differ
diff --git a/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.0/Contents.dir/Contents.mime b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.0/Contents.dir/Contents.mime
index e8cd9798..c66f7b48 100644
--- a/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.0/Contents.dir/Contents.mime
+++ b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.0/Contents.dir/Contents.mime
@@ -32,23 +32,26 @@ Content-Type: text/plain
sopflags sopflags =
comment ""
-position 0.54727 -2.16304
-connectornextid 0
+position -1.05842e-16 3.30972
+connectornextid 2
flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
outputsNamed3
{
+0 "output1"
}
inputsNamed3
{
+1 check_for_orient 1 1 "input1"
}
inputs
{
+0 check_for_orient 0 1
}
stat
{
- create 1606163205
- modify 1606163209
- author Henry@GlaDOS
+ create 1599527956
+ modify 1601527965
+ author Henry@LAPPY586
access 0777
}
color UT_Color RGB 0.8 0.8 0.8
@@ -105,7 +108,7 @@ inputs
stat
{
create 1524695134
- modify 1606163212
+ modify 1607283376
author Henry@LAPPY586
access 0777
}
@@ -399,7 +402,7 @@ inputs
stat
{
create 1550365158
- modify 1606163205
+ modify 1607283376
author Henry@LAPPY586
access 0777
}
@@ -478,7 +481,7 @@ inputs
stat
{
create 1573854821
- modify 1606163205
+ modify 1607283376
author Henry@LAPPY586
access 0777
}
@@ -557,7 +560,7 @@ inputs
stat
{
create 1583522390
- modify 1606163205
+ modify 1607283376
author Henry@LAPPY586
access 0777
}
@@ -845,7 +848,7 @@ vex_selectiongroup [ 0 locks=0 ] ( "" )
vex_precision [ 0 locks=0 ] ( auto )
folder1 [ 0 locks=0 ] ( 0 0 )
do_full_transform [ 0 locks=0 ] ( [ do_full_transform 0 ] )
-do_pivot [ 0 locks=0 ] ( [ do_pivot 1 ] )
+do_pivot [ 0 locks=0 ] ( [ do_pivot 0 ] )
simplify_scale [ 0 locks=0 ] ( [ simplify_scale 0 ] )
}
@@ -891,7 +894,7 @@ inputs
stat
{
create 1584916562
- modify 1606163205
+ modify 1607283376
author Henry@LAPPY586
access 0777
}
@@ -979,7 +982,7 @@ inputs
stat
{
create 1542257157
- modify 1606163205
+ modify 1607283376
author Henry@LAPPY586
access 0777
}
@@ -1335,7 +1338,7 @@ inputs
stat
{
create 1550365152
- modify 1606163205
+ modify 1607283376
author Henry@LAPPY586
access 0777
}
@@ -1363,7 +1366,7 @@ Content-Type: text/plain
{
version 0.8
-input [ 8 locks=0 ] ( [ input 1 ] )
+input [ 8 locks=0 ] ( [ input 0 ] )
}
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
@@ -1902,7 +1905,7 @@ inputs
stat
{
create 1584916552
- modify 1606163205
+ modify 1607283376
author Henry@LAPPY586
access 0777
}
@@ -1978,7 +1981,7 @@ inputs
stat
{
create 1585514990
- modify 1606163205
+ modify 1607283376
author Henry@LAPPY586
access 0777
}
@@ -2140,7 +2143,7 @@ inputs
stat
{
create 1585515095
- modify 1585515101
+ modify 1607285721
author Henry@LAPPY586
access 0777
}
@@ -2157,7 +2160,7 @@ Content-Type: text/plain
version 0.8
ptdel [ 0 locks=0 ] ( "" )
vtxdel [ 0 locks=0 ] ( "" )
-primdel [ 0 locks=0 ] ( "" )
+primdel [ 0 locks=0 ] ( "N orient pscale scale up" )
dtldel [ 0 locks=0 ] ( __haspackedtransform )
updatevar [ 0 locks=0 ] ( "on" )
}
diff --git a/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Contents.dir/.OPdummydefs b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Contents.dir/.OPdummydefs
new file mode 100644
index 00000000..938b60db
Binary files /dev/null and b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Contents.dir/.OPdummydefs differ
diff --git a/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Contents.dir/.OPfallbacks b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Contents.dir/.OPfallbacks
new file mode 100644
index 00000000..131325e4
--- /dev/null
+++ b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Contents.dir/.OPfallbacks
@@ -0,0 +1,4 @@
+Sop/attribdelete C:/PROGRA~1/SIDEEF~1/HOUDIN~1.597/houdini/otls/OPlibSop.hda
+Sop/attribdelete otls/OPlibSop.hda
+Sop/attribwrangle C:/PROGRA~1/SIDEEF~1/HOUDIN~1.597/houdini/otls/OPlibSop.hda
+Sop/attribwrangle otls/OPlibSop.hda
diff --git a/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Contents.dir/Contents.mime b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Contents.dir/Contents.mime
new file mode 100644
index 00000000..c2ea541d
--- /dev/null
+++ b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Contents.dir/Contents.mime
@@ -0,0 +1,1953 @@
+MIME-Version: 1.0
+Content-Type: multipart/mixed; boundary="HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY"
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename=".OPfallbacks"
+Content-Type: application/external-reference
+
+.OPfallbacks
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename=".OPdummydefs"
+Content-Type: application/external-reference
+
+.OPdummydefs
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="node_type"
+Content-Type: text/plain
+
+Sop
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot.init"
+Content-Type: text/plain
+
+type = MOPS::Extract_Attributes::1.1
+matchesdef = 0
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position -13.3944 -12.3368
+connectornextid 2
+flags = lock off model off template on footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+0 "output1"
+}
+inputsNamed3
+{
+1 MOPs_Align 1 1 "input1"
+}
+inputs
+{
+0 MOPs_Align 0 1
+}
+stat
+{
+ create 1607451266
+ modify 1607452015
+ author Henry@GlaDOS
+ access 0777
+}
+color UT_Color RGB 0.8 0.8 0.8
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":""
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot.inp"
+Content-Type: text/plain
+
+1
+0 0.45149801117587085 9.7938446263261518 2 0 __NO_OWNER_NETWORK_BOX__ "FROMOUTPUT"
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/do_extraction_points.init"
+Content-Type: text/plain
+
+type = attribwrangle
+matchesdef = 1
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/do_extraction_points.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position 0.648342 4.64861
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 switch_has_N 2 1 "input1"
+}
+inputs
+{
+0 switch_has_N 0 1
+}
+stat
+{
+ create 1524695134
+ modify 1607451267
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 0.8 0.8
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/do_extraction_points.spareparmdef"
+Content-Type: text/plain
+
+ group {
+ name "folder1"
+ label "Code"
+
+ parm {
+ name "group"
+ baseparm
+ label "Group"
+ export none
+ bindselector points "Modify Points"
+ "Select the points to affect and press Enter to complete."
+ 0 1 0xffffffff 0 grouptype 0
+ }
+ parm {
+ name "grouptype"
+ baseparm
+ label "Group Type"
+ export none
+ }
+ parm {
+ name "class"
+ baseparm
+ label "Run Over"
+ export none
+ }
+ parm {
+ name "vex_numcount"
+ baseparm
+ label "Number Count"
+ export none
+ }
+ parm {
+ name "vex_threadjobsize"
+ baseparm
+ label "Thread Job Size"
+ export none
+ }
+ parm {
+ name "snippet"
+ baseparm
+ label "VEXpression"
+ export all
+ }
+ parm {
+ name "exportlist"
+ baseparm
+ label "Attributes to Create"
+ export none
+ }
+ parm {
+ name "vex_strict"
+ baseparm
+ label "Enforce Prototypes"
+ export none
+ }
+ }
+
+ group {
+ name "folder1_1"
+ label "Bindings"
+
+ parm {
+ name "autobind"
+ baseparm
+ label "Autobind by Name"
+ export none
+ }
+ multiparm {
+ name "bindings"
+ label "Number of Bindings"
+ baseparm
+ default 0
+ parmtag { "autoscope" "0000000000000000" }
+ parmtag { "multistartoffset" "1" }
+
+ parm {
+ name "bindname#"
+ baseparm
+ label "Attribute Name"
+ export none
+ }
+ parm {
+ name "bindparm#"
+ baseparm
+ label "VEX Parameter"
+ export none
+ }
+ }
+
+ parm {
+ name "groupautobind"
+ baseparm
+ label "Autobind Groups by Name"
+ export none
+ }
+ multiparm {
+ name "groupbindings"
+ label "Group Bindings"
+ baseparm
+ default 0
+ parmtag { "autoscope" "0000000000000000" }
+ parmtag { "multistartoffset" "1" }
+
+ parm {
+ name "bindgroupname#"
+ baseparm
+ label "Group Name"
+ export none
+ }
+ parm {
+ name "bindgroupparm#"
+ baseparm
+ label "VEX Parameter"
+ export none
+ }
+ }
+
+ parm {
+ name "vex_cwdpath"
+ baseparm
+ label "Evaluation Node Path"
+ export none
+ }
+ parm {
+ name "vex_outputmask"
+ baseparm
+ label "Export Parameters"
+ export none
+ }
+ parm {
+ name "vex_updatenmls"
+ baseparm
+ label "Update Normals If Displaced"
+ export none
+ }
+ parm {
+ name "vex_matchattrib"
+ baseparm
+ label "Attribute to Match"
+ export none
+ }
+ parm {
+ name "vex_inplace"
+ baseparm
+ label "Compute Results In Place"
+ export none
+ }
+ parm {
+ name "vex_selectiongroup"
+ baseparm
+ label "Output Selection Group"
+ export none
+ }
+ }
+
+ parm {
+ name "do_full_transform"
+ label "Do Full Transform"
+ type integer
+ default { "0" }
+ range { 0 10 }
+ }
+ parm {
+ name "vex_precision"
+ baseparm
+ label "VEX Precision"
+ export none
+ }
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/do_extraction_points.chn"
+Content-Type: text/plain
+
+{
+ channel do_full_transform {
+ lefttype = extend
+ righttype = extend
+ flags = 0
+ segment { length = 0 expr = ch(\"../do_full_transform\") }
+ }
+ }
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/do_extraction_points.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+folder0 [ 0 locks=0 autoscope=0 ] ( 0 0 )
+group [ 0 locks=0 autoscope=0 ] ( "" )
+grouptype [ 0 locks=0 autoscope=0 ] ( "guess" )
+class [ 0 locks=0 autoscope=0 ] ( "point" )
+vex_numcount [ 0 locks=0 autoscope=0 ] ( 10 )
+vex_threadjobsize [ 0 locks=0 autoscope=0 ] ( 1024 )
+snippet [ 0 locks=0 autoscope=0 ] ( "float epsilon = 0.000001;
+string type = primintrinsic(0, \"typename\", @ptnum);
+// defaults
+if(!haspointattrib(0, \"scale\")) {
+ v@scale = 1;
+}
+if(!haspointattrib(0, \"pscale\")) {
+ f@pscale = 1;
+}
+if(!haspointattrib(0, \"up\")) {
+ v@up = {0,1,0};
+}
+if(!haspointattrib(0, \"orient\")) {
+ // if this is kinefx, convert the \"transform\" point attribute
+ if(haspointattrib(0, \"scaleinheritance\")) {
+ matrix3 transform = point(0, \"transform\", @ptnum);
+ p@orient = quaternion(transform);
+ v@N = qrotate(p@orient, {0,0,1});
+ v@up = qrotate(p@orient, {0,1,0});
+ } else {
+ p@orient = quaternion(maketransform(@N, v@up));
+ }
+} else {
+ // use existing orient to derive N/up
+ matrix3 m = qconvert(p@orient);
+ v@N = m * {0,0,1};
+ v@up = m * {0,1,0};
+}" )
+exportlist [ 0 locks=0 autoscope=0 ] ( * )
+vex_strict [ 0 locks=0 autoscope=0 ] ( "off" )
+autobind [ 0 locks=0 autoscope=0 ] ( "on" )
+bindings [ 0 locks=0 autoscope=0 ] ( 0 )
+groupautobind [ 0 locks=0 autoscope=0 ] ( "on" )
+groupbindings [ 0 locks=0 autoscope=0 ] ( 0 )
+vex_cwdpath [ 0 locks=0 autoscope=0 ] ( . )
+vex_outputmask [ 0 locks=0 autoscope=0 ] ( * )
+vex_updatenmls [ 0 locks=0 autoscope=0 ] ( "off" )
+vex_matchattrib [ 0 locks=0 autoscope=0 ] ( id )
+vex_inplace [ 0 locks=0 autoscope=0 ] ( "off" )
+vex_selectiongroup [ 0 locks=0 autoscope=0 ] ( "" )
+vex_precision [ 0 locks=0 ] ( auto )
+folder1 [ 0 locks=0 ] ( 0 0 )
+do_full_transform [ 0 locks=0 ] ( [ do_full_transform 1 ] )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/do_extraction_points.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":""
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/do_extraction_prims.init"
+Content-Type: text/plain
+
+type = attribwrangle
+matchesdef = 1
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/do_extraction_prims.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position 0.648342 2.71736
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 do_extraction_points 1 1 "input1"
+}
+inputs
+{
+0 do_extraction_points 0 1
+}
+stat
+{
+ create 1583522390
+ modify 1607451709
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 0.8 0.8
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/do_extraction_prims.spareparmdef"
+Content-Type: text/plain
+
+ group {
+ name "folder1"
+ label "Code"
+
+ parm {
+ name "group"
+ baseparm
+ label "Group"
+ export none
+ bindselector points "Modify Points"
+ "Select the points to affect and press Enter to complete."
+ 0 1 0xffffffff 0 grouptype 0
+ }
+ parm {
+ name "grouptype"
+ baseparm
+ label "Group Type"
+ export none
+ }
+ parm {
+ name "class"
+ baseparm
+ label "Run Over"
+ export none
+ }
+ parm {
+ name "vex_numcount"
+ baseparm
+ label "Number Count"
+ export none
+ }
+ parm {
+ name "vex_threadjobsize"
+ baseparm
+ label "Thread Job Size"
+ export none
+ }
+ parm {
+ name "snippet"
+ baseparm
+ label "VEXpression"
+ export all
+ }
+ parm {
+ name "exportlist"
+ baseparm
+ label "Attributes to Create"
+ export none
+ }
+ parm {
+ name "vex_strict"
+ baseparm
+ label "Enforce Prototypes"
+ export none
+ }
+ }
+
+ group {
+ name "folder1_1"
+ label "Bindings"
+
+ parm {
+ name "autobind"
+ baseparm
+ label "Autobind by Name"
+ export none
+ }
+ multiparm {
+ name "bindings"
+ label "Number of Bindings"
+ baseparm
+ default 0
+ parmtag { "autoscope" "0000000000000000" }
+ parmtag { "multistartoffset" "1" }
+
+ parm {
+ name "bindname#"
+ baseparm
+ label "Attribute Name"
+ export none
+ }
+ parm {
+ name "bindparm#"
+ baseparm
+ label "VEX Parameter"
+ export none
+ }
+ }
+
+ parm {
+ name "groupautobind"
+ baseparm
+ label "Autobind Groups by Name"
+ export none
+ }
+ multiparm {
+ name "groupbindings"
+ label "Group Bindings"
+ baseparm
+ default 0
+ parmtag { "autoscope" "0000000000000000" }
+ parmtag { "multistartoffset" "1" }
+
+ parm {
+ name "bindgroupname#"
+ baseparm
+ label "Group Name"
+ export none
+ }
+ parm {
+ name "bindgroupparm#"
+ baseparm
+ label "VEX Parameter"
+ export none
+ }
+ }
+
+ parm {
+ name "vex_cwdpath"
+ baseparm
+ label "Evaluation Node Path"
+ export none
+ }
+ parm {
+ name "vex_outputmask"
+ baseparm
+ label "Export Parameters"
+ export none
+ }
+ parm {
+ name "vex_updatenmls"
+ baseparm
+ label "Update Normals If Displaced"
+ export none
+ }
+ parm {
+ name "vex_matchattrib"
+ baseparm
+ label "Attribute to Match"
+ export none
+ }
+ parm {
+ name "vex_inplace"
+ baseparm
+ label "Compute Results In Place"
+ export none
+ }
+ parm {
+ name "vex_selectiongroup"
+ baseparm
+ label "Output Selection Group"
+ export none
+ }
+ parm {
+ name "vex_precision"
+ baseparm
+ label "VEX Precision"
+ export none
+ }
+ }
+
+ parm {
+ name "do_full_transform"
+ label "Do Full Transform"
+ type integer
+ default { "0" }
+ range { 0 10 }
+ }
+ parm {
+ name "do_pivot"
+ label "Do Pivot"
+ type integer
+ default { "0" }
+ range { 0 10 }
+ }
+ parm {
+ name "simplify_scale"
+ label "Simplify Scale"
+ type integer
+ default { "0" }
+ range { 0 10 }
+ }
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/do_extraction_prims.chn"
+Content-Type: text/plain
+
+{
+ channel do_pivot {
+ lefttype = extend
+ righttype = extend
+ flags = 0
+ start = 41.666666666666664
+ segment { length = 0 expr = ch(\"../do_pivot\") }
+ }
+ channel do_full_transform {
+ lefttype = extend
+ righttype = extend
+ flags = 0
+ start = 41.666666666666664
+ segment { length = 0 expr = ch(\"../do_full_transform\") }
+ }
+ channel simplify_scale {
+ lefttype = extend
+ righttype = extend
+ flags = 0
+ segment { length = 0 expr = ch(\"../simplify_scale\") }
+ }
+ }
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/do_extraction_prims.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+folder0 [ 0 locks=0 ] ( 0 0 )
+group [ 0 locks=0 ] ( "" )
+grouptype [ 0 locks=0 ] ( "guess" )
+class [ 0 locks=0 ] ( "primitive" )
+vex_numcount [ 0 locks=0 ] ( 10 )
+vex_threadjobsize [ 0 locks=0 ] ( 1024 )
+snippet [ 0 locks=0 ] ( "float epsilon = 0.000001;
+string type = primintrinsic(0, \"typename\", @elemnum);
+i@__haspackedtransform = 0;
+if(type == \"PackedGeometry\" || type == \"PackedFragment\" || type == \"PackedDiskSequence\" || type == \"AlembicRef\" || type == \"PackedUSD\") {
+ // extract as normal
+ // if full transform extraction is enabled, get that instead of transform
+ i@__haspackedtransform = 1;
+ matrix3 m = primintrinsic(0, \"transform\", @elemnum);
+ if(chi(\"do_full_transform\")) {
+ matrix m4 = primintrinsic(0, \"packedfulltransform\", @elemnum);
+ m = matrix3(m4);
+ }
+ vector scale = cracktransform(0,0,2,{0,0,0},m);
+ vector4 orient = quaternion(m);
+ p@orient = orient;
+ // also get N and up
+ @N = normalize(m * {0,0,1});
+ v@up = normalize(m * {0,1,0});
+ // if scale is uniform, write to pscale and leave scale at 1.
+ f@pscale = 1;
+ if(chi(\"simplify_scale\")) {
+ if(abs(scale.x-scale.y) < epsilon && abs(scale.y-scale.z) < epsilon) {
+ f@pscale = scale.x;
+ scale = 1;
+ }
+ }
+ v@scale = scale;
+ if(chi(\"do_pivot\")) {
+ v@pivot = primintrinsic(0, \"pivot\", @elemnum);
+ }
+}
+" )
+exportlist [ 0 locks=0 ] ( * )
+vex_strict [ 0 locks=0 ] ( "off" )
+autobind [ 0 locks=0 ] ( "on" )
+bindings [ 0 locks=0 ] ( 0 )
+groupautobind [ 0 locks=0 ] ( "on" )
+groupbindings [ 0 locks=0 ] ( 0 )
+vex_cwdpath [ 0 locks=0 ] ( . )
+vex_outputmask [ 0 locks=0 ] ( * )
+vex_updatenmls [ 0 locks=0 ] ( "off" )
+vex_matchattrib [ 0 locks=0 ] ( id )
+vex_inplace [ 0 locks=0 ] ( "off" )
+vex_selectiongroup [ 0 locks=0 ] ( "" )
+vex_precision [ 0 locks=0 ] ( auto )
+folder1 [ 0 locks=0 ] ( 0 0 )
+do_full_transform [ 8 locks=0 ] ( [ do_full_transform 0 ] )
+do_pivot [ 0 locks=0 ] ( [ do_pivot 1 ] )
+simplify_scale [ 0 locks=0 ] ( [ simplify_scale 1 ] )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/do_extraction_prims.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":""
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/pointwrangle1.init"
+Content-Type: text/plain
+
+type = attribwrangle
+matchesdef = 1
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/pointwrangle1.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position 2.2744 -8.03055
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 switch_extract_pivot 1 1 "input1"
+}
+inputs
+{
+0 switch_extract_pivot 0 1
+}
+stat
+{
+ create 1584916562
+ modify 1607451267
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 0.8 0.8
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/pointwrangle1.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+folder0 [ 0 locks=0 ] ( 0 0 )
+group [ 0 locks=0 ] ( "" )
+grouptype [ 0 locks=0 ] ( "guess" )
+class [ 0 locks=0 ] ( "point" )
+vex_numcount [ 0 locks=0 ] ( 10 )
+vex_threadjobsize [ 0 locks=0 ] ( 1024 )
+snippet [ 0 locks=0 ] ( "vector4 mops_orient = quaternion(ident());
+if(haspointattrib(0, \"mops_orient\")) {
+ mops_orient = point(0, \"mops_orient\", @ptnum);
+}
+p@orient = qmultiply(p@orient, mops_orient);
+matrix3 m = qconvert(p@orient);
+v@N = m * {0,0,1};
+v@up = m * {0,1,0};" )
+exportlist [ 0 locks=0 ] ( * )
+vex_strict [ 0 locks=0 ] ( "off" )
+autobind [ 0 locks=0 ] ( "on" )
+bindings [ 0 locks=0 ] ( 0 )
+groupautobind [ 0 locks=0 ] ( "on" )
+groupbindings [ 0 locks=0 ] ( 0 )
+vex_cwdpath [ 0 locks=0 ] ( . )
+vex_outputmask [ 0 locks=0 ] ( * )
+vex_updatenmls [ 0 locks=0 ] ( "off" )
+vex_matchattrib [ 0 locks=0 ] ( id )
+vex_inplace [ 0 locks=0 ] ( "off" )
+vex_selectiongroup [ 0 locks=0 ] ( "" )
+vex_precision [ 0 locks=0 ] ( auto )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/pointwrangle1.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":""
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/pointwrangle2.init"
+Content-Type: text/plain
+
+type = attribwrangle
+matchesdef = 1
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/pointwrangle2.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position 4.80944 -1.88223
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass on display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 attribpromote4 1 1 "input1"
+}
+inputs
+{
+0 attribpromote4 0 1
+}
+stat
+{
+ create 1607302831
+ modify 1607451598
+ author Henry@GlaDOS
+ access 0777
+}
+color UT_Color RGB 0.8 0.8 0.8
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/pointwrangle2.spareparmdef"
+Content-Type: text/plain
+
+ group {
+ name "folder1"
+ label "Code"
+
+ parm {
+ name "group"
+ baseparm
+ label "Group"
+ export none
+ bindselector points "Modify Points"
+ "Select the points to affect and press Enter to complete."
+ 0 1 0xffffffff 0 grouptype 0
+ }
+ parm {
+ name "grouptype"
+ baseparm
+ label "Group Type"
+ export none
+ }
+ parm {
+ name "class"
+ baseparm
+ label "Run Over"
+ export none
+ }
+ parm {
+ name "vex_numcount"
+ baseparm
+ label "Number Count"
+ export none
+ }
+ parm {
+ name "vex_threadjobsize"
+ baseparm
+ label "Thread Job Size"
+ export none
+ }
+ parm {
+ name "snippet"
+ baseparm
+ label "VEXpression"
+ export all
+ }
+ parm {
+ name "exportlist"
+ baseparm
+ label "Attributes to Create"
+ export none
+ }
+ parm {
+ name "vex_strict"
+ baseparm
+ label "Enforce Prototypes"
+ export none
+ }
+ }
+
+ group {
+ name "folder1_1"
+ label "Bindings"
+
+ parm {
+ name "autobind"
+ baseparm
+ label "Autobind by Name"
+ export none
+ }
+ multiparm {
+ name "bindings"
+ label "Number of Bindings"
+ baseparm
+ default 0
+ parmtag { "autoscope" "0000000000000000" }
+ parmtag { "multistartoffset" "1" }
+
+ parm {
+ name "bindname#"
+ baseparm
+ label "Attribute Name"
+ export none
+ }
+ parm {
+ name "bindparm#"
+ baseparm
+ label "VEX Parameter"
+ export none
+ }
+ }
+
+ parm {
+ name "groupautobind"
+ baseparm
+ label "Autobind Groups by Name"
+ export none
+ }
+ multiparm {
+ name "groupbindings"
+ label "Group Bindings"
+ baseparm
+ default 0
+ parmtag { "autoscope" "0000000000000000" }
+ parmtag { "multistartoffset" "1" }
+
+ parm {
+ name "bindgroupname#"
+ baseparm
+ label "Group Name"
+ export none
+ }
+ parm {
+ name "bindgroupparm#"
+ baseparm
+ label "VEX Parameter"
+ export none
+ }
+ }
+
+ parm {
+ name "vex_cwdpath"
+ baseparm
+ label "Evaluation Node Path"
+ export none
+ }
+ parm {
+ name "vex_outputmask"
+ baseparm
+ label "Export Parameters"
+ export none
+ }
+ parm {
+ name "vex_updatenmls"
+ baseparm
+ label "Update Normals If Displaced"
+ export none
+ }
+ parm {
+ name "vex_matchattrib"
+ baseparm
+ label "Attribute to Match"
+ export none
+ }
+ parm {
+ name "vex_inplace"
+ baseparm
+ label "Compute Results In Place"
+ export none
+ }
+ parm {
+ name "vex_selectiongroup"
+ baseparm
+ label "Output Selection Group"
+ export none
+ }
+ parm {
+ name "vex_precision"
+ baseparm
+ label "VEX Precision"
+ export none
+ }
+ }
+
+ parm {
+ name "do_full_transform"
+ label "Do Full Transform"
+ type integer
+ default { "0" }
+ range { 0 10 }
+ }
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/pointwrangle2.chn"
+Content-Type: text/plain
+
+{
+ channel do_full_transform {
+ lefttype = extend
+ righttype = extend
+ flags = 0
+ segment { length = 0 expr = ch(\"../do_extraction_prims/do_full_transform\") }
+ }
+ }
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/pointwrangle2.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+folder0 [ 0 locks=0 ] ( 0 0 )
+group [ 0 locks=0 ] ( "" )
+grouptype [ 0 locks=0 ] ( "guess" )
+class [ 0 locks=0 ] ( "point" )
+vex_numcount [ 0 locks=0 ] ( 10 )
+vex_threadjobsize [ 0 locks=0 ] ( 1024 )
+snippet [ 0 locks=0 ] ( "if(chi(\"do_full_transform\")) {
+ matrix m4 = primintrinsic(0, \"packedfulltransform\", @elemnum);
+ @P = cracktransform(0, 0, 0, 0, m4);
+}" )
+exportlist [ 0 locks=0 ] ( * )
+vex_strict [ 0 locks=0 ] ( "off" )
+autobind [ 0 locks=0 ] ( "on" )
+bindings [ 0 locks=0 ] ( 0 )
+groupautobind [ 0 locks=0 ] ( "on" )
+groupbindings [ 0 locks=0 ] ( 0 )
+vex_cwdpath [ 0 locks=0 ] ( . )
+vex_outputmask [ 0 locks=0 ] ( * )
+vex_updatenmls [ 0 locks=0 ] ( "off" )
+vex_matchattrib [ 0 locks=0 ] ( id )
+vex_inplace [ 0 locks=0 ] ( "off" )
+vex_selectiongroup [ 0 locks=0 ] ( "" )
+vex_precision [ 0 locks=0 ] ( auto )
+folder1 [ 0 locks=0 ] ( 0 0 )
+do_full_transform [ 8 locks=0 ] ( [ do_full_transform 1 ] )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/pointwrangle2.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":""
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch_has_N.init"
+Content-Type: text/plain
+
+type = switch
+matchesdef = 0
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch_has_N.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position 0.451498 6.2074
+connectornextid 3
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+2 "output1"
+}
+inputsNamed3
+{
+0 normal1 1 1 "input1"
+1 attribpromote1 1 1 "input2"
+}
+inputs
+{
+0 normal1 0 1
+1 attribpromote1 0 1
+}
+stat
+{
+ create 1542257157
+ modify 1607451267
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 1 0.7
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch_has_N.spareparmdef"
+Content-Type: text/plain
+
+ parm {
+ name "input"
+ baseparm
+ label "Select Input"
+ export all
+ }
+ parm {
+ name "spare_input0"
+ label "Spare Input 0"
+ type oppath
+ default { "" }
+ help "Refer to this in expressions as -1, such as: npoints(-1)"
+ parmtag { "opfilter" "!!SOP!!" }
+ parmtag { "oprelative" "." }
+ }
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch_has_N.chn"
+Content-Type: text/plain
+
+{
+ channel input {
+ lefttype = extend
+ righttype = extend
+ flags = 0
+ segment { length = 0 expr = "haspointattrib(-1, \"N\")" }
+ }
+ }
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch_has_N.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+input [ 8 locks=0 ] ( [ input 1 ] )
+spare_input0 [ 0 locks=0 ] ( ../INPUT )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch_has_N.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":"18.0.597"
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribpromote1.init"
+Content-Type: text/plain
+
+type = attribpromote
+matchesdef = 0
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribpromote1.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position 2.3649 7.22022
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 INPUT 1 1 "input1"
+}
+inputs
+{
+0 INPUT 0 1
+}
+stat
+{
+ create 1542257182
+ modify 1583520881
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 0.8 0.8
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribpromote1.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+inname [ 0 locks=0 ] ( N )
+inclass [ 0 locks=0 ] ( "vertex" )
+outclass [ 0 locks=0 ] ( "point" )
+usepieceattrib [ 0 locks=0 ] ( "off" )
+pieceattrib [ 0 locks=0 ] ( name )
+method [ 0 locks=0 ] ( "mean" )
+useoutname [ 0 locks=0 ] ( "off" )
+outname [ 0 locks=0 ] ( "" )
+deletein [ 0 locks=0 ] ( "on" )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribpromote1.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":"18.0.597"
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/normal1.init"
+Content-Type: text/plain
+
+type = normal
+matchesdef = 0
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/normal1.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position -1.09157 7.22022
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 INPUT 1 1 "input1"
+}
+inputs
+{
+0 INPUT 0 1
+}
+stat
+{
+ create 1542257205
+ modify 1583520879
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 0.8 0.8
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/normal1.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+group [ 0 locks=0 ] ( "" )
+grouptype [ 0 locks=0 ] ( "guess" )
+overridenormal [ 0 locks=0 ] ( "off" )
+normalattrib [ 0 locks=0 ] ( N )
+construct [ 0 locks=0 ] ( 0 )
+docompute [ 0 locks=0 ] ( "on" )
+type [ 0 locks=0 ] ( "typepoint" )
+cuspangle [ 0 locks=0 ] ( 60 )
+method [ 0 locks=0 ] ( 1 )
+origifzero [ 0 locks=0 ] ( "off" )
+modify [ 0 locks=0 ] ( 0 )
+normalize [ 0 locks=0 ] ( "off" )
+reverse [ 0 locks=0 ] ( "off" )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/normal1.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":"18.0.597"
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/INPUT.init"
+Content-Type: text/plain
+
+type = null
+matchesdef = 0
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/INPUT.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position 0.451498 8.54759
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 (0) "" 1 "input1"
+}
+inputs
+{
+0 (0) 0 1
+}
+stat
+{
+ create 1542257249
+ modify 1583520877
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.6 0.7 0.77
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/INPUT.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+copyinput [ 0 locks=0 ] ( "on" )
+cacheinput [ 0 locks=0 ] ( "off" )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/INPUT.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":"18.0.597"
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/OUT.init"
+Content-Type: text/plain
+
+type = output
+matchesdef = 0
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/OUT.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position 0.667834 -11.0566
+connectornextid 1
+flags = lock off model off template off footprint off xray off bypass off display on render on highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+}
+inputsNamed3
+{
+0 attribdelete3 1 1 "input1"
+}
+inputs
+{
+0 attribdelete3 0 1
+}
+stat
+{
+ create 1542257309
+ modify 1607302831
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 0.8 0.8
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/OUT.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+outputidx [ 0 locks=0 ] ( 0 )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/OUT.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":"18.0.597"
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch_extract_pivot.init"
+Content-Type: text/plain
+
+type = switch
+matchesdef = 0
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch_extract_pivot.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position 1.54794 -4.84195
+connectornextid 3
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+2 attribdelete1 1 1 "input1"
+0 switch1 2 1 "input2"
+}
+inputs
+{
+0 attribdelete1 0 1
+1 switch1 0 1
+}
+stat
+{
+ create 1550365152
+ modify 1607451267
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 1 0.7
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch_extract_pivot.chn"
+Content-Type: text/plain
+
+{
+ channel input {
+ lefttype = extend
+ righttype = extend
+ flags = 0
+ segment { length = 0 expr = ch(\"../do_pivot\") }
+ }
+ }
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch_extract_pivot.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+input [ 8 locks=0 ] ( [ input 1 ] )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch_extract_pivot.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":"18.0.597"
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribdelete1.init"
+Content-Type: text/plain
+
+type = attribdelete
+matchesdef = 1
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribdelete1.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position 0.868189 -3.77469
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 switch1 2 1 "input1"
+}
+inputs
+{
+0 switch1 0 1
+}
+stat
+{
+ create 1555308337
+ modify 1607302831
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 0.8 0.8
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribdelete1.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+ptdel [ 0 locks=0 ] ( pivot )
+vtxdel [ 0 locks=0 ] ( "" )
+primdel [ 0 locks=0 ] ( pivot )
+dtldel [ 0 locks=0 ] ( "" )
+updatevar [ 0 locks=0 ] ( "on" )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribdelete1.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":""
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribpromote4.init"
+Content-Type: text/plain
+
+type = attribpromote
+matchesdef = 0
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribpromote4.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position 4.80899 -0.818619
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 attribpromote6 1 1 "input1"
+}
+inputs
+{
+0 attribpromote6 0 1
+}
+stat
+{
+ create 1583522534
+ modify 1607302410
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 0.8 0.8
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribpromote4.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+inname [ 0 locks=0 ] ( "N orient pivot up scale pscale" )
+inclass [ 0 locks=0 ] ( "primitive" )
+outclass [ 0 locks=0 ] ( "point" )
+usepieceattrib [ 0 locks=0 ] ( "off" )
+pieceattrib [ 0 locks=0 ] ( name )
+method [ 0 locks=0 ] ( "mean" )
+useoutname [ 0 locks=0 ] ( "off" )
+outname [ 0 locks=0 ] ( "" )
+deletein [ 0 locks=0 ] ( "on" )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribpromote4.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":"18.0.597"
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/do_mops_orient.init"
+Content-Type: text/plain
+
+type = switch
+matchesdef = 0
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/do_mops_orient.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position 0.667834 -8.99704
+connectornextid 3
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 switch_extract_pivot 1 1 "input1"
+2 pointwrangle1 1 1 "input2"
+}
+inputs
+{
+0 switch_extract_pivot 0 1
+1 pointwrangle1 0 1
+}
+stat
+{
+ create 1584916552
+ modify 1607451267
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 1 0.7
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/do_mops_orient.chn"
+Content-Type: text/plain
+
+{
+ channel input {
+ lefttype = extend
+ righttype = extend
+ default = 1
+ flags = 0
+ segment { length = 0 value = 1 1 expr = ch(\"../do_mops_orient\") }
+ }
+ }
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/do_mops_orient.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+input [ 0 locks=0 ] ( [ input 0 ] )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/do_mops_orient.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":"18.0.597"
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch1.init"
+Content-Type: text/plain
+
+type = switch
+matchesdef = 0
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch1.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position 2.10931 -2.91948
+connectornextid 3
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+2 "output1"
+}
+inputsNamed3
+{
+0 attribpromote6 1 1 "input1"
+1 pointwrangle2 1 1 "input2"
+}
+inputs
+{
+0 attribpromote6 0 1
+1 pointwrangle2 0 1
+}
+stat
+{
+ create 1585514990
+ modify 1607451423
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 1 0.7
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch1.spareparmdef"
+Content-Type: text/plain
+
+ parm {
+ name "input"
+ baseparm
+ label "Select Input"
+ export all
+ }
+ parm {
+ name "spare_input0"
+ label "Spare Input 0"
+ type oppath
+ default { "" }
+ help "Refer to this in expressions as -1, such as: npoints(-1)"
+ parmtag { "opfilter" "!!SOP!!" }
+ parmtag { "oprelative" "." }
+ }
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch1.chn"
+Content-Type: text/plain
+
+{
+ channel input {
+ lefttype = extend
+ righttype = extend
+ flags = 0
+ segment { length = 0 expr = "detail(-1, \"__haspackedtransform\", 0)==1" }
+ }
+ }
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch1.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+input [ 8 locks=0 ] ( [ input 1 ] )
+spare_input0 [ 0 locks=0 ] ( ../attribpromote6 )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/switch1.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":"18.0.597"
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribpromote6.init"
+Content-Type: text/plain
+
+type = attribpromote
+matchesdef = 0
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribpromote6.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position 2.49377 0.948315
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 do_extraction_prims 1 1 "input1"
+}
+inputs
+{
+0 do_extraction_prims 0 1
+}
+stat
+{
+ create 1585515034
+ modify 1607302408
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 0.8 0.8
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribpromote6.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+inname [ 0 locks=0 ] ( __haspackedtransform )
+inclass [ 0 locks=0 ] ( "primitive" )
+outclass [ 0 locks=0 ] ( "detail" )
+usepieceattrib [ 0 locks=0 ] ( "off" )
+pieceattrib [ 0 locks=0 ] ( name )
+method [ 0 locks=0 ] ( "mean" )
+useoutname [ 0 locks=0 ] ( "off" )
+outname [ 0 locks=0 ] ( "" )
+deletein [ 0 locks=0 ] ( "on" )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribpromote6.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":"18.0.597"
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribdelete3.init"
+Content-Type: text/plain
+
+type = attribdelete
+matchesdef = 1
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribdelete3.def"
+Content-Type: text/plain
+
+sopflags sopflags =
+comment ""
+position 0.662332 -10.0566
+connectornextid 2
+flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
+outputsNamed3
+{
+1 "output1"
+}
+inputsNamed3
+{
+0 do_mops_orient 1 1 "input1"
+}
+inputs
+{
+0 do_mops_orient 0 1
+}
+stat
+{
+ create 1585515095
+ modify 1607302831
+ author Henry@LAPPY586
+ access 0777
+}
+color UT_Color RGB 0.8 0.8 0.8
+delscript ""
+exprlanguage hscript
+end
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribdelete3.parm"
+Content-Type: text/plain
+
+{
+version 0.8
+ptdel [ 0 locks=0 ] ( "" )
+vtxdel [ 0 locks=0 ] ( "" )
+primdel [ 0 locks=0 ] ( "N orient pscale scale up" )
+dtldel [ 0 locks=0 ] ( __haspackedtransform )
+updatevar [ 0 locks=0 ] ( "on" )
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot/attribdelete3.userdata"
+Content-Type: text/plain
+
+{
+ "___Version___":{
+ "type":"string",
+ "value":""
+ }
+}
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot.order"
+Content-Type: text/plain
+
+16
+do_extraction_points
+switch_has_N
+attribpromote1
+normal1
+INPUT
+OUT
+switch_extract_pivot
+attribdelete1
+do_extraction_prims
+attribpromote4
+do_mops_orient
+pointwrangle1
+switch1
+attribpromote6
+attribdelete3
+pointwrangle2
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
+Content-Disposition: attachment; filename="hdaroot.net"
+Content-Type: text/plain
+
+1
+
+--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY--
diff --git a/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Contents.dir/Sections.list b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Contents.dir/Sections.list
new file mode 100644
index 00000000..49f2c152
--- /dev/null
+++ b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Contents.dir/Sections.list
@@ -0,0 +1,2 @@
+""
+Contents.mime Contents.mime
diff --git a/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/CreateScript b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/CreateScript
new file mode 100644
index 00000000..deec5e0b
--- /dev/null
+++ b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/CreateScript
@@ -0,0 +1,14 @@
+# Automatically generated script
+\set noalias = 1
+#
+# Creation script for MOPS::Extract_Attributes::1.1 operator
+#
+
+if ( "$arg1" == "" ) then
+ echo This script is intended as a creation script
+ exit
+endif
+
+# Node $arg1 (MOPS::Sop/Extract_Attributes::1.1)
+opexprlanguage -s hscript $arg1
+opuserdata -n '___Version___' -v '' $arg1
diff --git a/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/DialogScript b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/DialogScript
new file mode 100644
index 00000000..df184ef0
--- /dev/null
+++ b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/DialogScript
@@ -0,0 +1,51 @@
+# Dialog script for MOPS::Extract_Attributes::1.1 automatically generated
+
+{
+ name MOPS::Extract_Attributes::1.1
+ script MOPS::Extract_Attributes::1.1
+ label "MOPs Extract Attributes"
+
+ help {
+ ""
+ }
+
+ inputlabel 1 "Input MOPs Primitives"
+ inputlabel 2 "Sub-Network Input #2"
+ inputlabel 3 "Sub-Network Input #3"
+ inputlabel 4 "Sub-Network Input #4"
+
+ parm {
+ name "do_full_transform"
+ label "Extract Full Transform"
+ type toggle
+ default { "0" }
+ range { 0 10 }
+ parmtag { "autoscope" "0000000000000000" }
+ }
+ parm {
+ name "do_pivot"
+ label "Extract Pivot"
+ type toggle
+ default { "1" }
+ range { 0! 10 }
+ parmtag { "autoscope" "0000000000000000" }
+ }
+ parm {
+ name "do_mops_orient"
+ label "Extract MOPs Orient"
+ type toggle
+ default { "0" }
+ range { 0! 10 }
+ parmtag { "autoscope" "0000000000000000" }
+ parmtag { "script_callback_language" "python" }
+ }
+ parm {
+ name "simplify_scale"
+ label "Simplify Scale"
+ type toggle
+ default { "1" }
+ range { 0 10 }
+ parmtag { "autoscope" "0000000000000000" }
+ parmtag { "script_callback_language" "python" }
+ }
+}
diff --git a/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/ExtraFileOptions b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/ExtraFileOptions
new file mode 100644
index 00000000..653fd919
--- /dev/null
+++ b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/ExtraFileOptions
@@ -0,0 +1,46 @@
+{
+ "OnCreated/Cursor":{
+ "type":"intarray",
+ "value":[1,1]
+ },
+ "OnCreated/IsExpr":{
+ "type":"bool",
+ "value":false
+ },
+ "OnCreated/IsPython":{
+ "type":"bool",
+ "value":true
+ },
+ "OnCreated/IsScript":{
+ "type":"bool",
+ "value":true
+ },
+ "OnCreated/Source":{
+ "type":"string",
+ "value":""
+ },
+ "ViewerStateModule/CodeGenInput":{
+ "type":"string",
+ "value":"{\n\t\"state_name\":\"\",\n\t\"state_label\":\"\",\n\t\"state_descr\":\"\",\n\t\"state_icon\":\"$HH/config/Icons\",\n\t\"state_debug_menu\":0,\n\t\"state_sample\":0,\n\t\"state_handler_indices\":[]\n}\n"
+ },
+ "mops_TD_tools_05.svg/Cursor":{
+ "type":"intarray",
+ "value":[1,1]
+ },
+ "mops_TD_tools_05.svg/IsExpr":{
+ "type":"bool",
+ "value":false
+ },
+ "mops_TD_tools_05.svg/IsPython":{
+ "type":"bool",
+ "value":false
+ },
+ "mops_TD_tools_05.svg/IsScript":{
+ "type":"bool",
+ "value":false
+ },
+ "mops_TD_tools_05.svg/Source":{
+ "type":"string",
+ "value":"C:/Users/Henry/Projects/VFX/MOPS/icons/mops_TD_tools_05.svg"
+ }
+}
diff --git a/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Help b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Help
new file mode 100644
index 00000000..05eaa772
--- /dev/null
+++ b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Help
@@ -0,0 +1,38 @@
+= MOPs Extract Attributes =
+
+#icon: opdef:.?mops_TD_tools_05.svg
+
+"""Creates Houdini point instancing attributes from MOPs Packed Primitives."""
+
+This is a low-level node intended to help artists develop their own MOPs modifiers.
+The Extract Attributes node takes MOPs packed primitives and converts their packed primitive intrinsic attributes into standard Houdini instancing attributes (p@orient, v@scale, @pscale, etc.)
+The extracted attributes are written directly to the points representing the packed primitives.
+
+This operator generates the following point attributes: p@orient, v@scale, v@N, v@up, v@pivot
+
+@inputs
+
+Input MOPs Primitives:
+ The MOPs primitives to extract instancing attributes from.
+
+@parameters
+
+Extract Pivot:
+ #id: do_pivot
+ Enable extraction of the packed primitive's pivot intrinsic as `v@pivot`.
+
+Extract MOPs Orient:
+ #id: do_mops_orient
+ If enabled, the mops_orient pretransform attribute will be applied as part of the output orientation.
+
+Extract Full Transform:
+ #id: do_full_transform
+ Extract the `packedfulltransform` intrinsic rather than the `transform` intrinsic. This is often necessary if you're trying to extract the transforms of packed Alembics from disk rather than regular Houdini packed primitives.
+
+Simplify Scale:
+ #id: simplify_scale
+ If enabled, if all three components of the v@scale attribute are effectively identical, write to @pscale instead.
+
+@related
+
+* [MOPs Apply Attributes|Node:sop/MOPS--Apply_Attributes-1.4]
\ No newline at end of file
diff --git a/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/IconSVG b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/IconSVG
new file mode 100644
index 00000000..75629325
--- /dev/null
+++ b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/IconSVG
@@ -0,0 +1,8 @@
+
+
+
+
diff --git a/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/InternalFileOptions b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/InternalFileOptions
new file mode 100644
index 00000000..222988aa
--- /dev/null
+++ b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/InternalFileOptions
@@ -0,0 +1,10 @@
+{
+ "nodeconntype":{
+ "type":"bool",
+ "value":false
+ },
+ "nodeparmtype":{
+ "type":"bool",
+ "value":false
+ }
+}
diff --git a/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/OnCreated b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/OnCreated
new file mode 100644
index 00000000..0f899104
--- /dev/null
+++ b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/OnCreated
@@ -0,0 +1,10 @@
+me = kwargs['node']
+me.setName('MOPs_Extract_Attributes', True)
+
+# send anonymous statistics if enabled.
+# see README.md for more information.
+try:
+ import mops_tools
+ mops_tools.send_on_create_analytics(me)
+except:
+ pass
\ No newline at end of file
diff --git a/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Sections.list b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Sections.list
new file mode 100644
index 00000000..7eb55a9e
--- /dev/null
+++ b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Sections.list
@@ -0,0 +1,12 @@
+""
+DialogScript DialogScript
+CreateScript CreateScript
+TypePropertiesOptions TypePropertiesOptions
+Help Help
+Tools.shelf Tools.shelf
+InternalFileOptions InternalFileOptions
+Contents.gz Contents.gz
+IconSVG IconSVG
+OnCreated OnCreated
+ExtraFileOptions ExtraFileOptions
+mops__TD__tools__05.svg mops_TD_tools_05.svg
diff --git a/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Tools.shelf b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Tools.shelf
new file mode 100644
index 00000000..d8ad8799
--- /dev/null
+++ b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/Tools.shelf
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+ SOP
+
+
+ $HDA_TABLE_AND_NAME
+
+ MOPs/Tools
+
+
+
diff --git a/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/TypePropertiesOptions b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/TypePropertiesOptions
new file mode 100644
index 00000000..a6d52acf
--- /dev/null
+++ b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/TypePropertiesOptions
@@ -0,0 +1,14 @@
+CheckExternal := 1;
+ContentsCompressionType := 1;
+ForbidOutsideParms := 1;
+GzipContents := 1;
+LockContents := 1;
+MakeDefault := 1;
+ParmsFromVfl := 0;
+PrefixDroppedParmLabel := 0;
+PrefixDroppedParmName := 0;
+SaveCachedCode := 0;
+SaveIcon := 1;
+SaveSpareParms := 0;
+UnlockOnCreate := 0;
+UseDSParms := 1;
diff --git a/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/mops__TD__tools__05.svg b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/mops__TD__tools__05.svg
new file mode 100644
index 00000000..75629325
--- /dev/null
+++ b/otls/MOPS_extractAttributes.hda/MOPS_8_8Sop_1Extract__Attributes_8_81.1/mops__TD__tools__05.svg
@@ -0,0 +1,8 @@
+
+
+
+
diff --git a/otls/MOPS_extractAttributes.hda/Sections.list b/otls/MOPS_extractAttributes.hda/Sections.list
index a89bbd1d..2d6270ba 100644
--- a/otls/MOPS_extractAttributes.hda/Sections.list
+++ b/otls/MOPS_extractAttributes.hda/Sections.list
@@ -2,3 +2,4 @@
INDEX__SECTION INDEX_SECTION
houdini.hdalibrary houdini.hdalibrary
MOPS_8_8Sop_1Extract__Attributes_8_81.0 MOPS::Sop/Extract_Attributes::1.0
+MOPS_8_8Sop_1Extract__Attributes_8_81.1 MOPS::Sop/Extract_Attributes::1.1
diff --git a/otls/MOPS_instancer.hda/INDEX__SECTION b/otls/MOPS_instancer.hda/INDEX__SECTION
index 9242b6b9..239811ff 100644
--- a/otls/MOPS_instancer.hda/INDEX__SECTION
+++ b/otls/MOPS_instancer.hda/INDEX__SECTION
@@ -10,7 +10,7 @@ Inputs: 0 to 500
Subnet: true
Python: false
Empty: false
-Modified: Fri Apr 13 13:54:26 2018
+Modified: Fri Apr 13 15:54:26 2018
Operator: MOPS::Instancer::1.1
Label: MOPs Instancer
@@ -24,7 +24,7 @@ Inputs: 0 to 0
Subnet: true
Python: false
Empty: false
-Modified: Thu Aug 29 10:07:15 2019
+Modified: Thu Aug 29 12:07:15 2019
Operator: MOPS::Instancer::1.2
Label: MOPs Instancer
@@ -38,7 +38,7 @@ Inputs: 0 to 0
Subnet: true
Python: false
Empty: false
-Modified: Thu Jul 25 12:42:14 2019
+Modified: Thu Jul 25 14:42:14 2019
Operator: MOPS::Instancer::1.3
Label: MOPs Instancer
@@ -66,5 +66,5 @@ Inputs: 0 to 500
Subnet: true
Python: false
Empty: false
-Modified: Sat Sep 19 11:27:22 2020
+Modified: Sun Dec 6 17:10:38 2020
diff --git a/otls/MOPS_instancer.hda/MOPS_8_8Sop_1Instancer_8_81.4/Contents.dir/.OPdummydefs b/otls/MOPS_instancer.hda/MOPS_8_8Sop_1Instancer_8_81.4/Contents.dir/.OPdummydefs
index 58bca657..bce11296 100644
Binary files a/otls/MOPS_instancer.hda/MOPS_8_8Sop_1Instancer_8_81.4/Contents.dir/.OPdummydefs and b/otls/MOPS_instancer.hda/MOPS_8_8Sop_1Instancer_8_81.4/Contents.dir/.OPdummydefs differ
diff --git a/otls/MOPS_instancer.hda/MOPS_8_8Sop_1Instancer_8_81.4/Contents.dir/.OPfallbacks b/otls/MOPS_instancer.hda/MOPS_8_8Sop_1Instancer_8_81.4/Contents.dir/.OPfallbacks
index 31ea60d2..dae0ca93 100644
--- a/otls/MOPS_instancer.hda/MOPS_8_8Sop_1Instancer_8_81.4/Contents.dir/.OPfallbacks
+++ b/otls/MOPS_instancer.hda/MOPS_8_8Sop_1Instancer_8_81.4/Contents.dir/.OPfallbacks
@@ -1,38 +1,40 @@
-MOPS::Sop/Align::1.2 C:/Users/Henry/Projects/VFX/MOPS/otls/MOPS_Align.hda
+MOPS::Sop/Align::1.2 D:/Projects/VFX/MOPS/otls/MOPS_Align.hda
MOPS::Sop/Align::1.2 otls/MOPS_Align.hda
-MOPS::Sop/Apply_Attributes::1.4 C:/Users/Henry/Projects/VFX/MOPS/otls/MOPS_applyAttributes.hda
+MOPS::Sop/Apply_Attributes::1.4 D:/Projects/VFX/MOPS/otls/MOPS_applyAttributes.hda
MOPS::Sop/Apply_Attributes::1.4 otls/MOPS_applyAttributes.hda
-MOPS::Sop/Extract_Attributes::1.0 C:/Users/Henry/Projects/VFX/MOPS/otls/MOPS_extractAttributes.hda
+MOPS::Sop/Apply_Attributes::1.5 D:/Projects/VFX/MOPS/otls/MOPS_applyAttributes.hda
+MOPS::Sop/Apply_Attributes::1.5 otls/MOPS_applyAttributes.hda
+MOPS::Sop/Extract_Attributes::1.0 D:/Projects/VFX/MOPS/otls/MOPS_extractAttributes.hda
MOPS::Sop/Extract_Attributes::1.0 otls/MOPS_extractAttributes.hda
-MOPS::Sop/Mesh_Flow::1.1 C:/Users/Henry/Projects/VFX/MOPS/otls/MOPS_Mesh_Flow.hda
+MOPS::Sop/Mesh_Flow::1.1 D:/Projects/VFX/MOPS/otls/MOPS_Mesh_Flow.hda
MOPS::Sop/Mesh_Flow::1.1 otls/MOPS_Mesh_Flow.hda
-MOPS::Sop/Orient_Curve::1.0 C:/Users/Henry/Projects/VFX/MOPS/otls/MOPS_Orient_Curve.hda
+MOPS::Sop/Orient_Curve::1.0 D:/Projects/VFX/MOPS/otls/MOPS_Orient_Curve.hda
MOPS::Sop/Orient_Curve::1.0 otls/MOPS_Orient_Curve.hda
-MOPS::Sop/Parallel_Transport::1.0 C:/Users/Henry/Projects/VFX/MOPS/otls/MOPS_Parallel_Transport.hda
+MOPS::Sop/Parallel_Transport::1.0 D:/Projects/VFX/MOPS/otls/MOPS_Parallel_Transport.hda
MOPS::Sop/Parallel_Transport::1.0 otls/MOPS_Parallel_Transport.hda
-MOPS::Sop/Transform_Modifier::1.1 C:/Users/Henry/Projects/VFX/MOPS/otls/MOPS_transform.hda
+MOPS::Sop/Transform_Modifier::1.1 D:/Projects/VFX/MOPS/otls/MOPS_transform.hda
MOPS::Sop/Transform_Modifier::1.1 otls/MOPS_transform.hda
-MOPS::Sop/Visualize_Frame::1.0 C:/Users/Henry/Projects/VFX/MOPS/otls/MOPS_Visualize_Frame.hda
+MOPS::Sop/Visualize_Frame::1.0 D:/Projects/VFX/MOPS/otls/MOPS_Visualize_Frame.hda
MOPS::Sop/Visualize_Frame::1.0 otls/MOPS_Visualize_Frame.hda
-Sop/attribblur C:/PROGRA~1/SIDEEF~1/HOUDIN~1.460/houdini/otls/OPlibSop.hda
+Sop/attribblur C:/PROGRA~1/SIDEEF~1/HOUDIN~1.597/houdini/otls/OPlibSop.hda
Sop/attribblur otls/OPlibSop.hda
-Sop/attribdelete C:/PROGRA~1/SIDEEF~1/HOUDIN~1.460/houdini/otls/OPlibSop.hda
+Sop/attribdelete C:/PROGRA~1/SIDEEF~1/HOUDIN~1.597/houdini/otls/OPlibSop.hda
Sop/attribdelete otls/OPlibSop.hda
-Sop/attribwrangle C:/PROGRA~1/SIDEEF~1/HOUDIN~1.460/houdini/otls/OPlibSop.hda
+Sop/attribwrangle C:/PROGRA~1/SIDEEF~1/HOUDIN~1.597/houdini/otls/OPlibSop.hda
Sop/attribwrangle otls/OPlibSop.hda
-Sop/convertline C:/PROGRA~1/SIDEEF~1/HOUDIN~1.460/houdini/otls/OPlibSop.hda
+Sop/convertline C:/PROGRA~1/SIDEEF~1/HOUDIN~1.597/houdini/otls/OPlibSop.hda
Sop/convertline otls/OPlibSop.hda
-Vop/curlnoise C:/PROGRA~1/SIDEEF~1/HOUDIN~1.460/houdini/otls/OPlibScripted.hda
+Vop/curlnoise C:/PROGRA~1/SIDEEF~1/HOUDIN~1.597/houdini/otls/OPlibScripted.hda
Vop/curlnoise otls/OPlibScripted.hda
-Vop/geometryvopglobal::2.0 C:/PROGRA~1/SIDEEF~1/HOUDIN~1.460/houdini/otls/OPlibVop.hda
+Vop/geometryvopglobal::2.0 C:/PROGRA~1/SIDEEF~1/HOUDIN~1.597/houdini/otls/OPlibVop.hda
Vop/geometryvopglobal::2.0 otls/OPlibVop.hda
-Vop/geometryvopoutput C:/PROGRA~1/SIDEEF~1/HOUDIN~1.460/houdini/otls/OPlibVop.hda
+Vop/geometryvopoutput C:/PROGRA~1/SIDEEF~1/HOUDIN~1.597/houdini/otls/OPlibVop.hda
Vop/geometryvopoutput otls/OPlibVop.hda
-Sop/groupexpression C:/PROGRA~1/SIDEEF~1/HOUDIN~1.460/houdini/otls/OPlibSop.hda
+Sop/groupexpression C:/PROGRA~1/SIDEEF~1/HOUDIN~1.597/houdini/otls/OPlibSop.hda
Sop/groupexpression otls/OPlibSop.hda
-Vop/mix C:/PROGRA~1/SIDEEF~1/HOUDIN~1.460/houdini/otls/OPlibScripted.hda
+Vop/mix C:/PROGRA~1/SIDEEF~1/HOUDIN~1.597/houdini/otls/OPlibScripted.hda
Vop/mix otls/OPlibScripted.hda
-Vop/normalize C:/PROGRA~1/SIDEEF~1/HOUDIN~1.460/houdini/otls/OPlibScripted.hda
+Vop/normalize C:/PROGRA~1/SIDEEF~1/HOUDIN~1.597/houdini/otls/OPlibScripted.hda
Vop/normalize otls/OPlibScripted.hda
-Sop/visualize C:/PROGRA~1/SIDEEF~1/HOUDIN~1.460/houdini/otls/OPlibSop.hda
+Sop/visualize C:/PROGRA~1/SIDEEF~1/HOUDIN~1.597/houdini/otls/OPlibSop.hda
Sop/visualize otls/OPlibSop.hda
diff --git a/otls/MOPS_instancer.hda/MOPS_8_8Sop_1Instancer_8_81.4/Contents.dir/Contents.mime b/otls/MOPS_instancer.hda/MOPS_8_8Sop_1Instancer_8_81.4/Contents.dir/Contents.mime
index f28d58d9..3f5f0102 100644
--- a/otls/MOPS_instancer.hda/MOPS_8_8Sop_1Instancer_8_81.4/Contents.dir/Contents.mime
+++ b/otls/MOPS_instancer.hda/MOPS_8_8Sop_1Instancer_8_81.4/Contents.dir/Contents.mime
@@ -32,7 +32,7 @@ Content-Type: text/plain
sopflags sopflags =
comment ""
-position -2.91359 0.848509
+position -15.0662 -6.35364
connectornextid 2
flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on
outputsNamed3
@@ -41,17 +41,17 @@ outputsNamed3
}
inputsNamed3
{
-0 box1 0 1 "input1"
+0 testgeometry_pighead1 0 1 "input1"
}
inputs
{
-0 box1 0 1
+0 testgeometry_pighead1 0 1
}
stat
{
- create 1600539039
- modify 1600540037
- author Henry@LAPPY586
+ create 1607303192
+ modify 1607303780
+ author Henry@GlaDOS
access 0777
}
color UT_Color RGB 0.8 0.8 0.8
@@ -607,7 +607,7 @@ inputs
stat
{
create 1567573997
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -724,6 +724,7 @@ version 0.8
group [ 0 locks=0 ] ( "" )
grouptype [ 0 locks=0 ] ( "guess" )
sepparm [ 0 locks=0 ] ( )
+direction [ 0 locks=0 ] ( "0" )
invert [ 0 locks=0 ] ( [ invert 1 ] )
custom_first_tangent [ 0 locks=0 ] ( [ custom_first_tangent 0 ] )
First_Tangent [ 0 locks=0 ] ( [ First_Tangentx 0 ] [ First_Tangenty 1 ] [ First_Tangentz 0 ] )
@@ -782,7 +783,7 @@ inputs
stat
{
create 1509153811
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -1078,7 +1079,7 @@ inputs
stat
{
create 1529112595
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -1359,7 +1360,7 @@ inputs
stat
{
create 1509161781
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -1445,7 +1446,7 @@ inputs
stat
{
create 1509161957
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -1788,7 +1789,7 @@ inputs
stat
{
create 1522120372
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -2155,7 +2156,7 @@ inputs
stat
{
create 1567742577
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -2273,6 +2274,7 @@ version 0.8
group [ 0 locks=0 ] ( "" )
grouptype [ 0 locks=0 ] ( "guess" )
sepparm [ 0 locks=0 ] ( )
+direction [ 0 locks=0 ] ( "0" )
invert [ 0 locks=0 ] ( [ invert 0 ] )
custom_first_tangent [ 0 locks=0 ] ( [ custom_first_tangent 0 ] )
First_Tangent [ 0 locks=0 ] ( [ First_Tangentx 0 ] [ First_Tangenty 1 ] [ First_Tangentz 0 ] )
@@ -2331,7 +2333,7 @@ inputs
stat
{
create 1529458439
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -2606,7 +2608,7 @@ inputs
stat
{
create 1522207353
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -2687,7 +2689,7 @@ inputs
stat
{
create 1523143742
- modify 1595112370
+ modify 1607303193
author henry@GlaDOS
access 0777
}
@@ -2767,7 +2769,7 @@ inputs
stat
{
create 1523149154
- modify 1595112370
+ modify 1607303193
author henry@GlaDOS
access 0777
}
@@ -2847,7 +2849,7 @@ inputs
stat
{
create 1513230374
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -3163,7 +3165,7 @@ inputs
stat
{
create 1523147062
- modify 1595112998
+ modify 1607303193
author henry@GlaDOS
access 0777
}
@@ -3253,7 +3255,7 @@ inputs
stat
{
create 1523147435
- modify 1595112998
+ modify 1607303193
author henry@GlaDOS
access 0777
}
@@ -3339,7 +3341,7 @@ inputs
stat
{
create 1540441971
- modify 1595112998
+ modify 1607303193
author henry@GlaDOS
access 0777
}
@@ -3606,7 +3608,7 @@ inputs
stat
{
create 1509148564
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -3708,7 +3710,7 @@ inputs
stat
{
create 1557416320
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -3996,7 +3998,7 @@ inputs
stat
{
create 1523080271
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -4077,7 +4079,7 @@ inputs
stat
{
create 1530946005
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -4177,7 +4179,7 @@ inputs
stat
{
create 1567747788
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -4262,7 +4264,7 @@ inputs
stat
{
create 1531283685
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -4389,7 +4391,7 @@ inputs
stat
{
create 1568259839
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -4470,7 +4472,7 @@ inputs
stat
{
create 1584173063
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -4571,7 +4573,7 @@ inputs
stat
{
create 1568263803
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -4655,7 +4657,7 @@ inputs
stat
{
create 1568523996
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -5033,7 +5035,7 @@ inputs
stat
{
create 1568524381
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -5178,7 +5180,7 @@ inputs
stat
{
create 1568609670
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -5464,7 +5466,7 @@ inputs
stat
{
create 1568610675
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -5796,7 +5798,7 @@ inputs
stat
{
create 1568698406
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -5876,7 +5878,7 @@ inputs
stat
{
create 1568780508
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -5957,7 +5959,7 @@ inputs
stat
{
create 1568780508
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -6038,7 +6040,7 @@ inputs
stat
{
create 1568866585
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -6108,7 +6110,7 @@ inputs
stat
{
create 1568867654
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -6190,7 +6192,7 @@ inputs
stat
{
create 1568917672
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -6271,7 +6273,7 @@ inputs
stat
{
create 1568918764
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -6359,7 +6361,7 @@ inputs
stat
{
create 1568917672
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -6641,7 +6643,7 @@ inputs
stat
{
create 1569005739
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -6723,7 +6725,7 @@ inputs
stat
{
create 1569084328
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -7008,7 +7010,7 @@ inputs
stat
{
create 1569390549
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -7096,7 +7098,7 @@ inputs
stat
{
create 1569390549
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -7179,7 +7181,7 @@ inputs
stat
{
create 1569470295
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -7259,7 +7261,7 @@ inputs
stat
{
create 1570128391
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -7519,7 +7521,7 @@ inputs
stat
{
create 1570128391
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -7976,7 +7978,7 @@ inputs
stat
{
create 1579909738
- modify 1595113016
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -8056,7 +8058,7 @@ inputs
stat
{
create 1580880777
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -8151,18 +8153,20 @@ rotate [ 8 locks=0 ] ( [ rotatex 0 ] [ rotatey 0 ] [ rotatez 0 ] )
scale [ 8 locks=0 ] ( [ scalex 1 ] [ scaley 1 ] [ scalez 1 ] )
uniform_scale [ 0 locks=0 ] ( [ uniform_scale 1 ] )
pivot [ 0 locks=0 ] ( 0 0 0 )
+sepparm2 [ 0 locks=0 ] ( )
do_weight [ 0 locks=0 ] ( "off" )
falloff_attribute [ 0 locks=0 ] ( mops_falloff )
+sepparm [ 0 locks=0 ] ( )
+rotate_order [ 0 locks=0 ] ( 0 )
+rotate_mode [ 0 locks=0 ] ( 0 )
+scale_mode [ 0 locks=0 ] ( 1 )
+pivot_mode [ 0 locks=0 ] ( 0 )
do_vexpression [ 0 locks=0 ] ( "off" )
vexpression [ 0 locks=0 ] ( "// translate = {0,0,0};
// rotate = {0,0,0};
// scale = {1,1,1};
// pscale = 1;
// local = 1;" )
-rotate_mode [ 0 locks=0 ] ( 0 )
-scale_mode [ 0 locks=0 ] ( 1 )
-rotate_order [ 0 locks=0 ] ( 0 )
-pivot_mode [ 0 locks=0 ] ( 0 )
}
--HOUDINIMIMEBOUNDARY0xD3ADD339-0x00000F49-0x56B122C9-0x00000001HOUDINIMIMEBOUNDARY
@@ -8215,7 +8219,7 @@ inputs
stat
{
create 1580883336
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -8295,7 +8299,7 @@ inputs
stat
{
create 1581566136
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -8694,7 +8698,7 @@ inputs
stat
{
create 1509148564
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -8883,7 +8887,7 @@ inputs
stat
{
create 1600539711
- modify 1600539782
+ modify 1607303374
author Henry@LAPPY586
access 0777
}
@@ -8898,7 +8902,7 @@ Content-Type: text/plain
{
version 0.8
-do_pivot [ 0 locks=0 ] ( "on" )
+do_pivot [ 0 locks=0 ] ( "off" )
do_mops_orient [ 0 locks=0 ] ( "off" )
do_full_transform [ 0 locks=0 ] ( "off" )
simplify_scale [ 0 locks=0 ] ( "on" )
@@ -8943,7 +8947,7 @@ inputs
stat
{
create 1508907047
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -9023,7 +9027,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -9082,7 +9086,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -9143,7 +9147,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -9178,7 +9182,7 @@ inputs
stat
{
create 1508906585
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -9240,7 +9244,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -9275,7 +9279,7 @@ inputs
stat
{
create 1508911812
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -9508,7 +9512,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -9541,7 +9545,7 @@ inputs
stat
{
create 1567573563
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -9631,7 +9635,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -9664,7 +9668,7 @@ inputs
stat
{
create 1508906579
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -9796,7 +9800,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -9857,7 +9861,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -9892,7 +9896,7 @@ inputs
stat
{
create 1508906585
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -9954,7 +9958,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -10055,7 +10059,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -10142,7 +10146,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -10203,7 +10207,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -10240,7 +10244,7 @@ inputs
stat
{
create 1524779021
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -10278,7 +10282,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -10311,7 +10315,7 @@ inputs
stat
{
create 1529112153
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -10365,7 +10369,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -10400,7 +10404,7 @@ inputs
stat
{
create 1529112159
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -10510,7 +10514,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -10545,7 +10549,7 @@ inputs
stat
{
create 1529112407
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -10602,7 +10606,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -10678,7 +10682,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -10760,7 +10764,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -10795,7 +10799,7 @@ inputs
stat
{
create 1529112948
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -10847,7 +10851,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -10929,7 +10933,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -10964,7 +10968,7 @@ inputs
stat
{
create 1529112159
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -11075,7 +11079,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -11136,7 +11140,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -11212,7 +11216,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -11249,7 +11253,7 @@ inputs
stat
{
create 1522120313
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -11287,7 +11291,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -11348,7 +11352,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -11381,7 +11385,7 @@ inputs
stat
{
create 1513226016
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -11448,7 +11452,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -11483,7 +11487,7 @@ inputs
stat
{
create 1521087863
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -11590,7 +11594,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -11627,7 +11631,7 @@ inputs
stat
{
create 1567742580
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -11666,7 +11670,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -11727,7 +11731,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -11788,7 +11792,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -11856,7 +11860,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -11891,7 +11895,7 @@ inputs
stat
{
create 1522121754
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -11955,7 +11959,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -11990,7 +11994,7 @@ inputs
stat
{
create 1522121807
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -12054,7 +12058,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -12122,7 +12126,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -12159,7 +12163,7 @@ inputs
stat
{
create 1522300910
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -12197,7 +12201,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -12296,7 +12300,7 @@ inputs
stat
{
create 1523143901
- modify 1595112370
+ modify 1607303193
author henry@GlaDOS
access 0777
}
@@ -12362,7 +12366,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -12397,7 +12401,7 @@ inputs
stat
{
create 1523747481
- modify 1595112370
+ modify 1607303193
author henry@GlaDOS
access 0777
}
@@ -12470,7 +12474,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -12517,7 +12521,7 @@ inputs
stat
{
create 1567743404
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -12555,7 +12559,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -12621,7 +12625,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -12658,7 +12662,7 @@ inputs
stat
{
create 1523145623
- modify 1595112998
+ modify 1607303193
author henry@GlaDOS
access 0777
}
@@ -12697,7 +12701,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
},
"___toolcount___":{
"type":"string",
@@ -12740,7 +12744,7 @@ inputs
stat
{
create 1567744824
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -12795,7 +12799,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -12830,7 +12834,7 @@ inputs
stat
{
create 1567744824
- modify 1600540039
+ modify 1607303321
author Henry@LAPPY586
access 0777
}
@@ -12859,7 +12863,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -12896,7 +12900,7 @@ inputs
stat
{
create 1522969458
- modify 1595112998
+ modify 1607303193
author Wolf_User@admin-hp
access 0777
}
@@ -12961,7 +12965,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -12994,7 +12998,7 @@ inputs
stat
{
create 1567744114
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -13172,7 +13176,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -13209,7 +13213,7 @@ inputs
stat
{
create 1530848870
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -13268,7 +13272,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -13305,7 +13309,7 @@ inputs
stat
{
create 1530848814
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -13364,7 +13368,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -13397,7 +13401,7 @@ inputs
stat
{
create 1530848881
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -13594,7 +13598,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -13627,7 +13631,7 @@ inputs
stat
{
create 1530848886
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -14107,7 +14111,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -14139,7 +14143,7 @@ inputs
stat
{
create 1567746994
- modify 1600540039
+ modify 1607303321
author Henry@LAPPY586
access 0777
}
@@ -14168,7 +14172,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -14205,7 +14209,7 @@ inputs
stat
{
create 1523081344
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -14243,7 +14247,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -14318,7 +14322,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -14382,7 +14386,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -14462,7 +14466,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -14536,7 +14540,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -14571,7 +14575,7 @@ inputs
stat
{
create 1567743257
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -14646,7 +14650,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -14707,7 +14711,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -14768,7 +14772,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -14811,7 +14815,7 @@ inputs
stat
{
create 1568264088
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -14850,7 +14854,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -14911,7 +14915,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -14972,7 +14976,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -15033,7 +15037,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -15094,7 +15098,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -15155,7 +15159,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -15192,7 +15196,7 @@ inputs
stat
{
create 1568520276
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -15230,7 +15234,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -15306,7 +15310,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -15341,7 +15345,7 @@ inputs
stat
{
create 1568520954
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -15571,7 +15575,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -15606,7 +15610,7 @@ inputs
stat
{
create 1567743257
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -15681,7 +15685,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -15742,7 +15746,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -15775,7 +15779,7 @@ inputs
stat
{
create 1568521638
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -15821,7 +15825,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -15858,7 +15862,7 @@ inputs
stat
{
create 1568523967
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -15896,7 +15900,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -15933,7 +15937,7 @@ inputs
stat
{
create 1568587660
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -15972,7 +15976,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -16033,7 +16037,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -16094,7 +16098,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -16168,7 +16172,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -16229,7 +16233,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -16305,7 +16309,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -16340,7 +16344,7 @@ inputs
stat
{
create 1508909702
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -16392,7 +16396,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -16429,7 +16433,7 @@ inputs
stat
{
create 1568609578
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -16467,7 +16471,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -16541,7 +16545,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -16576,7 +16580,7 @@ inputs
stat
{
create 1568609633
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -16653,7 +16657,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -16690,7 +16694,7 @@ inputs
stat
{
create 1568609660
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -16728,7 +16732,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -16763,7 +16767,7 @@ inputs
stat
{
create 1560463831
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -16887,7 +16891,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -16924,7 +16928,7 @@ inputs
stat
{
create 1568697713
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -16962,7 +16966,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -16995,7 +16999,7 @@ inputs
stat
{
create 1568697731
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -17076,7 +17080,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -17113,7 +17117,7 @@ inputs
stat
{
create 1568698410
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -17151,7 +17155,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -17188,7 +17192,7 @@ inputs
stat
{
create 1568780457
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -17226,7 +17230,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -17263,7 +17267,7 @@ inputs
stat
{
create 1568780547
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -17302,7 +17306,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -17379,7 +17383,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -17416,7 +17420,7 @@ inputs
stat
{
create 1568863380
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -17454,7 +17458,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -17489,7 +17493,7 @@ inputs
stat
{
create 1521087863
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -17551,7 +17555,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -17612,7 +17616,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -17677,7 +17681,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -17714,7 +17718,7 @@ inputs
stat
{
create 1568866329
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -17752,7 +17756,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -17818,7 +17822,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -17851,7 +17855,7 @@ inputs
stat
{
create 1568521638
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -17897,7 +17901,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -17934,7 +17938,7 @@ inputs
stat
{
create 1568867356
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -17972,7 +17976,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -18038,7 +18042,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -18104,7 +18108,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -18170,7 +18174,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -18207,7 +18211,7 @@ inputs
stat
{
create 1568868406
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -18245,7 +18249,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -18384,7 +18388,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -18456,7 +18460,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -18555,7 +18559,7 @@ inputs
stat
{
create 1568947590
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -18678,7 +18682,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -18713,7 +18717,7 @@ inputs
stat
{
create 1568947590
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -19062,7 +19066,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -19097,7 +19101,7 @@ inputs
stat
{
create 1567743257
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -19172,7 +19176,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -19209,7 +19213,7 @@ inputs
stat
{
create 1569084319
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -19247,7 +19251,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -19312,7 +19316,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -19349,7 +19353,7 @@ inputs
stat
{
create 1569453856
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -19388,7 +19392,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -19466,7 +19470,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -19567,7 +19571,7 @@ inputs
stat
{
create 1569455704
- modify 1600539785
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -19605,7 +19609,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -19665,7 +19669,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -19698,7 +19702,7 @@ inputs
stat
{
create 1569455737
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -19744,7 +19748,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -19882,7 +19886,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -19947,7 +19951,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -20021,7 +20025,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -20085,7 +20089,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -20120,7 +20124,7 @@ inputs
stat
{
create 1569714346
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -20148,7 +20152,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -20212,7 +20216,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -20247,7 +20251,7 @@ inputs
stat
{
create 1569714414
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -20275,7 +20279,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -20353,7 +20357,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -20433,7 +20437,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -20501,7 +20505,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -20538,7 +20542,7 @@ inputs
stat
{
create 1580883319
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -20576,7 +20580,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -20613,7 +20617,7 @@ inputs
stat
{
create 1582053141
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -20651,7 +20655,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -20686,7 +20690,7 @@ inputs
stat
{
create 1583819843
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -20730,7 +20734,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -20831,7 +20835,7 @@ inputs
stat
{
create 1584172109
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -20882,7 +20886,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -20919,7 +20923,7 @@ inputs
stat
{
create 1584172149
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -20957,7 +20961,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -20994,7 +20998,7 @@ inputs
stat
{
create 1586055305
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -21032,7 +21036,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -21069,7 +21073,7 @@ inputs
stat
{
create 1586055389
- modify 1595112998
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -21120,7 +21124,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -21157,7 +21161,7 @@ inputs
stat
{
create 1590454796
- modify 1595112370
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -21217,7 +21221,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -21283,7 +21287,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -21349,7 +21353,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -21415,7 +21419,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}
@@ -21452,7 +21456,7 @@ inputs
stat
{
create 1600539740
- modify 1600539847
+ modify 1607303193
author Henry@LAPPY586
access 0777
}
@@ -21491,7 +21495,7 @@ Content-Type: text/plain
{
"___Version___":{
"type":"string",
- "value":"18.0.460"
+ "value":"18.0.597"
}
}