diff --git a/examples/ast/jbfl/complex.hs b/examples/ast/jbfl/complex.hs index a649c3a5..de6989e2 100644 --- a/examples/ast/jbfl/complex.hs +++ b/examples/ast/jbfl/complex.hs @@ -1062,5 +1062,15 @@ RuleSet ) ] ) + , + ( NodePattern + ( fromList [ AnyObjectKey ] ) + , fromList + [ + ( SomeKey Indent + , SomeProperty Indent 2 + ) + ] + ) ] ) diff --git a/examples/formatted_jbeam/fender-complex-jbfl.jbeam b/examples/formatted_jbeam/fender-complex-jbfl.jbeam index 135f298c..76ed8b98 100644 --- a/examples/formatted_jbeam/fender-complex-jbfl.jbeam +++ b/examples/formatted_jbeam/fender-complex-jbfl.jbeam @@ -1,306 +1,306 @@ { - "cot_fender" : { - "information" : { - "authors" : "gittarrgy01", - "name" : "Fenders" - }, - "sounds" : { - "impactMetal" : "event:>Destruction>Props>fender_metal", - "impactGeneric" : "event:>Destruction>Props>fender_generic", - "breakGeneric" : "event:>Destruction>Props>fender_break", - "wind" : false, - "scrapeMetal" : false, - "scrapePlastic" : false - }, - "slotType" : "cot_fender", - "nodes" : [ - ["id", "posX", "posY", "posZ"], - {"nodeWeight" : 0.65}, - {"frictionCoef" : 0.7}, - {"nodeMaterial" : "|NM_METAL"}, - {"collision" : true}, - {"selfCollision" : true}, + "cot_fender" : { + "information" : { + "authors" : "gittarrgy01", + "name" : "Fenders" + }, + "sounds" : { + "impactMetal" : "event:>Destruction>Props>fender_metal", + "impactGeneric" : "event:>Destruction>Props>fender_generic", + "breakGeneric" : "event:>Destruction>Props>fender_break", + "wind" : false, + "scrapeMetal" : false, + "scrapePlastic" : false + }, + "slotType" : "cot_fender", + "nodes" : [ + ["id", "posX", "posY", "posZ"], + {"nodeWeight" : 0.65}, + {"frictionCoef" : 0.7}, + {"nodeMaterial" : "|NM_METAL"}, + {"collision" : true}, + {"selfCollision" : true}, - // Left side - {"group" : "cot_fender_l"}, - ["bfl0", 0.959, -1.762, 0.576], - ["bfl1", 0.855, -1.788, 0.707], - ["bfl2", 0.739, -1.845, 0.716], - ["bfl3", 0.948, -1.435, 0.730], - ["bfl4", 0.756, -1.413, 0.843], - ["bfl5", 0.963, -1.024, 0.112], - ["bfl6", 0.964, -1.072, 0.507], - ["bfl7", 0.778, -1.008, 0.873], - ["bfl8", 0.987, -0.743, 0.109], - ["bfl9", 0.987, -0.744, 0.494], - ["bfl10", 0.812, -0.759, 0.896], + // Left side + {"group" : "cot_fender_l"}, + ["bfl0", 0.959, -1.762, 0.576], + ["bfl1", 0.855, -1.788, 0.707], + ["bfl2", 0.739, -1.845, 0.716], + ["bfl3", 0.948, -1.435, 0.730], + ["bfl4", 0.756, -1.413, 0.843], + ["bfl5", 0.963, -1.024, 0.112], + ["bfl6", 0.964, -1.072, 0.507], + ["bfl7", 0.778, -1.008, 0.873], + ["bfl8", 0.987, -0.743, 0.109], + ["bfl9", 0.987, -0.744, 0.494], + ["bfl10", 0.812, -0.759, 0.896], - // Right side - {"group" : "cot_fender_r"}, - ["bfr0", -0.906, -1.737, 0.578], - ["bfr1", -0.807, -1.769, 0.707], - ["bfr2", -0.691, -1.829, 0.716], - ["bfr3", -0.890, -1.409, 0.729], - ["bfr4", -0.700, -1.397, 0.843], - ["bfr5", -0.899, -1.005, 0.112], - ["bfr6", -0.900, -1.053, 0.508], - ["bfr7", -0.715, -0.991, 0.873], - ["bfr8", -0.916, -0.742, 0.112], - ["bfr9", -0.917, -0.746, 0.494], - ["bfr10", -0.734, -0.746, 0.888], + // Right side + {"group" : "cot_fender_r"}, + ["bfr0", -0.906, -1.737, 0.578], + ["bfr1", -0.807, -1.769, 0.707], + ["bfr2", -0.691, -1.829, 0.716], + ["bfr3", -0.890, -1.409, 0.729], + ["bfr4", -0.700, -1.397, 0.843], + ["bfr5", -0.899, -1.005, 0.112], + ["bfr6", -0.900, -1.053, 0.508], + ["bfr7", -0.715, -0.991, 0.873], + ["bfr8", -0.916, -0.742, 0.112], + ["bfr9", -0.917, -0.746, 0.494], + ["bfr10", -0.734, -0.746, 0.888], - // Support nodes - {"collision" : false}, - {"selfCollision" : false}, - {"nodeWeight" : 1.2}, - {"group" : ""}, - ["bfsl", 0.684, -1.079, 0.507], - ["bfsr", -0.623, -1.064, 0.507] - ], - "beams" : [ - ["id1:", "id2:"], + // Support nodes + {"collision" : false}, + {"selfCollision" : false}, + {"nodeWeight" : 1.2}, + {"group" : ""}, + ["bfsl", 0.684, -1.079, 0.507], + ["bfsr", -0.623, -1.064, 0.507] + ], + "beams" : [ + ["id1:", "id2:"], - // Structural beams - // beamSpring: 451000, beamDamp: 50 - // beamStrength: FLT_MAX - {"beamType" : "|NORMAL"}, - {"beamSpring" : 451000, "beamDamp" : 50}, - {"beamStrength" : "FLT_MAX"}, - {"deformLimitExpansion" : 1.1}, - {"beamDeform" : 6000}, + // Structural beams + // beamSpring: 451000, beamDamp: 50 + // beamStrength: FLT_MAX + {"beamType" : "|NORMAL"}, + {"beamSpring" : 451000, "beamDamp" : 50}, + {"beamStrength" : "FLT_MAX"}, + {"deformLimitExpansion" : 1.1}, + {"beamDeform" : 6000}, - // Front - ["bfr2", "bfr4"], - ["bfr2", "bfr1"], - ["bfr1", "bfr4"], - ["bfl4", "bfl2"], - ["bfl2", "bfl1"], - ["bfl0", "bfl1"], - ["bfl4", "bfl3"], - ["bfl0", "bfl3"], - ["bfr1", "bfr0"], - ["bfr4", "bfr3"], - ["bfr0", "bfr3"], - ["bfl4", "bfl1"], + // Front + ["bfr2", "bfr4"], + ["bfr2", "bfr1"], + ["bfr1", "bfr4"], + ["bfl4", "bfl2"], + ["bfl2", "bfl1"], + ["bfl0", "bfl1"], + ["bfl4", "bfl3"], + ["bfl0", "bfl3"], + ["bfr1", "bfr0"], + ["bfr4", "bfr3"], + ["bfr0", "bfr3"], + ["bfl4", "bfl1"], - // Middle - {"beamDeform" : 12000}, - ["bfl6", "bfl3"], - ["bfr6", "bfr3"], - ["bfl4", "bfl7"], - ["bfr4", "bfr7"], + // Middle + {"beamDeform" : 12000}, + ["bfl6", "bfl3"], + ["bfr6", "bfr3"], + ["bfl4", "bfl7"], + ["bfr4", "bfr7"], - // Rear - ["bfl7", "bfl10"], - ["bfl5", "bfl6"], - ["bfl7", "bfl6"], - ["bfl5", "bfl8"], - ["bfl6", "bfl9"], - ["bfl8", "bfl9"], - ["bfl10", "bfl9"], - ["bfr7", "bfr10"], - ["bfr6", "bfr5"], - ["bfr6", "bfr7"], - ["bfr5", "bfr8"], - ["bfr6", "bfr9"], - ["bfr8", "bfr9"], - ["bfr10", "bfr9"], + // Rear + ["bfl7", "bfl10"], + ["bfl5", "bfl6"], + ["bfl7", "bfl6"], + ["bfl5", "bfl8"], + ["bfl6", "bfl9"], + ["bfl8", "bfl9"], + ["bfl10", "bfl9"], + ["bfr7", "bfr10"], + ["bfr6", "bfr5"], + ["bfr6", "bfr7"], + ["bfr5", "bfr8"], + ["bfr6", "bfr9"], + ["bfr8", "bfr9"], + ["bfr10", "bfr9"], - // Crossing beams - {"deformLimitExpansion" : ""}, + // Crossing beams + {"deformLimitExpansion" : ""}, - // Front - ["bfl0", "bfl4"], - ["bfl4", "bfl6"], - ["bfl7", "bfl3"], - ["bfr4", "bfr6"], - ["bfr7", "bfr3"], - ["bfl1", "bfl3"], - ["bfr3", "bfr1"], - ["bfr4", "bfr0"], + // Front + ["bfl0", "bfl4"], + ["bfl4", "bfl6"], + ["bfl7", "bfl3"], + ["bfr4", "bfr6"], + ["bfr7", "bfr3"], + ["bfl1", "bfl3"], + ["bfr3", "bfr1"], + ["bfr4", "bfr0"], - // Rear - ["bfl6", "bfl10"], - ["bfl7", "bfl9"], - ["bfl5", "bfl9"], - ["bfl6", "bfl8"], - ["bfr6", "bfr10"], - ["bfr7", "bfr9"], - ["bfr5", "bfr9"], - ["bfr6", "bfr8"], + // Rear + ["bfl6", "bfl10"], + ["bfl7", "bfl9"], + ["bfl5", "bfl9"], + ["bfl6", "bfl8"], + ["bfr6", "bfr10"], + ["bfr7", "bfr9"], + ["bfr5", "bfr9"], + ["bfr6", "bfr8"], - // Support beams - ["bfl2", "bfsl"], - ["bfl6", "bfsl"], - ["bfl5", "bfsl"], - ["bfl3", "bfsl"], - ["bfl0", "bfsl"], - ["bfl1", "bfsl"], - ["bfl4", "bfsl"], - ["bfl7", "bfsl"], - ["bfl8", "bfsl"], - ["bfl9", "bfsl"], - ["bfl10", "bfsl"], - ["bfr2", "bfsr"], - ["bfr6", "bfsr"], - ["bfr5", "bfsr"], - ["bfr3", "bfsr"], - ["bfr0", "bfsr"], - ["bfr1", "bfsr"], - ["bfr4", "bfsr"], - ["bfr7", "bfsr"], - ["bfr8", "bfsr"], - ["bfr9", "bfsr"], - ["bfr10", "bfsr"], + // Support beams + ["bfl2", "bfsl"], + ["bfl6", "bfsl"], + ["bfl5", "bfsl"], + ["bfl3", "bfsl"], + ["bfl0", "bfsl"], + ["bfl1", "bfsl"], + ["bfl4", "bfsl"], + ["bfl7", "bfsl"], + ["bfl8", "bfsl"], + ["bfl9", "bfsl"], + ["bfl10", "bfsl"], + ["bfr2", "bfsr"], + ["bfr6", "bfsr"], + ["bfr5", "bfsr"], + ["bfr3", "bfsr"], + ["bfr0", "bfsr"], + ["bfr1", "bfsr"], + ["bfr4", "bfsr"], + ["bfr7", "bfsr"], + ["bfr8", "bfsr"], + ["bfr9", "bfsr"], + ["bfr10", "bfsr"], - // Front rigid - {"beamSpring" : 350000, "beamDamp" : 115}, - {"beamDeform" : 900}, + // Front rigid + {"beamSpring" : 350000, "beamDamp" : 115}, + {"beamDeform" : 900}, - // Left side - ["bfl3", "bfl9"], - ["bfl4", "bfl10"], + // Left side + ["bfl3", "bfl9"], + ["bfl4", "bfl10"], - // Right side - ["bfr3", "bfr9"], - ["bfr4", "bfr10"], + // Right side + ["bfr3", "bfr9"], + ["bfr4", "bfr10"], - // Attachment beams - {"beamType" : "|NORMAL"}, - {"beamSpring" : 501000, "beamDamp" : 75, "beamStrength" : 20000, "beamDeform" : 1000}, - {"deformLimitExpansion" : ""}, + // Attachment beams + {"beamType" : "|NORMAL"}, + {"beamSpring" : 501000, "beamDamp" : 75, "beamStrength" : 20000, "beamDeform" : 1000}, + {"deformLimitExpansion" : ""}, - // Frame + // Frame - // Left side + // Left side - // Front - {"breakGroup" : "fender_l"}, - {"breakGroupType" : 1}, - ["bfl0", "fr17"], - ["bfl0", "fr9"], - ["bfl1", "fr17"], - ["bfl1", "fr9"], - ["bfl2", "fr17"], - ["bfl2", "fr9"], + // Front + {"breakGroup" : "fender_l"}, + {"breakGroupType" : 1}, + ["bfl0", "fr17"], + ["bfl0", "fr9"], + ["bfl1", "fr17"], + ["bfl1", "fr9"], + ["bfl2", "fr17"], + ["bfl2", "fr9"], - // Middle - {"beamDeform" : 18000}, - {"beamStrength" : 4000}, - {"breakGroupType" : 1}, - ["bfl3", "fr17"], - ["bfl4", "fr17"], - ["bfl4", "fr9"], - {"breakGroupType" : 0}, + // Middle + {"beamDeform" : 18000}, + {"beamStrength" : 4000}, + {"breakGroupType" : 1}, + ["bfl3", "fr17"], + ["bfl4", "fr17"], + ["bfl4", "fr9"], + {"breakGroupType" : 0}, - // Rear - {"beamStrength" : 16000, "beamDeform" : 12000}, - ["bfl5", "fr18"], - ["bfl5", "fr27"], - ["bfl6", "fr17"], - ["bfl6", "fr21"], - ["bfl7", "fr17"], - ["bfl7", "fr29"], - ["bfl8", "fr18"], - ["bfl8", "fr27"], - ["bfl9", "fr28"], - ["bfl9", "fr21"], - ["bfl10", "fr17"], - ["bfl10", "fr29"], + // Rear + {"beamStrength" : 16000, "beamDeform" : 12000}, + ["bfl5", "fr18"], + ["bfl5", "fr27"], + ["bfl6", "fr17"], + ["bfl6", "fr21"], + ["bfl7", "fr17"], + ["bfl7", "fr29"], + ["bfl8", "fr18"], + ["bfl8", "fr27"], + ["bfl9", "fr28"], + ["bfl9", "fr21"], + ["bfl10", "fr17"], + ["bfl10", "fr29"], - // Right side + // Right side - // Front - {"beamStrength" : 20000, "beamDeform" : 1000}, - {"breakGroup" : "fender_r"}, - {"breakGroupType" : 1}, - ["bfl0", "rl_f8"], - ["bfl0", "rl_f6"], - ["bfl1", "rl_f6"], - ["bfl2", "rl_f6"], - ["bfr0", "rl_f9"], - ["bfr0", "rl_f7"], - ["bfr1", "rl_f7"], - ["bfr2", "rl_f7"], + // Front + {"beamStrength" : 20000, "beamDeform" : 1000}, + {"breakGroup" : "fender_r"}, + {"breakGroupType" : 1}, + ["bfl0", "rl_f8"], + ["bfl0", "rl_f6"], + ["bfl1", "rl_f6"], + ["bfl2", "rl_f6"], + ["bfr0", "rl_f9"], + ["bfr0", "rl_f7"], + ["bfr1", "rl_f7"], + ["bfr2", "rl_f7"], - // Middle - {"beamDeform" : 18000}, - {"beamStrength" : 4000}, - {"breakGroupType" : 1}, - ["bfl3", "rl_f10"], - ["bfl3", "rl_f11"], - ["bfl4", "rl_f11"], - ["bfr3", "rl_f12"], - ["bfr3", "rl_f13"], - ["bfr4", "rl_f13"], - {"breakGroupType" : 0}, + // Middle + {"beamDeform" : 18000}, + {"beamStrength" : 4000}, + {"breakGroupType" : 1}, + ["bfl3", "rl_f10"], + ["bfl3", "rl_f11"], + ["bfl4", "rl_f11"], + ["bfr3", "rl_f12"], + ["bfr3", "rl_f13"], + ["bfr4", "rl_f13"], + {"breakGroupType" : 0}, - // Rear - {"beamStrength" : 16000, "beamDeform" : 12000}, - ["bfl5", "rl_f15"], - ["bfl5", "rl_f16"], - ["bfl6", "rl_f15"], - ["bfl6", "rl_f16"], - ["bfl8", "rl_f15"], - ["bfl8", "rl_f16"], - ["bfl9", "rl_f15"], - ["bfl9", "rl_f16"], - ["bfl7", "rl_f16"], - ["bfl10", "rl_f16"], - ["bfr5", "rl_f17"], - ["bfr5", "rl_f18"], - ["bfr6", "rl_f17"], - ["bfr6", "rl_f18"], - ["bfr8", "rl_f17"], - ["bfr8", "rl_f18"], - ["bfr9", "rl_f17"], - ["bfr9", "rl_f18"], - ["bfr7", "rl_f18"], - ["bfr10", "rl_f18"], - {"beamStrength" : 16000, "beamDeform" : "FLT_MAX"}, + // Rear + {"beamStrength" : 16000, "beamDeform" : 12000}, + ["bfl5", "rl_f15"], + ["bfl5", "rl_f16"], + ["bfl6", "rl_f15"], + ["bfl6", "rl_f16"], + ["bfl8", "rl_f15"], + ["bfl8", "rl_f16"], + ["bfl9", "rl_f15"], + ["bfl9", "rl_f16"], + ["bfl7", "rl_f16"], + ["bfl10", "rl_f16"], + ["bfr5", "rl_f17"], + ["bfr5", "rl_f18"], + ["bfr6", "rl_f17"], + ["bfr6", "rl_f18"], + ["bfr8", "rl_f17"], + ["bfr8", "rl_f18"], + ["bfr9", "rl_f17"], + ["bfr9", "rl_f18"], + ["bfr7", "rl_f18"], + ["bfr10", "rl_f18"], + {"beamStrength" : 16000, "beamDeform" : "FLT_MAX"}, - // Body + // Body - // Left side - {"breakGroup" : "fender_l"}, - ["bfl8", "mbl0"], - ["bfl9", "mbl1"], - ["bfl10", "mbl2"], + // Left side + {"breakGroup" : "fender_l"}, + ["bfl8", "mbl0"], + ["bfl9", "mbl1"], + ["bfl10", "mbl2"], - // Right side - {"breakGroup" : "fender_r"}, - ["bfr8", "mbr0"], - ["bfr9", "mbr1"], - ["bfr10", "mbr2"], - {"breakGroup" : "", "breakGroupType" : "", "beamType" : "|NORMAL"} - ], - "triangles" : [ - ["id1:", "id2:", "id3:"], - ["bfl3", "bfl4", "bfl1"], - ["bfl0", "bfl3", "bfl1"], - ["bfl4", "bfl2", "bfl1"], - ["bfl4", "bfl3", "bfl7"], - ["bfl6", "bfl7", "bfl3"], - ["bfl10", "bfl7", "bfl6"], - ["bfl9", "bfl10", "bfl6"], - ["bfl5", "bfl8", "bfl6"], - ["bfl9", "bfl6", "bfl8"], - ["bfr4", "bfr1", "bfr2"], - ["bfr3", "bfr1", "bfr4"], - ["bfr0", "bfr1", "bfr3"], - ["bfr6", "bfr3", "bfr7"], - ["bfr4", "bfr7", "bfr3"], - ["bfr10", "bfr6", "bfr7"], - ["bfr9", "bfr6", "bfr10"], - ["bfr9", "bfr8", "bfr6"], - ["bfr5", "bfr6", "bfr8"] - ], - "flexbodies" : [ - ["mesh", "[group]:", "nonFlexMaterials"], - ["impala_fender_l", ["cot_fender_l"]], - ["impala_fender_inter_l", ["cot_fender_l"]], - ["impala_fender_r", ["cot_fender_r"]], - ["impala_fender_inter_r", ["cot_fender_r"]] - ] - } + // Right side + {"breakGroup" : "fender_r"}, + ["bfr8", "mbr0"], + ["bfr9", "mbr1"], + ["bfr10", "mbr2"], + {"breakGroup" : "", "breakGroupType" : "", "beamType" : "|NORMAL"} + ], + "triangles" : [ + ["id1:", "id2:", "id3:"], + ["bfl3", "bfl4", "bfl1"], + ["bfl0", "bfl3", "bfl1"], + ["bfl4", "bfl2", "bfl1"], + ["bfl4", "bfl3", "bfl7"], + ["bfl6", "bfl7", "bfl3"], + ["bfl10", "bfl7", "bfl6"], + ["bfl9", "bfl10", "bfl6"], + ["bfl5", "bfl8", "bfl6"], + ["bfl9", "bfl6", "bfl8"], + ["bfr4", "bfr1", "bfr2"], + ["bfr3", "bfr1", "bfr4"], + ["bfr0", "bfr1", "bfr3"], + ["bfr6", "bfr3", "bfr7"], + ["bfr4", "bfr7", "bfr3"], + ["bfr10", "bfr6", "bfr7"], + ["bfr9", "bfr6", "bfr10"], + ["bfr9", "bfr8", "bfr6"], + ["bfr5", "bfr6", "bfr8"] + ], + "flexbodies" : [ + ["mesh", "[group]:", "nonFlexMaterials"], + ["impala_fender_l", ["cot_fender_l"]], + ["impala_fender_inter_l", ["cot_fender_l"]], + ["impala_fender_r", ["cot_fender_r"]], + ["impala_fender_inter_r", ["cot_fender_r"]] + ] + } } diff --git a/examples/formatted_jbeam/fender-minimal-jbfl.jbeam b/examples/formatted_jbeam/fender-minimal-jbfl.jbeam index 135f298c..0a3ec87f 100644 --- a/examples/formatted_jbeam/fender-minimal-jbfl.jbeam +++ b/examples/formatted_jbeam/fender-minimal-jbfl.jbeam @@ -1,306 +1,306 @@ { - "cot_fender" : { - "information" : { - "authors" : "gittarrgy01", - "name" : "Fenders" - }, - "sounds" : { - "impactMetal" : "event:>Destruction>Props>fender_metal", - "impactGeneric" : "event:>Destruction>Props>fender_generic", - "breakGeneric" : "event:>Destruction>Props>fender_break", - "wind" : false, - "scrapeMetal" : false, - "scrapePlastic" : false - }, - "slotType" : "cot_fender", - "nodes" : [ - ["id", "posX", "posY", "posZ"], - {"nodeWeight" : 0.65}, - {"frictionCoef" : 0.7}, - {"nodeMaterial" : "|NM_METAL"}, - {"collision" : true}, - {"selfCollision" : true}, + "cot_fender" : { + "information" : { + "authors" : "gittarrgy01", + "name" : "Fenders" + }, + "sounds" : { + "impactMetal" : "event:>Destruction>Props>fender_metal", + "impactGeneric" : "event:>Destruction>Props>fender_generic", + "breakGeneric" : "event:>Destruction>Props>fender_break", + "wind" : false, + "scrapeMetal" : false, + "scrapePlastic" : false + }, + "slotType" : "cot_fender", + "nodes" : [ + ["id", "posX", "posY", "posZ"], + {"nodeWeight" : 0.65}, + {"frictionCoef" : 0.7}, + {"nodeMaterial" : "|NM_METAL"}, + {"collision" : true}, + {"selfCollision" : true}, - // Left side - {"group" : "cot_fender_l"}, - ["bfl0", 0.959, -1.762, 0.576], - ["bfl1", 0.855, -1.788, 0.707], - ["bfl2", 0.739, -1.845, 0.716], - ["bfl3", 0.948, -1.435, 0.730], - ["bfl4", 0.756, -1.413, 0.843], - ["bfl5", 0.963, -1.024, 0.112], - ["bfl6", 0.964, -1.072, 0.507], - ["bfl7", 0.778, -1.008, 0.873], - ["bfl8", 0.987, -0.743, 0.109], - ["bfl9", 0.987, -0.744, 0.494], - ["bfl10", 0.812, -0.759, 0.896], + // Left side + {"group" : "cot_fender_l"}, + ["bfl0", 0.959, -1.762, 0.576], + ["bfl1", 0.855, -1.788, 0.707], + ["bfl2", 0.739, -1.845, 0.716], + ["bfl3", 0.948, -1.435, 0.730], + ["bfl4", 0.756, -1.413, 0.843], + ["bfl5", 0.963, -1.024, 0.112], + ["bfl6", 0.964, -1.072, 0.507], + ["bfl7", 0.778, -1.008, 0.873], + ["bfl8", 0.987, -0.743, 0.109], + ["bfl9", 0.987, -0.744, 0.494], + ["bfl10", 0.812, -0.759, 0.896], - // Right side - {"group" : "cot_fender_r"}, - ["bfr0", -0.906, -1.737, 0.578], - ["bfr1", -0.807, -1.769, 0.707], - ["bfr2", -0.691, -1.829, 0.716], - ["bfr3", -0.890, -1.409, 0.729], - ["bfr4", -0.700, -1.397, 0.843], - ["bfr5", -0.899, -1.005, 0.112], - ["bfr6", -0.900, -1.053, 0.508], - ["bfr7", -0.715, -0.991, 0.873], - ["bfr8", -0.916, -0.742, 0.112], - ["bfr9", -0.917, -0.746, 0.494], - ["bfr10", -0.734, -0.746, 0.888], + // Right side + {"group" : "cot_fender_r"}, + ["bfr0", -0.906, -1.737, 0.578], + ["bfr1", -0.807, -1.769, 0.707], + ["bfr2", -0.691, -1.829, 0.716], + ["bfr3", -0.890, -1.409, 0.729], + ["bfr4", -0.700, -1.397, 0.843], + ["bfr5", -0.899, -1.005, 0.112], + ["bfr6", -0.900, -1.053, 0.508], + ["bfr7", -0.715, -0.991, 0.873], + ["bfr8", -0.916, -0.742, 0.112], + ["bfr9", -0.917, -0.746, 0.494], + ["bfr10", -0.734, -0.746, 0.888], - // Support nodes - {"collision" : false}, - {"selfCollision" : false}, - {"nodeWeight" : 1.2}, - {"group" : ""}, - ["bfsl", 0.684, -1.079, 0.507], - ["bfsr", -0.623, -1.064, 0.507] - ], - "beams" : [ - ["id1:", "id2:"], + // Support nodes + {"collision" : false}, + {"selfCollision" : false}, + {"nodeWeight" : 1.2}, + {"group" : ""}, + ["bfsl", 0.684, -1.079, 0.507], + ["bfsr", -0.623, -1.064, 0.507] + ], + "beams" : [ + ["id1:", "id2:"], - // Structural beams - // beamSpring: 451000, beamDamp: 50 - // beamStrength: FLT_MAX - {"beamType" : "|NORMAL"}, - {"beamSpring" : 451000, "beamDamp" : 50}, - {"beamStrength" : "FLT_MAX"}, - {"deformLimitExpansion" : 1.1}, - {"beamDeform" : 6000}, + // Structural beams + // beamSpring: 451000, beamDamp: 50 + // beamStrength: FLT_MAX + {"beamType" : "|NORMAL"}, + {"beamSpring" : 451000, "beamDamp" : 50}, + {"beamStrength" : "FLT_MAX"}, + {"deformLimitExpansion" : 1.1}, + {"beamDeform" : 6000}, - // Front - ["bfr2", "bfr4"], - ["bfr2", "bfr1"], - ["bfr1", "bfr4"], - ["bfl4", "bfl2"], - ["bfl2", "bfl1"], - ["bfl0", "bfl1"], - ["bfl4", "bfl3"], - ["bfl0", "bfl3"], - ["bfr1", "bfr0"], - ["bfr4", "bfr3"], - ["bfr0", "bfr3"], - ["bfl4", "bfl1"], + // Front + ["bfr2", "bfr4"], + ["bfr2", "bfr1"], + ["bfr1", "bfr4"], + ["bfl4", "bfl2"], + ["bfl2", "bfl1"], + ["bfl0", "bfl1"], + ["bfl4", "bfl3"], + ["bfl0", "bfl3"], + ["bfr1", "bfr0"], + ["bfr4", "bfr3"], + ["bfr0", "bfr3"], + ["bfl4", "bfl1"], - // Middle - {"beamDeform" : 12000}, - ["bfl6", "bfl3"], - ["bfr6", "bfr3"], - ["bfl4", "bfl7"], - ["bfr4", "bfr7"], + // Middle + {"beamDeform" : 12000}, + ["bfl6", "bfl3"], + ["bfr6", "bfr3"], + ["bfl4", "bfl7"], + ["bfr4", "bfr7"], - // Rear - ["bfl7", "bfl10"], - ["bfl5", "bfl6"], - ["bfl7", "bfl6"], - ["bfl5", "bfl8"], - ["bfl6", "bfl9"], - ["bfl8", "bfl9"], - ["bfl10", "bfl9"], - ["bfr7", "bfr10"], - ["bfr6", "bfr5"], - ["bfr6", "bfr7"], - ["bfr5", "bfr8"], - ["bfr6", "bfr9"], - ["bfr8", "bfr9"], - ["bfr10", "bfr9"], + // Rear + ["bfl7", "bfl10"], + ["bfl5", "bfl6"], + ["bfl7", "bfl6"], + ["bfl5", "bfl8"], + ["bfl6", "bfl9"], + ["bfl8", "bfl9"], + ["bfl10", "bfl9"], + ["bfr7", "bfr10"], + ["bfr6", "bfr5"], + ["bfr6", "bfr7"], + ["bfr5", "bfr8"], + ["bfr6", "bfr9"], + ["bfr8", "bfr9"], + ["bfr10", "bfr9"], - // Crossing beams - {"deformLimitExpansion" : ""}, + // Crossing beams + {"deformLimitExpansion" : ""}, - // Front - ["bfl0", "bfl4"], - ["bfl4", "bfl6"], - ["bfl7", "bfl3"], - ["bfr4", "bfr6"], - ["bfr7", "bfr3"], - ["bfl1", "bfl3"], - ["bfr3", "bfr1"], - ["bfr4", "bfr0"], + // Front + ["bfl0", "bfl4"], + ["bfl4", "bfl6"], + ["bfl7", "bfl3"], + ["bfr4", "bfr6"], + ["bfr7", "bfr3"], + ["bfl1", "bfl3"], + ["bfr3", "bfr1"], + ["bfr4", "bfr0"], - // Rear - ["bfl6", "bfl10"], - ["bfl7", "bfl9"], - ["bfl5", "bfl9"], - ["bfl6", "bfl8"], - ["bfr6", "bfr10"], - ["bfr7", "bfr9"], - ["bfr5", "bfr9"], - ["bfr6", "bfr8"], + // Rear + ["bfl6", "bfl10"], + ["bfl7", "bfl9"], + ["bfl5", "bfl9"], + ["bfl6", "bfl8"], + ["bfr6", "bfr10"], + ["bfr7", "bfr9"], + ["bfr5", "bfr9"], + ["bfr6", "bfr8"], - // Support beams - ["bfl2", "bfsl"], - ["bfl6", "bfsl"], - ["bfl5", "bfsl"], - ["bfl3", "bfsl"], - ["bfl0", "bfsl"], - ["bfl1", "bfsl"], - ["bfl4", "bfsl"], - ["bfl7", "bfsl"], - ["bfl8", "bfsl"], - ["bfl9", "bfsl"], - ["bfl10", "bfsl"], - ["bfr2", "bfsr"], - ["bfr6", "bfsr"], - ["bfr5", "bfsr"], - ["bfr3", "bfsr"], - ["bfr0", "bfsr"], - ["bfr1", "bfsr"], - ["bfr4", "bfsr"], - ["bfr7", "bfsr"], - ["bfr8", "bfsr"], - ["bfr9", "bfsr"], - ["bfr10", "bfsr"], + // Support beams + ["bfl2", "bfsl"], + ["bfl6", "bfsl"], + ["bfl5", "bfsl"], + ["bfl3", "bfsl"], + ["bfl0", "bfsl"], + ["bfl1", "bfsl"], + ["bfl4", "bfsl"], + ["bfl7", "bfsl"], + ["bfl8", "bfsl"], + ["bfl9", "bfsl"], + ["bfl10", "bfsl"], + ["bfr2", "bfsr"], + ["bfr6", "bfsr"], + ["bfr5", "bfsr"], + ["bfr3", "bfsr"], + ["bfr0", "bfsr"], + ["bfr1", "bfsr"], + ["bfr4", "bfsr"], + ["bfr7", "bfsr"], + ["bfr8", "bfsr"], + ["bfr9", "bfsr"], + ["bfr10", "bfsr"], - // Front rigid - {"beamSpring" : 350000, "beamDamp" : 115}, - {"beamDeform" : 900}, + // Front rigid + {"beamSpring" : 350000, "beamDamp" : 115}, + {"beamDeform" : 900}, - // Left side - ["bfl3", "bfl9"], - ["bfl4", "bfl10"], + // Left side + ["bfl3", "bfl9"], + ["bfl4", "bfl10"], - // Right side - ["bfr3", "bfr9"], - ["bfr4", "bfr10"], + // Right side + ["bfr3", "bfr9"], + ["bfr4", "bfr10"], - // Attachment beams - {"beamType" : "|NORMAL"}, - {"beamSpring" : 501000, "beamDamp" : 75, "beamStrength" : 20000, "beamDeform" : 1000}, - {"deformLimitExpansion" : ""}, + // Attachment beams + {"beamType" : "|NORMAL"}, + {"beamSpring" : 501000, "beamDamp" : 75, "beamStrength" : 20000, "beamDeform" : 1000}, + {"deformLimitExpansion" : ""}, - // Frame + // Frame - // Left side + // Left side - // Front - {"breakGroup" : "fender_l"}, - {"breakGroupType" : 1}, - ["bfl0", "fr17"], - ["bfl0", "fr9"], - ["bfl1", "fr17"], - ["bfl1", "fr9"], - ["bfl2", "fr17"], - ["bfl2", "fr9"], + // Front + {"breakGroup" : "fender_l"}, + {"breakGroupType" : 1}, + ["bfl0", "fr17"], + ["bfl0", "fr9"], + ["bfl1", "fr17"], + ["bfl1", "fr9"], + ["bfl2", "fr17"], + ["bfl2", "fr9"], - // Middle - {"beamDeform" : 18000}, - {"beamStrength" : 4000}, - {"breakGroupType" : 1}, - ["bfl3", "fr17"], - ["bfl4", "fr17"], - ["bfl4", "fr9"], - {"breakGroupType" : 0}, + // Middle + {"beamDeform" : 18000}, + {"beamStrength" : 4000}, + {"breakGroupType" : 1}, + ["bfl3", "fr17"], + ["bfl4", "fr17"], + ["bfl4", "fr9"], + {"breakGroupType" : 0}, - // Rear - {"beamStrength" : 16000, "beamDeform" : 12000}, - ["bfl5", "fr18"], - ["bfl5", "fr27"], - ["bfl6", "fr17"], - ["bfl6", "fr21"], - ["bfl7", "fr17"], - ["bfl7", "fr29"], - ["bfl8", "fr18"], - ["bfl8", "fr27"], - ["bfl9", "fr28"], - ["bfl9", "fr21"], - ["bfl10", "fr17"], - ["bfl10", "fr29"], + // Rear + {"beamStrength" : 16000, "beamDeform" : 12000}, + ["bfl5", "fr18"], + ["bfl5", "fr27"], + ["bfl6", "fr17"], + ["bfl6", "fr21"], + ["bfl7", "fr17"], + ["bfl7", "fr29"], + ["bfl8", "fr18"], + ["bfl8", "fr27"], + ["bfl9", "fr28"], + ["bfl9", "fr21"], + ["bfl10", "fr17"], + ["bfl10", "fr29"], - // Right side + // Right side - // Front - {"beamStrength" : 20000, "beamDeform" : 1000}, - {"breakGroup" : "fender_r"}, - {"breakGroupType" : 1}, - ["bfl0", "rl_f8"], - ["bfl0", "rl_f6"], - ["bfl1", "rl_f6"], - ["bfl2", "rl_f6"], - ["bfr0", "rl_f9"], - ["bfr0", "rl_f7"], - ["bfr1", "rl_f7"], - ["bfr2", "rl_f7"], + // Front + {"beamStrength" : 20000, "beamDeform" : 1000}, + {"breakGroup" : "fender_r"}, + {"breakGroupType" : 1}, + ["bfl0", "rl_f8"], + ["bfl0", "rl_f6"], + ["bfl1", "rl_f6"], + ["bfl2", "rl_f6"], + ["bfr0", "rl_f9"], + ["bfr0", "rl_f7"], + ["bfr1", "rl_f7"], + ["bfr2", "rl_f7"], - // Middle - {"beamDeform" : 18000}, - {"beamStrength" : 4000}, - {"breakGroupType" : 1}, - ["bfl3", "rl_f10"], - ["bfl3", "rl_f11"], - ["bfl4", "rl_f11"], - ["bfr3", "rl_f12"], - ["bfr3", "rl_f13"], - ["bfr4", "rl_f13"], - {"breakGroupType" : 0}, + // Middle + {"beamDeform" : 18000}, + {"beamStrength" : 4000}, + {"breakGroupType" : 1}, + ["bfl3", "rl_f10"], + ["bfl3", "rl_f11"], + ["bfl4", "rl_f11"], + ["bfr3", "rl_f12"], + ["bfr3", "rl_f13"], + ["bfr4", "rl_f13"], + {"breakGroupType" : 0}, - // Rear - {"beamStrength" : 16000, "beamDeform" : 12000}, - ["bfl5", "rl_f15"], - ["bfl5", "rl_f16"], - ["bfl6", "rl_f15"], - ["bfl6", "rl_f16"], - ["bfl8", "rl_f15"], - ["bfl8", "rl_f16"], - ["bfl9", "rl_f15"], - ["bfl9", "rl_f16"], - ["bfl7", "rl_f16"], - ["bfl10", "rl_f16"], - ["bfr5", "rl_f17"], - ["bfr5", "rl_f18"], - ["bfr6", "rl_f17"], - ["bfr6", "rl_f18"], - ["bfr8", "rl_f17"], - ["bfr8", "rl_f18"], - ["bfr9", "rl_f17"], - ["bfr9", "rl_f18"], - ["bfr7", "rl_f18"], - ["bfr10", "rl_f18"], - {"beamStrength" : 16000, "beamDeform" : "FLT_MAX"}, + // Rear + {"beamStrength" : 16000, "beamDeform" : 12000}, + ["bfl5", "rl_f15"], + ["bfl5", "rl_f16"], + ["bfl6", "rl_f15"], + ["bfl6", "rl_f16"], + ["bfl8", "rl_f15"], + ["bfl8", "rl_f16"], + ["bfl9", "rl_f15"], + ["bfl9", "rl_f16"], + ["bfl7", "rl_f16"], + ["bfl10", "rl_f16"], + ["bfr5", "rl_f17"], + ["bfr5", "rl_f18"], + ["bfr6", "rl_f17"], + ["bfr6", "rl_f18"], + ["bfr8", "rl_f17"], + ["bfr8", "rl_f18"], + ["bfr9", "rl_f17"], + ["bfr9", "rl_f18"], + ["bfr7", "rl_f18"], + ["bfr10", "rl_f18"], + {"beamStrength" : 16000, "beamDeform" : "FLT_MAX"}, - // Body + // Body - // Left side - {"breakGroup" : "fender_l"}, - ["bfl8", "mbl0"], - ["bfl9", "mbl1"], - ["bfl10", "mbl2"], + // Left side + {"breakGroup" : "fender_l"}, + ["bfl8", "mbl0"], + ["bfl9", "mbl1"], + ["bfl10", "mbl2"], - // Right side - {"breakGroup" : "fender_r"}, - ["bfr8", "mbr0"], - ["bfr9", "mbr1"], - ["bfr10", "mbr2"], - {"breakGroup" : "", "breakGroupType" : "", "beamType" : "|NORMAL"} - ], - "triangles" : [ - ["id1:", "id2:", "id3:"], - ["bfl3", "bfl4", "bfl1"], - ["bfl0", "bfl3", "bfl1"], - ["bfl4", "bfl2", "bfl1"], - ["bfl4", "bfl3", "bfl7"], - ["bfl6", "bfl7", "bfl3"], - ["bfl10", "bfl7", "bfl6"], - ["bfl9", "bfl10", "bfl6"], - ["bfl5", "bfl8", "bfl6"], - ["bfl9", "bfl6", "bfl8"], - ["bfr4", "bfr1", "bfr2"], - ["bfr3", "bfr1", "bfr4"], - ["bfr0", "bfr1", "bfr3"], - ["bfr6", "bfr3", "bfr7"], - ["bfr4", "bfr7", "bfr3"], - ["bfr10", "bfr6", "bfr7"], - ["bfr9", "bfr6", "bfr10"], - ["bfr9", "bfr8", "bfr6"], - ["bfr5", "bfr6", "bfr8"] - ], - "flexbodies" : [ - ["mesh", "[group]:", "nonFlexMaterials"], - ["impala_fender_l", ["cot_fender_l"]], - ["impala_fender_inter_l", ["cot_fender_l"]], - ["impala_fender_r", ["cot_fender_r"]], - ["impala_fender_inter_r", ["cot_fender_r"]] - ] - } + // Right side + {"breakGroup" : "fender_r"}, + ["bfr8", "mbr0"], + ["bfr9", "mbr1"], + ["bfr10", "mbr2"], + {"breakGroup" : "", "breakGroupType" : "", "beamType" : "|NORMAL"} + ], + "triangles" : [ + ["id1:", "id2:", "id3:"], + ["bfl3", "bfl4", "bfl1"], + ["bfl0", "bfl3", "bfl1"], + ["bfl4", "bfl2", "bfl1"], + ["bfl4", "bfl3", "bfl7"], + ["bfl6", "bfl7", "bfl3"], + ["bfl10", "bfl7", "bfl6"], + ["bfl9", "bfl10", "bfl6"], + ["bfl5", "bfl8", "bfl6"], + ["bfl9", "bfl6", "bfl8"], + ["bfr4", "bfr1", "bfr2"], + ["bfr3", "bfr1", "bfr4"], + ["bfr0", "bfr1", "bfr3"], + ["bfr6", "bfr3", "bfr7"], + ["bfr4", "bfr7", "bfr3"], + ["bfr10", "bfr6", "bfr7"], + ["bfr9", "bfr6", "bfr10"], + ["bfr9", "bfr8", "bfr6"], + ["bfr5", "bfr6", "bfr8"] + ], + "flexbodies" : [ + ["mesh", "[group]:", "nonFlexMaterials"], + ["impala_fender_l", ["cot_fender_l"]], + ["impala_fender_inter_l", ["cot_fender_l"]], + ["impala_fender_r", ["cot_fender_r"]], + ["impala_fender_inter_r", ["cot_fender_r"]] + ] + } } diff --git a/examples/formatted_jbeam/frame-complex-jbfl.jbeam b/examples/formatted_jbeam/frame-complex-jbfl.jbeam index 7910d485..01f9d222 100644 --- a/examples/formatted_jbeam/frame-complex-jbfl.jbeam +++ b/examples/formatted_jbeam/frame-complex-jbfl.jbeam @@ -1,422 +1,422 @@ { - "chassis_rails" : { - "information" : { - "authors" : "gittarrgy01", - "name" : "" - }, - "slotType" : "main", - /* - The purpose of this file is prove that moving metadata - along with vertices when moving vertices works as intended. - See issue for #69 explanation on the transformation part of the codebase. - */ - // --Nodes-- - "nodes" : [ - ["id", "posX", "posY", "posZ"], - {"group" : "chassis_rails"}, - ["rl_f0", 0.523, -2.098, 0.319], - ["rl_f1", -0.417, -2.098, 0.319], - ["rl_f2", 0.053, -2.095, 0.319], - ["rl_f3", 0.523, -2.093, 0.268], - ["rl_f4", -0.417, -2.093, 0.268], - ["rl_f5", 0.053, -2.090, 0.269], - ["rl_f6", 0.531, -1.724, 0.341], - ["rl_f7", -0.424, -1.724, 0.341], - ["rl_f8", 0.531, -1.721, 0.289], - ["rl_f9", -0.424, -1.721, 0.289], - ["rl_f10", 0.547, -1.350, 0.310], - ["rl_f11", 0.547, -1.350, 0.364], - ["rl_f12", -0.440, -1.350, 0.310], - ["rl_f13", -0.440, -1.350, 0.364], - ["rl_f14", 0.053, -1.314, 0.382], // support for front - ["rl15", 0.790, -0.919, 0.182], - ["rl16", 0.790, -0.919, 0.233], - ["rl17", -0.683, -0.919, 0.182], - ["rl18", -0.683, -0.919, 0.233], - ["rl19", 0.053, -0.024, 0.578], // support - ["rl20", 0.837, 0.002, 0.182], - ["rl21", 0.837, 0.002, 0.233], - ["rl22", 0.415, 0.002, 0.182], - ["rl23", 0.415, 0.002, 0.233], - ["rl24", 0.053, 0.002, 0.182], - ["rl25", 0.053, 0.002, 0.233], - ["rl26", -0.308, 0.002, 0.182], - ["rl27", -0.308, 0.002, 0.233], - ["rl28", -0.730, 0.002, 0.182], - ["rl29", -0.730, 0.002, 0.233], - ["rl30", 0.822, 0.791, 0.182], - ["rl31", 0.822, 0.791, 0.233], - ["rl32", -0.715, 0.791, 0.182], - ["rl33", -0.715, 0.791, 0.233], - ["rl_r34", 0.651, 1.121, 0.628], - ["rl_r35", 0.053, 1.121, 0.628], - ["rl_r36", -0.544, 1.121, 0.628], - ["rl_r37", 0.651, 1.152, 0.565], - ["rl_r38", 0.053, 1.152, 0.565], - ["rl_r39", -0.544, 1.152, 0.565], - ["rl_r40", 0.602, 1.514, 0.566], - ["rl_r41", -0.495, 1.514, 0.566], - ["rl_r42", 0.602, 1.532, 0.623], - ["rl_r43", -0.495, 1.532, 0.623], - ["rl_r44", 0.553, 1.654, 0.359], - ["rl_r45", -0.446, 1.654, 0.359], - ["rl_r46", 0.553, 1.679, 0.448], - ["rl_r47", -0.446, 1.679, 0.448], - ["rl_r48", 0.053, 1.710, 0.565], // support for rear - ["rl_r49", 0.558, 2.284, 0.364], - ["rl_r50", 0.558, 2.284, 0.447], - ["rl_r51", 0.053, 2.284, 0.370], - ["rl_r52", 0.053, 2.284, 0.441], - ["rl_r53", -0.451, 2.284, 0.364], - ["rl_r54", -0.451, 2.284, 0.447], - {"group" : ""} - ], - // --Beams-- - "beams" : [ - ["id1:", "id2:"], + "chassis_rails" : { + "information" : { + "authors" : "gittarrgy01", + "name" : "" + }, + "slotType" : "main", + /* + The purpose of this file is prove that moving metadata + along with vertices when moving vertices works as intended. + See issue for #69 explanation on the transformation part of the codebase. + */ + // --Nodes-- + "nodes" : [ + ["id", "posX", "posY", "posZ"], + {"group" : "chassis_rails"}, + ["rl_f0", 0.523, -2.098, 0.319], + ["rl_f1", -0.417, -2.098, 0.319], + ["rl_f2", 0.053, -2.095, 0.319], + ["rl_f3", 0.523, -2.093, 0.268], + ["rl_f4", -0.417, -2.093, 0.268], + ["rl_f5", 0.053, -2.090, 0.269], + ["rl_f6", 0.531, -1.724, 0.341], + ["rl_f7", -0.424, -1.724, 0.341], + ["rl_f8", 0.531, -1.721, 0.289], + ["rl_f9", -0.424, -1.721, 0.289], + ["rl_f10", 0.547, -1.350, 0.310], + ["rl_f11", 0.547, -1.350, 0.364], + ["rl_f12", -0.440, -1.350, 0.310], + ["rl_f13", -0.440, -1.350, 0.364], + ["rl_f14", 0.053, -1.314, 0.382], // support for front + ["rl15", 0.790, -0.919, 0.182], + ["rl16", 0.790, -0.919, 0.233], + ["rl17", -0.683, -0.919, 0.182], + ["rl18", -0.683, -0.919, 0.233], + ["rl19", 0.053, -0.024, 0.578], // support + ["rl20", 0.837, 0.002, 0.182], + ["rl21", 0.837, 0.002, 0.233], + ["rl22", 0.415, 0.002, 0.182], + ["rl23", 0.415, 0.002, 0.233], + ["rl24", 0.053, 0.002, 0.182], + ["rl25", 0.053, 0.002, 0.233], + ["rl26", -0.308, 0.002, 0.182], + ["rl27", -0.308, 0.002, 0.233], + ["rl28", -0.730, 0.002, 0.182], + ["rl29", -0.730, 0.002, 0.233], + ["rl30", 0.822, 0.791, 0.182], + ["rl31", 0.822, 0.791, 0.233], + ["rl32", -0.715, 0.791, 0.182], + ["rl33", -0.715, 0.791, 0.233], + ["rl_r34", 0.651, 1.121, 0.628], + ["rl_r35", 0.053, 1.121, 0.628], + ["rl_r36", -0.544, 1.121, 0.628], + ["rl_r37", 0.651, 1.152, 0.565], + ["rl_r38", 0.053, 1.152, 0.565], + ["rl_r39", -0.544, 1.152, 0.565], + ["rl_r40", 0.602, 1.514, 0.566], + ["rl_r41", -0.495, 1.514, 0.566], + ["rl_r42", 0.602, 1.532, 0.623], + ["rl_r43", -0.495, 1.532, 0.623], + ["rl_r44", 0.553, 1.654, 0.359], + ["rl_r45", -0.446, 1.654, 0.359], + ["rl_r46", 0.553, 1.679, 0.448], + ["rl_r47", -0.446, 1.679, 0.448], + ["rl_r48", 0.053, 1.710, 0.565], // support for rear + ["rl_r49", 0.558, 2.284, 0.364], + ["rl_r50", 0.558, 2.284, 0.447], + ["rl_r51", 0.053, 2.284, 0.370], + ["rl_r52", 0.053, 2.284, 0.441], + ["rl_r53", -0.451, 2.284, 0.364], + ["rl_r54", -0.451, 2.284, 0.447], + {"group" : ""} + ], + // --Beams-- + "beams" : [ + ["id1:", "id2:"], - // Structural beams - {"beamStrength" : "FLT_MAX", "beamSpring" : "3800000"}, - {"beamDamp" : 130, "deformLimit" : 1.1}, + // Structural beams + {"beamStrength" : "FLT_MAX", "beamSpring" : "3800000"}, + {"beamDamp" : 130, "deformLimit" : 1.1}, - // Front end - {"beamDeform" : 20600, "deformLimit" : 1.1}, - ["rl_f3", "rl_f5"], - ["rl_f0", "rl_f3"], - ["rl_f8", "rl_f3"], - ["rl15", "rl_f10"], - ["rl_f8", "rl_f6"], - ["rl_f11", "rl_f10"], - ["rl_f10", "rl_f8"], - ["rl_f9", "rl_f7"], - ["rl17", "rl_f12"], - ["rl_f6", "rl_f11"], - ["rl_f11", "rl16"], - ["rl_f13", "rl18"], - ["rl_f13", "rl_f12"], - ["rl_f1", "rl_f4"], - ["rl_f2", "rl_f1"], - ["rl_f2", "rl_f5"], - ["rl_f12", "rl_f9"], - ["rl_f7", "rl_f13"], - ["rl_f0", "rl_f6"], - ["rl_f9", "rl_f4"], - ["rl_f2", "rl_f0"], - ["rl_f4", "rl_f5"], - ["rl_f1", "rl_f7"], + // Front end + {"beamDeform" : 20600, "deformLimit" : 1.1}, + ["rl_f3", "rl_f5"], + ["rl_f0", "rl_f3"], + ["rl_f8", "rl_f3"], + ["rl15", "rl_f10"], + ["rl_f8", "rl_f6"], + ["rl_f11", "rl_f10"], + ["rl_f10", "rl_f8"], + ["rl_f9", "rl_f7"], + ["rl17", "rl_f12"], + ["rl_f6", "rl_f11"], + ["rl_f11", "rl16"], + ["rl_f13", "rl18"], + ["rl_f13", "rl_f12"], + ["rl_f1", "rl_f4"], + ["rl_f2", "rl_f1"], + ["rl_f2", "rl_f5"], + ["rl_f12", "rl_f9"], + ["rl_f7", "rl_f13"], + ["rl_f0", "rl_f6"], + ["rl_f9", "rl_f4"], + ["rl_f2", "rl_f0"], + ["rl_f4", "rl_f5"], + ["rl_f1", "rl_f7"], - // Middle - {"beamDeform" : 27000}, - ["rl16", "rl15"], - ["rl20", "rl30"], - ["rl16", "rl23"], - ["rl18", "rl17"], - ["rl17", "rl28"], - ["rl26", "rl17"], - ["rl18", "rl27"], - ["rl26", "rl24"], - ["rl25", "rl24"], - ["rl25", "rl27"], - ["rl21", "rl16"], - ["rl22", "rl15"], - ["rl15", "rl20"], - ["rl29", "rl27"], - ["rl28", "rl32"], - ["rl29", "rl18"], - ["rl22", "rl24"], - ["rl31", "rl21"], - ["rl28", "rl29"], - ["rl32", "rl33"], - ["rl30", "rl31"], - ["rl33", "rl29"], - ["rl30", "rl22"], - ["rl25", "rl23"], - ["rl32", "rl26"], - ["rl20", "rl21"], - ["rl31", "rl23"], - ["rl20", "rl22"], - ["rl21", "rl23"], - ["rl33", "rl27"], - ["rl23", "rl22"], - ["rl28", "rl26"], - ["rl27", "rl26"], + // Middle + {"beamDeform" : 27000}, + ["rl16", "rl15"], + ["rl20", "rl30"], + ["rl16", "rl23"], + ["rl18", "rl17"], + ["rl17", "rl28"], + ["rl26", "rl17"], + ["rl18", "rl27"], + ["rl26", "rl24"], + ["rl25", "rl24"], + ["rl25", "rl27"], + ["rl21", "rl16"], + ["rl22", "rl15"], + ["rl15", "rl20"], + ["rl29", "rl27"], + ["rl28", "rl32"], + ["rl29", "rl18"], + ["rl22", "rl24"], + ["rl31", "rl21"], + ["rl28", "rl29"], + ["rl32", "rl33"], + ["rl30", "rl31"], + ["rl33", "rl29"], + ["rl30", "rl22"], + ["rl25", "rl23"], + ["rl32", "rl26"], + ["rl20", "rl21"], + ["rl31", "rl23"], + ["rl20", "rl22"], + ["rl21", "rl23"], + ["rl33", "rl27"], + ["rl23", "rl22"], + ["rl28", "rl26"], + ["rl27", "rl26"], - // Rear end - {"beamDeform" : 22000}, - ["rl_r37", "rl_r34"], - ["rl_r39", "rl_r41"], - ["rl_r44", "rl_r46"], - ["rl33", "rl_r36"], - ["rl_r46", "rl_r42"], - ["rl31", "rl_r34"], - ["rl_r37", "rl30"], - ["rl_r49", "rl_r51"], - ["rl_r52", "rl_r50"], - ["rl_r50", "rl_r46"], - ["rl_r49", "rl_r50"], - ["rl_r42", "rl_r34"], - ["rl_r40", "rl_r44"], - ["rl_r40", "rl_r42"], - ["rl_r41", "rl_r45"], - ["rl_r39", "rl_r36"], - ["rl_r36", "rl_r35"], - ["rl_r38", "rl_r35"], - ["rl_r53", "rl_r54"], - ["rl_r52", "rl_r54"], - ["rl_r51", "rl_r52"], - ["rl_r45", "rl_r53"], - ["rl_r54", "rl_r47"], - ["rl_r43", "rl_r36"], - ["rl_r53", "rl_r51"], - ["rl_r34", "rl_r35"], - ["rl_r38", "rl_r37"], - ["rl_r45", "rl_r47"], - ["rl_r41", "rl_r43"], - ["rl_r38", "rl_r39"], - ["rl_r39", "rl32"], - ["rl_r47", "rl_r43"], - ["rl_r44", "rl_r49"], - ["rl_r37", "rl_r40"], + // Rear end + {"beamDeform" : 22000}, + ["rl_r37", "rl_r34"], + ["rl_r39", "rl_r41"], + ["rl_r44", "rl_r46"], + ["rl33", "rl_r36"], + ["rl_r46", "rl_r42"], + ["rl31", "rl_r34"], + ["rl_r37", "rl30"], + ["rl_r49", "rl_r51"], + ["rl_r52", "rl_r50"], + ["rl_r50", "rl_r46"], + ["rl_r49", "rl_r50"], + ["rl_r42", "rl_r34"], + ["rl_r40", "rl_r44"], + ["rl_r40", "rl_r42"], + ["rl_r41", "rl_r45"], + ["rl_r39", "rl_r36"], + ["rl_r36", "rl_r35"], + ["rl_r38", "rl_r35"], + ["rl_r53", "rl_r54"], + ["rl_r52", "rl_r54"], + ["rl_r51", "rl_r52"], + ["rl_r45", "rl_r53"], + ["rl_r54", "rl_r47"], + ["rl_r43", "rl_r36"], + ["rl_r53", "rl_r51"], + ["rl_r34", "rl_r35"], + ["rl_r38", "rl_r37"], + ["rl_r45", "rl_r47"], + ["rl_r41", "rl_r43"], + ["rl_r38", "rl_r39"], + ["rl_r39", "rl32"], + ["rl_r47", "rl_r43"], + ["rl_r44", "rl_r49"], + ["rl_r37", "rl_r40"], - // Crossing beams + // Crossing beams - // Front end - {"beamDeform" : 16000}, - ["rl_f4", "rl_f2"], - ["rl_f0", "rl_f8"], - ["rl16", "rl_f10"], - ["rl15", "rl_f11"], - ["rl_f10", "rl_f6"], - ["rl_f11", "rl_f8"], - ["rl_f1", "rl_f5"], - ["rl_f4", "rl_f7"], - ["rl_f1", "rl_f9"], - ["rl_f12", "rl_f7"], - ["rl_f3", "rl_f6"], - ["rl_f0", "rl_f5"], - ["rl_f3", "rl_f2"], - ["rl_f13", "rl_f9"], - ["rl17", "rl_f13"], - ["rl18", "rl_f12"], + // Front end + {"beamDeform" : 16000}, + ["rl_f4", "rl_f2"], + ["rl_f0", "rl_f8"], + ["rl16", "rl_f10"], + ["rl15", "rl_f11"], + ["rl_f10", "rl_f6"], + ["rl_f11", "rl_f8"], + ["rl_f1", "rl_f5"], + ["rl_f4", "rl_f7"], + ["rl_f1", "rl_f9"], + ["rl_f12", "rl_f7"], + ["rl_f3", "rl_f6"], + ["rl_f0", "rl_f5"], + ["rl_f3", "rl_f2"], + ["rl_f13", "rl_f9"], + ["rl17", "rl_f13"], + ["rl18", "rl_f12"], - // Middle - {"beamDeform" : 6500}, - ["rl16", "rl20"], - ["rl15", "rl23"], - ["rl18", "rl28"], - ["rl18", "rl26"], - ["rl17", "rl27"], - ["rl27", "rl24"], - ["rl26", "rl25"], - ["rl31", "rl20"], - ["rl15", "rl21"], - ["rl16", "rl22"], - ["rl32", "rl29"], - ["rl30", "rl21"], - ["rl23", "rl24"], - ["rl32", "rl27"], - ["rl17", "rl29"], - ["rl33", "rl28"], - ["rl29", "rl26"], - ["rl30", "rl23"], - ["rl33", "rl26"], - ["rl22", "rl25"], - ["rl20", "rl23"], - ["rl28", "rl27"], - ["rl31", "rl22"], - ["rl21", "rl22"], + // Middle + {"beamDeform" : 6500}, + ["rl16", "rl20"], + ["rl15", "rl23"], + ["rl18", "rl28"], + ["rl18", "rl26"], + ["rl17", "rl27"], + ["rl27", "rl24"], + ["rl26", "rl25"], + ["rl31", "rl20"], + ["rl15", "rl21"], + ["rl16", "rl22"], + ["rl32", "rl29"], + ["rl30", "rl21"], + ["rl23", "rl24"], + ["rl32", "rl27"], + ["rl17", "rl29"], + ["rl33", "rl28"], + ["rl29", "rl26"], + ["rl30", "rl23"], + ["rl33", "rl26"], + ["rl22", "rl25"], + ["rl20", "rl23"], + ["rl28", "rl27"], + ["rl31", "rl22"], + ["rl21", "rl22"], - // Rear end - {"beamDeform" : 16000}, - ["rl_r54", "rl_r45"], - ["rl32", "rl_r36"], - ["rl_r36", "rl_r41"], - ["rl_r50", "rl_r51"], - ["rl31", "rl_r37"], - ["rl30", "rl_r34"], - ["rl_r46", "rl_r40"], - ["rl_r53", "rl_r47"], - ["rl_r50", "rl_r44"], - ["rl_r49", "rl_r46"], - ["rl_r37", "rl_r42"], - ["rl_r34", "rl_r40"], - ["rl_r34", "rl_r38"], - ["rl33", "rl_r39"], - ["rl_r39", "rl_r35"], - ["rl_r36", "rl_r38"], - ["rl_r53", "rl_r52"], - ["rl_r54", "rl_r51"], - ["rl_r45", "rl_r43"], - ["rl_r47", "rl_r41"], - ["rl_r39", "rl_r43"], - ["rl_r37", "rl_r35"], - ["rl_r49", "rl_r52"], - ["rl_r44", "rl_r42"], + // Rear end + {"beamDeform" : 16000}, + ["rl_r54", "rl_r45"], + ["rl32", "rl_r36"], + ["rl_r36", "rl_r41"], + ["rl_r50", "rl_r51"], + ["rl31", "rl_r37"], + ["rl30", "rl_r34"], + ["rl_r46", "rl_r40"], + ["rl_r53", "rl_r47"], + ["rl_r50", "rl_r44"], + ["rl_r49", "rl_r46"], + ["rl_r37", "rl_r42"], + ["rl_r34", "rl_r40"], + ["rl_r34", "rl_r38"], + ["rl33", "rl_r39"], + ["rl_r39", "rl_r35"], + ["rl_r36", "rl_r38"], + ["rl_r53", "rl_r52"], + ["rl_r54", "rl_r51"], + ["rl_r45", "rl_r43"], + ["rl_r47", "rl_r41"], + ["rl_r39", "rl_r43"], + ["rl_r37", "rl_r35"], + ["rl_r49", "rl_r52"], + ["rl_r44", "rl_r42"], - // Support beams + // Support beams - // Front end - {"beamDeform" : 19000}, - ["rl_f8", "rl_f14"], - ["rl_f9", "rl_f14"], - ["rl_f", "rl_f3"], - ["rl_f10", "rl_f14"], - ["rl_f14", "rl_f13"], - ["rl_f1", "rl_f14"], - ["rl_f0", "rl_f14"], - ["rl_f12", "rl_f14"], - ["rl_f5", "rl_f14"], - ["rl_f14", "rl_f4"], - ["rl_f14", "rl_f6"], - ["rl_f14", "rl_f7"], - ["rl_f14", "rl_f2"], - ["rl_f14", "rl_f11"], + // Front end + {"beamDeform" : 19000}, + ["rl_f8", "rl_f14"], + ["rl_f9", "rl_f14"], + ["rl_f", "rl_f3"], + ["rl_f10", "rl_f14"], + ["rl_f14", "rl_f13"], + ["rl_f1", "rl_f14"], + ["rl_f0", "rl_f14"], + ["rl_f12", "rl_f14"], + ["rl_f5", "rl_f14"], + ["rl_f14", "rl_f4"], + ["rl_f14", "rl_f6"], + ["rl_f14", "rl_f7"], + ["rl_f14", "rl_f2"], + ["rl_f14", "rl_f11"], - // Middle - {"beamDeform" : 11000}, - ["rl27", "rl19"], - ["rl26", "rl19"], - ["rl24", "rl19"], - ["rl23", "rl19"], - ["rl20", "rl19"], - ["rl19", "rl16"], - ["rl19", "rl15"], - ["rl31", "rl19"], - ["rl33", "rl19"], - ["rl28", "rl19"], - ["rl19", "rl25"], - ["rl21", "rl19"], - ["rl22", "rl19"], - ["rl19", "rl32"], - ["rl29", "rl19"], - ["rl19", "rl18"], - ["rl19", "rl17"], - ["rl19", "rl30"], + // Middle + {"beamDeform" : 11000}, + ["rl27", "rl19"], + ["rl26", "rl19"], + ["rl24", "rl19"], + ["rl23", "rl19"], + ["rl20", "rl19"], + ["rl19", "rl16"], + ["rl19", "rl15"], + ["rl31", "rl19"], + ["rl33", "rl19"], + ["rl28", "rl19"], + ["rl19", "rl25"], + ["rl21", "rl19"], + ["rl22", "rl19"], + ["rl19", "rl32"], + ["rl29", "rl19"], + ["rl19", "rl18"], + ["rl19", "rl17"], + ["rl19", "rl30"], - // Rear end - {"beamDeform" : 19000}, - ["rl_r48", "rl_r51"], - ["rl_r48", "rl_r54"], - ["rl_r45", "rl_r48"], - ["rl_r48", "rl_r50"], - ["rl_r48", "rl_r42"], - ["rl_r48", "rl_r47"], - ["rl_r49", "rl_r48"], - ["rl_r35", "rl_r48"], - ["rl_r48", "rl_r43"], - ["rl_r44", "rl_r48"], - ["rl_r53", "rl_r48"], - ["rl_r52", "rl_r48"], - ["rl_r40", "rl_r48"], - ["rl_r48", "rl_r38"], - ["rl_r41", "rl_r48"], - ["rl_r4", "rl_r46"], + // Rear end + {"beamDeform" : 19000}, + ["rl_r48", "rl_r51"], + ["rl_r48", "rl_r54"], + ["rl_r45", "rl_r48"], + ["rl_r48", "rl_r50"], + ["rl_r48", "rl_r42"], + ["rl_r48", "rl_r47"], + ["rl_r49", "rl_r48"], + ["rl_r35", "rl_r48"], + ["rl_r48", "rl_r43"], + ["rl_r44", "rl_r48"], + ["rl_r53", "rl_r48"], + ["rl_r52", "rl_r48"], + ["rl_r40", "rl_r48"], + ["rl_r48", "rl_r38"], + ["rl_r41", "rl_r48"], + ["rl_r4", "rl_r46"], - // Front crush - {"beamDeform" : 8500}, - ["rl17", "rl_f9"], - ["rl15", "rl_f8"] - ], - // --Collision Triangles-- - "triangles" : [ - ["id1:", "id2:", "id3:"], - ["rl_f5", "rl_f3", "rl_f2"], - ["rl_f0", "rl_f2", "rl_f3"], - ["rl_f5", "rl_f2", "rl_f4"], - ["rl_f1", "rl_f4", "rl_f2"], - ["rl_f4", "rl_f1", "rl_f7"], - ["rl_f4", "rl_f7", "rl_f9"], - ["rl_f7", "rl_f13", "rl_f9"], - ["rl_f12", "rl_f9", "rl_f13"], - ["rl_f12", "rl_f13", "rl18"], - ["rl18", "rl17", "rl_f12"], - ["rl_f3", "rl_f6", "rl_f0"], - ["rl_f3", "rl_f8", "rl_f6"], - ["rl_f10", "rl_f11", "rl_f8"], - ["rl_f6", "rl_f8", "rl_f11"], - ["rl_f10", "rl16", "rl_f11"], - ["rl16", "rl_f10", "rl15"], - ["rl15", "rl20", "rl16"], - ["rl21", "rl16", "rl20"], - ["rl30", "rl21", "rl20"], - ["rl31", "rl21", "rl30"], - ["rl17", "rl18", "rl28"], - ["rl29", "rl28", "rl18"], - ["rl32", "rl28", "rl29"], - ["rl33", "rl32", "rl29"], - ["rl32", "rl33", "rl_r39"], - ["rl_r39", "rl33", "rl_r36"], - ["rl_r36", "rl_r41", "rl_r39"], - ["rl_r43", "rl_r41", "rl_r36"], - ["rl_r45", "rl_r41", "rl_r43"], - ["rl_r47", "rl_r45", "rl_r43"], - ["rl_r53", "rl_r45", "rl_r47"], - ["rl_r54", "rl_r53", "rl_r47"], - ["rl_r54", "rl_r51", "rl_r53"], - ["rl_r51", "rl_r54", "rl_r52"], - ["rl_r52", "rl_r50", "rl_r51"], - ["rl_r50", "rl_r49", "rl_r51"], - ["rl_r46", "rl_r44", "rl_r49"], - ["rl_r50", "rl_r46", "rl_r49"], - ["rl_r46", "rl_r42", "rl_r44"], - ["rl_r44", "rl_r42", "rl_r40"], - ["rl_r34", "rl_r37", "rl_r40"], - ["rl_r42", "rl_r34", "rl_r40"], - ["rl_r34", "rl_r35", "rl_r37"], - ["rl_r35", "rl_r38", "rl_r37"], - ["rl_r35", "rl_r39", "rl_r38"], - ["rl_r39", "rl_r35", "rl_r36"], - ["rl30", "rl_r37", "rl31"], - ["rl_r37", "rl_r34", "rl31"], - ["rl16", "rl15", "rl22"], - ["rl16", "rl22", "rl23"], - ["rl23", "rl22", "rl21"], - ["rl21", "rl22", "rl20"], - ["rl27", "rl29", "rl26"], - ["rl29", "rl28", "rl26"], - ["rl18", "rl26", "rl17"], - ["rl27", "rl26", "rl18"], - ["rl24", "rl22", "rl23"], - ["rl27", "rl26", "rl24"], - ["rl24", "rl25", "rl27"], - ["rl24", "rl23", "rl25"], - ["rl30", "rl23", "rl22"], - ["rl30", "rl31", "rl23"], - ["rl26", "rl27", "rl32"], - ["rl33", "rl32", "rl27"] - ], - "flexbodies" : [ - ["mesh", "[group]:", "nonFlexMaterials"], - ["rails", ["chassis_rails"]] - ], - "glowMap" : { - // main lights - "chassis_headlight_L" : {"simpleFunction" : "lowhighbeam_filament", "off" : "chassis_headlight", "on" : "chassis_headlight_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_headlight_R" : {"simpleFunction" : "lowhighbeam_filament", "off" : "chassis_headlight", "on" : "chassis_headlight_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_signal_L" : {"simpleFunction" : "signal_L_filament", "off" : "chassis_signal_amber", "on" : "chassis_signal_amber_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_signal_R" : {"simpleFunction" : "signal_R_filament", "off" : "chassis_signal_amber", "on" : "chassis_signal_amber_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_reverselight" : {"simpleFunction" : "reverselight_filament", "off" : "chassis_reverselight", "on" : "chassis_reverselight_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_brakelight_L" : {"simpleFunction" : "brakelight_filament", "off" : "chassis_taillight", "on" : "chassis_taillight_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_brakelight_R" : {"simpleFunction" : "brakelight_filament", "off" : "chassis_taillight", "on" : "chassis_taillight_on", "materialEmissiveScaling" : {"on_max" : 1}}, - // gauge lights + // Front crush + {"beamDeform" : 8500}, + ["rl17", "rl_f9"], + ["rl15", "rl_f8"] + ], + // --Collision Triangles-- + "triangles" : [ + ["id1:", "id2:", "id3:"], + ["rl_f5", "rl_f3", "rl_f2"], + ["rl_f0", "rl_f2", "rl_f3"], + ["rl_f5", "rl_f2", "rl_f4"], + ["rl_f1", "rl_f4", "rl_f2"], + ["rl_f4", "rl_f1", "rl_f7"], + ["rl_f4", "rl_f7", "rl_f9"], + ["rl_f7", "rl_f13", "rl_f9"], + ["rl_f12", "rl_f9", "rl_f13"], + ["rl_f12", "rl_f13", "rl18"], + ["rl18", "rl17", "rl_f12"], + ["rl_f3", "rl_f6", "rl_f0"], + ["rl_f3", "rl_f8", "rl_f6"], + ["rl_f10", "rl_f11", "rl_f8"], + ["rl_f6", "rl_f8", "rl_f11"], + ["rl_f10", "rl16", "rl_f11"], + ["rl16", "rl_f10", "rl15"], + ["rl15", "rl20", "rl16"], + ["rl21", "rl16", "rl20"], + ["rl30", "rl21", "rl20"], + ["rl31", "rl21", "rl30"], + ["rl17", "rl18", "rl28"], + ["rl29", "rl28", "rl18"], + ["rl32", "rl28", "rl29"], + ["rl33", "rl32", "rl29"], + ["rl32", "rl33", "rl_r39"], + ["rl_r39", "rl33", "rl_r36"], + ["rl_r36", "rl_r41", "rl_r39"], + ["rl_r43", "rl_r41", "rl_r36"], + ["rl_r45", "rl_r41", "rl_r43"], + ["rl_r47", "rl_r45", "rl_r43"], + ["rl_r53", "rl_r45", "rl_r47"], + ["rl_r54", "rl_r53", "rl_r47"], + ["rl_r54", "rl_r51", "rl_r53"], + ["rl_r51", "rl_r54", "rl_r52"], + ["rl_r52", "rl_r50", "rl_r51"], + ["rl_r50", "rl_r49", "rl_r51"], + ["rl_r46", "rl_r44", "rl_r49"], + ["rl_r50", "rl_r46", "rl_r49"], + ["rl_r46", "rl_r42", "rl_r44"], + ["rl_r44", "rl_r42", "rl_r40"], + ["rl_r34", "rl_r37", "rl_r40"], + ["rl_r42", "rl_r34", "rl_r40"], + ["rl_r34", "rl_r35", "rl_r37"], + ["rl_r35", "rl_r38", "rl_r37"], + ["rl_r35", "rl_r39", "rl_r38"], + ["rl_r39", "rl_r35", "rl_r36"], + ["rl30", "rl_r37", "rl31"], + ["rl_r37", "rl_r34", "rl31"], + ["rl16", "rl15", "rl22"], + ["rl16", "rl22", "rl23"], + ["rl23", "rl22", "rl21"], + ["rl21", "rl22", "rl20"], + ["rl27", "rl29", "rl26"], + ["rl29", "rl28", "rl26"], + ["rl18", "rl26", "rl17"], + ["rl27", "rl26", "rl18"], + ["rl24", "rl22", "rl23"], + ["rl27", "rl26", "rl24"], + ["rl24", "rl25", "rl27"], + ["rl24", "rl23", "rl25"], + ["rl30", "rl23", "rl22"], + ["rl30", "rl31", "rl23"], + ["rl26", "rl27", "rl32"], + ["rl33", "rl32", "rl27"] + ], + "flexbodies" : [ + ["mesh", "[group]:", "nonFlexMaterials"], + ["rails", ["chassis_rails"]] + ], + "glowMap" : { + // main lights + "chassis_headlight_L" : {"simpleFunction" : "lowhighbeam_filament", "off" : "chassis_headlight", "on" : "chassis_headlight_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_headlight_R" : {"simpleFunction" : "lowhighbeam_filament", "off" : "chassis_headlight", "on" : "chassis_headlight_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_signal_L" : {"simpleFunction" : "signal_L_filament", "off" : "chassis_signal_amber", "on" : "chassis_signal_amber_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_signal_R" : {"simpleFunction" : "signal_R_filament", "off" : "chassis_signal_amber", "on" : "chassis_signal_amber_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_reverselight" : {"simpleFunction" : "reverselight_filament", "off" : "chassis_reverselight", "on" : "chassis_reverselight_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_brakelight_L" : {"simpleFunction" : "brakelight_filament", "off" : "chassis_taillight", "on" : "chassis_taillight_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_brakelight_R" : {"simpleFunction" : "brakelight_filament", "off" : "chassis_taillight", "on" : "chassis_taillight_on", "materialEmissiveScaling" : {"on_max" : 1}}, + // gauge lights - // (turn signals, battery, parking brake, highbeam) - "chassis_gaugelight_highbeam" : {"simpleFunction" : "highbeam", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, - "chassis_gaugelight_signal_L" : {"simpleFunction" : "signal_L", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, - "chassis_gaugelight_signal_R" : {"simpleFunction" : "signal_R", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, - "chassis_gaugelight_battery" : {"simpleFunction" : "battery", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, - "chassis_gaugelight_parkbrake" : {"simpleFunction" : "parkingbrakelight", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, + // (turn signals, battery, parking brake, highbeam) + "chassis_gaugelight_highbeam" : {"simpleFunction" : "highbeam", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, + "chassis_gaugelight_signal_L" : {"simpleFunction" : "signal_L", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, + "chassis_gaugelight_signal_R" : {"simpleFunction" : "signal_R", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, + "chassis_gaugelight_battery" : {"simpleFunction" : "battery", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, + "chassis_gaugelight_parkbrake" : {"simpleFunction" : "parkingbrakelight", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, - // multi-condition warning light - "chassis_gaugelight_warning" : { - "simpleFunction" : { - "checkengine" : 1, - "battery" : 1, - "lowpressure" : 1 - }, - "off" : "chassis_gauges", - "on" : "chassis_gauges_on" + // multi-condition warning light + "chassis_gaugelight_warning" : { + "simpleFunction" : { + "checkengine" : 1, + "battery" : 1, + "lowpressure" : 1 + }, + "off" : "chassis_gauges", + "on" : "chassis_gauges_on" + } } } - } } diff --git a/examples/formatted_jbeam/frame-minimal-jbfl.jbeam b/examples/formatted_jbeam/frame-minimal-jbfl.jbeam index b99e0813..aba9eefb 100644 --- a/examples/formatted_jbeam/frame-minimal-jbfl.jbeam +++ b/examples/formatted_jbeam/frame-minimal-jbfl.jbeam @@ -1,414 +1,414 @@ { - "chassis_rails" : { - "information" : { - "authors" : "gittarrgy01", - "name" : "" - }, - "slotType" : "main", - /* - The purpose of this file is prove that moving metadata - along with vertices when moving vertices works as intended. - See issue for #69 explanation on the transformation part of the codebase. - */ - // --Nodes-- - "nodes" : [ - ["id", "posX", "posY", "posZ"], - {"group" : "chassis_rails"}, - ["rl_f0", 0.523, -2.098, 0.319], - ["rl_f1", -0.417, -2.098, 0.319], - ["rl_f2", 0.053, -2.095, 0.319], - ["rl_f3", 0.523, -2.093, 0.268], - ["rl_f4", -0.417, -2.093, 0.268], - ["rl_f5", 0.053, -2.090, 0.269], - ["rl_f6", 0.531, -1.724, 0.341], - ["rl_f7", -0.424, -1.724, 0.341], - ["rl_f8", 0.531, -1.721, 0.289], - ["rl_f9", -0.424, -1.721, 0.289], - ["rl_f10", 0.547, -1.350, 0.310], - ["rl_f11", 0.547, -1.350, 0.364], - ["rl_f12", -0.440, -1.350, 0.310], - ["rl_f13", -0.440, -1.350, 0.364], - ["rl_f14", 0.053, -1.314, 0.382], // support for front - ["rl15", 0.790, -0.919, 0.182], - ["rl16", 0.790, -0.919, 0.233], - ["rl17", -0.683, -0.919, 0.182], - ["rl18", -0.683, -0.919, 0.233], - ["rl19", 0.053, -0.024, 0.578], // support - ["rl20", 0.837, 0.002, 0.182], - ["rl21", 0.837, 0.002, 0.233], - ["rl22", 0.415, 0.002, 0.182], - ["rl23", 0.415, 0.002, 0.233], - ["rl24", 0.053, 0.002, 0.182], - ["rl25", 0.053, 0.002, 0.233], - ["rl26", -0.308, 0.002, 0.182], - ["rl27", -0.308, 0.002, 0.233], - ["rl28", -0.730, 0.002, 0.182], - ["rl29", -0.730, 0.002, 0.233], - ["rl30", 0.822, 0.791, 0.182], - ["rl31", 0.822, 0.791, 0.233], - ["rl32", -0.715, 0.791, 0.182], - ["rl33", -0.715, 0.791, 0.233], - ["rl_r34", 0.651, 1.121, 0.628], - ["rl_r35", 0.053, 1.121, 0.628], - ["rl_r36", -0.544, 1.121, 0.628], - ["rl_r37", 0.651, 1.152, 0.565], - ["rl_r38", 0.053, 1.152, 0.565], - ["rl_r39", -0.544, 1.152, 0.565], - ["rl_r40", 0.602, 1.514, 0.566], - ["rl_r41", -0.495, 1.514, 0.566], - ["rl_r42", 0.602, 1.532, 0.623], - ["rl_r43", -0.495, 1.532, 0.623], - ["rl_r44", 0.553, 1.654, 0.359], - ["rl_r45", -0.446, 1.654, 0.359], - ["rl_r46", 0.553, 1.679, 0.448], - ["rl_r47", -0.446, 1.679, 0.448], - ["rl_r48", 0.053, 1.710, 0.565], // support for rear - ["rl_r49", 0.558, 2.284, 0.364], - ["rl_r50", 0.558, 2.284, 0.447], - ["rl_r51", 0.053, 2.284, 0.370], - ["rl_r52", 0.053, 2.284, 0.441], - ["rl_r53", -0.451, 2.284, 0.364], - ["rl_r54", -0.451, 2.284, 0.447], - {"group" : ""} - ], - // --Beams-- - "beams" : [ - ["id1:", "id2:"], + "chassis_rails" : { + "information" : { + "authors" : "gittarrgy01", + "name" : "" + }, + "slotType" : "main", + /* + The purpose of this file is prove that moving metadata + along with vertices when moving vertices works as intended. + See issue for #69 explanation on the transformation part of the codebase. + */ + // --Nodes-- + "nodes" : [ + ["id", "posX", "posY", "posZ"], + {"group" : "chassis_rails"}, + ["rl_f0", 0.523, -2.098, 0.319], + ["rl_f1", -0.417, -2.098, 0.319], + ["rl_f2", 0.053, -2.095, 0.319], + ["rl_f3", 0.523, -2.093, 0.268], + ["rl_f4", -0.417, -2.093, 0.268], + ["rl_f5", 0.053, -2.090, 0.269], + ["rl_f6", 0.531, -1.724, 0.341], + ["rl_f7", -0.424, -1.724, 0.341], + ["rl_f8", 0.531, -1.721, 0.289], + ["rl_f9", -0.424, -1.721, 0.289], + ["rl_f10", 0.547, -1.350, 0.310], + ["rl_f11", 0.547, -1.350, 0.364], + ["rl_f12", -0.440, -1.350, 0.310], + ["rl_f13", -0.440, -1.350, 0.364], + ["rl_f14", 0.053, -1.314, 0.382], // support for front + ["rl15", 0.790, -0.919, 0.182], + ["rl16", 0.790, -0.919, 0.233], + ["rl17", -0.683, -0.919, 0.182], + ["rl18", -0.683, -0.919, 0.233], + ["rl19", 0.053, -0.024, 0.578], // support + ["rl20", 0.837, 0.002, 0.182], + ["rl21", 0.837, 0.002, 0.233], + ["rl22", 0.415, 0.002, 0.182], + ["rl23", 0.415, 0.002, 0.233], + ["rl24", 0.053, 0.002, 0.182], + ["rl25", 0.053, 0.002, 0.233], + ["rl26", -0.308, 0.002, 0.182], + ["rl27", -0.308, 0.002, 0.233], + ["rl28", -0.730, 0.002, 0.182], + ["rl29", -0.730, 0.002, 0.233], + ["rl30", 0.822, 0.791, 0.182], + ["rl31", 0.822, 0.791, 0.233], + ["rl32", -0.715, 0.791, 0.182], + ["rl33", -0.715, 0.791, 0.233], + ["rl_r34", 0.651, 1.121, 0.628], + ["rl_r35", 0.053, 1.121, 0.628], + ["rl_r36", -0.544, 1.121, 0.628], + ["rl_r37", 0.651, 1.152, 0.565], + ["rl_r38", 0.053, 1.152, 0.565], + ["rl_r39", -0.544, 1.152, 0.565], + ["rl_r40", 0.602, 1.514, 0.566], + ["rl_r41", -0.495, 1.514, 0.566], + ["rl_r42", 0.602, 1.532, 0.623], + ["rl_r43", -0.495, 1.532, 0.623], + ["rl_r44", 0.553, 1.654, 0.359], + ["rl_r45", -0.446, 1.654, 0.359], + ["rl_r46", 0.553, 1.679, 0.448], + ["rl_r47", -0.446, 1.679, 0.448], + ["rl_r48", 0.053, 1.710, 0.565], // support for rear + ["rl_r49", 0.558, 2.284, 0.364], + ["rl_r50", 0.558, 2.284, 0.447], + ["rl_r51", 0.053, 2.284, 0.370], + ["rl_r52", 0.053, 2.284, 0.441], + ["rl_r53", -0.451, 2.284, 0.364], + ["rl_r54", -0.451, 2.284, 0.447], + {"group" : ""} + ], + // --Beams-- + "beams" : [ + ["id1:", "id2:"], - // Structural beams - {"beamStrength" : "FLT_MAX", "beamSpring" : "3800000"}, - {"beamDamp" : 130, "deformLimit" : 1.1}, + // Structural beams + {"beamStrength" : "FLT_MAX", "beamSpring" : "3800000"}, + {"beamDamp" : 130, "deformLimit" : 1.1}, - // Front end - {"beamDeform" : 20600, "deformLimit" : 1.1}, - ["rl_f3", "rl_f5"], - ["rl_f0", "rl_f3"], - ["rl_f8", "rl_f3"], - ["rl15", "rl_f10"], - ["rl_f8", "rl_f6"], - ["rl_f11", "rl_f10"], - ["rl_f10", "rl_f8"], - ["rl_f9", "rl_f7"], - ["rl17", "rl_f12"], - ["rl_f6", "rl_f11"], - ["rl_f11", "rl16"], - ["rl_f13", "rl18"], - ["rl_f13", "rl_f12"], - ["rl_f1", "rl_f4"], - ["rl_f2", "rl_f1"], - ["rl_f2", "rl_f5"], - ["rl_f12", "rl_f9"], - ["rl_f7", "rl_f13"], - ["rl_f0", "rl_f6"], - ["rl_f9", "rl_f4"], - ["rl_f2", "rl_f0"], - ["rl_f4", "rl_f5"], - ["rl_f1", "rl_f7"], + // Front end + {"beamDeform" : 20600, "deformLimit" : 1.1}, + ["rl_f3", "rl_f5"], + ["rl_f0", "rl_f3"], + ["rl_f8", "rl_f3"], + ["rl15", "rl_f10"], + ["rl_f8", "rl_f6"], + ["rl_f11", "rl_f10"], + ["rl_f10", "rl_f8"], + ["rl_f9", "rl_f7"], + ["rl17", "rl_f12"], + ["rl_f6", "rl_f11"], + ["rl_f11", "rl16"], + ["rl_f13", "rl18"], + ["rl_f13", "rl_f12"], + ["rl_f1", "rl_f4"], + ["rl_f2", "rl_f1"], + ["rl_f2", "rl_f5"], + ["rl_f12", "rl_f9"], + ["rl_f7", "rl_f13"], + ["rl_f0", "rl_f6"], + ["rl_f9", "rl_f4"], + ["rl_f2", "rl_f0"], + ["rl_f4", "rl_f5"], + ["rl_f1", "rl_f7"], - // Middle - {"beamDeform" : 27000}, - ["rl16", "rl15"], - ["rl20", "rl30"], - ["rl16", "rl23"], - ["rl18", "rl17"], - ["rl17", "rl28"], - ["rl26", "rl17"], - ["rl18", "rl27"], - ["rl26", "rl24"], - ["rl25", "rl24"], - ["rl25", "rl27"], - ["rl21", "rl16"], - ["rl22", "rl15"], - ["rl15", "rl20"], - ["rl29", "rl27"], - ["rl28", "rl32"], - ["rl29", "rl18"], - ["rl22", "rl24"], - ["rl31", "rl21"], - ["rl28", "rl29"], - ["rl32", "rl33"], - ["rl30", "rl31"], - ["rl33", "rl29"], - ["rl30", "rl22"], - ["rl25", "rl23"], - ["rl32", "rl26"], - ["rl20", "rl21"], - ["rl31", "rl23"], - ["rl20", "rl22"], - ["rl21", "rl23"], - ["rl33", "rl27"], - ["rl23", "rl22"], - ["rl28", "rl26"], - ["rl27", "rl26"], + // Middle + {"beamDeform" : 27000}, + ["rl16", "rl15"], + ["rl20", "rl30"], + ["rl16", "rl23"], + ["rl18", "rl17"], + ["rl17", "rl28"], + ["rl26", "rl17"], + ["rl18", "rl27"], + ["rl26", "rl24"], + ["rl25", "rl24"], + ["rl25", "rl27"], + ["rl21", "rl16"], + ["rl22", "rl15"], + ["rl15", "rl20"], + ["rl29", "rl27"], + ["rl28", "rl32"], + ["rl29", "rl18"], + ["rl22", "rl24"], + ["rl31", "rl21"], + ["rl28", "rl29"], + ["rl32", "rl33"], + ["rl30", "rl31"], + ["rl33", "rl29"], + ["rl30", "rl22"], + ["rl25", "rl23"], + ["rl32", "rl26"], + ["rl20", "rl21"], + ["rl31", "rl23"], + ["rl20", "rl22"], + ["rl21", "rl23"], + ["rl33", "rl27"], + ["rl23", "rl22"], + ["rl28", "rl26"], + ["rl27", "rl26"], - // Rear end - {"beamDeform" : 22000}, - ["rl_r37", "rl_r34"], - ["rl_r39", "rl_r41"], - ["rl_r44", "rl_r46"], - ["rl33", "rl_r36"], - ["rl_r46", "rl_r42"], - ["rl31", "rl_r34"], - ["rl_r37", "rl30"], - ["rl_r49", "rl_r51"], - ["rl_r52", "rl_r50"], - ["rl_r50", "rl_r46"], - ["rl_r49", "rl_r50"], - ["rl_r42", "rl_r34"], - ["rl_r40", "rl_r44"], - ["rl_r40", "rl_r42"], - ["rl_r41", "rl_r45"], - ["rl_r39", "rl_r36"], - ["rl_r36", "rl_r35"], - ["rl_r38", "rl_r35"], - ["rl_r53", "rl_r54"], - ["rl_r52", "rl_r54"], - ["rl_r51", "rl_r52"], - ["rl_r45", "rl_r53"], - ["rl_r54", "rl_r47"], - ["rl_r43", "rl_r36"], - ["rl_r53", "rl_r51"], - ["rl_r34", "rl_r35"], - ["rl_r38", "rl_r37"], - ["rl_r45", "rl_r47"], - ["rl_r41", "rl_r43"], - ["rl_r38", "rl_r39"], - ["rl_r39", "rl32"], - ["rl_r47", "rl_r43"], - ["rl_r44", "rl_r49"], - ["rl_r37", "rl_r40"], + // Rear end + {"beamDeform" : 22000}, + ["rl_r37", "rl_r34"], + ["rl_r39", "rl_r41"], + ["rl_r44", "rl_r46"], + ["rl33", "rl_r36"], + ["rl_r46", "rl_r42"], + ["rl31", "rl_r34"], + ["rl_r37", "rl30"], + ["rl_r49", "rl_r51"], + ["rl_r52", "rl_r50"], + ["rl_r50", "rl_r46"], + ["rl_r49", "rl_r50"], + ["rl_r42", "rl_r34"], + ["rl_r40", "rl_r44"], + ["rl_r40", "rl_r42"], + ["rl_r41", "rl_r45"], + ["rl_r39", "rl_r36"], + ["rl_r36", "rl_r35"], + ["rl_r38", "rl_r35"], + ["rl_r53", "rl_r54"], + ["rl_r52", "rl_r54"], + ["rl_r51", "rl_r52"], + ["rl_r45", "rl_r53"], + ["rl_r54", "rl_r47"], + ["rl_r43", "rl_r36"], + ["rl_r53", "rl_r51"], + ["rl_r34", "rl_r35"], + ["rl_r38", "rl_r37"], + ["rl_r45", "rl_r47"], + ["rl_r41", "rl_r43"], + ["rl_r38", "rl_r39"], + ["rl_r39", "rl32"], + ["rl_r47", "rl_r43"], + ["rl_r44", "rl_r49"], + ["rl_r37", "rl_r40"], - // Crossing beams + // Crossing beams - // Front end - {"beamDeform" : 16000}, - ["rl_f4", "rl_f2"], - ["rl_f0", "rl_f8"], - ["rl16", "rl_f10"], - ["rl15", "rl_f11"], - ["rl_f10", "rl_f6"], - ["rl_f11", "rl_f8"], - ["rl_f1", "rl_f5"], - ["rl_f4", "rl_f7"], - ["rl_f1", "rl_f9"], - ["rl_f12", "rl_f7"], - ["rl_f3", "rl_f6"], - ["rl_f0", "rl_f5"], - ["rl_f3", "rl_f2"], - ["rl_f13", "rl_f9"], - ["rl17", "rl_f13"], - ["rl18", "rl_f12"], + // Front end + {"beamDeform" : 16000}, + ["rl_f4", "rl_f2"], + ["rl_f0", "rl_f8"], + ["rl16", "rl_f10"], + ["rl15", "rl_f11"], + ["rl_f10", "rl_f6"], + ["rl_f11", "rl_f8"], + ["rl_f1", "rl_f5"], + ["rl_f4", "rl_f7"], + ["rl_f1", "rl_f9"], + ["rl_f12", "rl_f7"], + ["rl_f3", "rl_f6"], + ["rl_f0", "rl_f5"], + ["rl_f3", "rl_f2"], + ["rl_f13", "rl_f9"], + ["rl17", "rl_f13"], + ["rl18", "rl_f12"], - // Middle - {"beamDeform" : 6500}, - ["rl16", "rl20"], - ["rl15", "rl23"], - ["rl18", "rl28"], - ["rl18", "rl26"], - ["rl17", "rl27"], - ["rl27", "rl24"], - ["rl26", "rl25"], - ["rl31", "rl20"], - ["rl15", "rl21"], - ["rl16", "rl22"], - ["rl32", "rl29"], - ["rl30", "rl21"], - ["rl23", "rl24"], - ["rl32", "rl27"], - ["rl17", "rl29"], - ["rl33", "rl28"], - ["rl29", "rl26"], - ["rl30", "rl23"], - ["rl33", "rl26"], - ["rl22", "rl25"], - ["rl20", "rl23"], - ["rl28", "rl27"], - ["rl31", "rl22"], - ["rl21", "rl22"], + // Middle + {"beamDeform" : 6500}, + ["rl16", "rl20"], + ["rl15", "rl23"], + ["rl18", "rl28"], + ["rl18", "rl26"], + ["rl17", "rl27"], + ["rl27", "rl24"], + ["rl26", "rl25"], + ["rl31", "rl20"], + ["rl15", "rl21"], + ["rl16", "rl22"], + ["rl32", "rl29"], + ["rl30", "rl21"], + ["rl23", "rl24"], + ["rl32", "rl27"], + ["rl17", "rl29"], + ["rl33", "rl28"], + ["rl29", "rl26"], + ["rl30", "rl23"], + ["rl33", "rl26"], + ["rl22", "rl25"], + ["rl20", "rl23"], + ["rl28", "rl27"], + ["rl31", "rl22"], + ["rl21", "rl22"], - // Rear end - {"beamDeform" : 16000}, - ["rl_r54", "rl_r45"], - ["rl32", "rl_r36"], - ["rl_r36", "rl_r41"], - ["rl_r50", "rl_r51"], - ["rl31", "rl_r37"], - ["rl30", "rl_r34"], - ["rl_r46", "rl_r40"], - ["rl_r53", "rl_r47"], - ["rl_r50", "rl_r44"], - ["rl_r49", "rl_r46"], - ["rl_r37", "rl_r42"], - ["rl_r34", "rl_r40"], - ["rl_r34", "rl_r38"], - ["rl33", "rl_r39"], - ["rl_r39", "rl_r35"], - ["rl_r36", "rl_r38"], - ["rl_r53", "rl_r52"], - ["rl_r54", "rl_r51"], - ["rl_r45", "rl_r43"], - ["rl_r47", "rl_r41"], - ["rl_r39", "rl_r43"], - ["rl_r37", "rl_r35"], - ["rl_r49", "rl_r52"], - ["rl_r44", "rl_r42"], + // Rear end + {"beamDeform" : 16000}, + ["rl_r54", "rl_r45"], + ["rl32", "rl_r36"], + ["rl_r36", "rl_r41"], + ["rl_r50", "rl_r51"], + ["rl31", "rl_r37"], + ["rl30", "rl_r34"], + ["rl_r46", "rl_r40"], + ["rl_r53", "rl_r47"], + ["rl_r50", "rl_r44"], + ["rl_r49", "rl_r46"], + ["rl_r37", "rl_r42"], + ["rl_r34", "rl_r40"], + ["rl_r34", "rl_r38"], + ["rl33", "rl_r39"], + ["rl_r39", "rl_r35"], + ["rl_r36", "rl_r38"], + ["rl_r53", "rl_r52"], + ["rl_r54", "rl_r51"], + ["rl_r45", "rl_r43"], + ["rl_r47", "rl_r41"], + ["rl_r39", "rl_r43"], + ["rl_r37", "rl_r35"], + ["rl_r49", "rl_r52"], + ["rl_r44", "rl_r42"], - // Support beams + // Support beams - // Front end - {"beamDeform" : 19000}, - ["rl_f8", "rl_f14"], - ["rl_f9", "rl_f14"], - ["rl_f", "rl_f3"], - ["rl_f10", "rl_f14"], - ["rl_f14", "rl_f13"], - ["rl_f1", "rl_f14"], - ["rl_f0", "rl_f14"], - ["rl_f12", "rl_f14"], - ["rl_f5", "rl_f14"], - ["rl_f14", "rl_f4"], - ["rl_f14", "rl_f6"], - ["rl_f14", "rl_f7"], - ["rl_f14", "rl_f2"], - ["rl_f14", "rl_f11"], + // Front end + {"beamDeform" : 19000}, + ["rl_f8", "rl_f14"], + ["rl_f9", "rl_f14"], + ["rl_f", "rl_f3"], + ["rl_f10", "rl_f14"], + ["rl_f14", "rl_f13"], + ["rl_f1", "rl_f14"], + ["rl_f0", "rl_f14"], + ["rl_f12", "rl_f14"], + ["rl_f5", "rl_f14"], + ["rl_f14", "rl_f4"], + ["rl_f14", "rl_f6"], + ["rl_f14", "rl_f7"], + ["rl_f14", "rl_f2"], + ["rl_f14", "rl_f11"], - // Middle - {"beamDeform" : 11000}, - ["rl27", "rl19"], - ["rl26", "rl19"], - ["rl24", "rl19"], - ["rl23", "rl19"], - ["rl20", "rl19"], - ["rl19", "rl16"], - ["rl19", "rl15"], - ["rl31", "rl19"], - ["rl33", "rl19"], - ["rl28", "rl19"], - ["rl19", "rl25"], - ["rl21", "rl19"], - ["rl22", "rl19"], - ["rl19", "rl32"], - ["rl29", "rl19"], - ["rl19", "rl18"], - ["rl19", "rl17"], - ["rl19", "rl30"], + // Middle + {"beamDeform" : 11000}, + ["rl27", "rl19"], + ["rl26", "rl19"], + ["rl24", "rl19"], + ["rl23", "rl19"], + ["rl20", "rl19"], + ["rl19", "rl16"], + ["rl19", "rl15"], + ["rl31", "rl19"], + ["rl33", "rl19"], + ["rl28", "rl19"], + ["rl19", "rl25"], + ["rl21", "rl19"], + ["rl22", "rl19"], + ["rl19", "rl32"], + ["rl29", "rl19"], + ["rl19", "rl18"], + ["rl19", "rl17"], + ["rl19", "rl30"], - // Rear end - {"beamDeform" : 19000}, - ["rl_r48", "rl_r51"], - ["rl_r48", "rl_r54"], - ["rl_r45", "rl_r48"], - ["rl_r48", "rl_r50"], - ["rl_r48", "rl_r42"], - ["rl_r48", "rl_r47"], - ["rl_r49", "rl_r48"], - ["rl_r35", "rl_r48"], - ["rl_r48", "rl_r43"], - ["rl_r44", "rl_r48"], - ["rl_r53", "rl_r48"], - ["rl_r52", "rl_r48"], - ["rl_r40", "rl_r48"], - ["rl_r48", "rl_r38"], - ["rl_r41", "rl_r48"], - ["rl_r4", "rl_r46"], + // Rear end + {"beamDeform" : 19000}, + ["rl_r48", "rl_r51"], + ["rl_r48", "rl_r54"], + ["rl_r45", "rl_r48"], + ["rl_r48", "rl_r50"], + ["rl_r48", "rl_r42"], + ["rl_r48", "rl_r47"], + ["rl_r49", "rl_r48"], + ["rl_r35", "rl_r48"], + ["rl_r48", "rl_r43"], + ["rl_r44", "rl_r48"], + ["rl_r53", "rl_r48"], + ["rl_r52", "rl_r48"], + ["rl_r40", "rl_r48"], + ["rl_r48", "rl_r38"], + ["rl_r41", "rl_r48"], + ["rl_r4", "rl_r46"], - // Front crush - {"beamDeform" : 8500}, - ["rl17", "rl_f9"], - ["rl15", "rl_f8"] - ], - // --Collision Triangles-- - "triangles" : [ - ["id1:", "id2:", "id3:"], - ["rl_f5", "rl_f3", "rl_f2"], - ["rl_f0", "rl_f2", "rl_f3"], - ["rl_f5", "rl_f2", "rl_f4"], - ["rl_f1", "rl_f4", "rl_f2"], - ["rl_f4", "rl_f1", "rl_f7"], - ["rl_f4", "rl_f7", "rl_f9"], - ["rl_f7", "rl_f13", "rl_f9"], - ["rl_f12", "rl_f9", "rl_f13"], - ["rl_f12", "rl_f13", "rl18"], - ["rl18", "rl17", "rl_f12"], - ["rl_f3", "rl_f6", "rl_f0"], - ["rl_f3", "rl_f8", "rl_f6"], - ["rl_f10", "rl_f11", "rl_f8"], - ["rl_f6", "rl_f8", "rl_f11"], - ["rl_f10", "rl16", "rl_f11"], - ["rl16", "rl_f10", "rl15"], - ["rl15", "rl20", "rl16"], - ["rl21", "rl16", "rl20"], - ["rl30", "rl21", "rl20"], - ["rl31", "rl21", "rl30"], - ["rl17", "rl18", "rl28"], - ["rl29", "rl28", "rl18"], - ["rl32", "rl28", "rl29"], - ["rl33", "rl32", "rl29"], - ["rl32", "rl33", "rl_r39"], - ["rl_r39", "rl33", "rl_r36"], - ["rl_r36", "rl_r41", "rl_r39"], - ["rl_r43", "rl_r41", "rl_r36"], - ["rl_r45", "rl_r41", "rl_r43"], - ["rl_r47", "rl_r45", "rl_r43"], - ["rl_r53", "rl_r45", "rl_r47"], - ["rl_r54", "rl_r53", "rl_r47"], - ["rl_r54", "rl_r51", "rl_r53"], - ["rl_r51", "rl_r54", "rl_r52"], - ["rl_r52", "rl_r50", "rl_r51"], - ["rl_r50", "rl_r49", "rl_r51"], - ["rl_r46", "rl_r44", "rl_r49"], - ["rl_r50", "rl_r46", "rl_r49"], - ["rl_r46", "rl_r42", "rl_r44"], - ["rl_r44", "rl_r42", "rl_r40"], - ["rl_r34", "rl_r37", "rl_r40"], - ["rl_r42", "rl_r34", "rl_r40"], - ["rl_r34", "rl_r35", "rl_r37"], - ["rl_r35", "rl_r38", "rl_r37"], - ["rl_r35", "rl_r39", "rl_r38"], - ["rl_r39", "rl_r35", "rl_r36"], - ["rl30", "rl_r37", "rl31"], - ["rl_r37", "rl_r34", "rl31"], - ["rl16", "rl15", "rl22"], - ["rl16", "rl22", "rl23"], - ["rl23", "rl22", "rl21"], - ["rl21", "rl22", "rl20"], - ["rl27", "rl29", "rl26"], - ["rl29", "rl28", "rl26"], - ["rl18", "rl26", "rl17"], - ["rl27", "rl26", "rl18"], - ["rl24", "rl22", "rl23"], - ["rl27", "rl26", "rl24"], - ["rl24", "rl25", "rl27"], - ["rl24", "rl23", "rl25"], - ["rl30", "rl23", "rl22"], - ["rl30", "rl31", "rl23"], - ["rl26", "rl27", "rl32"], - ["rl33", "rl32", "rl27"] - ], - "flexbodies" : [ - ["mesh", "[group]:", "nonFlexMaterials"], - ["rails", ["chassis_rails"]] - ], - "glowMap" : { - // main lights - "chassis_headlight_L" : {"simpleFunction" : "lowhighbeam_filament", "off" : "chassis_headlight", "on" : "chassis_headlight_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_headlight_R" : {"simpleFunction" : "lowhighbeam_filament", "off" : "chassis_headlight", "on" : "chassis_headlight_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_signal_L" : {"simpleFunction" : "signal_L_filament", "off" : "chassis_signal_amber", "on" : "chassis_signal_amber_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_signal_R" : {"simpleFunction" : "signal_R_filament", "off" : "chassis_signal_amber", "on" : "chassis_signal_amber_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_reverselight" : {"simpleFunction" : "reverselight_filament", "off" : "chassis_reverselight", "on" : "chassis_reverselight_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_brakelight_L" : {"simpleFunction" : "brakelight_filament", "off" : "chassis_taillight", "on" : "chassis_taillight_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_brakelight_R" : {"simpleFunction" : "brakelight_filament", "off" : "chassis_taillight", "on" : "chassis_taillight_on", "materialEmissiveScaling" : {"on_max" : 1}}, - // gauge lights + // Front crush + {"beamDeform" : 8500}, + ["rl17", "rl_f9"], + ["rl15", "rl_f8"] + ], + // --Collision Triangles-- + "triangles" : [ + ["id1:", "id2:", "id3:"], + ["rl_f5", "rl_f3", "rl_f2"], + ["rl_f0", "rl_f2", "rl_f3"], + ["rl_f5", "rl_f2", "rl_f4"], + ["rl_f1", "rl_f4", "rl_f2"], + ["rl_f4", "rl_f1", "rl_f7"], + ["rl_f4", "rl_f7", "rl_f9"], + ["rl_f7", "rl_f13", "rl_f9"], + ["rl_f12", "rl_f9", "rl_f13"], + ["rl_f12", "rl_f13", "rl18"], + ["rl18", "rl17", "rl_f12"], + ["rl_f3", "rl_f6", "rl_f0"], + ["rl_f3", "rl_f8", "rl_f6"], + ["rl_f10", "rl_f11", "rl_f8"], + ["rl_f6", "rl_f8", "rl_f11"], + ["rl_f10", "rl16", "rl_f11"], + ["rl16", "rl_f10", "rl15"], + ["rl15", "rl20", "rl16"], + ["rl21", "rl16", "rl20"], + ["rl30", "rl21", "rl20"], + ["rl31", "rl21", "rl30"], + ["rl17", "rl18", "rl28"], + ["rl29", "rl28", "rl18"], + ["rl32", "rl28", "rl29"], + ["rl33", "rl32", "rl29"], + ["rl32", "rl33", "rl_r39"], + ["rl_r39", "rl33", "rl_r36"], + ["rl_r36", "rl_r41", "rl_r39"], + ["rl_r43", "rl_r41", "rl_r36"], + ["rl_r45", "rl_r41", "rl_r43"], + ["rl_r47", "rl_r45", "rl_r43"], + ["rl_r53", "rl_r45", "rl_r47"], + ["rl_r54", "rl_r53", "rl_r47"], + ["rl_r54", "rl_r51", "rl_r53"], + ["rl_r51", "rl_r54", "rl_r52"], + ["rl_r52", "rl_r50", "rl_r51"], + ["rl_r50", "rl_r49", "rl_r51"], + ["rl_r46", "rl_r44", "rl_r49"], + ["rl_r50", "rl_r46", "rl_r49"], + ["rl_r46", "rl_r42", "rl_r44"], + ["rl_r44", "rl_r42", "rl_r40"], + ["rl_r34", "rl_r37", "rl_r40"], + ["rl_r42", "rl_r34", "rl_r40"], + ["rl_r34", "rl_r35", "rl_r37"], + ["rl_r35", "rl_r38", "rl_r37"], + ["rl_r35", "rl_r39", "rl_r38"], + ["rl_r39", "rl_r35", "rl_r36"], + ["rl30", "rl_r37", "rl31"], + ["rl_r37", "rl_r34", "rl31"], + ["rl16", "rl15", "rl22"], + ["rl16", "rl22", "rl23"], + ["rl23", "rl22", "rl21"], + ["rl21", "rl22", "rl20"], + ["rl27", "rl29", "rl26"], + ["rl29", "rl28", "rl26"], + ["rl18", "rl26", "rl17"], + ["rl27", "rl26", "rl18"], + ["rl24", "rl22", "rl23"], + ["rl27", "rl26", "rl24"], + ["rl24", "rl25", "rl27"], + ["rl24", "rl23", "rl25"], + ["rl30", "rl23", "rl22"], + ["rl30", "rl31", "rl23"], + ["rl26", "rl27", "rl32"], + ["rl33", "rl32", "rl27"] + ], + "flexbodies" : [ + ["mesh", "[group]:", "nonFlexMaterials"], + ["rails", ["chassis_rails"]] + ], + "glowMap" : { + // main lights + "chassis_headlight_L" : {"simpleFunction" : "lowhighbeam_filament", "off" : "chassis_headlight", "on" : "chassis_headlight_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_headlight_R" : {"simpleFunction" : "lowhighbeam_filament", "off" : "chassis_headlight", "on" : "chassis_headlight_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_signal_L" : {"simpleFunction" : "signal_L_filament", "off" : "chassis_signal_amber", "on" : "chassis_signal_amber_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_signal_R" : {"simpleFunction" : "signal_R_filament", "off" : "chassis_signal_amber", "on" : "chassis_signal_amber_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_reverselight" : {"simpleFunction" : "reverselight_filament", "off" : "chassis_reverselight", "on" : "chassis_reverselight_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_brakelight_L" : {"simpleFunction" : "brakelight_filament", "off" : "chassis_taillight", "on" : "chassis_taillight_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_brakelight_R" : {"simpleFunction" : "brakelight_filament", "off" : "chassis_taillight", "on" : "chassis_taillight_on", "materialEmissiveScaling" : {"on_max" : 1}}, + // gauge lights - // (turn signals, battery, parking brake, highbeam) - "chassis_gaugelight_highbeam" : {"simpleFunction" : "highbeam", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, - "chassis_gaugelight_signal_L" : {"simpleFunction" : "signal_L", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, - "chassis_gaugelight_signal_R" : {"simpleFunction" : "signal_R", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, - "chassis_gaugelight_battery" : {"simpleFunction" : "battery", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, - "chassis_gaugelight_parkbrake" : {"simpleFunction" : "parkingbrakelight", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, + // (turn signals, battery, parking brake, highbeam) + "chassis_gaugelight_highbeam" : {"simpleFunction" : "highbeam", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, + "chassis_gaugelight_signal_L" : {"simpleFunction" : "signal_L", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, + "chassis_gaugelight_signal_R" : {"simpleFunction" : "signal_R", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, + "chassis_gaugelight_battery" : {"simpleFunction" : "battery", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, + "chassis_gaugelight_parkbrake" : {"simpleFunction" : "parkingbrakelight", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, - // multi-condition warning light - "chassis_gaugelight_warning" : {"simpleFunction" : {"checkengine" : 1, "battery" : 1, "lowpressure" : 1}, "off" : "chassis_gauges", "on" : "chassis_gauges_on"} + // multi-condition warning light + "chassis_gaugelight_warning" : {"simpleFunction" : {"checkengine" : 1, "battery" : 1, "lowpressure" : 1}, "off" : "chassis_gauges", "on" : "chassis_gauges_on"} + } } - } } diff --git a/examples/formatted_jbeam/suspension-complex-jbfl.jbeam b/examples/formatted_jbeam/suspension-complex-jbfl.jbeam index 1d1c3f1b..0f51a8d1 100644 --- a/examples/formatted_jbeam/suspension-complex-jbfl.jbeam +++ b/examples/formatted_jbeam/suspension-complex-jbfl.jbeam @@ -1,396 +1,396 @@ { - "chassis_rails" : { - "information" : { - "authors" : "gittarrgy01", - "name" : "" - }, - "slotType" : "main", - /* The purpose of this file is prove that moving metadata along with vertices when - moving vertices works as intended. - See issue for #69 explanation on the transformation part of the codebase. */ - // --Nodes-- - "nodes" : [ - ["id", "posX", "posY", "posZ"], - {"group" : "chassis_rails"}, - {"selfCollision" : false}, - {"nodeWeight" : 3.8}, - ["rl0", 0.523, -2.098, 0.319], - ["rl1", -0.417, -2.098, 0.319], - ["rl2", 0.053, -2.095, 0.319], - ["rl3", 0.523, -2.093, 0.268], - ["rl4", -0.417, -2.093, 0.268], - ["rl5", 0.053, -2.090, 0.269], // ref node front - ["rl6", 0.531, -1.724, 0.341], - ["rl7", -0.424, -1.724, 0.341], - ["rl8", 0.531, -1.721, 0.289], - ["rl9", -0.424, -1.721, 0.289], - ["rl10", 0.547, -1.350, 0.310], - ["rl11", 0.547, -1.350, 0.364], - ["rl12", -0.440, -1.350, 0.310], - ["rl13", -0.440, -1.350, 0.364], - ["rl14", 0.053, -1.314, 0.382], // support - {"selfCollision" : true}, - {"nodeWeight" : 3.5}, - ["rl15", 0.790, -0.919, 0.182], - ["rl16", 0.790, -0.919, 0.233], - ["rl17", -0.683, -0.919, 0.182], - ["rl18", -0.683, -0.919, 0.233], - ["rl19", 0.053, -0.024, 0.578], // support - ["rl20", 0.837, 0.002, 0.182], // ref node left - ["rl21", 0.837, 0.002, 0.233], - ["rl22", 0.415, 0.002, 0.182], - ["rl23", 0.415, 0.002, 0.233], - ["rl24", 0.053, 0.002, 0.182], - ["rl25", 0.053, 0.002, 0.233], - ["rl26", -0.308, 0.002, 0.182], - ["rl27", -0.308, 0.002, 0.233], - ["rl28", -0.730, 0.002, 0.182], // ref node right - ["rl29", -0.730, 0.002, 0.233], - ["rl30", 0.822, 0.791, 0.182], - ["rl31", 0.822, 0.791, 0.233], - ["rl32", -0.715, 0.791, 0.182], - ["rl33", -0.715, 0.791, 0.233], - {"selfCollision" : false}, - ["rl34", 0.651, 1.121, 0.628], - ["rl35", 0.053, 1.121, 0.628], - ["rl36", -0.544, 1.121, 0.628], - ["rl37", 0.651, 1.152, 0.565], - ["rl38", 0.053, 1.152, 0.565], - ["rl39", -0.544, 1.152, 0.565], - ["rl40", 0.602, 1.514, 0.566], - ["rl41", -0.495, 1.514, 0.566], - ["rl42", 0.602, 1.532, 0.623], - ["rl43", -0.495, 1.532, 0.623], - ["rl44", 0.553, 1.654, 0.359], - ["rl45", -0.446, 1.654, 0.359], - ["rl46", 0.553, 1.679, 0.448], - ["rl47", -0.446, 1.679, 0.448], - ["rl48", 0.053, 1.710, 0.565], // support - ["rl49", 0.558, 2.284, 0.364], - ["rl50", 0.558, 2.284, 0.447], - ["rl51", 0.053, 2.284, 0.370], - ["rl52", 0.053, 2.284, 0.441], - ["rl53", -0.451, 2.284, 0.364], - ["rl54", -0.451, 2.284, 0.447], - {"group" : ""} - ], - // --Beams-- - "beams" : [ - ["id1:", "id2:"], + "chassis_rails" : { + "information" : { + "authors" : "gittarrgy01", + "name" : "" + }, + "slotType" : "main", + /* The purpose of this file is prove that moving metadata along with vertices when + moving vertices works as intended. + See issue for #69 explanation on the transformation part of the codebase. */ + // --Nodes-- + "nodes" : [ + ["id", "posX", "posY", "posZ"], + {"group" : "chassis_rails"}, + {"selfCollision" : false}, + {"nodeWeight" : 3.8}, + ["rl0", 0.523, -2.098, 0.319], + ["rl1", -0.417, -2.098, 0.319], + ["rl2", 0.053, -2.095, 0.319], + ["rl3", 0.523, -2.093, 0.268], + ["rl4", -0.417, -2.093, 0.268], + ["rl5", 0.053, -2.090, 0.269], // ref node front + ["rl6", 0.531, -1.724, 0.341], + ["rl7", -0.424, -1.724, 0.341], + ["rl8", 0.531, -1.721, 0.289], + ["rl9", -0.424, -1.721, 0.289], + ["rl10", 0.547, -1.350, 0.310], + ["rl11", 0.547, -1.350, 0.364], + ["rl12", -0.440, -1.350, 0.310], + ["rl13", -0.440, -1.350, 0.364], + ["rl14", 0.053, -1.314, 0.382], // support + {"selfCollision" : true}, + {"nodeWeight" : 3.5}, + ["rl15", 0.790, -0.919, 0.182], + ["rl16", 0.790, -0.919, 0.233], + ["rl17", -0.683, -0.919, 0.182], + ["rl18", -0.683, -0.919, 0.233], + ["rl19", 0.053, -0.024, 0.578], // support + ["rl20", 0.837, 0.002, 0.182], // ref node left + ["rl21", 0.837, 0.002, 0.233], + ["rl22", 0.415, 0.002, 0.182], + ["rl23", 0.415, 0.002, 0.233], + ["rl24", 0.053, 0.002, 0.182], + ["rl25", 0.053, 0.002, 0.233], + ["rl26", -0.308, 0.002, 0.182], + ["rl27", -0.308, 0.002, 0.233], + ["rl28", -0.730, 0.002, 0.182], // ref node right + ["rl29", -0.730, 0.002, 0.233], + ["rl30", 0.822, 0.791, 0.182], + ["rl31", 0.822, 0.791, 0.233], + ["rl32", -0.715, 0.791, 0.182], + ["rl33", -0.715, 0.791, 0.233], + {"selfCollision" : false}, + ["rl34", 0.651, 1.121, 0.628], + ["rl35", 0.053, 1.121, 0.628], + ["rl36", -0.544, 1.121, 0.628], + ["rl37", 0.651, 1.152, 0.565], + ["rl38", 0.053, 1.152, 0.565], + ["rl39", -0.544, 1.152, 0.565], + ["rl40", 0.602, 1.514, 0.566], + ["rl41", -0.495, 1.514, 0.566], + ["rl42", 0.602, 1.532, 0.623], + ["rl43", -0.495, 1.532, 0.623], + ["rl44", 0.553, 1.654, 0.359], + ["rl45", -0.446, 1.654, 0.359], + ["rl46", 0.553, 1.679, 0.448], + ["rl47", -0.446, 1.679, 0.448], + ["rl48", 0.053, 1.710, 0.565], // support + ["rl49", 0.558, 2.284, 0.364], + ["rl50", 0.558, 2.284, 0.447], + ["rl51", 0.053, 2.284, 0.370], + ["rl52", 0.053, 2.284, 0.441], + ["rl53", -0.451, 2.284, 0.364], + ["rl54", -0.451, 2.284, 0.447], + {"group" : ""} + ], + // --Beams-- + "beams" : [ + ["id1:", "id2:"], - // Structural beams - {"beamStrength" : "FLT_MAX", "beamSpring" : "3800000"}, - {"beamDamp" : 130, "deformLimit" : 1.1}, + // Structural beams + {"beamStrength" : "FLT_MAX", "beamSpring" : "3800000"}, + {"beamDamp" : 130, "deformLimit" : 1.1}, - // Front end - {"beamDeform" : 20600, "deformLimit" : 1.1}, - ["rl3", "rl5"], - ["rl0", "rl3"], - ["rl8", "rl3"], - ["rl15", "rl10"], - ["rl8", "rl6"], - ["rl11", "rl10"], - ["rl10", "rl8"], - ["rl9", "rl7"], - ["rl17", "rl12"], - ["rl6", "rl11"], - ["rl11", "rl16"], - ["rl13", "rl18"], - ["rl13", "rl12"], - ["rl1", "rl4"], - ["rl2", "rl1"], - ["rl2", "rl5"], - ["rl12", "rl9"], - ["rl7", "rl13"], - ["rl0", "rl6"], - ["rl9", "rl4"], - ["rl2", "rl0"], - ["rl4", "rl5"], - ["rl1", "rl7"], + // Front end + {"beamDeform" : 20600, "deformLimit" : 1.1}, + ["rl3", "rl5"], + ["rl0", "rl3"], + ["rl8", "rl3"], + ["rl15", "rl10"], + ["rl8", "rl6"], + ["rl11", "rl10"], + ["rl10", "rl8"], + ["rl9", "rl7"], + ["rl17", "rl12"], + ["rl6", "rl11"], + ["rl11", "rl16"], + ["rl13", "rl18"], + ["rl13", "rl12"], + ["rl1", "rl4"], + ["rl2", "rl1"], + ["rl2", "rl5"], + ["rl12", "rl9"], + ["rl7", "rl13"], + ["rl0", "rl6"], + ["rl9", "rl4"], + ["rl2", "rl0"], + ["rl4", "rl5"], + ["rl1", "rl7"], - // Middle - {"beamDeform" : 27000}, - ["rl16", "rl15"], - ["rl20", "rl30"], - ["rl16", "rl23"], - ["rl18", "rl17"], - ["rl17", "rl28"], - ["rl26", "rl17"], - ["rl18", "rl27"], - ["rl26", "rl24"], - ["rl25", "rl24"], - ["rl25", "rl27"], - ["rl21", "rl16"], - ["rl22", "rl15"], - ["rl15", "rl20"], - ["rl29", "rl27"], - ["rl28", "rl32"], - ["rl29", "rl18"], - ["rl22", "rl24"], - ["rl31", "rl21"], - ["rl28", "rl29"], - ["rl32", "rl33"], - ["rl30", "rl31"], - ["rl33", "rl29"], - ["rl30", "rl22"], - ["rl25", "rl23"], - ["rl32", "rl26"], - ["rl20", "rl21"], - ["rl31", "rl23"], - ["rl20", "rl22"], - ["rl21", "rl23"], - ["rl33", "rl27"], - ["rl23", "rl22"], - ["rl28", "rl26"], - ["rl27", "rl26"], + // Middle + {"beamDeform" : 27000}, + ["rl16", "rl15"], + ["rl20", "rl30"], + ["rl16", "rl23"], + ["rl18", "rl17"], + ["rl17", "rl28"], + ["rl26", "rl17"], + ["rl18", "rl27"], + ["rl26", "rl24"], + ["rl25", "rl24"], + ["rl25", "rl27"], + ["rl21", "rl16"], + ["rl22", "rl15"], + ["rl15", "rl20"], + ["rl29", "rl27"], + ["rl28", "rl32"], + ["rl29", "rl18"], + ["rl22", "rl24"], + ["rl31", "rl21"], + ["rl28", "rl29"], + ["rl32", "rl33"], + ["rl30", "rl31"], + ["rl33", "rl29"], + ["rl30", "rl22"], + ["rl25", "rl23"], + ["rl32", "rl26"], + ["rl20", "rl21"], + ["rl31", "rl23"], + ["rl20", "rl22"], + ["rl21", "rl23"], + ["rl33", "rl27"], + ["rl23", "rl22"], + ["rl28", "rl26"], + ["rl27", "rl26"], - // Rear end - {"beamDeform" : 22000}, - ["rl37", "rl34"], - ["rl39", "rl41"], - ["rl44", "rl46"], - ["rl33", "rl36"], - ["rl46", "rl42"], - ["rl31", "rl34"], - ["rl37", "rl30"], - ["rl49", "rl51"], - ["rl52", "rl50"], - ["rl50", "rl46"], - ["rl49", "rl50"], - ["rl42", "rl34"], - ["rl40", "rl44"], - ["rl40", "rl42"], - ["rl41", "rl45"], - ["rl39", "rl36"], - ["rl36", "rl35"], - ["rl38", "rl35"], - ["rl53", "rl54"], - ["rl52", "rl54"], - ["rl51", "rl52"], - ["rl45", "rl53"], - ["rl54", "rl47"], - ["rl43", "rl36"], - ["rl53", "rl51"], - ["rl34", "rl35"], - ["rl38", "rl37"], - ["rl45", "rl47"], - ["rl41", "rl43"], - ["rl38", "rl39"], - ["rl39", "rl32"], - ["rl47", "rl43"], - ["rl44", "rl49"], - ["rl37", "rl40"], + // Rear end + {"beamDeform" : 22000}, + ["rl37", "rl34"], + ["rl39", "rl41"], + ["rl44", "rl46"], + ["rl33", "rl36"], + ["rl46", "rl42"], + ["rl31", "rl34"], + ["rl37", "rl30"], + ["rl49", "rl51"], + ["rl52", "rl50"], + ["rl50", "rl46"], + ["rl49", "rl50"], + ["rl42", "rl34"], + ["rl40", "rl44"], + ["rl40", "rl42"], + ["rl41", "rl45"], + ["rl39", "rl36"], + ["rl36", "rl35"], + ["rl38", "rl35"], + ["rl53", "rl54"], + ["rl52", "rl54"], + ["rl51", "rl52"], + ["rl45", "rl53"], + ["rl54", "rl47"], + ["rl43", "rl36"], + ["rl53", "rl51"], + ["rl34", "rl35"], + ["rl38", "rl37"], + ["rl45", "rl47"], + ["rl41", "rl43"], + ["rl38", "rl39"], + ["rl39", "rl32"], + ["rl47", "rl43"], + ["rl44", "rl49"], + ["rl37", "rl40"], - // Crossing beams + // Crossing beams - // Front end - {"beamDeform" : 16000}, - ["rl4", "rl2"], - ["rl0", "rl8"], - ["rl16", "rl10"], - ["rl15", "rl11"], - ["rl10", "rl6"], - ["rl11", "rl8"], - ["rl1", "rl5"], - ["rl4", "rl7"], - ["rl1", "rl9"], - ["rl12", "rl7"], - ["rl3", "rl6"], - ["rl0", "rl5"], - ["rl3", "rl2"], - ["rl13", "rl9"], - ["rl17", "rl13"], - ["rl18", "rl12"], + // Front end + {"beamDeform" : 16000}, + ["rl4", "rl2"], + ["rl0", "rl8"], + ["rl16", "rl10"], + ["rl15", "rl11"], + ["rl10", "rl6"], + ["rl11", "rl8"], + ["rl1", "rl5"], + ["rl4", "rl7"], + ["rl1", "rl9"], + ["rl12", "rl7"], + ["rl3", "rl6"], + ["rl0", "rl5"], + ["rl3", "rl2"], + ["rl13", "rl9"], + ["rl17", "rl13"], + ["rl18", "rl12"], - // Middle - {"beamDeform" : 6500}, - ["rl16", "rl20"], - ["rl15", "rl23"], - ["rl18", "rl28"], - ["rl18", "rl26"], - ["rl17", "rl27"], - ["rl27", "rl24"], - ["rl26", "rl25"], - ["rl31", "rl20"], - ["rl15", "rl21"], - ["rl16", "rl22"], - ["rl32", "rl29"], - ["rl30", "rl21"], - ["rl23", "rl24"], - ["rl32", "rl27"], - ["rl17", "rl29"], - ["rl33", "rl28"], - ["rl29", "rl26"], - ["rl30", "rl23"], - ["rl33", "rl26"], - ["rl22", "rl25"], - ["rl20", "rl23"], - ["rl28", "rl27"], - ["rl31", "rl22"], - ["rl21", "rl22"], + // Middle + {"beamDeform" : 6500}, + ["rl16", "rl20"], + ["rl15", "rl23"], + ["rl18", "rl28"], + ["rl18", "rl26"], + ["rl17", "rl27"], + ["rl27", "rl24"], + ["rl26", "rl25"], + ["rl31", "rl20"], + ["rl15", "rl21"], + ["rl16", "rl22"], + ["rl32", "rl29"], + ["rl30", "rl21"], + ["rl23", "rl24"], + ["rl32", "rl27"], + ["rl17", "rl29"], + ["rl33", "rl28"], + ["rl29", "rl26"], + ["rl30", "rl23"], + ["rl33", "rl26"], + ["rl22", "rl25"], + ["rl20", "rl23"], + ["rl28", "rl27"], + ["rl31", "rl22"], + ["rl21", "rl22"], - // Rear end - {"beamDeform" : 16000}, - ["rl54", "rl45"], - ["rl32", "rl36"], - ["rl36", "rl41"], - ["rl50", "rl51"], - ["rl31", "rl37"], - ["rl30", "rl34"], - ["rl46", "rl40"], - ["rl53", "rl47"], - ["rl50", "rl44"], - ["rl49", "rl46"], - ["rl37", "rl42"], - ["rl34", "rl40"], - ["rl34", "rl38"], - ["rl33", "rl39"], - ["rl39", "rl35"], - ["rl36", "rl38"], - ["rl53", "rl52"], - ["rl54", "rl51"], - ["rl45", "rl43"], - ["rl47", "rl41"], - ["rl39", "rl43"], - ["rl37", "rl35"], - ["rl49", "rl52"], - ["rl44", "rl42"], + // Rear end + {"beamDeform" : 16000}, + ["rl54", "rl45"], + ["rl32", "rl36"], + ["rl36", "rl41"], + ["rl50", "rl51"], + ["rl31", "rl37"], + ["rl30", "rl34"], + ["rl46", "rl40"], + ["rl53", "rl47"], + ["rl50", "rl44"], + ["rl49", "rl46"], + ["rl37", "rl42"], + ["rl34", "rl40"], + ["rl34", "rl38"], + ["rl33", "rl39"], + ["rl39", "rl35"], + ["rl36", "rl38"], + ["rl53", "rl52"], + ["rl54", "rl51"], + ["rl45", "rl43"], + ["rl47", "rl41"], + ["rl39", "rl43"], + ["rl37", "rl35"], + ["rl49", "rl52"], + ["rl44", "rl42"], - // Support beams + // Support beams - // Front end - {"beamDeform" : 19000}, - ["rl8", "rl14"], - ["rl9", "rl14"], - ["rl14", "rl3"], - ["rl10", "rl14"], - ["rl14", "rl13"], - ["rl1", "rl14"], - ["rl0", "rl14"], - ["rl12", "rl14"], - ["rl5", "rl14"], - ["rl14", "rl4"], - ["rl14", "rl6"], - ["rl14", "rl7"], - ["rl14", "rl2"], - ["rl14", "rl11"], + // Front end + {"beamDeform" : 19000}, + ["rl8", "rl14"], + ["rl9", "rl14"], + ["rl14", "rl3"], + ["rl10", "rl14"], + ["rl14", "rl13"], + ["rl1", "rl14"], + ["rl0", "rl14"], + ["rl12", "rl14"], + ["rl5", "rl14"], + ["rl14", "rl4"], + ["rl14", "rl6"], + ["rl14", "rl7"], + ["rl14", "rl2"], + ["rl14", "rl11"], - // Middle - {"beamDeform" : 11000}, - ["rl27", "rl19"], - ["rl26", "rl19"], - ["rl24", "rl19"], - ["rl23", "rl19"], - ["rl20", "rl19"], - ["rl19", "rl16"], - ["rl19", "rl15"], - ["rl31", "rl19"], - ["rl33", "rl19"], - ["rl28", "rl19"], - ["rl19", "rl25"], - ["rl21", "rl19"], - ["rl22", "rl19"], - ["rl19", "rl32"], - ["rl29", "rl19"], - ["rl19", "rl18"], - ["rl19", "rl17"], - ["rl19", "rl30"], + // Middle + {"beamDeform" : 11000}, + ["rl27", "rl19"], + ["rl26", "rl19"], + ["rl24", "rl19"], + ["rl23", "rl19"], + ["rl20", "rl19"], + ["rl19", "rl16"], + ["rl19", "rl15"], + ["rl31", "rl19"], + ["rl33", "rl19"], + ["rl28", "rl19"], + ["rl19", "rl25"], + ["rl21", "rl19"], + ["rl22", "rl19"], + ["rl19", "rl32"], + ["rl29", "rl19"], + ["rl19", "rl18"], + ["rl19", "rl17"], + ["rl19", "rl30"], - // Rear end - {"beamDeform" : 19000}, - ["rl48", "rl51"], - ["rl48", "rl54"], - ["rl45", "rl48"], - ["rl48", "rl50"], - ["rl48", "rl42"], - ["rl48", "rl47"], - ["rl49", "rl48"], - ["rl35", "rl48"], - ["rl48", "rl43"], - ["rl44", "rl48"], - ["rl53", "rl48"], - ["rl52", "rl48"], - ["rl40", "rl48"], - ["rl48", "rl38"], - ["rl41", "rl48"], - ["rl48", "rl46"], + // Rear end + {"beamDeform" : 19000}, + ["rl48", "rl51"], + ["rl48", "rl54"], + ["rl45", "rl48"], + ["rl48", "rl50"], + ["rl48", "rl42"], + ["rl48", "rl47"], + ["rl49", "rl48"], + ["rl35", "rl48"], + ["rl48", "rl43"], + ["rl44", "rl48"], + ["rl53", "rl48"], + ["rl52", "rl48"], + ["rl40", "rl48"], + ["rl48", "rl38"], + ["rl41", "rl48"], + ["rl48", "rl46"], - // Front crush - {"beamDeform" : 8500}, - ["rl17", "rl9"], - ["rl15", "rl8"] - ], - // --Collision Triangles-- - "triangles" : [ - ["id1:", "id2:", "id3:"], - ["rl5", "rl3", "rl2"], - ["rl0", "rl2", "rl3"], - ["rl5", "rl2", "rl4"], - ["rl1", "rl4", "rl2"], - ["rl4", "rl1", "rl7"], - ["rl4", "rl7", "rl9"], - ["rl7", "rl13", "rl9"], - ["rl12", "rl9", "rl13"], - ["rl12", "rl13", "rl18"], - ["rl18", "rl17", "rl12"], - ["rl3", "rl6", "rl0"], - ["rl3", "rl8", "rl6"], - ["rl10", "rl11", "rl8"], - ["rl6", "rl8", "rl11"], - ["rl10", "rl16", "rl11"], - ["rl16", "rl10", "rl15"], - ["rl15", "rl20", "rl16"], - ["rl21", "rl16", "rl20"], - ["rl30", "rl21", "rl20"], - ["rl31", "rl21", "rl30"], - ["rl17", "rl18", "rl28"], - ["rl29", "rl28", "rl18"], - ["rl32", "rl28", "rl29"], - ["rl33", "rl32", "rl29"], - ["rl32", "rl33", "rl39"], - ["rl39", "rl33", "rl36"], - ["rl36", "rl41", "rl39"], - ["rl43", "rl41", "rl36"], - ["rl45", "rl41", "rl43"], - ["rl47", "rl45", "rl43"], - ["rl53", "rl45", "rl47"], - ["rl54", "rl53", "rl47"], - ["rl54", "rl51", "rl53"], - ["rl51", "rl54", "rl52"], - ["rl52", "rl50", "rl51"], - ["rl50", "rl49", "rl51"], - ["rl46", "rl44", "rl49"], - ["rl50", "rl46", "rl49"], - ["rl46", "rl42", "rl44"], - ["rl44", "rl42", "rl40"], - ["rl34", "rl37", "rl40"], - ["rl42", "rl34", "rl40"], - ["rl34", "rl35", "rl37"], - ["rl35", "rl38", "rl37"], - ["rl35", "rl39", "rl38"], - ["rl39", "rl35", "rl36"], - ["rl30", "rl37", "rl31"], - ["rl37", "rl34", "rl31"], - ["rl16", "rl15", "rl22"], - ["rl16", "rl22", "rl23"], - ["rl23", "rl22", "rl21"], - ["rl21", "rl22", "rl20"], - ["rl27", "rl29", "rl26"], - ["rl29", "rl28", "rl26"], - ["rl18", "rl26", "rl17"], - ["rl27", "rl26", "rl18"], - ["rl24", "rl22", "rl23"], - ["rl27", "rl26", "rl24"], - ["rl24", "rl25", "rl27"], - ["rl24", "rl23", "rl25"], - ["rl30", "rl23", "rl22"], - ["rl30", "rl31", "rl23"], - ["rl26", "rl27", "rl32"], - ["rl33", "rl32", "rl27"] - ], - "flexbodies" : [ - ["mesh", "[group]:", "nonFlexMaterials"], - ["rails", ["chassis_rails"]] - ] - } + // Front crush + {"beamDeform" : 8500}, + ["rl17", "rl9"], + ["rl15", "rl8"] + ], + // --Collision Triangles-- + "triangles" : [ + ["id1:", "id2:", "id3:"], + ["rl5", "rl3", "rl2"], + ["rl0", "rl2", "rl3"], + ["rl5", "rl2", "rl4"], + ["rl1", "rl4", "rl2"], + ["rl4", "rl1", "rl7"], + ["rl4", "rl7", "rl9"], + ["rl7", "rl13", "rl9"], + ["rl12", "rl9", "rl13"], + ["rl12", "rl13", "rl18"], + ["rl18", "rl17", "rl12"], + ["rl3", "rl6", "rl0"], + ["rl3", "rl8", "rl6"], + ["rl10", "rl11", "rl8"], + ["rl6", "rl8", "rl11"], + ["rl10", "rl16", "rl11"], + ["rl16", "rl10", "rl15"], + ["rl15", "rl20", "rl16"], + ["rl21", "rl16", "rl20"], + ["rl30", "rl21", "rl20"], + ["rl31", "rl21", "rl30"], + ["rl17", "rl18", "rl28"], + ["rl29", "rl28", "rl18"], + ["rl32", "rl28", "rl29"], + ["rl33", "rl32", "rl29"], + ["rl32", "rl33", "rl39"], + ["rl39", "rl33", "rl36"], + ["rl36", "rl41", "rl39"], + ["rl43", "rl41", "rl36"], + ["rl45", "rl41", "rl43"], + ["rl47", "rl45", "rl43"], + ["rl53", "rl45", "rl47"], + ["rl54", "rl53", "rl47"], + ["rl54", "rl51", "rl53"], + ["rl51", "rl54", "rl52"], + ["rl52", "rl50", "rl51"], + ["rl50", "rl49", "rl51"], + ["rl46", "rl44", "rl49"], + ["rl50", "rl46", "rl49"], + ["rl46", "rl42", "rl44"], + ["rl44", "rl42", "rl40"], + ["rl34", "rl37", "rl40"], + ["rl42", "rl34", "rl40"], + ["rl34", "rl35", "rl37"], + ["rl35", "rl38", "rl37"], + ["rl35", "rl39", "rl38"], + ["rl39", "rl35", "rl36"], + ["rl30", "rl37", "rl31"], + ["rl37", "rl34", "rl31"], + ["rl16", "rl15", "rl22"], + ["rl16", "rl22", "rl23"], + ["rl23", "rl22", "rl21"], + ["rl21", "rl22", "rl20"], + ["rl27", "rl29", "rl26"], + ["rl29", "rl28", "rl26"], + ["rl18", "rl26", "rl17"], + ["rl27", "rl26", "rl18"], + ["rl24", "rl22", "rl23"], + ["rl27", "rl26", "rl24"], + ["rl24", "rl25", "rl27"], + ["rl24", "rl23", "rl25"], + ["rl30", "rl23", "rl22"], + ["rl30", "rl31", "rl23"], + ["rl26", "rl27", "rl32"], + ["rl33", "rl32", "rl27"] + ], + "flexbodies" : [ + ["mesh", "[group]:", "nonFlexMaterials"], + ["rails", ["chassis_rails"]] + ] + } } diff --git a/examples/formatted_jbeam/suspension-minimal-jbfl.jbeam b/examples/formatted_jbeam/suspension-minimal-jbfl.jbeam index 1d1c3f1b..1b6dd6f0 100644 --- a/examples/formatted_jbeam/suspension-minimal-jbfl.jbeam +++ b/examples/formatted_jbeam/suspension-minimal-jbfl.jbeam @@ -1,396 +1,396 @@ { - "chassis_rails" : { - "information" : { - "authors" : "gittarrgy01", - "name" : "" - }, - "slotType" : "main", - /* The purpose of this file is prove that moving metadata along with vertices when - moving vertices works as intended. - See issue for #69 explanation on the transformation part of the codebase. */ - // --Nodes-- - "nodes" : [ - ["id", "posX", "posY", "posZ"], - {"group" : "chassis_rails"}, - {"selfCollision" : false}, - {"nodeWeight" : 3.8}, - ["rl0", 0.523, -2.098, 0.319], - ["rl1", -0.417, -2.098, 0.319], - ["rl2", 0.053, -2.095, 0.319], - ["rl3", 0.523, -2.093, 0.268], - ["rl4", -0.417, -2.093, 0.268], - ["rl5", 0.053, -2.090, 0.269], // ref node front - ["rl6", 0.531, -1.724, 0.341], - ["rl7", -0.424, -1.724, 0.341], - ["rl8", 0.531, -1.721, 0.289], - ["rl9", -0.424, -1.721, 0.289], - ["rl10", 0.547, -1.350, 0.310], - ["rl11", 0.547, -1.350, 0.364], - ["rl12", -0.440, -1.350, 0.310], - ["rl13", -0.440, -1.350, 0.364], - ["rl14", 0.053, -1.314, 0.382], // support - {"selfCollision" : true}, - {"nodeWeight" : 3.5}, - ["rl15", 0.790, -0.919, 0.182], - ["rl16", 0.790, -0.919, 0.233], - ["rl17", -0.683, -0.919, 0.182], - ["rl18", -0.683, -0.919, 0.233], - ["rl19", 0.053, -0.024, 0.578], // support - ["rl20", 0.837, 0.002, 0.182], // ref node left - ["rl21", 0.837, 0.002, 0.233], - ["rl22", 0.415, 0.002, 0.182], - ["rl23", 0.415, 0.002, 0.233], - ["rl24", 0.053, 0.002, 0.182], - ["rl25", 0.053, 0.002, 0.233], - ["rl26", -0.308, 0.002, 0.182], - ["rl27", -0.308, 0.002, 0.233], - ["rl28", -0.730, 0.002, 0.182], // ref node right - ["rl29", -0.730, 0.002, 0.233], - ["rl30", 0.822, 0.791, 0.182], - ["rl31", 0.822, 0.791, 0.233], - ["rl32", -0.715, 0.791, 0.182], - ["rl33", -0.715, 0.791, 0.233], - {"selfCollision" : false}, - ["rl34", 0.651, 1.121, 0.628], - ["rl35", 0.053, 1.121, 0.628], - ["rl36", -0.544, 1.121, 0.628], - ["rl37", 0.651, 1.152, 0.565], - ["rl38", 0.053, 1.152, 0.565], - ["rl39", -0.544, 1.152, 0.565], - ["rl40", 0.602, 1.514, 0.566], - ["rl41", -0.495, 1.514, 0.566], - ["rl42", 0.602, 1.532, 0.623], - ["rl43", -0.495, 1.532, 0.623], - ["rl44", 0.553, 1.654, 0.359], - ["rl45", -0.446, 1.654, 0.359], - ["rl46", 0.553, 1.679, 0.448], - ["rl47", -0.446, 1.679, 0.448], - ["rl48", 0.053, 1.710, 0.565], // support - ["rl49", 0.558, 2.284, 0.364], - ["rl50", 0.558, 2.284, 0.447], - ["rl51", 0.053, 2.284, 0.370], - ["rl52", 0.053, 2.284, 0.441], - ["rl53", -0.451, 2.284, 0.364], - ["rl54", -0.451, 2.284, 0.447], - {"group" : ""} - ], - // --Beams-- - "beams" : [ - ["id1:", "id2:"], + "chassis_rails" : { + "information" : { + "authors" : "gittarrgy01", + "name" : "" + }, + "slotType" : "main", + /* The purpose of this file is prove that moving metadata along with vertices when + moving vertices works as intended. + See issue for #69 explanation on the transformation part of the codebase. */ + // --Nodes-- + "nodes" : [ + ["id", "posX", "posY", "posZ"], + {"group" : "chassis_rails"}, + {"selfCollision" : false}, + {"nodeWeight" : 3.8}, + ["rl0", 0.523, -2.098, 0.319], + ["rl1", -0.417, -2.098, 0.319], + ["rl2", 0.053, -2.095, 0.319], + ["rl3", 0.523, -2.093, 0.268], + ["rl4", -0.417, -2.093, 0.268], + ["rl5", 0.053, -2.090, 0.269], // ref node front + ["rl6", 0.531, -1.724, 0.341], + ["rl7", -0.424, -1.724, 0.341], + ["rl8", 0.531, -1.721, 0.289], + ["rl9", -0.424, -1.721, 0.289], + ["rl10", 0.547, -1.350, 0.310], + ["rl11", 0.547, -1.350, 0.364], + ["rl12", -0.440, -1.350, 0.310], + ["rl13", -0.440, -1.350, 0.364], + ["rl14", 0.053, -1.314, 0.382], // support + {"selfCollision" : true}, + {"nodeWeight" : 3.5}, + ["rl15", 0.790, -0.919, 0.182], + ["rl16", 0.790, -0.919, 0.233], + ["rl17", -0.683, -0.919, 0.182], + ["rl18", -0.683, -0.919, 0.233], + ["rl19", 0.053, -0.024, 0.578], // support + ["rl20", 0.837, 0.002, 0.182], // ref node left + ["rl21", 0.837, 0.002, 0.233], + ["rl22", 0.415, 0.002, 0.182], + ["rl23", 0.415, 0.002, 0.233], + ["rl24", 0.053, 0.002, 0.182], + ["rl25", 0.053, 0.002, 0.233], + ["rl26", -0.308, 0.002, 0.182], + ["rl27", -0.308, 0.002, 0.233], + ["rl28", -0.730, 0.002, 0.182], // ref node right + ["rl29", -0.730, 0.002, 0.233], + ["rl30", 0.822, 0.791, 0.182], + ["rl31", 0.822, 0.791, 0.233], + ["rl32", -0.715, 0.791, 0.182], + ["rl33", -0.715, 0.791, 0.233], + {"selfCollision" : false}, + ["rl34", 0.651, 1.121, 0.628], + ["rl35", 0.053, 1.121, 0.628], + ["rl36", -0.544, 1.121, 0.628], + ["rl37", 0.651, 1.152, 0.565], + ["rl38", 0.053, 1.152, 0.565], + ["rl39", -0.544, 1.152, 0.565], + ["rl40", 0.602, 1.514, 0.566], + ["rl41", -0.495, 1.514, 0.566], + ["rl42", 0.602, 1.532, 0.623], + ["rl43", -0.495, 1.532, 0.623], + ["rl44", 0.553, 1.654, 0.359], + ["rl45", -0.446, 1.654, 0.359], + ["rl46", 0.553, 1.679, 0.448], + ["rl47", -0.446, 1.679, 0.448], + ["rl48", 0.053, 1.710, 0.565], // support + ["rl49", 0.558, 2.284, 0.364], + ["rl50", 0.558, 2.284, 0.447], + ["rl51", 0.053, 2.284, 0.370], + ["rl52", 0.053, 2.284, 0.441], + ["rl53", -0.451, 2.284, 0.364], + ["rl54", -0.451, 2.284, 0.447], + {"group" : ""} + ], + // --Beams-- + "beams" : [ + ["id1:", "id2:"], - // Structural beams - {"beamStrength" : "FLT_MAX", "beamSpring" : "3800000"}, - {"beamDamp" : 130, "deformLimit" : 1.1}, + // Structural beams + {"beamStrength" : "FLT_MAX", "beamSpring" : "3800000"}, + {"beamDamp" : 130, "deformLimit" : 1.1}, - // Front end - {"beamDeform" : 20600, "deformLimit" : 1.1}, - ["rl3", "rl5"], - ["rl0", "rl3"], - ["rl8", "rl3"], - ["rl15", "rl10"], - ["rl8", "rl6"], - ["rl11", "rl10"], - ["rl10", "rl8"], - ["rl9", "rl7"], - ["rl17", "rl12"], - ["rl6", "rl11"], - ["rl11", "rl16"], - ["rl13", "rl18"], - ["rl13", "rl12"], - ["rl1", "rl4"], - ["rl2", "rl1"], - ["rl2", "rl5"], - ["rl12", "rl9"], - ["rl7", "rl13"], - ["rl0", "rl6"], - ["rl9", "rl4"], - ["rl2", "rl0"], - ["rl4", "rl5"], - ["rl1", "rl7"], + // Front end + {"beamDeform" : 20600, "deformLimit" : 1.1}, + ["rl3", "rl5"], + ["rl0", "rl3"], + ["rl8", "rl3"], + ["rl15", "rl10"], + ["rl8", "rl6"], + ["rl11", "rl10"], + ["rl10", "rl8"], + ["rl9", "rl7"], + ["rl17", "rl12"], + ["rl6", "rl11"], + ["rl11", "rl16"], + ["rl13", "rl18"], + ["rl13", "rl12"], + ["rl1", "rl4"], + ["rl2", "rl1"], + ["rl2", "rl5"], + ["rl12", "rl9"], + ["rl7", "rl13"], + ["rl0", "rl6"], + ["rl9", "rl4"], + ["rl2", "rl0"], + ["rl4", "rl5"], + ["rl1", "rl7"], - // Middle - {"beamDeform" : 27000}, - ["rl16", "rl15"], - ["rl20", "rl30"], - ["rl16", "rl23"], - ["rl18", "rl17"], - ["rl17", "rl28"], - ["rl26", "rl17"], - ["rl18", "rl27"], - ["rl26", "rl24"], - ["rl25", "rl24"], - ["rl25", "rl27"], - ["rl21", "rl16"], - ["rl22", "rl15"], - ["rl15", "rl20"], - ["rl29", "rl27"], - ["rl28", "rl32"], - ["rl29", "rl18"], - ["rl22", "rl24"], - ["rl31", "rl21"], - ["rl28", "rl29"], - ["rl32", "rl33"], - ["rl30", "rl31"], - ["rl33", "rl29"], - ["rl30", "rl22"], - ["rl25", "rl23"], - ["rl32", "rl26"], - ["rl20", "rl21"], - ["rl31", "rl23"], - ["rl20", "rl22"], - ["rl21", "rl23"], - ["rl33", "rl27"], - ["rl23", "rl22"], - ["rl28", "rl26"], - ["rl27", "rl26"], + // Middle + {"beamDeform" : 27000}, + ["rl16", "rl15"], + ["rl20", "rl30"], + ["rl16", "rl23"], + ["rl18", "rl17"], + ["rl17", "rl28"], + ["rl26", "rl17"], + ["rl18", "rl27"], + ["rl26", "rl24"], + ["rl25", "rl24"], + ["rl25", "rl27"], + ["rl21", "rl16"], + ["rl22", "rl15"], + ["rl15", "rl20"], + ["rl29", "rl27"], + ["rl28", "rl32"], + ["rl29", "rl18"], + ["rl22", "rl24"], + ["rl31", "rl21"], + ["rl28", "rl29"], + ["rl32", "rl33"], + ["rl30", "rl31"], + ["rl33", "rl29"], + ["rl30", "rl22"], + ["rl25", "rl23"], + ["rl32", "rl26"], + ["rl20", "rl21"], + ["rl31", "rl23"], + ["rl20", "rl22"], + ["rl21", "rl23"], + ["rl33", "rl27"], + ["rl23", "rl22"], + ["rl28", "rl26"], + ["rl27", "rl26"], - // Rear end - {"beamDeform" : 22000}, - ["rl37", "rl34"], - ["rl39", "rl41"], - ["rl44", "rl46"], - ["rl33", "rl36"], - ["rl46", "rl42"], - ["rl31", "rl34"], - ["rl37", "rl30"], - ["rl49", "rl51"], - ["rl52", "rl50"], - ["rl50", "rl46"], - ["rl49", "rl50"], - ["rl42", "rl34"], - ["rl40", "rl44"], - ["rl40", "rl42"], - ["rl41", "rl45"], - ["rl39", "rl36"], - ["rl36", "rl35"], - ["rl38", "rl35"], - ["rl53", "rl54"], - ["rl52", "rl54"], - ["rl51", "rl52"], - ["rl45", "rl53"], - ["rl54", "rl47"], - ["rl43", "rl36"], - ["rl53", "rl51"], - ["rl34", "rl35"], - ["rl38", "rl37"], - ["rl45", "rl47"], - ["rl41", "rl43"], - ["rl38", "rl39"], - ["rl39", "rl32"], - ["rl47", "rl43"], - ["rl44", "rl49"], - ["rl37", "rl40"], + // Rear end + {"beamDeform" : 22000}, + ["rl37", "rl34"], + ["rl39", "rl41"], + ["rl44", "rl46"], + ["rl33", "rl36"], + ["rl46", "rl42"], + ["rl31", "rl34"], + ["rl37", "rl30"], + ["rl49", "rl51"], + ["rl52", "rl50"], + ["rl50", "rl46"], + ["rl49", "rl50"], + ["rl42", "rl34"], + ["rl40", "rl44"], + ["rl40", "rl42"], + ["rl41", "rl45"], + ["rl39", "rl36"], + ["rl36", "rl35"], + ["rl38", "rl35"], + ["rl53", "rl54"], + ["rl52", "rl54"], + ["rl51", "rl52"], + ["rl45", "rl53"], + ["rl54", "rl47"], + ["rl43", "rl36"], + ["rl53", "rl51"], + ["rl34", "rl35"], + ["rl38", "rl37"], + ["rl45", "rl47"], + ["rl41", "rl43"], + ["rl38", "rl39"], + ["rl39", "rl32"], + ["rl47", "rl43"], + ["rl44", "rl49"], + ["rl37", "rl40"], - // Crossing beams + // Crossing beams - // Front end - {"beamDeform" : 16000}, - ["rl4", "rl2"], - ["rl0", "rl8"], - ["rl16", "rl10"], - ["rl15", "rl11"], - ["rl10", "rl6"], - ["rl11", "rl8"], - ["rl1", "rl5"], - ["rl4", "rl7"], - ["rl1", "rl9"], - ["rl12", "rl7"], - ["rl3", "rl6"], - ["rl0", "rl5"], - ["rl3", "rl2"], - ["rl13", "rl9"], - ["rl17", "rl13"], - ["rl18", "rl12"], + // Front end + {"beamDeform" : 16000}, + ["rl4", "rl2"], + ["rl0", "rl8"], + ["rl16", "rl10"], + ["rl15", "rl11"], + ["rl10", "rl6"], + ["rl11", "rl8"], + ["rl1", "rl5"], + ["rl4", "rl7"], + ["rl1", "rl9"], + ["rl12", "rl7"], + ["rl3", "rl6"], + ["rl0", "rl5"], + ["rl3", "rl2"], + ["rl13", "rl9"], + ["rl17", "rl13"], + ["rl18", "rl12"], - // Middle - {"beamDeform" : 6500}, - ["rl16", "rl20"], - ["rl15", "rl23"], - ["rl18", "rl28"], - ["rl18", "rl26"], - ["rl17", "rl27"], - ["rl27", "rl24"], - ["rl26", "rl25"], - ["rl31", "rl20"], - ["rl15", "rl21"], - ["rl16", "rl22"], - ["rl32", "rl29"], - ["rl30", "rl21"], - ["rl23", "rl24"], - ["rl32", "rl27"], - ["rl17", "rl29"], - ["rl33", "rl28"], - ["rl29", "rl26"], - ["rl30", "rl23"], - ["rl33", "rl26"], - ["rl22", "rl25"], - ["rl20", "rl23"], - ["rl28", "rl27"], - ["rl31", "rl22"], - ["rl21", "rl22"], + // Middle + {"beamDeform" : 6500}, + ["rl16", "rl20"], + ["rl15", "rl23"], + ["rl18", "rl28"], + ["rl18", "rl26"], + ["rl17", "rl27"], + ["rl27", "rl24"], + ["rl26", "rl25"], + ["rl31", "rl20"], + ["rl15", "rl21"], + ["rl16", "rl22"], + ["rl32", "rl29"], + ["rl30", "rl21"], + ["rl23", "rl24"], + ["rl32", "rl27"], + ["rl17", "rl29"], + ["rl33", "rl28"], + ["rl29", "rl26"], + ["rl30", "rl23"], + ["rl33", "rl26"], + ["rl22", "rl25"], + ["rl20", "rl23"], + ["rl28", "rl27"], + ["rl31", "rl22"], + ["rl21", "rl22"], - // Rear end - {"beamDeform" : 16000}, - ["rl54", "rl45"], - ["rl32", "rl36"], - ["rl36", "rl41"], - ["rl50", "rl51"], - ["rl31", "rl37"], - ["rl30", "rl34"], - ["rl46", "rl40"], - ["rl53", "rl47"], - ["rl50", "rl44"], - ["rl49", "rl46"], - ["rl37", "rl42"], - ["rl34", "rl40"], - ["rl34", "rl38"], - ["rl33", "rl39"], - ["rl39", "rl35"], - ["rl36", "rl38"], - ["rl53", "rl52"], - ["rl54", "rl51"], - ["rl45", "rl43"], - ["rl47", "rl41"], - ["rl39", "rl43"], - ["rl37", "rl35"], - ["rl49", "rl52"], - ["rl44", "rl42"], + // Rear end + {"beamDeform" : 16000}, + ["rl54", "rl45"], + ["rl32", "rl36"], + ["rl36", "rl41"], + ["rl50", "rl51"], + ["rl31", "rl37"], + ["rl30", "rl34"], + ["rl46", "rl40"], + ["rl53", "rl47"], + ["rl50", "rl44"], + ["rl49", "rl46"], + ["rl37", "rl42"], + ["rl34", "rl40"], + ["rl34", "rl38"], + ["rl33", "rl39"], + ["rl39", "rl35"], + ["rl36", "rl38"], + ["rl53", "rl52"], + ["rl54", "rl51"], + ["rl45", "rl43"], + ["rl47", "rl41"], + ["rl39", "rl43"], + ["rl37", "rl35"], + ["rl49", "rl52"], + ["rl44", "rl42"], - // Support beams + // Support beams - // Front end - {"beamDeform" : 19000}, - ["rl8", "rl14"], - ["rl9", "rl14"], - ["rl14", "rl3"], - ["rl10", "rl14"], - ["rl14", "rl13"], - ["rl1", "rl14"], - ["rl0", "rl14"], - ["rl12", "rl14"], - ["rl5", "rl14"], - ["rl14", "rl4"], - ["rl14", "rl6"], - ["rl14", "rl7"], - ["rl14", "rl2"], - ["rl14", "rl11"], + // Front end + {"beamDeform" : 19000}, + ["rl8", "rl14"], + ["rl9", "rl14"], + ["rl14", "rl3"], + ["rl10", "rl14"], + ["rl14", "rl13"], + ["rl1", "rl14"], + ["rl0", "rl14"], + ["rl12", "rl14"], + ["rl5", "rl14"], + ["rl14", "rl4"], + ["rl14", "rl6"], + ["rl14", "rl7"], + ["rl14", "rl2"], + ["rl14", "rl11"], - // Middle - {"beamDeform" : 11000}, - ["rl27", "rl19"], - ["rl26", "rl19"], - ["rl24", "rl19"], - ["rl23", "rl19"], - ["rl20", "rl19"], - ["rl19", "rl16"], - ["rl19", "rl15"], - ["rl31", "rl19"], - ["rl33", "rl19"], - ["rl28", "rl19"], - ["rl19", "rl25"], - ["rl21", "rl19"], - ["rl22", "rl19"], - ["rl19", "rl32"], - ["rl29", "rl19"], - ["rl19", "rl18"], - ["rl19", "rl17"], - ["rl19", "rl30"], + // Middle + {"beamDeform" : 11000}, + ["rl27", "rl19"], + ["rl26", "rl19"], + ["rl24", "rl19"], + ["rl23", "rl19"], + ["rl20", "rl19"], + ["rl19", "rl16"], + ["rl19", "rl15"], + ["rl31", "rl19"], + ["rl33", "rl19"], + ["rl28", "rl19"], + ["rl19", "rl25"], + ["rl21", "rl19"], + ["rl22", "rl19"], + ["rl19", "rl32"], + ["rl29", "rl19"], + ["rl19", "rl18"], + ["rl19", "rl17"], + ["rl19", "rl30"], - // Rear end - {"beamDeform" : 19000}, - ["rl48", "rl51"], - ["rl48", "rl54"], - ["rl45", "rl48"], - ["rl48", "rl50"], - ["rl48", "rl42"], - ["rl48", "rl47"], - ["rl49", "rl48"], - ["rl35", "rl48"], - ["rl48", "rl43"], - ["rl44", "rl48"], - ["rl53", "rl48"], - ["rl52", "rl48"], - ["rl40", "rl48"], - ["rl48", "rl38"], - ["rl41", "rl48"], - ["rl48", "rl46"], + // Rear end + {"beamDeform" : 19000}, + ["rl48", "rl51"], + ["rl48", "rl54"], + ["rl45", "rl48"], + ["rl48", "rl50"], + ["rl48", "rl42"], + ["rl48", "rl47"], + ["rl49", "rl48"], + ["rl35", "rl48"], + ["rl48", "rl43"], + ["rl44", "rl48"], + ["rl53", "rl48"], + ["rl52", "rl48"], + ["rl40", "rl48"], + ["rl48", "rl38"], + ["rl41", "rl48"], + ["rl48", "rl46"], - // Front crush - {"beamDeform" : 8500}, - ["rl17", "rl9"], - ["rl15", "rl8"] - ], - // --Collision Triangles-- - "triangles" : [ - ["id1:", "id2:", "id3:"], - ["rl5", "rl3", "rl2"], - ["rl0", "rl2", "rl3"], - ["rl5", "rl2", "rl4"], - ["rl1", "rl4", "rl2"], - ["rl4", "rl1", "rl7"], - ["rl4", "rl7", "rl9"], - ["rl7", "rl13", "rl9"], - ["rl12", "rl9", "rl13"], - ["rl12", "rl13", "rl18"], - ["rl18", "rl17", "rl12"], - ["rl3", "rl6", "rl0"], - ["rl3", "rl8", "rl6"], - ["rl10", "rl11", "rl8"], - ["rl6", "rl8", "rl11"], - ["rl10", "rl16", "rl11"], - ["rl16", "rl10", "rl15"], - ["rl15", "rl20", "rl16"], - ["rl21", "rl16", "rl20"], - ["rl30", "rl21", "rl20"], - ["rl31", "rl21", "rl30"], - ["rl17", "rl18", "rl28"], - ["rl29", "rl28", "rl18"], - ["rl32", "rl28", "rl29"], - ["rl33", "rl32", "rl29"], - ["rl32", "rl33", "rl39"], - ["rl39", "rl33", "rl36"], - ["rl36", "rl41", "rl39"], - ["rl43", "rl41", "rl36"], - ["rl45", "rl41", "rl43"], - ["rl47", "rl45", "rl43"], - ["rl53", "rl45", "rl47"], - ["rl54", "rl53", "rl47"], - ["rl54", "rl51", "rl53"], - ["rl51", "rl54", "rl52"], - ["rl52", "rl50", "rl51"], - ["rl50", "rl49", "rl51"], - ["rl46", "rl44", "rl49"], - ["rl50", "rl46", "rl49"], - ["rl46", "rl42", "rl44"], - ["rl44", "rl42", "rl40"], - ["rl34", "rl37", "rl40"], - ["rl42", "rl34", "rl40"], - ["rl34", "rl35", "rl37"], - ["rl35", "rl38", "rl37"], - ["rl35", "rl39", "rl38"], - ["rl39", "rl35", "rl36"], - ["rl30", "rl37", "rl31"], - ["rl37", "rl34", "rl31"], - ["rl16", "rl15", "rl22"], - ["rl16", "rl22", "rl23"], - ["rl23", "rl22", "rl21"], - ["rl21", "rl22", "rl20"], - ["rl27", "rl29", "rl26"], - ["rl29", "rl28", "rl26"], - ["rl18", "rl26", "rl17"], - ["rl27", "rl26", "rl18"], - ["rl24", "rl22", "rl23"], - ["rl27", "rl26", "rl24"], - ["rl24", "rl25", "rl27"], - ["rl24", "rl23", "rl25"], - ["rl30", "rl23", "rl22"], - ["rl30", "rl31", "rl23"], - ["rl26", "rl27", "rl32"], - ["rl33", "rl32", "rl27"] - ], - "flexbodies" : [ - ["mesh", "[group]:", "nonFlexMaterials"], - ["rails", ["chassis_rails"]] - ] - } + // Front crush + {"beamDeform" : 8500}, + ["rl17", "rl9"], + ["rl15", "rl8"] + ], + // --Collision Triangles-- + "triangles" : [ + ["id1:", "id2:", "id3:"], + ["rl5", "rl3", "rl2"], + ["rl0", "rl2", "rl3"], + ["rl5", "rl2", "rl4"], + ["rl1", "rl4", "rl2"], + ["rl4", "rl1", "rl7"], + ["rl4", "rl7", "rl9"], + ["rl7", "rl13", "rl9"], + ["rl12", "rl9", "rl13"], + ["rl12", "rl13", "rl18"], + ["rl18", "rl17", "rl12"], + ["rl3", "rl6", "rl0"], + ["rl3", "rl8", "rl6"], + ["rl10", "rl11", "rl8"], + ["rl6", "rl8", "rl11"], + ["rl10", "rl16", "rl11"], + ["rl16", "rl10", "rl15"], + ["rl15", "rl20", "rl16"], + ["rl21", "rl16", "rl20"], + ["rl30", "rl21", "rl20"], + ["rl31", "rl21", "rl30"], + ["rl17", "rl18", "rl28"], + ["rl29", "rl28", "rl18"], + ["rl32", "rl28", "rl29"], + ["rl33", "rl32", "rl29"], + ["rl32", "rl33", "rl39"], + ["rl39", "rl33", "rl36"], + ["rl36", "rl41", "rl39"], + ["rl43", "rl41", "rl36"], + ["rl45", "rl41", "rl43"], + ["rl47", "rl45", "rl43"], + ["rl53", "rl45", "rl47"], + ["rl54", "rl53", "rl47"], + ["rl54", "rl51", "rl53"], + ["rl51", "rl54", "rl52"], + ["rl52", "rl50", "rl51"], + ["rl50", "rl49", "rl51"], + ["rl46", "rl44", "rl49"], + ["rl50", "rl46", "rl49"], + ["rl46", "rl42", "rl44"], + ["rl44", "rl42", "rl40"], + ["rl34", "rl37", "rl40"], + ["rl42", "rl34", "rl40"], + ["rl34", "rl35", "rl37"], + ["rl35", "rl38", "rl37"], + ["rl35", "rl39", "rl38"], + ["rl39", "rl35", "rl36"], + ["rl30", "rl37", "rl31"], + ["rl37", "rl34", "rl31"], + ["rl16", "rl15", "rl22"], + ["rl16", "rl22", "rl23"], + ["rl23", "rl22", "rl21"], + ["rl21", "rl22", "rl20"], + ["rl27", "rl29", "rl26"], + ["rl29", "rl28", "rl26"], + ["rl18", "rl26", "rl17"], + ["rl27", "rl26", "rl18"], + ["rl24", "rl22", "rl23"], + ["rl27", "rl26", "rl24"], + ["rl24", "rl25", "rl27"], + ["rl24", "rl23", "rl25"], + ["rl30", "rl23", "rl22"], + ["rl30", "rl31", "rl23"], + ["rl26", "rl27", "rl32"], + ["rl33", "rl32", "rl27"] + ], + "flexbodies" : [ + ["mesh", "[group]:", "nonFlexMaterials"], + ["rails", ["chassis_rails"]] + ] + } } diff --git a/examples/jbfl/complex.jbfl b/examples/jbfl/complex.jbfl index fac25f85..77d7e7e1 100644 --- a/examples/jbfl/complex.jbfl +++ b/examples/jbfl/complex.jbfl @@ -1,3 +1,7 @@ +.* { + Indent : 2; +} + /* Default formatting for all numeric node values */ .*.nodes[*][*] { PadDecimals: 3; // Show 3 decimal places for uniformity diff --git a/examples/transformed_jbeam/fender-after-frame-cfg-default.jbeam b/examples/transformed_jbeam/fender-after-frame-cfg-default.jbeam index 711461fa..2b541380 100644 --- a/examples/transformed_jbeam/fender-after-frame-cfg-default.jbeam +++ b/examples/transformed_jbeam/fender-after-frame-cfg-default.jbeam @@ -1,306 +1,306 @@ { - "cot_fender" : { - "information" : { - "authors" : "gittarrgy01", - "name" : "Fenders" - }, - "sounds" : { - "impactMetal" : "event:>Destruction>Props>fender_metal", - "impactGeneric" : "event:>Destruction>Props>fender_generic", - "breakGeneric" : "event:>Destruction>Props>fender_break", - "wind" : false, - "scrapeMetal" : false, - "scrapePlastic" : false - }, - "slotType" : "cot_fender", - "nodes" : [ - ["id", "posX", "posY", "posZ"], - {"nodeWeight" : 0.65}, - {"frictionCoef" : 0.7}, - {"nodeMaterial" : "|NM_METAL"}, - {"collision" : true}, - {"selfCollision" : true}, + "cot_fender" : { + "information" : { + "authors" : "gittarrgy01", + "name" : "Fenders" + }, + "sounds" : { + "impactMetal" : "event:>Destruction>Props>fender_metal", + "impactGeneric" : "event:>Destruction>Props>fender_generic", + "breakGeneric" : "event:>Destruction>Props>fender_break", + "wind" : false, + "scrapeMetal" : false, + "scrapePlastic" : false + }, + "slotType" : "cot_fender", + "nodes" : [ + ["id", "posX", "posY", "posZ"], + {"nodeWeight" : 0.65}, + {"frictionCoef" : 0.7}, + {"nodeMaterial" : "|NM_METAL"}, + {"collision" : true}, + {"selfCollision" : true}, - // Left side - {"group" : "cot_fender_l"}, - ["bfl0", 0.959, -1.762, 0.576], - ["bfl1", 0.855, -1.788, 0.707], - ["bfl2", 0.739, -1.845, 0.716], - ["bfl3", 0.948, -1.435, 0.730], - ["bfl4", 0.756, -1.413, 0.843], - ["bfl5", 0.963, -1.024, 0.112], - ["bfl6", 0.964, -1.072, 0.507], - ["bfl7", 0.778, -1.008, 0.873], - ["bfl8", 0.987, -0.743, 0.109], - ["bfl9", 0.987, -0.744, 0.494], - ["bfl10", 0.812, -0.759, 0.896], + // Left side + {"group" : "cot_fender_l"}, + ["bfl0", 0.959, -1.762, 0.576], + ["bfl1", 0.855, -1.788, 0.707], + ["bfl2", 0.739, -1.845, 0.716], + ["bfl3", 0.948, -1.435, 0.730], + ["bfl4", 0.756, -1.413, 0.843], + ["bfl5", 0.963, -1.024, 0.112], + ["bfl6", 0.964, -1.072, 0.507], + ["bfl7", 0.778, -1.008, 0.873], + ["bfl8", 0.987, -0.743, 0.109], + ["bfl9", 0.987, -0.744, 0.494], + ["bfl10", 0.812, -0.759, 0.896], - // Right side - {"group" : "cot_fender_r"}, - ["bfr0", -0.906, -1.737, 0.578], - ["bfr1", -0.807, -1.769, 0.707], - ["bfr2", -0.691, -1.829, 0.716], - ["bfr3", -0.890, -1.409, 0.729], - ["bfr4", -0.700, -1.397, 0.843], - ["bfr5", -0.899, -1.005, 0.112], - ["bfr6", -0.900, -1.053, 0.508], - ["bfr7", -0.715, -0.991, 0.873], - ["bfr8", -0.916, -0.742, 0.112], - ["bfr9", -0.917, -0.746, 0.494], - ["bfr10", -0.734, -0.746, 0.888], + // Right side + {"group" : "cot_fender_r"}, + ["bfr0", -0.906, -1.737, 0.578], + ["bfr1", -0.807, -1.769, 0.707], + ["bfr2", -0.691, -1.829, 0.716], + ["bfr3", -0.890, -1.409, 0.729], + ["bfr4", -0.700, -1.397, 0.843], + ["bfr5", -0.899, -1.005, 0.112], + ["bfr6", -0.900, -1.053, 0.508], + ["bfr7", -0.715, -0.991, 0.873], + ["bfr8", -0.916, -0.742, 0.112], + ["bfr9", -0.917, -0.746, 0.494], + ["bfr10", -0.734, -0.746, 0.888], - // Support nodes - {"collision" : false}, - {"selfCollision" : false}, - {"nodeWeight" : 1.2}, - {"group" : ""}, - ["bfsl", 0.684, -1.079, 0.507], - ["bfsr", -0.623, -1.064, 0.507] - ], - "beams" : [ - ["id1:", "id2:"], + // Support nodes + {"collision" : false}, + {"selfCollision" : false}, + {"nodeWeight" : 1.2}, + {"group" : ""}, + ["bfsl", 0.684, -1.079, 0.507], + ["bfsr", -0.623, -1.064, 0.507] + ], + "beams" : [ + ["id1:", "id2:"], - // Structural beams - // beamSpring: 451000, beamDamp: 50 - // beamStrength: FLT_MAX - {"beamType" : "|NORMAL"}, - {"beamSpring" : 451000, "beamDamp" : 50}, - {"beamStrength" : "FLT_MAX"}, - {"deformLimitExpansion" : 1.1}, - {"beamDeform" : 6000}, + // Structural beams + // beamSpring: 451000, beamDamp: 50 + // beamStrength: FLT_MAX + {"beamType" : "|NORMAL"}, + {"beamSpring" : 451000, "beamDamp" : 50}, + {"beamStrength" : "FLT_MAX"}, + {"deformLimitExpansion" : 1.1}, + {"beamDeform" : 6000}, - // Front - ["bfr2", "bfr4"], - ["bfr2", "bfr1"], - ["bfr1", "bfr4"], - ["bfl4", "bfl2"], - ["bfl2", "bfl1"], - ["bfl0", "bfl1"], - ["bfl4", "bfl3"], - ["bfl0", "bfl3"], - ["bfr1", "bfr0"], - ["bfr4", "bfr3"], - ["bfr0", "bfr3"], - ["bfl4", "bfl1"], + // Front + ["bfr2", "bfr4"], + ["bfr2", "bfr1"], + ["bfr1", "bfr4"], + ["bfl4", "bfl2"], + ["bfl2", "bfl1"], + ["bfl0", "bfl1"], + ["bfl4", "bfl3"], + ["bfl0", "bfl3"], + ["bfr1", "bfr0"], + ["bfr4", "bfr3"], + ["bfr0", "bfr3"], + ["bfl4", "bfl1"], - // Middle - {"beamDeform" : 12000}, - ["bfl6", "bfl3"], - ["bfr6", "bfr3"], - ["bfl4", "bfl7"], - ["bfr4", "bfr7"], + // Middle + {"beamDeform" : 12000}, + ["bfl6", "bfl3"], + ["bfr6", "bfr3"], + ["bfl4", "bfl7"], + ["bfr4", "bfr7"], - // Rear - ["bfl7", "bfl10"], - ["bfl5", "bfl6"], - ["bfl7", "bfl6"], - ["bfl5", "bfl8"], - ["bfl6", "bfl9"], - ["bfl8", "bfl9"], - ["bfl10", "bfl9"], - ["bfr7", "bfr10"], - ["bfr6", "bfr5"], - ["bfr6", "bfr7"], - ["bfr5", "bfr8"], - ["bfr6", "bfr9"], - ["bfr8", "bfr9"], - ["bfr10", "bfr9"], + // Rear + ["bfl7", "bfl10"], + ["bfl5", "bfl6"], + ["bfl7", "bfl6"], + ["bfl5", "bfl8"], + ["bfl6", "bfl9"], + ["bfl8", "bfl9"], + ["bfl10", "bfl9"], + ["bfr7", "bfr10"], + ["bfr6", "bfr5"], + ["bfr6", "bfr7"], + ["bfr5", "bfr8"], + ["bfr6", "bfr9"], + ["bfr8", "bfr9"], + ["bfr10", "bfr9"], - // Crossing beams - {"deformLimitExpansion" : ""}, + // Crossing beams + {"deformLimitExpansion" : ""}, - // Front - ["bfl0", "bfl4"], - ["bfl4", "bfl6"], - ["bfl7", "bfl3"], - ["bfr4", "bfr6"], - ["bfr7", "bfr3"], - ["bfl1", "bfl3"], - ["bfr3", "bfr1"], - ["bfr4", "bfr0"], + // Front + ["bfl0", "bfl4"], + ["bfl4", "bfl6"], + ["bfl7", "bfl3"], + ["bfr4", "bfr6"], + ["bfr7", "bfr3"], + ["bfl1", "bfl3"], + ["bfr3", "bfr1"], + ["bfr4", "bfr0"], - // Rear - ["bfl6", "bfl10"], - ["bfl7", "bfl9"], - ["bfl5", "bfl9"], - ["bfl6", "bfl8"], - ["bfr6", "bfr10"], - ["bfr7", "bfr9"], - ["bfr5", "bfr9"], - ["bfr6", "bfr8"], + // Rear + ["bfl6", "bfl10"], + ["bfl7", "bfl9"], + ["bfl5", "bfl9"], + ["bfl6", "bfl8"], + ["bfr6", "bfr10"], + ["bfr7", "bfr9"], + ["bfr5", "bfr9"], + ["bfr6", "bfr8"], - // Support beams - ["bfl2", "bfsl"], - ["bfl6", "bfsl"], - ["bfl5", "bfsl"], - ["bfl3", "bfsl"], - ["bfl0", "bfsl"], - ["bfl1", "bfsl"], - ["bfl4", "bfsl"], - ["bfl7", "bfsl"], - ["bfl8", "bfsl"], - ["bfl9", "bfsl"], - ["bfl10", "bfsl"], - ["bfr2", "bfsr"], - ["bfr6", "bfsr"], - ["bfr5", "bfsr"], - ["bfr3", "bfsr"], - ["bfr0", "bfsr"], - ["bfr1", "bfsr"], - ["bfr4", "bfsr"], - ["bfr7", "bfsr"], - ["bfr8", "bfsr"], - ["bfr9", "bfsr"], - ["bfr10", "bfsr"], + // Support beams + ["bfl2", "bfsl"], + ["bfl6", "bfsl"], + ["bfl5", "bfsl"], + ["bfl3", "bfsl"], + ["bfl0", "bfsl"], + ["bfl1", "bfsl"], + ["bfl4", "bfsl"], + ["bfl7", "bfsl"], + ["bfl8", "bfsl"], + ["bfl9", "bfsl"], + ["bfl10", "bfsl"], + ["bfr2", "bfsr"], + ["bfr6", "bfsr"], + ["bfr5", "bfsr"], + ["bfr3", "bfsr"], + ["bfr0", "bfsr"], + ["bfr1", "bfsr"], + ["bfr4", "bfsr"], + ["bfr7", "bfsr"], + ["bfr8", "bfsr"], + ["bfr9", "bfsr"], + ["bfr10", "bfsr"], - // Front rigid - {"beamSpring" : 350000, "beamDamp" : 115}, - {"beamDeform" : 900}, + // Front rigid + {"beamSpring" : 350000, "beamDamp" : 115}, + {"beamDeform" : 900}, - // Left side - ["bfl3", "bfl9"], - ["bfl4", "bfl10"], + // Left side + ["bfl3", "bfl9"], + ["bfl4", "bfl10"], - // Right side - ["bfr3", "bfr9"], - ["bfr4", "bfr10"], + // Right side + ["bfr3", "bfr9"], + ["bfr4", "bfr10"], - // Attachment beams - {"beamType" : "|NORMAL"}, - {"beamSpring" : 501000, "beamDamp" : 75, "beamStrength" : 20000, "beamDeform" : 1000}, - {"deformLimitExpansion" : ""}, + // Attachment beams + {"beamType" : "|NORMAL"}, + {"beamSpring" : 501000, "beamDamp" : 75, "beamStrength" : 20000, "beamDeform" : 1000}, + {"deformLimitExpansion" : ""}, - // Frame + // Frame - // Left side + // Left side - // Front - {"breakGroup" : "fender_l"}, - {"breakGroupType" : 1}, - ["bfl0", "fr17"], - ["bfl0", "fr9"], - ["bfl1", "fr17"], - ["bfl1", "fr9"], - ["bfl2", "fr17"], - ["bfl2", "fr9"], + // Front + {"breakGroup" : "fender_l"}, + {"breakGroupType" : 1}, + ["bfl0", "fr17"], + ["bfl0", "fr9"], + ["bfl1", "fr17"], + ["bfl1", "fr9"], + ["bfl2", "fr17"], + ["bfl2", "fr9"], - // Middle - {"beamDeform" : 18000}, - {"beamStrength" : 4000}, - {"breakGroupType" : 1}, - ["bfl3", "fr17"], - ["bfl4", "fr17"], - ["bfl4", "fr9"], - {"breakGroupType" : 0}, + // Middle + {"beamDeform" : 18000}, + {"beamStrength" : 4000}, + {"breakGroupType" : 1}, + ["bfl3", "fr17"], + ["bfl4", "fr17"], + ["bfl4", "fr9"], + {"breakGroupType" : 0}, - // Rear - {"beamStrength" : 16000, "beamDeform" : 12000}, - ["bfl5", "fr18"], - ["bfl5", "fr27"], - ["bfl6", "fr17"], - ["bfl6", "fr21"], - ["bfl7", "fr17"], - ["bfl7", "fr29"], - ["bfl8", "fr18"], - ["bfl8", "fr27"], - ["bfl9", "fr28"], - ["bfl9", "fr21"], - ["bfl10", "fr17"], - ["bfl10", "fr29"], + // Rear + {"beamStrength" : 16000, "beamDeform" : 12000}, + ["bfl5", "fr18"], + ["bfl5", "fr27"], + ["bfl6", "fr17"], + ["bfl6", "fr21"], + ["bfl7", "fr17"], + ["bfl7", "fr29"], + ["bfl8", "fr18"], + ["bfl8", "fr27"], + ["bfl9", "fr28"], + ["bfl9", "fr21"], + ["bfl10", "fr17"], + ["bfl10", "fr29"], - // Right side + // Right side - // Front - {"beamStrength" : 20000, "beamDeform" : 1000}, - {"breakGroup" : "fender_r"}, - {"breakGroupType" : 1}, - ["bfl0", "rl_fl2"], - ["bfl0", "rl_fl3"], - ["bfl1", "rl_fl3"], - ["bfl2", "rl_fl3"], - ["bfr0", "rl_fr2"], - ["bfr0", "rl_fr3"], - ["bfr1", "rl_fr3"], - ["bfr2", "rl_fr3"], + // Front + {"beamStrength" : 20000, "beamDeform" : 1000}, + {"breakGroup" : "fender_r"}, + {"breakGroupType" : 1}, + ["bfl0", "rl_fl2"], + ["bfl0", "rl_fl3"], + ["bfl1", "rl_fl3"], + ["bfl2", "rl_fl3"], + ["bfr0", "rl_fr2"], + ["bfr0", "rl_fr3"], + ["bfr1", "rl_fr3"], + ["bfr2", "rl_fr3"], - // Middle - {"beamDeform" : 18000}, - {"beamStrength" : 4000}, - {"breakGroupType" : 1}, - ["bfl3", "rl_fl4"], - ["bfl3", "rl_fl5"], - ["bfl4", "rl_fl5"], - ["bfr3", "rl_fr4"], - ["bfr3", "rl_fr5"], - ["bfr4", "rl_fr5"], - {"breakGroupType" : 0}, + // Middle + {"beamDeform" : 18000}, + {"beamStrength" : 4000}, + {"breakGroupType" : 1}, + ["bfl3", "rl_fl4"], + ["bfl3", "rl_fl5"], + ["bfl4", "rl_fl5"], + ["bfr3", "rl_fr4"], + ["bfr3", "rl_fr5"], + ["bfr4", "rl_fr5"], + {"breakGroupType" : 0}, - // Rear - {"beamStrength" : 16000, "beamDeform" : 12000}, - ["bfl5", "rl_f15"], - ["bfl5", "rl_f16"], - ["bfl6", "rl_f15"], - ["bfl6", "rl_f16"], - ["bfl8", "rl_f15"], - ["bfl8", "rl_f16"], - ["bfl9", "rl_f15"], - ["bfl9", "rl_f16"], - ["bfl7", "rl_f16"], - ["bfl10", "rl_f16"], - ["bfr5", "rl_f17"], - ["bfr5", "rl_f18"], - ["bfr6", "rl_f17"], - ["bfr6", "rl_f18"], - ["bfr8", "rl_f17"], - ["bfr8", "rl_f18"], - ["bfr9", "rl_f17"], - ["bfr9", "rl_f18"], - ["bfr7", "rl_f18"], - ["bfr10", "rl_f18"], - {"beamStrength" : 16000, "beamDeform" : "FLT_MAX"}, + // Rear + {"beamStrength" : 16000, "beamDeform" : 12000}, + ["bfl5", "rl_f15"], + ["bfl5", "rl_f16"], + ["bfl6", "rl_f15"], + ["bfl6", "rl_f16"], + ["bfl8", "rl_f15"], + ["bfl8", "rl_f16"], + ["bfl9", "rl_f15"], + ["bfl9", "rl_f16"], + ["bfl7", "rl_f16"], + ["bfl10", "rl_f16"], + ["bfr5", "rl_f17"], + ["bfr5", "rl_f18"], + ["bfr6", "rl_f17"], + ["bfr6", "rl_f18"], + ["bfr8", "rl_f17"], + ["bfr8", "rl_f18"], + ["bfr9", "rl_f17"], + ["bfr9", "rl_f18"], + ["bfr7", "rl_f18"], + ["bfr10", "rl_f18"], + {"beamStrength" : 16000, "beamDeform" : "FLT_MAX"}, - // Body + // Body - // Left side - {"breakGroup" : "fender_l"}, - ["bfl8", "mbl0"], - ["bfl9", "mbl1"], - ["bfl10", "mbl2"], + // Left side + {"breakGroup" : "fender_l"}, + ["bfl8", "mbl0"], + ["bfl9", "mbl1"], + ["bfl10", "mbl2"], - // Right side - {"breakGroup" : "fender_r"}, - ["bfr8", "mbr0"], - ["bfr9", "mbr1"], - ["bfr10", "mbr2"], - {"breakGroup" : "", "breakGroupType" : "", "beamType" : "|NORMAL"} - ], - "triangles" : [ - ["id1:", "id2:", "id3:"], - ["bfl3", "bfl4", "bfl1"], - ["bfl0", "bfl3", "bfl1"], - ["bfl4", "bfl2", "bfl1"], - ["bfl4", "bfl3", "bfl7"], - ["bfl6", "bfl7", "bfl3"], - ["bfl10", "bfl7", "bfl6"], - ["bfl9", "bfl10", "bfl6"], - ["bfl5", "bfl8", "bfl6"], - ["bfl9", "bfl6", "bfl8"], - ["bfr4", "bfr1", "bfr2"], - ["bfr3", "bfr1", "bfr4"], - ["bfr0", "bfr1", "bfr3"], - ["bfr6", "bfr3", "bfr7"], - ["bfr4", "bfr7", "bfr3"], - ["bfr10", "bfr6", "bfr7"], - ["bfr9", "bfr6", "bfr10"], - ["bfr9", "bfr8", "bfr6"], - ["bfr5", "bfr6", "bfr8"] - ], - "flexbodies" : [ - ["mesh", "[group]:", "nonFlexMaterials"], - ["impala_fender_l", ["cot_fender_l"]], - ["impala_fender_inter_l", ["cot_fender_l"]], - ["impala_fender_r", ["cot_fender_r"]], - ["impala_fender_inter_r", ["cot_fender_r"]] - ] - } + // Right side + {"breakGroup" : "fender_r"}, + ["bfr8", "mbr0"], + ["bfr9", "mbr1"], + ["bfr10", "mbr2"], + {"breakGroup" : "", "breakGroupType" : "", "beamType" : "|NORMAL"} + ], + "triangles" : [ + ["id1:", "id2:", "id3:"], + ["bfl3", "bfl4", "bfl1"], + ["bfl0", "bfl3", "bfl1"], + ["bfl4", "bfl2", "bfl1"], + ["bfl4", "bfl3", "bfl7"], + ["bfl6", "bfl7", "bfl3"], + ["bfl10", "bfl7", "bfl6"], + ["bfl9", "bfl10", "bfl6"], + ["bfl5", "bfl8", "bfl6"], + ["bfl9", "bfl6", "bfl8"], + ["bfr4", "bfr1", "bfr2"], + ["bfr3", "bfr1", "bfr4"], + ["bfr0", "bfr1", "bfr3"], + ["bfr6", "bfr3", "bfr7"], + ["bfr4", "bfr7", "bfr3"], + ["bfr10", "bfr6", "bfr7"], + ["bfr9", "bfr6", "bfr10"], + ["bfr9", "bfr8", "bfr6"], + ["bfr5", "bfr6", "bfr8"] + ], + "flexbodies" : [ + ["mesh", "[group]:", "nonFlexMaterials"], + ["impala_fender_l", ["cot_fender_l"]], + ["impala_fender_inter_l", ["cot_fender_l"]], + ["impala_fender_r", ["cot_fender_r"]], + ["impala_fender_inter_r", ["cot_fender_r"]] + ] + } } diff --git a/examples/transformed_jbeam/fender-after-frame-cfg-example.jbeam b/examples/transformed_jbeam/fender-after-frame-cfg-example.jbeam index 711461fa..2b541380 100644 --- a/examples/transformed_jbeam/fender-after-frame-cfg-example.jbeam +++ b/examples/transformed_jbeam/fender-after-frame-cfg-example.jbeam @@ -1,306 +1,306 @@ { - "cot_fender" : { - "information" : { - "authors" : "gittarrgy01", - "name" : "Fenders" - }, - "sounds" : { - "impactMetal" : "event:>Destruction>Props>fender_metal", - "impactGeneric" : "event:>Destruction>Props>fender_generic", - "breakGeneric" : "event:>Destruction>Props>fender_break", - "wind" : false, - "scrapeMetal" : false, - "scrapePlastic" : false - }, - "slotType" : "cot_fender", - "nodes" : [ - ["id", "posX", "posY", "posZ"], - {"nodeWeight" : 0.65}, - {"frictionCoef" : 0.7}, - {"nodeMaterial" : "|NM_METAL"}, - {"collision" : true}, - {"selfCollision" : true}, + "cot_fender" : { + "information" : { + "authors" : "gittarrgy01", + "name" : "Fenders" + }, + "sounds" : { + "impactMetal" : "event:>Destruction>Props>fender_metal", + "impactGeneric" : "event:>Destruction>Props>fender_generic", + "breakGeneric" : "event:>Destruction>Props>fender_break", + "wind" : false, + "scrapeMetal" : false, + "scrapePlastic" : false + }, + "slotType" : "cot_fender", + "nodes" : [ + ["id", "posX", "posY", "posZ"], + {"nodeWeight" : 0.65}, + {"frictionCoef" : 0.7}, + {"nodeMaterial" : "|NM_METAL"}, + {"collision" : true}, + {"selfCollision" : true}, - // Left side - {"group" : "cot_fender_l"}, - ["bfl0", 0.959, -1.762, 0.576], - ["bfl1", 0.855, -1.788, 0.707], - ["bfl2", 0.739, -1.845, 0.716], - ["bfl3", 0.948, -1.435, 0.730], - ["bfl4", 0.756, -1.413, 0.843], - ["bfl5", 0.963, -1.024, 0.112], - ["bfl6", 0.964, -1.072, 0.507], - ["bfl7", 0.778, -1.008, 0.873], - ["bfl8", 0.987, -0.743, 0.109], - ["bfl9", 0.987, -0.744, 0.494], - ["bfl10", 0.812, -0.759, 0.896], + // Left side + {"group" : "cot_fender_l"}, + ["bfl0", 0.959, -1.762, 0.576], + ["bfl1", 0.855, -1.788, 0.707], + ["bfl2", 0.739, -1.845, 0.716], + ["bfl3", 0.948, -1.435, 0.730], + ["bfl4", 0.756, -1.413, 0.843], + ["bfl5", 0.963, -1.024, 0.112], + ["bfl6", 0.964, -1.072, 0.507], + ["bfl7", 0.778, -1.008, 0.873], + ["bfl8", 0.987, -0.743, 0.109], + ["bfl9", 0.987, -0.744, 0.494], + ["bfl10", 0.812, -0.759, 0.896], - // Right side - {"group" : "cot_fender_r"}, - ["bfr0", -0.906, -1.737, 0.578], - ["bfr1", -0.807, -1.769, 0.707], - ["bfr2", -0.691, -1.829, 0.716], - ["bfr3", -0.890, -1.409, 0.729], - ["bfr4", -0.700, -1.397, 0.843], - ["bfr5", -0.899, -1.005, 0.112], - ["bfr6", -0.900, -1.053, 0.508], - ["bfr7", -0.715, -0.991, 0.873], - ["bfr8", -0.916, -0.742, 0.112], - ["bfr9", -0.917, -0.746, 0.494], - ["bfr10", -0.734, -0.746, 0.888], + // Right side + {"group" : "cot_fender_r"}, + ["bfr0", -0.906, -1.737, 0.578], + ["bfr1", -0.807, -1.769, 0.707], + ["bfr2", -0.691, -1.829, 0.716], + ["bfr3", -0.890, -1.409, 0.729], + ["bfr4", -0.700, -1.397, 0.843], + ["bfr5", -0.899, -1.005, 0.112], + ["bfr6", -0.900, -1.053, 0.508], + ["bfr7", -0.715, -0.991, 0.873], + ["bfr8", -0.916, -0.742, 0.112], + ["bfr9", -0.917, -0.746, 0.494], + ["bfr10", -0.734, -0.746, 0.888], - // Support nodes - {"collision" : false}, - {"selfCollision" : false}, - {"nodeWeight" : 1.2}, - {"group" : ""}, - ["bfsl", 0.684, -1.079, 0.507], - ["bfsr", -0.623, -1.064, 0.507] - ], - "beams" : [ - ["id1:", "id2:"], + // Support nodes + {"collision" : false}, + {"selfCollision" : false}, + {"nodeWeight" : 1.2}, + {"group" : ""}, + ["bfsl", 0.684, -1.079, 0.507], + ["bfsr", -0.623, -1.064, 0.507] + ], + "beams" : [ + ["id1:", "id2:"], - // Structural beams - // beamSpring: 451000, beamDamp: 50 - // beamStrength: FLT_MAX - {"beamType" : "|NORMAL"}, - {"beamSpring" : 451000, "beamDamp" : 50}, - {"beamStrength" : "FLT_MAX"}, - {"deformLimitExpansion" : 1.1}, - {"beamDeform" : 6000}, + // Structural beams + // beamSpring: 451000, beamDamp: 50 + // beamStrength: FLT_MAX + {"beamType" : "|NORMAL"}, + {"beamSpring" : 451000, "beamDamp" : 50}, + {"beamStrength" : "FLT_MAX"}, + {"deformLimitExpansion" : 1.1}, + {"beamDeform" : 6000}, - // Front - ["bfr2", "bfr4"], - ["bfr2", "bfr1"], - ["bfr1", "bfr4"], - ["bfl4", "bfl2"], - ["bfl2", "bfl1"], - ["bfl0", "bfl1"], - ["bfl4", "bfl3"], - ["bfl0", "bfl3"], - ["bfr1", "bfr0"], - ["bfr4", "bfr3"], - ["bfr0", "bfr3"], - ["bfl4", "bfl1"], + // Front + ["bfr2", "bfr4"], + ["bfr2", "bfr1"], + ["bfr1", "bfr4"], + ["bfl4", "bfl2"], + ["bfl2", "bfl1"], + ["bfl0", "bfl1"], + ["bfl4", "bfl3"], + ["bfl0", "bfl3"], + ["bfr1", "bfr0"], + ["bfr4", "bfr3"], + ["bfr0", "bfr3"], + ["bfl4", "bfl1"], - // Middle - {"beamDeform" : 12000}, - ["bfl6", "bfl3"], - ["bfr6", "bfr3"], - ["bfl4", "bfl7"], - ["bfr4", "bfr7"], + // Middle + {"beamDeform" : 12000}, + ["bfl6", "bfl3"], + ["bfr6", "bfr3"], + ["bfl4", "bfl7"], + ["bfr4", "bfr7"], - // Rear - ["bfl7", "bfl10"], - ["bfl5", "bfl6"], - ["bfl7", "bfl6"], - ["bfl5", "bfl8"], - ["bfl6", "bfl9"], - ["bfl8", "bfl9"], - ["bfl10", "bfl9"], - ["bfr7", "bfr10"], - ["bfr6", "bfr5"], - ["bfr6", "bfr7"], - ["bfr5", "bfr8"], - ["bfr6", "bfr9"], - ["bfr8", "bfr9"], - ["bfr10", "bfr9"], + // Rear + ["bfl7", "bfl10"], + ["bfl5", "bfl6"], + ["bfl7", "bfl6"], + ["bfl5", "bfl8"], + ["bfl6", "bfl9"], + ["bfl8", "bfl9"], + ["bfl10", "bfl9"], + ["bfr7", "bfr10"], + ["bfr6", "bfr5"], + ["bfr6", "bfr7"], + ["bfr5", "bfr8"], + ["bfr6", "bfr9"], + ["bfr8", "bfr9"], + ["bfr10", "bfr9"], - // Crossing beams - {"deformLimitExpansion" : ""}, + // Crossing beams + {"deformLimitExpansion" : ""}, - // Front - ["bfl0", "bfl4"], - ["bfl4", "bfl6"], - ["bfl7", "bfl3"], - ["bfr4", "bfr6"], - ["bfr7", "bfr3"], - ["bfl1", "bfl3"], - ["bfr3", "bfr1"], - ["bfr4", "bfr0"], + // Front + ["bfl0", "bfl4"], + ["bfl4", "bfl6"], + ["bfl7", "bfl3"], + ["bfr4", "bfr6"], + ["bfr7", "bfr3"], + ["bfl1", "bfl3"], + ["bfr3", "bfr1"], + ["bfr4", "bfr0"], - // Rear - ["bfl6", "bfl10"], - ["bfl7", "bfl9"], - ["bfl5", "bfl9"], - ["bfl6", "bfl8"], - ["bfr6", "bfr10"], - ["bfr7", "bfr9"], - ["bfr5", "bfr9"], - ["bfr6", "bfr8"], + // Rear + ["bfl6", "bfl10"], + ["bfl7", "bfl9"], + ["bfl5", "bfl9"], + ["bfl6", "bfl8"], + ["bfr6", "bfr10"], + ["bfr7", "bfr9"], + ["bfr5", "bfr9"], + ["bfr6", "bfr8"], - // Support beams - ["bfl2", "bfsl"], - ["bfl6", "bfsl"], - ["bfl5", "bfsl"], - ["bfl3", "bfsl"], - ["bfl0", "bfsl"], - ["bfl1", "bfsl"], - ["bfl4", "bfsl"], - ["bfl7", "bfsl"], - ["bfl8", "bfsl"], - ["bfl9", "bfsl"], - ["bfl10", "bfsl"], - ["bfr2", "bfsr"], - ["bfr6", "bfsr"], - ["bfr5", "bfsr"], - ["bfr3", "bfsr"], - ["bfr0", "bfsr"], - ["bfr1", "bfsr"], - ["bfr4", "bfsr"], - ["bfr7", "bfsr"], - ["bfr8", "bfsr"], - ["bfr9", "bfsr"], - ["bfr10", "bfsr"], + // Support beams + ["bfl2", "bfsl"], + ["bfl6", "bfsl"], + ["bfl5", "bfsl"], + ["bfl3", "bfsl"], + ["bfl0", "bfsl"], + ["bfl1", "bfsl"], + ["bfl4", "bfsl"], + ["bfl7", "bfsl"], + ["bfl8", "bfsl"], + ["bfl9", "bfsl"], + ["bfl10", "bfsl"], + ["bfr2", "bfsr"], + ["bfr6", "bfsr"], + ["bfr5", "bfsr"], + ["bfr3", "bfsr"], + ["bfr0", "bfsr"], + ["bfr1", "bfsr"], + ["bfr4", "bfsr"], + ["bfr7", "bfsr"], + ["bfr8", "bfsr"], + ["bfr9", "bfsr"], + ["bfr10", "bfsr"], - // Front rigid - {"beamSpring" : 350000, "beamDamp" : 115}, - {"beamDeform" : 900}, + // Front rigid + {"beamSpring" : 350000, "beamDamp" : 115}, + {"beamDeform" : 900}, - // Left side - ["bfl3", "bfl9"], - ["bfl4", "bfl10"], + // Left side + ["bfl3", "bfl9"], + ["bfl4", "bfl10"], - // Right side - ["bfr3", "bfr9"], - ["bfr4", "bfr10"], + // Right side + ["bfr3", "bfr9"], + ["bfr4", "bfr10"], - // Attachment beams - {"beamType" : "|NORMAL"}, - {"beamSpring" : 501000, "beamDamp" : 75, "beamStrength" : 20000, "beamDeform" : 1000}, - {"deformLimitExpansion" : ""}, + // Attachment beams + {"beamType" : "|NORMAL"}, + {"beamSpring" : 501000, "beamDamp" : 75, "beamStrength" : 20000, "beamDeform" : 1000}, + {"deformLimitExpansion" : ""}, - // Frame + // Frame - // Left side + // Left side - // Front - {"breakGroup" : "fender_l"}, - {"breakGroupType" : 1}, - ["bfl0", "fr17"], - ["bfl0", "fr9"], - ["bfl1", "fr17"], - ["bfl1", "fr9"], - ["bfl2", "fr17"], - ["bfl2", "fr9"], + // Front + {"breakGroup" : "fender_l"}, + {"breakGroupType" : 1}, + ["bfl0", "fr17"], + ["bfl0", "fr9"], + ["bfl1", "fr17"], + ["bfl1", "fr9"], + ["bfl2", "fr17"], + ["bfl2", "fr9"], - // Middle - {"beamDeform" : 18000}, - {"beamStrength" : 4000}, - {"breakGroupType" : 1}, - ["bfl3", "fr17"], - ["bfl4", "fr17"], - ["bfl4", "fr9"], - {"breakGroupType" : 0}, + // Middle + {"beamDeform" : 18000}, + {"beamStrength" : 4000}, + {"breakGroupType" : 1}, + ["bfl3", "fr17"], + ["bfl4", "fr17"], + ["bfl4", "fr9"], + {"breakGroupType" : 0}, - // Rear - {"beamStrength" : 16000, "beamDeform" : 12000}, - ["bfl5", "fr18"], - ["bfl5", "fr27"], - ["bfl6", "fr17"], - ["bfl6", "fr21"], - ["bfl7", "fr17"], - ["bfl7", "fr29"], - ["bfl8", "fr18"], - ["bfl8", "fr27"], - ["bfl9", "fr28"], - ["bfl9", "fr21"], - ["bfl10", "fr17"], - ["bfl10", "fr29"], + // Rear + {"beamStrength" : 16000, "beamDeform" : 12000}, + ["bfl5", "fr18"], + ["bfl5", "fr27"], + ["bfl6", "fr17"], + ["bfl6", "fr21"], + ["bfl7", "fr17"], + ["bfl7", "fr29"], + ["bfl8", "fr18"], + ["bfl8", "fr27"], + ["bfl9", "fr28"], + ["bfl9", "fr21"], + ["bfl10", "fr17"], + ["bfl10", "fr29"], - // Right side + // Right side - // Front - {"beamStrength" : 20000, "beamDeform" : 1000}, - {"breakGroup" : "fender_r"}, - {"breakGroupType" : 1}, - ["bfl0", "rl_fl2"], - ["bfl0", "rl_fl3"], - ["bfl1", "rl_fl3"], - ["bfl2", "rl_fl3"], - ["bfr0", "rl_fr2"], - ["bfr0", "rl_fr3"], - ["bfr1", "rl_fr3"], - ["bfr2", "rl_fr3"], + // Front + {"beamStrength" : 20000, "beamDeform" : 1000}, + {"breakGroup" : "fender_r"}, + {"breakGroupType" : 1}, + ["bfl0", "rl_fl2"], + ["bfl0", "rl_fl3"], + ["bfl1", "rl_fl3"], + ["bfl2", "rl_fl3"], + ["bfr0", "rl_fr2"], + ["bfr0", "rl_fr3"], + ["bfr1", "rl_fr3"], + ["bfr2", "rl_fr3"], - // Middle - {"beamDeform" : 18000}, - {"beamStrength" : 4000}, - {"breakGroupType" : 1}, - ["bfl3", "rl_fl4"], - ["bfl3", "rl_fl5"], - ["bfl4", "rl_fl5"], - ["bfr3", "rl_fr4"], - ["bfr3", "rl_fr5"], - ["bfr4", "rl_fr5"], - {"breakGroupType" : 0}, + // Middle + {"beamDeform" : 18000}, + {"beamStrength" : 4000}, + {"breakGroupType" : 1}, + ["bfl3", "rl_fl4"], + ["bfl3", "rl_fl5"], + ["bfl4", "rl_fl5"], + ["bfr3", "rl_fr4"], + ["bfr3", "rl_fr5"], + ["bfr4", "rl_fr5"], + {"breakGroupType" : 0}, - // Rear - {"beamStrength" : 16000, "beamDeform" : 12000}, - ["bfl5", "rl_f15"], - ["bfl5", "rl_f16"], - ["bfl6", "rl_f15"], - ["bfl6", "rl_f16"], - ["bfl8", "rl_f15"], - ["bfl8", "rl_f16"], - ["bfl9", "rl_f15"], - ["bfl9", "rl_f16"], - ["bfl7", "rl_f16"], - ["bfl10", "rl_f16"], - ["bfr5", "rl_f17"], - ["bfr5", "rl_f18"], - ["bfr6", "rl_f17"], - ["bfr6", "rl_f18"], - ["bfr8", "rl_f17"], - ["bfr8", "rl_f18"], - ["bfr9", "rl_f17"], - ["bfr9", "rl_f18"], - ["bfr7", "rl_f18"], - ["bfr10", "rl_f18"], - {"beamStrength" : 16000, "beamDeform" : "FLT_MAX"}, + // Rear + {"beamStrength" : 16000, "beamDeform" : 12000}, + ["bfl5", "rl_f15"], + ["bfl5", "rl_f16"], + ["bfl6", "rl_f15"], + ["bfl6", "rl_f16"], + ["bfl8", "rl_f15"], + ["bfl8", "rl_f16"], + ["bfl9", "rl_f15"], + ["bfl9", "rl_f16"], + ["bfl7", "rl_f16"], + ["bfl10", "rl_f16"], + ["bfr5", "rl_f17"], + ["bfr5", "rl_f18"], + ["bfr6", "rl_f17"], + ["bfr6", "rl_f18"], + ["bfr8", "rl_f17"], + ["bfr8", "rl_f18"], + ["bfr9", "rl_f17"], + ["bfr9", "rl_f18"], + ["bfr7", "rl_f18"], + ["bfr10", "rl_f18"], + {"beamStrength" : 16000, "beamDeform" : "FLT_MAX"}, - // Body + // Body - // Left side - {"breakGroup" : "fender_l"}, - ["bfl8", "mbl0"], - ["bfl9", "mbl1"], - ["bfl10", "mbl2"], + // Left side + {"breakGroup" : "fender_l"}, + ["bfl8", "mbl0"], + ["bfl9", "mbl1"], + ["bfl10", "mbl2"], - // Right side - {"breakGroup" : "fender_r"}, - ["bfr8", "mbr0"], - ["bfr9", "mbr1"], - ["bfr10", "mbr2"], - {"breakGroup" : "", "breakGroupType" : "", "beamType" : "|NORMAL"} - ], - "triangles" : [ - ["id1:", "id2:", "id3:"], - ["bfl3", "bfl4", "bfl1"], - ["bfl0", "bfl3", "bfl1"], - ["bfl4", "bfl2", "bfl1"], - ["bfl4", "bfl3", "bfl7"], - ["bfl6", "bfl7", "bfl3"], - ["bfl10", "bfl7", "bfl6"], - ["bfl9", "bfl10", "bfl6"], - ["bfl5", "bfl8", "bfl6"], - ["bfl9", "bfl6", "bfl8"], - ["bfr4", "bfr1", "bfr2"], - ["bfr3", "bfr1", "bfr4"], - ["bfr0", "bfr1", "bfr3"], - ["bfr6", "bfr3", "bfr7"], - ["bfr4", "bfr7", "bfr3"], - ["bfr10", "bfr6", "bfr7"], - ["bfr9", "bfr6", "bfr10"], - ["bfr9", "bfr8", "bfr6"], - ["bfr5", "bfr6", "bfr8"] - ], - "flexbodies" : [ - ["mesh", "[group]:", "nonFlexMaterials"], - ["impala_fender_l", ["cot_fender_l"]], - ["impala_fender_inter_l", ["cot_fender_l"]], - ["impala_fender_r", ["cot_fender_r"]], - ["impala_fender_inter_r", ["cot_fender_r"]] - ] - } + // Right side + {"breakGroup" : "fender_r"}, + ["bfr8", "mbr0"], + ["bfr9", "mbr1"], + ["bfr10", "mbr2"], + {"breakGroup" : "", "breakGroupType" : "", "beamType" : "|NORMAL"} + ], + "triangles" : [ + ["id1:", "id2:", "id3:"], + ["bfl3", "bfl4", "bfl1"], + ["bfl0", "bfl3", "bfl1"], + ["bfl4", "bfl2", "bfl1"], + ["bfl4", "bfl3", "bfl7"], + ["bfl6", "bfl7", "bfl3"], + ["bfl10", "bfl7", "bfl6"], + ["bfl9", "bfl10", "bfl6"], + ["bfl5", "bfl8", "bfl6"], + ["bfl9", "bfl6", "bfl8"], + ["bfr4", "bfr1", "bfr2"], + ["bfr3", "bfr1", "bfr4"], + ["bfr0", "bfr1", "bfr3"], + ["bfr6", "bfr3", "bfr7"], + ["bfr4", "bfr7", "bfr3"], + ["bfr10", "bfr6", "bfr7"], + ["bfr9", "bfr6", "bfr10"], + ["bfr9", "bfr8", "bfr6"], + ["bfr5", "bfr6", "bfr8"] + ], + "flexbodies" : [ + ["mesh", "[group]:", "nonFlexMaterials"], + ["impala_fender_l", ["cot_fender_l"]], + ["impala_fender_inter_l", ["cot_fender_l"]], + ["impala_fender_r", ["cot_fender_r"]], + ["impala_fender_inter_r", ["cot_fender_r"]] + ] + } } diff --git a/examples/transformed_jbeam/fender-cfg-default.jbeam b/examples/transformed_jbeam/fender-cfg-default.jbeam index c5438a58..467ca55c 100644 --- a/examples/transformed_jbeam/fender-cfg-default.jbeam +++ b/examples/transformed_jbeam/fender-cfg-default.jbeam @@ -1,306 +1,306 @@ { - "cot_fender" : { - "information" : { - "authors" : "gittarrgy01", - "name" : "Fenders" - }, - "sounds" : { - "impactMetal" : "event:>Destruction>Props>fender_metal", - "impactGeneric" : "event:>Destruction>Props>fender_generic", - "breakGeneric" : "event:>Destruction>Props>fender_break", - "wind" : false, - "scrapeMetal" : false, - "scrapePlastic" : false - }, - "slotType" : "cot_fender", - "nodes" : [ - ["id", "posX", "posY", "posZ"], - {"frictionCoef" : 0.7}, - {"nodeMaterial" : "|NM_METAL"}, + "cot_fender" : { + "information" : { + "authors" : "gittarrgy01", + "name" : "Fenders" + }, + "sounds" : { + "impactMetal" : "event:>Destruction>Props>fender_metal", + "impactGeneric" : "event:>Destruction>Props>fender_generic", + "breakGeneric" : "event:>Destruction>Props>fender_break", + "wind" : false, + "scrapeMetal" : false, + "scrapePlastic" : false + }, + "slotType" : "cot_fender", + "nodes" : [ + ["id", "posX", "posY", "posZ"], + {"frictionCoef" : 0.7}, + {"nodeMaterial" : "|NM_METAL"}, - // Left side - {"collision" : true}, - {"group" : "cot_fender_l"}, - {"nodeWeight" : 0.65}, - {"selfCollision" : true}, - ["bfl0", 0.739, -1.845, 0.716], - ["bfl1", 0.959, -1.762, 0.576], - ["bfl2", 0.855, -1.788, 0.707], - ["bfl3", 0.948, -1.435, 0.730], - ["bfl4", 0.756, -1.413, 0.843], - ["bfl5", 0.963, -1.024, 0.112], - ["bfl6", 0.964, -1.072, 0.507], - ["bfl7", 0.778, -1.008, 0.873], - ["bfl8", 0.987, -0.743, 0.109], - ["bfl9", 0.987, -0.744, 0.494], - ["bfl10", 0.812, -0.759, 0.896], + // Left side + {"collision" : true}, + {"group" : "cot_fender_l"}, + {"nodeWeight" : 0.65}, + {"selfCollision" : true}, + ["bfl0", 0.739, -1.845, 0.716], + ["bfl1", 0.959, -1.762, 0.576], + ["bfl2", 0.855, -1.788, 0.707], + ["bfl3", 0.948, -1.435, 0.730], + ["bfl4", 0.756, -1.413, 0.843], + ["bfl5", 0.963, -1.024, 0.112], + ["bfl6", 0.964, -1.072, 0.507], + ["bfl7", 0.778, -1.008, 0.873], + ["bfl8", 0.987, -0.743, 0.109], + ["bfl9", 0.987, -0.744, 0.494], + ["bfl10", 0.812, -0.759, 0.896], - // Right side - {"group" : "cot_fender_r"}, - ["bfr0", -0.691, -1.829, 0.716], - ["bfr1", -0.906, -1.737, 0.578], - ["bfr2", -0.807, -1.769, 0.707], - ["bfr3", -0.890, -1.409, 0.729], - ["bfr4", -0.700, -1.397, 0.843], - ["bfr5", -0.899, -1.005, 0.112], - ["bfr6", -0.900, -1.053, 0.508], - ["bfr7", -0.715, -0.991, 0.873], - ["bfr8", -0.916, -0.742, 0.112], - ["bfr9", -0.917, -0.746, 0.494], - ["bfr10", -0.734, -0.746, 0.888], + // Right side + {"group" : "cot_fender_r"}, + ["bfr0", -0.691, -1.829, 0.716], + ["bfr1", -0.906, -1.737, 0.578], + ["bfr2", -0.807, -1.769, 0.707], + ["bfr3", -0.890, -1.409, 0.729], + ["bfr4", -0.700, -1.397, 0.843], + ["bfr5", -0.899, -1.005, 0.112], + ["bfr6", -0.900, -1.053, 0.508], + ["bfr7", -0.715, -0.991, 0.873], + ["bfr8", -0.916, -0.742, 0.112], + ["bfr9", -0.917, -0.746, 0.494], + ["bfr10", -0.734, -0.746, 0.888], - // Support nodes - {"collision" : false}, - {"group" : ""}, - {"nodeWeight" : 1.2}, - {"selfCollision" : false}, - ["bfsl", 0.684, -1.079, 0.507], - ["bfsr", -0.623, -1.064, 0.507] - ], - "beams" : [ - ["id1:", "id2:"], + // Support nodes + {"collision" : false}, + {"group" : ""}, + {"nodeWeight" : 1.2}, + {"selfCollision" : false}, + ["bfsl", 0.684, -1.079, 0.507], + ["bfsr", -0.623, -1.064, 0.507] + ], + "beams" : [ + ["id1:", "id2:"], - // Structural beams - // beamSpring: 451000, beamDamp: 50 - // beamStrength: FLT_MAX - {"beamType" : "|NORMAL"}, - {"beamSpring" : 451000, "beamDamp" : 50}, - {"beamStrength" : "FLT_MAX"}, - {"deformLimitExpansion" : 1.1}, - {"beamDeform" : 6000}, + // Structural beams + // beamSpring: 451000, beamDamp: 50 + // beamStrength: FLT_MAX + {"beamType" : "|NORMAL"}, + {"beamSpring" : 451000, "beamDamp" : 50}, + {"beamStrength" : "FLT_MAX"}, + {"deformLimitExpansion" : 1.1}, + {"beamDeform" : 6000}, - // Front - ["bfr0", "bfr4"], - ["bfr0", "bfr2"], - ["bfr2", "bfr4"], - ["bfl4", "bfl0"], - ["bfl0", "bfl2"], - ["bfl1", "bfl2"], - ["bfl4", "bfl3"], - ["bfl1", "bfl3"], - ["bfr2", "bfr1"], - ["bfr4", "bfr3"], - ["bfr1", "bfr3"], - ["bfl4", "bfl2"], + // Front + ["bfr0", "bfr4"], + ["bfr0", "bfr2"], + ["bfr2", "bfr4"], + ["bfl4", "bfl0"], + ["bfl0", "bfl2"], + ["bfl1", "bfl2"], + ["bfl4", "bfl3"], + ["bfl1", "bfl3"], + ["bfr2", "bfr1"], + ["bfr4", "bfr3"], + ["bfr1", "bfr3"], + ["bfl4", "bfl2"], - // Middle - {"beamDeform" : 12000}, - ["bfl6", "bfl3"], - ["bfr6", "bfr3"], - ["bfl4", "bfl7"], - ["bfr4", "bfr7"], + // Middle + {"beamDeform" : 12000}, + ["bfl6", "bfl3"], + ["bfr6", "bfr3"], + ["bfl4", "bfl7"], + ["bfr4", "bfr7"], - // Rear - ["bfl7", "bfl10"], - ["bfl5", "bfl6"], - ["bfl7", "bfl6"], - ["bfl5", "bfl8"], - ["bfl6", "bfl9"], - ["bfl8", "bfl9"], - ["bfl10", "bfl9"], - ["bfr7", "bfr10"], - ["bfr6", "bfr5"], - ["bfr6", "bfr7"], - ["bfr5", "bfr8"], - ["bfr6", "bfr9"], - ["bfr8", "bfr9"], - ["bfr10", "bfr9"], + // Rear + ["bfl7", "bfl10"], + ["bfl5", "bfl6"], + ["bfl7", "bfl6"], + ["bfl5", "bfl8"], + ["bfl6", "bfl9"], + ["bfl8", "bfl9"], + ["bfl10", "bfl9"], + ["bfr7", "bfr10"], + ["bfr6", "bfr5"], + ["bfr6", "bfr7"], + ["bfr5", "bfr8"], + ["bfr6", "bfr9"], + ["bfr8", "bfr9"], + ["bfr10", "bfr9"], - // Crossing beams - {"deformLimitExpansion" : ""}, + // Crossing beams + {"deformLimitExpansion" : ""}, - // Front - ["bfl1", "bfl4"], - ["bfl4", "bfl6"], - ["bfl7", "bfl3"], - ["bfr4", "bfr6"], - ["bfr7", "bfr3"], - ["bfl2", "bfl3"], - ["bfr3", "bfr2"], - ["bfr4", "bfr1"], + // Front + ["bfl1", "bfl4"], + ["bfl4", "bfl6"], + ["bfl7", "bfl3"], + ["bfr4", "bfr6"], + ["bfr7", "bfr3"], + ["bfl2", "bfl3"], + ["bfr3", "bfr2"], + ["bfr4", "bfr1"], - // Rear - ["bfl6", "bfl10"], - ["bfl7", "bfl9"], - ["bfl5", "bfl9"], - ["bfl6", "bfl8"], - ["bfr6", "bfr10"], - ["bfr7", "bfr9"], - ["bfr5", "bfr9"], - ["bfr6", "bfr8"], + // Rear + ["bfl6", "bfl10"], + ["bfl7", "bfl9"], + ["bfl5", "bfl9"], + ["bfl6", "bfl8"], + ["bfr6", "bfr10"], + ["bfr7", "bfr9"], + ["bfr5", "bfr9"], + ["bfr6", "bfr8"], - // Support beams - ["bfl0", "bfsl"], - ["bfl6", "bfsl"], - ["bfl5", "bfsl"], - ["bfl3", "bfsl"], - ["bfl1", "bfsl"], - ["bfl2", "bfsl"], - ["bfl4", "bfsl"], - ["bfl7", "bfsl"], - ["bfl8", "bfsl"], - ["bfl9", "bfsl"], - ["bfl10", "bfsl"], - ["bfr0", "bfsr"], - ["bfr6", "bfsr"], - ["bfr5", "bfsr"], - ["bfr3", "bfsr"], - ["bfr1", "bfsr"], - ["bfr2", "bfsr"], - ["bfr4", "bfsr"], - ["bfr7", "bfsr"], - ["bfr8", "bfsr"], - ["bfr9", "bfsr"], - ["bfr10", "bfsr"], + // Support beams + ["bfl0", "bfsl"], + ["bfl6", "bfsl"], + ["bfl5", "bfsl"], + ["bfl3", "bfsl"], + ["bfl1", "bfsl"], + ["bfl2", "bfsl"], + ["bfl4", "bfsl"], + ["bfl7", "bfsl"], + ["bfl8", "bfsl"], + ["bfl9", "bfsl"], + ["bfl10", "bfsl"], + ["bfr0", "bfsr"], + ["bfr6", "bfsr"], + ["bfr5", "bfsr"], + ["bfr3", "bfsr"], + ["bfr1", "bfsr"], + ["bfr2", "bfsr"], + ["bfr4", "bfsr"], + ["bfr7", "bfsr"], + ["bfr8", "bfsr"], + ["bfr9", "bfsr"], + ["bfr10", "bfsr"], - // Front rigid - {"beamSpring" : 350000, "beamDamp" : 115}, - {"beamDeform" : 900}, + // Front rigid + {"beamSpring" : 350000, "beamDamp" : 115}, + {"beamDeform" : 900}, - // Left side - ["bfl3", "bfl9"], - ["bfl4", "bfl10"], + // Left side + ["bfl3", "bfl9"], + ["bfl4", "bfl10"], - // Right side - ["bfr3", "bfr9"], - ["bfr4", "bfr10"], + // Right side + ["bfr3", "bfr9"], + ["bfr4", "bfr10"], - // Attachment beams - {"beamType" : "|NORMAL"}, - {"beamSpring" : 501000, "beamDamp" : 75, "beamStrength" : 20000, "beamDeform" : 1000}, - {"deformLimitExpansion" : ""}, + // Attachment beams + {"beamType" : "|NORMAL"}, + {"beamSpring" : 501000, "beamDamp" : 75, "beamStrength" : 20000, "beamDeform" : 1000}, + {"deformLimitExpansion" : ""}, - // Frame + // Frame - // Left side + // Left side - // Front - {"breakGroup" : "fender_l"}, - {"breakGroupType" : 1}, - ["bfl1", "fr17"], - ["bfl1", "fr9"], - ["bfl2", "fr17"], - ["bfl2", "fr9"], - ["bfl0", "fr17"], - ["bfl0", "fr9"], + // Front + {"breakGroup" : "fender_l"}, + {"breakGroupType" : 1}, + ["bfl1", "fr17"], + ["bfl1", "fr9"], + ["bfl2", "fr17"], + ["bfl2", "fr9"], + ["bfl0", "fr17"], + ["bfl0", "fr9"], - // Middle - {"beamDeform" : 18000}, - {"beamStrength" : 4000}, - {"breakGroupType" : 1}, - ["bfl3", "fr17"], - ["bfl4", "fr17"], - ["bfl4", "fr9"], - {"breakGroupType" : 0}, + // Middle + {"beamDeform" : 18000}, + {"beamStrength" : 4000}, + {"breakGroupType" : 1}, + ["bfl3", "fr17"], + ["bfl4", "fr17"], + ["bfl4", "fr9"], + {"breakGroupType" : 0}, - // Rear - {"beamStrength" : 16000, "beamDeform" : 12000}, - ["bfl5", "fr18"], - ["bfl5", "fr27"], - ["bfl6", "fr17"], - ["bfl6", "fr21"], - ["bfl7", "fr17"], - ["bfl7", "fr29"], - ["bfl8", "fr18"], - ["bfl8", "fr27"], - ["bfl9", "fr28"], - ["bfl9", "fr21"], - ["bfl10", "fr17"], - ["bfl10", "fr29"], + // Rear + {"beamStrength" : 16000, "beamDeform" : 12000}, + ["bfl5", "fr18"], + ["bfl5", "fr27"], + ["bfl6", "fr17"], + ["bfl6", "fr21"], + ["bfl7", "fr17"], + ["bfl7", "fr29"], + ["bfl8", "fr18"], + ["bfl8", "fr27"], + ["bfl9", "fr28"], + ["bfl9", "fr21"], + ["bfl10", "fr17"], + ["bfl10", "fr29"], - // Right side + // Right side - // Front - {"beamStrength" : 20000, "beamDeform" : 1000}, - {"breakGroup" : "fender_r"}, - {"breakGroupType" : 1}, - ["bfl1", "rl_f8"], - ["bfl1", "rl_f6"], - ["bfl2", "rl_f6"], - ["bfl0", "rl_f6"], - ["bfr1", "rl_f9"], - ["bfr1", "rl_f7"], - ["bfr2", "rl_f7"], - ["bfr0", "rl_f7"], + // Front + {"beamStrength" : 20000, "beamDeform" : 1000}, + {"breakGroup" : "fender_r"}, + {"breakGroupType" : 1}, + ["bfl1", "rl_f8"], + ["bfl1", "rl_f6"], + ["bfl2", "rl_f6"], + ["bfl0", "rl_f6"], + ["bfr1", "rl_f9"], + ["bfr1", "rl_f7"], + ["bfr2", "rl_f7"], + ["bfr0", "rl_f7"], - // Middle - {"beamDeform" : 18000}, - {"beamStrength" : 4000}, - {"breakGroupType" : 1}, - ["bfl3", "rl_f10"], - ["bfl3", "rl_f11"], - ["bfl4", "rl_f11"], - ["bfr3", "rl_f12"], - ["bfr3", "rl_f13"], - ["bfr4", "rl_f13"], - {"breakGroupType" : 0}, + // Middle + {"beamDeform" : 18000}, + {"beamStrength" : 4000}, + {"breakGroupType" : 1}, + ["bfl3", "rl_f10"], + ["bfl3", "rl_f11"], + ["bfl4", "rl_f11"], + ["bfr3", "rl_f12"], + ["bfr3", "rl_f13"], + ["bfr4", "rl_f13"], + {"breakGroupType" : 0}, - // Rear - {"beamStrength" : 16000, "beamDeform" : 12000}, - ["bfl5", "rl_f15"], - ["bfl5", "rl_f16"], - ["bfl6", "rl_f15"], - ["bfl6", "rl_f16"], - ["bfl8", "rl_f15"], - ["bfl8", "rl_f16"], - ["bfl9", "rl_f15"], - ["bfl9", "rl_f16"], - ["bfl7", "rl_f16"], - ["bfl10", "rl_f16"], - ["bfr5", "rl_f17"], - ["bfr5", "rl_f18"], - ["bfr6", "rl_f17"], - ["bfr6", "rl_f18"], - ["bfr8", "rl_f17"], - ["bfr8", "rl_f18"], - ["bfr9", "rl_f17"], - ["bfr9", "rl_f18"], - ["bfr7", "rl_f18"], - ["bfr10", "rl_f18"], - {"beamStrength" : 16000, "beamDeform" : "FLT_MAX"}, + // Rear + {"beamStrength" : 16000, "beamDeform" : 12000}, + ["bfl5", "rl_f15"], + ["bfl5", "rl_f16"], + ["bfl6", "rl_f15"], + ["bfl6", "rl_f16"], + ["bfl8", "rl_f15"], + ["bfl8", "rl_f16"], + ["bfl9", "rl_f15"], + ["bfl9", "rl_f16"], + ["bfl7", "rl_f16"], + ["bfl10", "rl_f16"], + ["bfr5", "rl_f17"], + ["bfr5", "rl_f18"], + ["bfr6", "rl_f17"], + ["bfr6", "rl_f18"], + ["bfr8", "rl_f17"], + ["bfr8", "rl_f18"], + ["bfr9", "rl_f17"], + ["bfr9", "rl_f18"], + ["bfr7", "rl_f18"], + ["bfr10", "rl_f18"], + {"beamStrength" : 16000, "beamDeform" : "FLT_MAX"}, - // Body + // Body - // Left side - {"breakGroup" : "fender_l"}, - ["bfl8", "mbl0"], - ["bfl9", "mbl1"], - ["bfl10", "mbl2"], + // Left side + {"breakGroup" : "fender_l"}, + ["bfl8", "mbl0"], + ["bfl9", "mbl1"], + ["bfl10", "mbl2"], - // Right side - {"breakGroup" : "fender_r"}, - ["bfr8", "mbr0"], - ["bfr9", "mbr1"], - ["bfr10", "mbr2"], - {"breakGroup" : "", "breakGroupType" : "", "beamType" : "|NORMAL"} - ], - "triangles" : [ - ["id1:", "id2:", "id3:"], - ["bfl3", "bfl4", "bfl2"], - ["bfl1", "bfl3", "bfl2"], - ["bfl4", "bfl0", "bfl2"], - ["bfl4", "bfl3", "bfl7"], - ["bfl6", "bfl7", "bfl3"], - ["bfl10", "bfl7", "bfl6"], - ["bfl9", "bfl10", "bfl6"], - ["bfl5", "bfl8", "bfl6"], - ["bfl9", "bfl6", "bfl8"], - ["bfr4", "bfr2", "bfr0"], - ["bfr3", "bfr2", "bfr4"], - ["bfr1", "bfr2", "bfr3"], - ["bfr6", "bfr3", "bfr7"], - ["bfr4", "bfr7", "bfr3"], - ["bfr10", "bfr6", "bfr7"], - ["bfr9", "bfr6", "bfr10"], - ["bfr9", "bfr8", "bfr6"], - ["bfr5", "bfr6", "bfr8"] - ], - "flexbodies" : [ - ["mesh", "[group]:", "nonFlexMaterials"], - ["impala_fender_l", ["cot_fender_l"]], - ["impala_fender_inter_l", ["cot_fender_l"]], - ["impala_fender_r", ["cot_fender_r"]], - ["impala_fender_inter_r", ["cot_fender_r"]] - ] - } + // Right side + {"breakGroup" : "fender_r"}, + ["bfr8", "mbr0"], + ["bfr9", "mbr1"], + ["bfr10", "mbr2"], + {"breakGroup" : "", "breakGroupType" : "", "beamType" : "|NORMAL"} + ], + "triangles" : [ + ["id1:", "id2:", "id3:"], + ["bfl3", "bfl4", "bfl2"], + ["bfl1", "bfl3", "bfl2"], + ["bfl4", "bfl0", "bfl2"], + ["bfl4", "bfl3", "bfl7"], + ["bfl6", "bfl7", "bfl3"], + ["bfl10", "bfl7", "bfl6"], + ["bfl9", "bfl10", "bfl6"], + ["bfl5", "bfl8", "bfl6"], + ["bfl9", "bfl6", "bfl8"], + ["bfr4", "bfr2", "bfr0"], + ["bfr3", "bfr2", "bfr4"], + ["bfr1", "bfr2", "bfr3"], + ["bfr6", "bfr3", "bfr7"], + ["bfr4", "bfr7", "bfr3"], + ["bfr10", "bfr6", "bfr7"], + ["bfr9", "bfr6", "bfr10"], + ["bfr9", "bfr8", "bfr6"], + ["bfr5", "bfr6", "bfr8"] + ], + "flexbodies" : [ + ["mesh", "[group]:", "nonFlexMaterials"], + ["impala_fender_l", ["cot_fender_l"]], + ["impala_fender_inter_l", ["cot_fender_l"]], + ["impala_fender_r", ["cot_fender_r"]], + ["impala_fender_inter_r", ["cot_fender_r"]] + ] + } } diff --git a/examples/transformed_jbeam/fender-cfg-example.jbeam b/examples/transformed_jbeam/fender-cfg-example.jbeam index c5438a58..467ca55c 100644 --- a/examples/transformed_jbeam/fender-cfg-example.jbeam +++ b/examples/transformed_jbeam/fender-cfg-example.jbeam @@ -1,306 +1,306 @@ { - "cot_fender" : { - "information" : { - "authors" : "gittarrgy01", - "name" : "Fenders" - }, - "sounds" : { - "impactMetal" : "event:>Destruction>Props>fender_metal", - "impactGeneric" : "event:>Destruction>Props>fender_generic", - "breakGeneric" : "event:>Destruction>Props>fender_break", - "wind" : false, - "scrapeMetal" : false, - "scrapePlastic" : false - }, - "slotType" : "cot_fender", - "nodes" : [ - ["id", "posX", "posY", "posZ"], - {"frictionCoef" : 0.7}, - {"nodeMaterial" : "|NM_METAL"}, + "cot_fender" : { + "information" : { + "authors" : "gittarrgy01", + "name" : "Fenders" + }, + "sounds" : { + "impactMetal" : "event:>Destruction>Props>fender_metal", + "impactGeneric" : "event:>Destruction>Props>fender_generic", + "breakGeneric" : "event:>Destruction>Props>fender_break", + "wind" : false, + "scrapeMetal" : false, + "scrapePlastic" : false + }, + "slotType" : "cot_fender", + "nodes" : [ + ["id", "posX", "posY", "posZ"], + {"frictionCoef" : 0.7}, + {"nodeMaterial" : "|NM_METAL"}, - // Left side - {"collision" : true}, - {"group" : "cot_fender_l"}, - {"nodeWeight" : 0.65}, - {"selfCollision" : true}, - ["bfl0", 0.739, -1.845, 0.716], - ["bfl1", 0.959, -1.762, 0.576], - ["bfl2", 0.855, -1.788, 0.707], - ["bfl3", 0.948, -1.435, 0.730], - ["bfl4", 0.756, -1.413, 0.843], - ["bfl5", 0.963, -1.024, 0.112], - ["bfl6", 0.964, -1.072, 0.507], - ["bfl7", 0.778, -1.008, 0.873], - ["bfl8", 0.987, -0.743, 0.109], - ["bfl9", 0.987, -0.744, 0.494], - ["bfl10", 0.812, -0.759, 0.896], + // Left side + {"collision" : true}, + {"group" : "cot_fender_l"}, + {"nodeWeight" : 0.65}, + {"selfCollision" : true}, + ["bfl0", 0.739, -1.845, 0.716], + ["bfl1", 0.959, -1.762, 0.576], + ["bfl2", 0.855, -1.788, 0.707], + ["bfl3", 0.948, -1.435, 0.730], + ["bfl4", 0.756, -1.413, 0.843], + ["bfl5", 0.963, -1.024, 0.112], + ["bfl6", 0.964, -1.072, 0.507], + ["bfl7", 0.778, -1.008, 0.873], + ["bfl8", 0.987, -0.743, 0.109], + ["bfl9", 0.987, -0.744, 0.494], + ["bfl10", 0.812, -0.759, 0.896], - // Right side - {"group" : "cot_fender_r"}, - ["bfr0", -0.691, -1.829, 0.716], - ["bfr1", -0.906, -1.737, 0.578], - ["bfr2", -0.807, -1.769, 0.707], - ["bfr3", -0.890, -1.409, 0.729], - ["bfr4", -0.700, -1.397, 0.843], - ["bfr5", -0.899, -1.005, 0.112], - ["bfr6", -0.900, -1.053, 0.508], - ["bfr7", -0.715, -0.991, 0.873], - ["bfr8", -0.916, -0.742, 0.112], - ["bfr9", -0.917, -0.746, 0.494], - ["bfr10", -0.734, -0.746, 0.888], + // Right side + {"group" : "cot_fender_r"}, + ["bfr0", -0.691, -1.829, 0.716], + ["bfr1", -0.906, -1.737, 0.578], + ["bfr2", -0.807, -1.769, 0.707], + ["bfr3", -0.890, -1.409, 0.729], + ["bfr4", -0.700, -1.397, 0.843], + ["bfr5", -0.899, -1.005, 0.112], + ["bfr6", -0.900, -1.053, 0.508], + ["bfr7", -0.715, -0.991, 0.873], + ["bfr8", -0.916, -0.742, 0.112], + ["bfr9", -0.917, -0.746, 0.494], + ["bfr10", -0.734, -0.746, 0.888], - // Support nodes - {"collision" : false}, - {"group" : ""}, - {"nodeWeight" : 1.2}, - {"selfCollision" : false}, - ["bfsl", 0.684, -1.079, 0.507], - ["bfsr", -0.623, -1.064, 0.507] - ], - "beams" : [ - ["id1:", "id2:"], + // Support nodes + {"collision" : false}, + {"group" : ""}, + {"nodeWeight" : 1.2}, + {"selfCollision" : false}, + ["bfsl", 0.684, -1.079, 0.507], + ["bfsr", -0.623, -1.064, 0.507] + ], + "beams" : [ + ["id1:", "id2:"], - // Structural beams - // beamSpring: 451000, beamDamp: 50 - // beamStrength: FLT_MAX - {"beamType" : "|NORMAL"}, - {"beamSpring" : 451000, "beamDamp" : 50}, - {"beamStrength" : "FLT_MAX"}, - {"deformLimitExpansion" : 1.1}, - {"beamDeform" : 6000}, + // Structural beams + // beamSpring: 451000, beamDamp: 50 + // beamStrength: FLT_MAX + {"beamType" : "|NORMAL"}, + {"beamSpring" : 451000, "beamDamp" : 50}, + {"beamStrength" : "FLT_MAX"}, + {"deformLimitExpansion" : 1.1}, + {"beamDeform" : 6000}, - // Front - ["bfr0", "bfr4"], - ["bfr0", "bfr2"], - ["bfr2", "bfr4"], - ["bfl4", "bfl0"], - ["bfl0", "bfl2"], - ["bfl1", "bfl2"], - ["bfl4", "bfl3"], - ["bfl1", "bfl3"], - ["bfr2", "bfr1"], - ["bfr4", "bfr3"], - ["bfr1", "bfr3"], - ["bfl4", "bfl2"], + // Front + ["bfr0", "bfr4"], + ["bfr0", "bfr2"], + ["bfr2", "bfr4"], + ["bfl4", "bfl0"], + ["bfl0", "bfl2"], + ["bfl1", "bfl2"], + ["bfl4", "bfl3"], + ["bfl1", "bfl3"], + ["bfr2", "bfr1"], + ["bfr4", "bfr3"], + ["bfr1", "bfr3"], + ["bfl4", "bfl2"], - // Middle - {"beamDeform" : 12000}, - ["bfl6", "bfl3"], - ["bfr6", "bfr3"], - ["bfl4", "bfl7"], - ["bfr4", "bfr7"], + // Middle + {"beamDeform" : 12000}, + ["bfl6", "bfl3"], + ["bfr6", "bfr3"], + ["bfl4", "bfl7"], + ["bfr4", "bfr7"], - // Rear - ["bfl7", "bfl10"], - ["bfl5", "bfl6"], - ["bfl7", "bfl6"], - ["bfl5", "bfl8"], - ["bfl6", "bfl9"], - ["bfl8", "bfl9"], - ["bfl10", "bfl9"], - ["bfr7", "bfr10"], - ["bfr6", "bfr5"], - ["bfr6", "bfr7"], - ["bfr5", "bfr8"], - ["bfr6", "bfr9"], - ["bfr8", "bfr9"], - ["bfr10", "bfr9"], + // Rear + ["bfl7", "bfl10"], + ["bfl5", "bfl6"], + ["bfl7", "bfl6"], + ["bfl5", "bfl8"], + ["bfl6", "bfl9"], + ["bfl8", "bfl9"], + ["bfl10", "bfl9"], + ["bfr7", "bfr10"], + ["bfr6", "bfr5"], + ["bfr6", "bfr7"], + ["bfr5", "bfr8"], + ["bfr6", "bfr9"], + ["bfr8", "bfr9"], + ["bfr10", "bfr9"], - // Crossing beams - {"deformLimitExpansion" : ""}, + // Crossing beams + {"deformLimitExpansion" : ""}, - // Front - ["bfl1", "bfl4"], - ["bfl4", "bfl6"], - ["bfl7", "bfl3"], - ["bfr4", "bfr6"], - ["bfr7", "bfr3"], - ["bfl2", "bfl3"], - ["bfr3", "bfr2"], - ["bfr4", "bfr1"], + // Front + ["bfl1", "bfl4"], + ["bfl4", "bfl6"], + ["bfl7", "bfl3"], + ["bfr4", "bfr6"], + ["bfr7", "bfr3"], + ["bfl2", "bfl3"], + ["bfr3", "bfr2"], + ["bfr4", "bfr1"], - // Rear - ["bfl6", "bfl10"], - ["bfl7", "bfl9"], - ["bfl5", "bfl9"], - ["bfl6", "bfl8"], - ["bfr6", "bfr10"], - ["bfr7", "bfr9"], - ["bfr5", "bfr9"], - ["bfr6", "bfr8"], + // Rear + ["bfl6", "bfl10"], + ["bfl7", "bfl9"], + ["bfl5", "bfl9"], + ["bfl6", "bfl8"], + ["bfr6", "bfr10"], + ["bfr7", "bfr9"], + ["bfr5", "bfr9"], + ["bfr6", "bfr8"], - // Support beams - ["bfl0", "bfsl"], - ["bfl6", "bfsl"], - ["bfl5", "bfsl"], - ["bfl3", "bfsl"], - ["bfl1", "bfsl"], - ["bfl2", "bfsl"], - ["bfl4", "bfsl"], - ["bfl7", "bfsl"], - ["bfl8", "bfsl"], - ["bfl9", "bfsl"], - ["bfl10", "bfsl"], - ["bfr0", "bfsr"], - ["bfr6", "bfsr"], - ["bfr5", "bfsr"], - ["bfr3", "bfsr"], - ["bfr1", "bfsr"], - ["bfr2", "bfsr"], - ["bfr4", "bfsr"], - ["bfr7", "bfsr"], - ["bfr8", "bfsr"], - ["bfr9", "bfsr"], - ["bfr10", "bfsr"], + // Support beams + ["bfl0", "bfsl"], + ["bfl6", "bfsl"], + ["bfl5", "bfsl"], + ["bfl3", "bfsl"], + ["bfl1", "bfsl"], + ["bfl2", "bfsl"], + ["bfl4", "bfsl"], + ["bfl7", "bfsl"], + ["bfl8", "bfsl"], + ["bfl9", "bfsl"], + ["bfl10", "bfsl"], + ["bfr0", "bfsr"], + ["bfr6", "bfsr"], + ["bfr5", "bfsr"], + ["bfr3", "bfsr"], + ["bfr1", "bfsr"], + ["bfr2", "bfsr"], + ["bfr4", "bfsr"], + ["bfr7", "bfsr"], + ["bfr8", "bfsr"], + ["bfr9", "bfsr"], + ["bfr10", "bfsr"], - // Front rigid - {"beamSpring" : 350000, "beamDamp" : 115}, - {"beamDeform" : 900}, + // Front rigid + {"beamSpring" : 350000, "beamDamp" : 115}, + {"beamDeform" : 900}, - // Left side - ["bfl3", "bfl9"], - ["bfl4", "bfl10"], + // Left side + ["bfl3", "bfl9"], + ["bfl4", "bfl10"], - // Right side - ["bfr3", "bfr9"], - ["bfr4", "bfr10"], + // Right side + ["bfr3", "bfr9"], + ["bfr4", "bfr10"], - // Attachment beams - {"beamType" : "|NORMAL"}, - {"beamSpring" : 501000, "beamDamp" : 75, "beamStrength" : 20000, "beamDeform" : 1000}, - {"deformLimitExpansion" : ""}, + // Attachment beams + {"beamType" : "|NORMAL"}, + {"beamSpring" : 501000, "beamDamp" : 75, "beamStrength" : 20000, "beamDeform" : 1000}, + {"deformLimitExpansion" : ""}, - // Frame + // Frame - // Left side + // Left side - // Front - {"breakGroup" : "fender_l"}, - {"breakGroupType" : 1}, - ["bfl1", "fr17"], - ["bfl1", "fr9"], - ["bfl2", "fr17"], - ["bfl2", "fr9"], - ["bfl0", "fr17"], - ["bfl0", "fr9"], + // Front + {"breakGroup" : "fender_l"}, + {"breakGroupType" : 1}, + ["bfl1", "fr17"], + ["bfl1", "fr9"], + ["bfl2", "fr17"], + ["bfl2", "fr9"], + ["bfl0", "fr17"], + ["bfl0", "fr9"], - // Middle - {"beamDeform" : 18000}, - {"beamStrength" : 4000}, - {"breakGroupType" : 1}, - ["bfl3", "fr17"], - ["bfl4", "fr17"], - ["bfl4", "fr9"], - {"breakGroupType" : 0}, + // Middle + {"beamDeform" : 18000}, + {"beamStrength" : 4000}, + {"breakGroupType" : 1}, + ["bfl3", "fr17"], + ["bfl4", "fr17"], + ["bfl4", "fr9"], + {"breakGroupType" : 0}, - // Rear - {"beamStrength" : 16000, "beamDeform" : 12000}, - ["bfl5", "fr18"], - ["bfl5", "fr27"], - ["bfl6", "fr17"], - ["bfl6", "fr21"], - ["bfl7", "fr17"], - ["bfl7", "fr29"], - ["bfl8", "fr18"], - ["bfl8", "fr27"], - ["bfl9", "fr28"], - ["bfl9", "fr21"], - ["bfl10", "fr17"], - ["bfl10", "fr29"], + // Rear + {"beamStrength" : 16000, "beamDeform" : 12000}, + ["bfl5", "fr18"], + ["bfl5", "fr27"], + ["bfl6", "fr17"], + ["bfl6", "fr21"], + ["bfl7", "fr17"], + ["bfl7", "fr29"], + ["bfl8", "fr18"], + ["bfl8", "fr27"], + ["bfl9", "fr28"], + ["bfl9", "fr21"], + ["bfl10", "fr17"], + ["bfl10", "fr29"], - // Right side + // Right side - // Front - {"beamStrength" : 20000, "beamDeform" : 1000}, - {"breakGroup" : "fender_r"}, - {"breakGroupType" : 1}, - ["bfl1", "rl_f8"], - ["bfl1", "rl_f6"], - ["bfl2", "rl_f6"], - ["bfl0", "rl_f6"], - ["bfr1", "rl_f9"], - ["bfr1", "rl_f7"], - ["bfr2", "rl_f7"], - ["bfr0", "rl_f7"], + // Front + {"beamStrength" : 20000, "beamDeform" : 1000}, + {"breakGroup" : "fender_r"}, + {"breakGroupType" : 1}, + ["bfl1", "rl_f8"], + ["bfl1", "rl_f6"], + ["bfl2", "rl_f6"], + ["bfl0", "rl_f6"], + ["bfr1", "rl_f9"], + ["bfr1", "rl_f7"], + ["bfr2", "rl_f7"], + ["bfr0", "rl_f7"], - // Middle - {"beamDeform" : 18000}, - {"beamStrength" : 4000}, - {"breakGroupType" : 1}, - ["bfl3", "rl_f10"], - ["bfl3", "rl_f11"], - ["bfl4", "rl_f11"], - ["bfr3", "rl_f12"], - ["bfr3", "rl_f13"], - ["bfr4", "rl_f13"], - {"breakGroupType" : 0}, + // Middle + {"beamDeform" : 18000}, + {"beamStrength" : 4000}, + {"breakGroupType" : 1}, + ["bfl3", "rl_f10"], + ["bfl3", "rl_f11"], + ["bfl4", "rl_f11"], + ["bfr3", "rl_f12"], + ["bfr3", "rl_f13"], + ["bfr4", "rl_f13"], + {"breakGroupType" : 0}, - // Rear - {"beamStrength" : 16000, "beamDeform" : 12000}, - ["bfl5", "rl_f15"], - ["bfl5", "rl_f16"], - ["bfl6", "rl_f15"], - ["bfl6", "rl_f16"], - ["bfl8", "rl_f15"], - ["bfl8", "rl_f16"], - ["bfl9", "rl_f15"], - ["bfl9", "rl_f16"], - ["bfl7", "rl_f16"], - ["bfl10", "rl_f16"], - ["bfr5", "rl_f17"], - ["bfr5", "rl_f18"], - ["bfr6", "rl_f17"], - ["bfr6", "rl_f18"], - ["bfr8", "rl_f17"], - ["bfr8", "rl_f18"], - ["bfr9", "rl_f17"], - ["bfr9", "rl_f18"], - ["bfr7", "rl_f18"], - ["bfr10", "rl_f18"], - {"beamStrength" : 16000, "beamDeform" : "FLT_MAX"}, + // Rear + {"beamStrength" : 16000, "beamDeform" : 12000}, + ["bfl5", "rl_f15"], + ["bfl5", "rl_f16"], + ["bfl6", "rl_f15"], + ["bfl6", "rl_f16"], + ["bfl8", "rl_f15"], + ["bfl8", "rl_f16"], + ["bfl9", "rl_f15"], + ["bfl9", "rl_f16"], + ["bfl7", "rl_f16"], + ["bfl10", "rl_f16"], + ["bfr5", "rl_f17"], + ["bfr5", "rl_f18"], + ["bfr6", "rl_f17"], + ["bfr6", "rl_f18"], + ["bfr8", "rl_f17"], + ["bfr8", "rl_f18"], + ["bfr9", "rl_f17"], + ["bfr9", "rl_f18"], + ["bfr7", "rl_f18"], + ["bfr10", "rl_f18"], + {"beamStrength" : 16000, "beamDeform" : "FLT_MAX"}, - // Body + // Body - // Left side - {"breakGroup" : "fender_l"}, - ["bfl8", "mbl0"], - ["bfl9", "mbl1"], - ["bfl10", "mbl2"], + // Left side + {"breakGroup" : "fender_l"}, + ["bfl8", "mbl0"], + ["bfl9", "mbl1"], + ["bfl10", "mbl2"], - // Right side - {"breakGroup" : "fender_r"}, - ["bfr8", "mbr0"], - ["bfr9", "mbr1"], - ["bfr10", "mbr2"], - {"breakGroup" : "", "breakGroupType" : "", "beamType" : "|NORMAL"} - ], - "triangles" : [ - ["id1:", "id2:", "id3:"], - ["bfl3", "bfl4", "bfl2"], - ["bfl1", "bfl3", "bfl2"], - ["bfl4", "bfl0", "bfl2"], - ["bfl4", "bfl3", "bfl7"], - ["bfl6", "bfl7", "bfl3"], - ["bfl10", "bfl7", "bfl6"], - ["bfl9", "bfl10", "bfl6"], - ["bfl5", "bfl8", "bfl6"], - ["bfl9", "bfl6", "bfl8"], - ["bfr4", "bfr2", "bfr0"], - ["bfr3", "bfr2", "bfr4"], - ["bfr1", "bfr2", "bfr3"], - ["bfr6", "bfr3", "bfr7"], - ["bfr4", "bfr7", "bfr3"], - ["bfr10", "bfr6", "bfr7"], - ["bfr9", "bfr6", "bfr10"], - ["bfr9", "bfr8", "bfr6"], - ["bfr5", "bfr6", "bfr8"] - ], - "flexbodies" : [ - ["mesh", "[group]:", "nonFlexMaterials"], - ["impala_fender_l", ["cot_fender_l"]], - ["impala_fender_inter_l", ["cot_fender_l"]], - ["impala_fender_r", ["cot_fender_r"]], - ["impala_fender_inter_r", ["cot_fender_r"]] - ] - } + // Right side + {"breakGroup" : "fender_r"}, + ["bfr8", "mbr0"], + ["bfr9", "mbr1"], + ["bfr10", "mbr2"], + {"breakGroup" : "", "breakGroupType" : "", "beamType" : "|NORMAL"} + ], + "triangles" : [ + ["id1:", "id2:", "id3:"], + ["bfl3", "bfl4", "bfl2"], + ["bfl1", "bfl3", "bfl2"], + ["bfl4", "bfl0", "bfl2"], + ["bfl4", "bfl3", "bfl7"], + ["bfl6", "bfl7", "bfl3"], + ["bfl10", "bfl7", "bfl6"], + ["bfl9", "bfl10", "bfl6"], + ["bfl5", "bfl8", "bfl6"], + ["bfl9", "bfl6", "bfl8"], + ["bfr4", "bfr2", "bfr0"], + ["bfr3", "bfr2", "bfr4"], + ["bfr1", "bfr2", "bfr3"], + ["bfr6", "bfr3", "bfr7"], + ["bfr4", "bfr7", "bfr3"], + ["bfr10", "bfr6", "bfr7"], + ["bfr9", "bfr6", "bfr10"], + ["bfr9", "bfr8", "bfr6"], + ["bfr5", "bfr6", "bfr8"] + ], + "flexbodies" : [ + ["mesh", "[group]:", "nonFlexMaterials"], + ["impala_fender_l", ["cot_fender_l"]], + ["impala_fender_inter_l", ["cot_fender_l"]], + ["impala_fender_r", ["cot_fender_r"]], + ["impala_fender_inter_r", ["cot_fender_r"]] + ] + } } diff --git a/examples/transformed_jbeam/frame-cfg-default.jbeam b/examples/transformed_jbeam/frame-cfg-default.jbeam index 8149dc11..ebee3b4b 100644 --- a/examples/transformed_jbeam/frame-cfg-default.jbeam +++ b/examples/transformed_jbeam/frame-cfg-default.jbeam @@ -1,439 +1,439 @@ { - "chassis_rails" : { - "information" : { - "authors" : "gittarrgy01", - "name" : "" - }, - "slotType" : "main", - /* - The purpose of this file is prove that moving metadata - along with vertices when moving vertices works as intended. - See issue for #69 explanation on the transformation part of the codebase. - */ - // --Nodes-- - "nodes" : [ - ["id", "posX", "posY", "posZ"], - {"group" : "chassis_rails"}, + "chassis_rails" : { + "information" : { + "authors" : "gittarrgy01", + "name" : "" + }, + "slotType" : "main", + /* + The purpose of this file is prove that moving metadata + along with vertices when moving vertices works as intended. + See issue for #69 explanation on the transformation part of the codebase. + */ + // --Nodes-- + "nodes" : [ + ["id", "posX", "posY", "posZ"], + {"group" : "chassis_rails"}, - // Left side + // Left side - // prefix group rl_fl - ["rl_fl0", 0.523, -2.093, 0.268], - ["rl_fl1", 0.523, -2.098, 0.319], - ["rl_fl2", 0.531, -1.721, 0.289], - ["rl_fl3", 0.531, -1.724, 0.341], - ["rl_fl4", 0.547, -1.350, 0.310], - ["rl_fl5", 0.547, -1.350, 0.364], + // prefix group rl_fl + ["rl_fl0", 0.523, -2.093, 0.268], + ["rl_fl1", 0.523, -2.098, 0.319], + ["rl_fl2", 0.531, -1.721, 0.289], + ["rl_fl3", 0.531, -1.724, 0.341], + ["rl_fl4", 0.547, -1.350, 0.310], + ["rl_fl5", 0.547, -1.350, 0.364], - // prefix group rll - ["rll0", 0.790, -0.919, 0.182], - ["rll1", 0.790, -0.919, 0.233], - ["rll2", 0.415, 0.002, 0.182], - ["rll3", 0.837, 0.002, 0.182], - ["rll4", 0.415, 0.002, 0.233], - ["rll5", 0.837, 0.002, 0.233], - ["rll6", 0.822, 0.791, 0.182], - ["rll7", 0.822, 0.791, 0.233], + // prefix group rll + ["rll0", 0.790, -0.919, 0.182], + ["rll1", 0.790, -0.919, 0.233], + ["rll2", 0.415, 0.002, 0.182], + ["rll3", 0.837, 0.002, 0.182], + ["rll4", 0.415, 0.002, 0.233], + ["rll5", 0.837, 0.002, 0.233], + ["rll6", 0.822, 0.791, 0.182], + ["rll7", 0.822, 0.791, 0.233], - // prefix group rl_l - ["rl_l0", 0.651, 1.152, 0.565], - ["rl_l1", 0.651, 1.121, 0.628], - ["rl_l2", 0.602, 1.514, 0.566], - ["rl_l3", 0.602, 1.532, 0.623], - ["rl_l4", 0.553, 1.654, 0.359], - ["rl_l5", 0.553, 1.679, 0.448], - ["rl_l6", 0.558, 2.284, 0.364], - ["rl_l7", 0.558, 2.284, 0.447], + // prefix group rl_l + ["rl_l0", 0.651, 1.152, 0.565], + ["rl_l1", 0.651, 1.121, 0.628], + ["rl_l2", 0.602, 1.514, 0.566], + ["rl_l3", 0.602, 1.532, 0.623], + ["rl_l4", 0.553, 1.654, 0.359], + ["rl_l5", 0.553, 1.679, 0.448], + ["rl_l6", 0.558, 2.284, 0.364], + ["rl_l7", 0.558, 2.284, 0.447], - // Middle side + // Middle side - // prefix group rl_m - ["rl_m0", 0.053, 1.152, 0.565], - ["rl_m1", 0.053, 1.121, 0.628], - ["rl_m2", 0.053, 2.284, 0.370], - ["rl_m3", 0.053, 2.284, 0.441], + // prefix group rl_m + ["rl_m0", 0.053, 1.152, 0.565], + ["rl_m1", 0.053, 1.121, 0.628], + ["rl_m2", 0.053, 2.284, 0.370], + ["rl_m3", 0.053, 2.284, 0.441], - // prefix group rl_fm - ["rl_fm0", 0.053, -2.090, 0.269], - ["rl_fm1", 0.053, -2.095, 0.319], + // prefix group rl_fm + ["rl_fm0", 0.053, -2.090, 0.269], + ["rl_fm1", 0.053, -2.095, 0.319], - // prefix group rlm - ["rlm0", 0.053, 0.002, 0.182], - ["rlm1", 0.053, 0.002, 0.233], + // prefix group rlm + ["rlm0", 0.053, 0.002, 0.182], + ["rlm1", 0.053, 0.002, 0.233], - // Right side + // Right side - // prefix group rl_r - ["rl_r0", -0.544, 1.152, 0.565], - ["rl_r1", -0.544, 1.121, 0.628], - ["rl_r2", -0.495, 1.514, 0.566], - ["rl_r3", -0.495, 1.532, 0.623], - ["rl_r4", -0.446, 1.654, 0.359], - ["rl_r5", -0.446, 1.679, 0.448], - ["rl_r6", -0.451, 2.284, 0.364], - ["rl_r7", -0.451, 2.284, 0.447], + // prefix group rl_r + ["rl_r0", -0.544, 1.152, 0.565], + ["rl_r1", -0.544, 1.121, 0.628], + ["rl_r2", -0.495, 1.514, 0.566], + ["rl_r3", -0.495, 1.532, 0.623], + ["rl_r4", -0.446, 1.654, 0.359], + ["rl_r5", -0.446, 1.679, 0.448], + ["rl_r6", -0.451, 2.284, 0.364], + ["rl_r7", -0.451, 2.284, 0.447], - // prefix group rl_fr - ["rl_fr0", -0.417, -2.093, 0.268], - ["rl_fr1", -0.417, -2.098, 0.319], - ["rl_fr2", -0.424, -1.721, 0.289], - ["rl_fr3", -0.424, -1.724, 0.341], - ["rl_fr4", -0.440, -1.350, 0.310], - ["rl_fr5", -0.440, -1.350, 0.364], + // prefix group rl_fr + ["rl_fr0", -0.417, -2.093, 0.268], + ["rl_fr1", -0.417, -2.098, 0.319], + ["rl_fr2", -0.424, -1.721, 0.289], + ["rl_fr3", -0.424, -1.724, 0.341], + ["rl_fr4", -0.440, -1.350, 0.310], + ["rl_fr5", -0.440, -1.350, 0.364], - // prefix group rlr - ["rlr0", -0.683, -0.919, 0.182], - ["rlr1", -0.683, -0.919, 0.233], - ["rlr2", -0.730, 0.002, 0.182], - ["rlr3", -0.308, 0.002, 0.182], - ["rlr4", -0.730, 0.002, 0.233], - ["rlr5", -0.308, 0.002, 0.233], - ["rlr6", -0.715, 0.791, 0.182], - ["rlr7", -0.715, 0.791, 0.233], + // prefix group rlr + ["rlr0", -0.683, -0.919, 0.182], + ["rlr1", -0.683, -0.919, 0.233], + ["rlr2", -0.730, 0.002, 0.182], + ["rlr3", -0.308, 0.002, 0.182], + ["rlr4", -0.730, 0.002, 0.233], + ["rlr5", -0.308, 0.002, 0.233], + ["rlr6", -0.715, 0.791, 0.182], + ["rlr7", -0.715, 0.791, 0.233], - // Support nodes - ["rl_fsm", 0.053, -1.314, 0.382], // support for front - ["rl_rsm", 0.053, 1.710, 0.565], // support for rear - ["rlsm", 0.053, -0.024, 0.578], // support - ], - // --Beams-- - "beams" : [ - ["id1:", "id2:"], + // Support nodes + ["rl_fsm", 0.053, -1.314, 0.382], // support for front + ["rl_rsm", 0.053, 1.710, 0.565], // support for rear + ["rlsm", 0.053, -0.024, 0.578], // support + ], + // --Beams-- + "beams" : [ + ["id1:", "id2:"], - // Structural beams - {"beamStrength" : "FLT_MAX", "beamSpring" : "3800000"}, - {"beamDamp" : 130, "deformLimit" : 1.1}, + // Structural beams + {"beamStrength" : "FLT_MAX", "beamSpring" : "3800000"}, + {"beamDamp" : 130, "deformLimit" : 1.1}, - // Front end - {"beamDeform" : 20600, "deformLimit" : 1.1}, - ["rl_fl0", "rl_fm0"], - ["rl_fl1", "rl_fl0"], - ["rl_fl2", "rl_fl0"], - ["rll0", "rl_fl4"], - ["rl_fl2", "rl_fl3"], - ["rl_fl5", "rl_fl4"], - ["rl_fl4", "rl_fl2"], - ["rl_fr2", "rl_fr3"], - ["rlr0", "rl_fr4"], - ["rl_fl3", "rl_fl5"], - ["rl_fl5", "rll1"], - ["rl_fr5", "rlr1"], - ["rl_fr5", "rl_fr4"], - ["rl_fr1", "rl_fr0"], - ["rl_fm1", "rl_fr1"], - ["rl_fm1", "rl_fm0"], - ["rl_fr4", "rl_fr2"], - ["rl_fr3", "rl_fr5"], - ["rl_fl1", "rl_fl3"], - ["rl_fr2", "rl_fr0"], - ["rl_fm1", "rl_fl1"], - ["rl_fr0", "rl_fm0"], - ["rl_fr1", "rl_fr3"], + // Front end + {"beamDeform" : 20600, "deformLimit" : 1.1}, + ["rl_fl0", "rl_fm0"], + ["rl_fl1", "rl_fl0"], + ["rl_fl2", "rl_fl0"], + ["rll0", "rl_fl4"], + ["rl_fl2", "rl_fl3"], + ["rl_fl5", "rl_fl4"], + ["rl_fl4", "rl_fl2"], + ["rl_fr2", "rl_fr3"], + ["rlr0", "rl_fr4"], + ["rl_fl3", "rl_fl5"], + ["rl_fl5", "rll1"], + ["rl_fr5", "rlr1"], + ["rl_fr5", "rl_fr4"], + ["rl_fr1", "rl_fr0"], + ["rl_fm1", "rl_fr1"], + ["rl_fm1", "rl_fm0"], + ["rl_fr4", "rl_fr2"], + ["rl_fr3", "rl_fr5"], + ["rl_fl1", "rl_fl3"], + ["rl_fr2", "rl_fr0"], + ["rl_fm1", "rl_fl1"], + ["rl_fr0", "rl_fm0"], + ["rl_fr1", "rl_fr3"], - // Middle - {"beamDeform" : 27000}, - ["rll1", "rll0"], - ["rll3", "rll6"], - ["rll1", "rll4"], - ["rlr1", "rlr0"], - ["rlr0", "rlr2"], - ["rlr3", "rlr0"], - ["rlr1", "rlr5"], - ["rlr3", "rlm0"], - ["rlm1", "rlm0"], - ["rlm1", "rlr5"], - ["rll5", "rll1"], - ["rll2", "rll0"], - ["rll0", "rll3"], - ["rlr4", "rlr5"], - ["rlr2", "rlr6"], - ["rlr4", "rlr1"], - ["rll2", "rlm0"], - ["rll7", "rll5"], - ["rlr2", "rlr4"], - ["rlr6", "rlr7"], - ["rll6", "rll7"], - ["rlr7", "rlr4"], - ["rll6", "rll2"], - ["rlm1", "rll4"], - ["rlr6", "rlr3"], - ["rll3", "rll5"], - ["rll7", "rll4"], - ["rll3", "rll2"], - ["rll5", "rll4"], - ["rlr7", "rlr5"], - ["rll4", "rll2"], - ["rlr2", "rlr3"], - ["rlr5", "rlr3"], + // Middle + {"beamDeform" : 27000}, + ["rll1", "rll0"], + ["rll3", "rll6"], + ["rll1", "rll4"], + ["rlr1", "rlr0"], + ["rlr0", "rlr2"], + ["rlr3", "rlr0"], + ["rlr1", "rlr5"], + ["rlr3", "rlm0"], + ["rlm1", "rlm0"], + ["rlm1", "rlr5"], + ["rll5", "rll1"], + ["rll2", "rll0"], + ["rll0", "rll3"], + ["rlr4", "rlr5"], + ["rlr2", "rlr6"], + ["rlr4", "rlr1"], + ["rll2", "rlm0"], + ["rll7", "rll5"], + ["rlr2", "rlr4"], + ["rlr6", "rlr7"], + ["rll6", "rll7"], + ["rlr7", "rlr4"], + ["rll6", "rll2"], + ["rlm1", "rll4"], + ["rlr6", "rlr3"], + ["rll3", "rll5"], + ["rll7", "rll4"], + ["rll3", "rll2"], + ["rll5", "rll4"], + ["rlr7", "rlr5"], + ["rll4", "rll2"], + ["rlr2", "rlr3"], + ["rlr5", "rlr3"], - // Rear end - {"beamDeform" : 22000}, - ["rl_l0", "rl_l1"], - ["rl_r0", "rl_r2"], - ["rl_l4", "rl_l5"], - ["rlr7", "rl_r1"], - ["rl_l5", "rl_l3"], - ["rll7", "rl_l1"], - ["rl_l0", "rll6"], - ["rl_l6", "rl_m2"], - ["rl_m3", "rl_l7"], - ["rl_l7", "rl_l5"], - ["rl_l6", "rl_l7"], - ["rl_l3", "rl_l1"], - ["rl_l2", "rl_l4"], - ["rl_l2", "rl_l3"], - ["rl_r2", "rl_r4"], - ["rl_r0", "rl_r1"], - ["rl_r1", "rl_m1"], - ["rl_m0", "rl_m1"], - ["rl_r6", "rl_r7"], - ["rl_m3", "rl_r7"], - ["rl_m2", "rl_m3"], - ["rl_r4", "rl_r6"], - ["rl_r7", "rl_r5"], - ["rl_r3", "rl_r1"], - ["rl_r6", "rl_m2"], - ["rl_l1", "rl_m1"], - ["rl_m0", "rl_l0"], - ["rl_r4", "rl_r5"], - ["rl_r2", "rl_r3"], - ["rl_m0", "rl_r0"], - ["rl_r0", "rlr6"], - ["rl_r5", "rl_r3"], - ["rl_l4", "rl_l6"], - ["rl_l0", "rl_l2"], + // Rear end + {"beamDeform" : 22000}, + ["rl_l0", "rl_l1"], + ["rl_r0", "rl_r2"], + ["rl_l4", "rl_l5"], + ["rlr7", "rl_r1"], + ["rl_l5", "rl_l3"], + ["rll7", "rl_l1"], + ["rl_l0", "rll6"], + ["rl_l6", "rl_m2"], + ["rl_m3", "rl_l7"], + ["rl_l7", "rl_l5"], + ["rl_l6", "rl_l7"], + ["rl_l3", "rl_l1"], + ["rl_l2", "rl_l4"], + ["rl_l2", "rl_l3"], + ["rl_r2", "rl_r4"], + ["rl_r0", "rl_r1"], + ["rl_r1", "rl_m1"], + ["rl_m0", "rl_m1"], + ["rl_r6", "rl_r7"], + ["rl_m3", "rl_r7"], + ["rl_m2", "rl_m3"], + ["rl_r4", "rl_r6"], + ["rl_r7", "rl_r5"], + ["rl_r3", "rl_r1"], + ["rl_r6", "rl_m2"], + ["rl_l1", "rl_m1"], + ["rl_m0", "rl_l0"], + ["rl_r4", "rl_r5"], + ["rl_r2", "rl_r3"], + ["rl_m0", "rl_r0"], + ["rl_r0", "rlr6"], + ["rl_r5", "rl_r3"], + ["rl_l4", "rl_l6"], + ["rl_l0", "rl_l2"], - // Crossing beams + // Crossing beams - // Front end - {"beamDeform" : 16000}, - ["rl_fr0", "rl_fm1"], - ["rl_fl1", "rl_fl2"], - ["rll1", "rl_fl4"], - ["rll0", "rl_fl5"], - ["rl_fl4", "rl_fl3"], - ["rl_fl5", "rl_fl2"], - ["rl_fr1", "rl_fm0"], - ["rl_fr0", "rl_fr3"], - ["rl_fr1", "rl_fr2"], - ["rl_fr4", "rl_fr3"], - ["rl_fl0", "rl_fl3"], - ["rl_fl1", "rl_fm0"], - ["rl_fl0", "rl_fm1"], - ["rl_fr5", "rl_fr2"], - ["rlr0", "rl_fr5"], - ["rlr1", "rl_fr4"], + // Front end + {"beamDeform" : 16000}, + ["rl_fr0", "rl_fm1"], + ["rl_fl1", "rl_fl2"], + ["rll1", "rl_fl4"], + ["rll0", "rl_fl5"], + ["rl_fl4", "rl_fl3"], + ["rl_fl5", "rl_fl2"], + ["rl_fr1", "rl_fm0"], + ["rl_fr0", "rl_fr3"], + ["rl_fr1", "rl_fr2"], + ["rl_fr4", "rl_fr3"], + ["rl_fl0", "rl_fl3"], + ["rl_fl1", "rl_fm0"], + ["rl_fl0", "rl_fm1"], + ["rl_fr5", "rl_fr2"], + ["rlr0", "rl_fr5"], + ["rlr1", "rl_fr4"], - // Middle - {"beamDeform" : 6500}, - ["rll1", "rll3"], - ["rll0", "rll4"], - ["rlr1", "rlr2"], - ["rlr1", "rlr3"], - ["rlr0", "rlr5"], - ["rlr5", "rlm0"], - ["rlr3", "rlm1"], - ["rll7", "rll3"], - ["rll0", "rll5"], - ["rll1", "rll2"], - ["rlr6", "rlr4"], - ["rll6", "rll5"], - ["rll4", "rlm0"], - ["rlr6", "rlr5"], - ["rlr0", "rlr4"], - ["rlr7", "rlr2"], - ["rlr4", "rlr3"], - ["rll6", "rll4"], - ["rlr7", "rlr3"], - ["rll2", "rlm1"], - ["rll3", "rll4"], - ["rlr2", "rlr5"], - ["rll7", "rll2"], - ["rll5", "rll2"], + // Middle + {"beamDeform" : 6500}, + ["rll1", "rll3"], + ["rll0", "rll4"], + ["rlr1", "rlr2"], + ["rlr1", "rlr3"], + ["rlr0", "rlr5"], + ["rlr5", "rlm0"], + ["rlr3", "rlm1"], + ["rll7", "rll3"], + ["rll0", "rll5"], + ["rll1", "rll2"], + ["rlr6", "rlr4"], + ["rll6", "rll5"], + ["rll4", "rlm0"], + ["rlr6", "rlr5"], + ["rlr0", "rlr4"], + ["rlr7", "rlr2"], + ["rlr4", "rlr3"], + ["rll6", "rll4"], + ["rlr7", "rlr3"], + ["rll2", "rlm1"], + ["rll3", "rll4"], + ["rlr2", "rlr5"], + ["rll7", "rll2"], + ["rll5", "rll2"], - // Rear end - {"beamDeform" : 16000}, - ["rl_r7", "rl_r4"], - ["rlr6", "rl_r1"], - ["rl_r1", "rl_r2"], - ["rl_l7", "rl_m2"], - ["rll7", "rl_l0"], - ["rll6", "rl_l1"], - ["rl_l5", "rl_l2"], - ["rl_r6", "rl_r5"], - ["rl_l7", "rl_l4"], - ["rl_l6", "rl_l5"], - ["rl_l0", "rl_l3"], - ["rl_l1", "rl_l2"], - ["rl_l1", "rl_m0"], - ["rlr7", "rl_r0"], - ["rl_r0", "rl_m1"], - ["rl_r1", "rl_m0"], - ["rl_r6", "rl_m3"], - ["rl_r7", "rl_m2"], - ["rl_r4", "rl_r3"], - ["rl_r5", "rl_r2"], - ["rl_r0", "rl_r3"], - ["rl_l0", "rl_m1"], - ["rl_l6", "rl_m3"], - ["rl_l4", "rl_l3"], + // Rear end + {"beamDeform" : 16000}, + ["rl_r7", "rl_r4"], + ["rlr6", "rl_r1"], + ["rl_r1", "rl_r2"], + ["rl_l7", "rl_m2"], + ["rll7", "rl_l0"], + ["rll6", "rl_l1"], + ["rl_l5", "rl_l2"], + ["rl_r6", "rl_r5"], + ["rl_l7", "rl_l4"], + ["rl_l6", "rl_l5"], + ["rl_l0", "rl_l3"], + ["rl_l1", "rl_l2"], + ["rl_l1", "rl_m0"], + ["rlr7", "rl_r0"], + ["rl_r0", "rl_m1"], + ["rl_r1", "rl_m0"], + ["rl_r6", "rl_m3"], + ["rl_r7", "rl_m2"], + ["rl_r4", "rl_r3"], + ["rl_r5", "rl_r2"], + ["rl_r0", "rl_r3"], + ["rl_l0", "rl_m1"], + ["rl_l6", "rl_m3"], + ["rl_l4", "rl_l3"], - // Support beams + // Support beams - // Front end - {"beamDeform" : 19000}, - ["rl_fl2", "rl_fsm"], - ["rl_fr2", "rl_fsm"], - ["rl_f", "rl_fl0"], - ["rl_fl4", "rl_fsm"], - ["rl_fsm", "rl_fr5"], - ["rl_fr1", "rl_fsm"], - ["rl_fl1", "rl_fsm"], - ["rl_fr4", "rl_fsm"], - ["rl_fm0", "rl_fsm"], - ["rl_fsm", "rl_fr0"], - ["rl_fsm", "rl_fl3"], - ["rl_fsm", "rl_fr3"], - ["rl_fsm", "rl_fm1"], - ["rl_fsm", "rl_fl5"], + // Front end + {"beamDeform" : 19000}, + ["rl_fl2", "rl_fsm"], + ["rl_fr2", "rl_fsm"], + ["rl_f", "rl_fl0"], + ["rl_fl4", "rl_fsm"], + ["rl_fsm", "rl_fr5"], + ["rl_fr1", "rl_fsm"], + ["rl_fl1", "rl_fsm"], + ["rl_fr4", "rl_fsm"], + ["rl_fm0", "rl_fsm"], + ["rl_fsm", "rl_fr0"], + ["rl_fsm", "rl_fl3"], + ["rl_fsm", "rl_fr3"], + ["rl_fsm", "rl_fm1"], + ["rl_fsm", "rl_fl5"], - // Middle - {"beamDeform" : 11000}, - ["rlr5", "rlsm"], - ["rlr3", "rlsm"], - ["rlm0", "rlsm"], - ["rll4", "rlsm"], - ["rll3", "rlsm"], - ["rlsm", "rll1"], - ["rlsm", "rll0"], - ["rll7", "rlsm"], - ["rlr7", "rlsm"], - ["rlr2", "rlsm"], - ["rlsm", "rlm1"], - ["rll5", "rlsm"], - ["rll2", "rlsm"], - ["rlsm", "rlr6"], - ["rlr4", "rlsm"], - ["rlsm", "rlr1"], - ["rlsm", "rlr0"], - ["rlsm", "rll6"], + // Middle + {"beamDeform" : 11000}, + ["rlr5", "rlsm"], + ["rlr3", "rlsm"], + ["rlm0", "rlsm"], + ["rll4", "rlsm"], + ["rll3", "rlsm"], + ["rlsm", "rll1"], + ["rlsm", "rll0"], + ["rll7", "rlsm"], + ["rlr7", "rlsm"], + ["rlr2", "rlsm"], + ["rlsm", "rlm1"], + ["rll5", "rlsm"], + ["rll2", "rlsm"], + ["rlsm", "rlr6"], + ["rlr4", "rlsm"], + ["rlsm", "rlr1"], + ["rlsm", "rlr0"], + ["rlsm", "rll6"], - // Rear end - {"beamDeform" : 19000}, - ["rl_rsm", "rl_m2"], - ["rl_rsm", "rl_r7"], - ["rl_r4", "rl_rsm"], - ["rl_rsm", "rl_l7"], - ["rl_rsm", "rl_l3"], - ["rl_rsm", "rl_r5"], - ["rl_l6", "rl_rsm"], - ["rl_m1", "rl_rsm"], - ["rl_rsm", "rl_r3"], - ["rl_l4", "rl_rsm"], - ["rl_r6", "rl_rsm"], - ["rl_m3", "rl_rsm"], - ["rl_l2", "rl_rsm"], - ["rl_rsm", "rl_m0"], - ["rl_r2", "rl_rsm"], - ["rl_r4", "rl_l5"], + // Rear end + {"beamDeform" : 19000}, + ["rl_rsm", "rl_m2"], + ["rl_rsm", "rl_r7"], + ["rl_r4", "rl_rsm"], + ["rl_rsm", "rl_l7"], + ["rl_rsm", "rl_l3"], + ["rl_rsm", "rl_r5"], + ["rl_l6", "rl_rsm"], + ["rl_m1", "rl_rsm"], + ["rl_rsm", "rl_r3"], + ["rl_l4", "rl_rsm"], + ["rl_r6", "rl_rsm"], + ["rl_m3", "rl_rsm"], + ["rl_l2", "rl_rsm"], + ["rl_rsm", "rl_m0"], + ["rl_r2", "rl_rsm"], + ["rl_r4", "rl_l5"], - // Front crush - {"beamDeform" : 8500}, - ["rlr0", "rl_fr2"], - ["rll0", "rl_fl2"] - ], - // --Collision Triangles-- - "triangles" : [ - ["id1:", "id2:", "id3:"], - ["rl_fm0", "rl_fl0", "rl_fm1"], - ["rl_fl1", "rl_fm1", "rl_fl0"], - ["rl_fm0", "rl_fm1", "rl_fr0"], - ["rl_fr1", "rl_fr0", "rl_fm1"], - ["rl_fr0", "rl_fr1", "rl_fr3"], - ["rl_fr0", "rl_fr3", "rl_fr2"], - ["rl_fr3", "rl_fr5", "rl_fr2"], - ["rl_fr4", "rl_fr2", "rl_fr5"], - ["rl_fr4", "rl_fr5", "rlr1"], - ["rlr1", "rlr0", "rl_fr4"], - ["rl_fl0", "rl_fl3", "rl_fl1"], - ["rl_fl0", "rl_fl2", "rl_fl3"], - ["rl_fl4", "rl_fl5", "rl_fl2"], - ["rl_fl3", "rl_fl2", "rl_fl5"], - ["rl_fl4", "rll1", "rl_fl5"], - ["rll1", "rl_fl4", "rll0"], - ["rll0", "rll3", "rll1"], - ["rll5", "rll1", "rll3"], - ["rll6", "rll5", "rll3"], - ["rll7", "rll5", "rll6"], - ["rlr0", "rlr1", "rlr2"], - ["rlr4", "rlr2", "rlr1"], - ["rlr6", "rlr2", "rlr4"], - ["rlr7", "rlr6", "rlr4"], - ["rlr6", "rlr7", "rl_r0"], - ["rl_r0", "rlr7", "rl_r1"], - ["rl_r1", "rl_r2", "rl_r0"], - ["rl_r3", "rl_r2", "rl_r1"], - ["rl_r4", "rl_r2", "rl_r3"], - ["rl_r5", "rl_r4", "rl_r3"], - ["rl_r6", "rl_r4", "rl_r5"], - ["rl_r7", "rl_r6", "rl_r5"], - ["rl_r7", "rl_m2", "rl_r6"], - ["rl_m2", "rl_r7", "rl_m3"], - ["rl_m3", "rl_l7", "rl_m2"], - ["rl_l7", "rl_l6", "rl_m2"], - ["rl_l5", "rl_l4", "rl_l6"], - ["rl_l7", "rl_l5", "rl_l6"], - ["rl_l5", "rl_l3", "rl_l4"], - ["rl_l4", "rl_l3", "rl_l2"], - ["rl_l1", "rl_l0", "rl_l2"], - ["rl_l3", "rl_l1", "rl_l2"], - ["rl_l1", "rl_m1", "rl_l0"], - ["rl_m1", "rl_m0", "rl_l0"], - ["rl_m1", "rl_r0", "rl_m0"], - ["rl_r0", "rl_m1", "rl_r1"], - ["rll6", "rl_l0", "rll7"], - ["rl_l0", "rl_l1", "rll7"], - ["rll1", "rll0", "rll2"], - ["rll1", "rll2", "rll4"], - ["rll4", "rll2", "rll5"], - ["rll5", "rll2", "rll3"], - ["rlr5", "rlr4", "rlr3"], - ["rlr4", "rlr2", "rlr3"], - ["rlr1", "rlr3", "rlr0"], - ["rlr5", "rlr3", "rlr1"], - ["rlm0", "rll2", "rll4"], - ["rlr5", "rlr3", "rlm0"], - ["rlm0", "rlm1", "rlr5"], - ["rlm0", "rll4", "rlm1"], - ["rll6", "rll4", "rll2"], - ["rll6", "rll7", "rll4"], - ["rlr3", "rlr5", "rlr6"], - ["rlr7", "rlr6", "rlr5"] - ], - "flexbodies" : [ - ["mesh", "[group]:", "nonFlexMaterials"], - ["rails", ["chassis_rails"]] - ], - "glowMap" : { - // main lights - "chassis_headlight_L" : {"simpleFunction" : "lowhighbeam_filament", "off" : "chassis_headlight", "on" : "chassis_headlight_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_headlight_R" : {"simpleFunction" : "lowhighbeam_filament", "off" : "chassis_headlight", "on" : "chassis_headlight_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_signal_L" : {"simpleFunction" : "signal_L_filament", "off" : "chassis_signal_amber", "on" : "chassis_signal_amber_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_signal_R" : {"simpleFunction" : "signal_R_filament", "off" : "chassis_signal_amber", "on" : "chassis_signal_amber_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_reverselight" : {"simpleFunction" : "reverselight_filament", "off" : "chassis_reverselight", "on" : "chassis_reverselight_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_brakelight_L" : {"simpleFunction" : "brakelight_filament", "off" : "chassis_taillight", "on" : "chassis_taillight_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_brakelight_R" : {"simpleFunction" : "brakelight_filament", "off" : "chassis_taillight", "on" : "chassis_taillight_on", "materialEmissiveScaling" : {"on_max" : 1}}, - // gauge lights + // Front crush + {"beamDeform" : 8500}, + ["rlr0", "rl_fr2"], + ["rll0", "rl_fl2"] + ], + // --Collision Triangles-- + "triangles" : [ + ["id1:", "id2:", "id3:"], + ["rl_fm0", "rl_fl0", "rl_fm1"], + ["rl_fl1", "rl_fm1", "rl_fl0"], + ["rl_fm0", "rl_fm1", "rl_fr0"], + ["rl_fr1", "rl_fr0", "rl_fm1"], + ["rl_fr0", "rl_fr1", "rl_fr3"], + ["rl_fr0", "rl_fr3", "rl_fr2"], + ["rl_fr3", "rl_fr5", "rl_fr2"], + ["rl_fr4", "rl_fr2", "rl_fr5"], + ["rl_fr4", "rl_fr5", "rlr1"], + ["rlr1", "rlr0", "rl_fr4"], + ["rl_fl0", "rl_fl3", "rl_fl1"], + ["rl_fl0", "rl_fl2", "rl_fl3"], + ["rl_fl4", "rl_fl5", "rl_fl2"], + ["rl_fl3", "rl_fl2", "rl_fl5"], + ["rl_fl4", "rll1", "rl_fl5"], + ["rll1", "rl_fl4", "rll0"], + ["rll0", "rll3", "rll1"], + ["rll5", "rll1", "rll3"], + ["rll6", "rll5", "rll3"], + ["rll7", "rll5", "rll6"], + ["rlr0", "rlr1", "rlr2"], + ["rlr4", "rlr2", "rlr1"], + ["rlr6", "rlr2", "rlr4"], + ["rlr7", "rlr6", "rlr4"], + ["rlr6", "rlr7", "rl_r0"], + ["rl_r0", "rlr7", "rl_r1"], + ["rl_r1", "rl_r2", "rl_r0"], + ["rl_r3", "rl_r2", "rl_r1"], + ["rl_r4", "rl_r2", "rl_r3"], + ["rl_r5", "rl_r4", "rl_r3"], + ["rl_r6", "rl_r4", "rl_r5"], + ["rl_r7", "rl_r6", "rl_r5"], + ["rl_r7", "rl_m2", "rl_r6"], + ["rl_m2", "rl_r7", "rl_m3"], + ["rl_m3", "rl_l7", "rl_m2"], + ["rl_l7", "rl_l6", "rl_m2"], + ["rl_l5", "rl_l4", "rl_l6"], + ["rl_l7", "rl_l5", "rl_l6"], + ["rl_l5", "rl_l3", "rl_l4"], + ["rl_l4", "rl_l3", "rl_l2"], + ["rl_l1", "rl_l0", "rl_l2"], + ["rl_l3", "rl_l1", "rl_l2"], + ["rl_l1", "rl_m1", "rl_l0"], + ["rl_m1", "rl_m0", "rl_l0"], + ["rl_m1", "rl_r0", "rl_m0"], + ["rl_r0", "rl_m1", "rl_r1"], + ["rll6", "rl_l0", "rll7"], + ["rl_l0", "rl_l1", "rll7"], + ["rll1", "rll0", "rll2"], + ["rll1", "rll2", "rll4"], + ["rll4", "rll2", "rll5"], + ["rll5", "rll2", "rll3"], + ["rlr5", "rlr4", "rlr3"], + ["rlr4", "rlr2", "rlr3"], + ["rlr1", "rlr3", "rlr0"], + ["rlr5", "rlr3", "rlr1"], + ["rlm0", "rll2", "rll4"], + ["rlr5", "rlr3", "rlm0"], + ["rlm0", "rlm1", "rlr5"], + ["rlm0", "rll4", "rlm1"], + ["rll6", "rll4", "rll2"], + ["rll6", "rll7", "rll4"], + ["rlr3", "rlr5", "rlr6"], + ["rlr7", "rlr6", "rlr5"] + ], + "flexbodies" : [ + ["mesh", "[group]:", "nonFlexMaterials"], + ["rails", ["chassis_rails"]] + ], + "glowMap" : { + // main lights + "chassis_headlight_L" : {"simpleFunction" : "lowhighbeam_filament", "off" : "chassis_headlight", "on" : "chassis_headlight_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_headlight_R" : {"simpleFunction" : "lowhighbeam_filament", "off" : "chassis_headlight", "on" : "chassis_headlight_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_signal_L" : {"simpleFunction" : "signal_L_filament", "off" : "chassis_signal_amber", "on" : "chassis_signal_amber_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_signal_R" : {"simpleFunction" : "signal_R_filament", "off" : "chassis_signal_amber", "on" : "chassis_signal_amber_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_reverselight" : {"simpleFunction" : "reverselight_filament", "off" : "chassis_reverselight", "on" : "chassis_reverselight_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_brakelight_L" : {"simpleFunction" : "brakelight_filament", "off" : "chassis_taillight", "on" : "chassis_taillight_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_brakelight_R" : {"simpleFunction" : "brakelight_filament", "off" : "chassis_taillight", "on" : "chassis_taillight_on", "materialEmissiveScaling" : {"on_max" : 1}}, + // gauge lights - // (turn signals, battery, parking brake, highbeam) - "chassis_gaugelight_highbeam" : {"simpleFunction" : "highbeam", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, - "chassis_gaugelight_signal_L" : {"simpleFunction" : "signal_L", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, - "chassis_gaugelight_signal_R" : {"simpleFunction" : "signal_R", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, - "chassis_gaugelight_battery" : {"simpleFunction" : "battery", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, - "chassis_gaugelight_parkbrake" : {"simpleFunction" : "parkingbrakelight", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, + // (turn signals, battery, parking brake, highbeam) + "chassis_gaugelight_highbeam" : {"simpleFunction" : "highbeam", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, + "chassis_gaugelight_signal_L" : {"simpleFunction" : "signal_L", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, + "chassis_gaugelight_signal_R" : {"simpleFunction" : "signal_R", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, + "chassis_gaugelight_battery" : {"simpleFunction" : "battery", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, + "chassis_gaugelight_parkbrake" : {"simpleFunction" : "parkingbrakelight", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, - // multi-condition warning light - "chassis_gaugelight_warning" : {"simpleFunction" : {"checkengine" : 1, "battery" : 1, "lowpressure" : 1}, "off" : "chassis_gauges", "on" : "chassis_gauges_on"} + // multi-condition warning light + "chassis_gaugelight_warning" : {"simpleFunction" : {"checkengine" : 1, "battery" : 1, "lowpressure" : 1}, "off" : "chassis_gauges", "on" : "chassis_gauges_on"} + } } - } } diff --git a/examples/transformed_jbeam/frame-cfg-example.jbeam b/examples/transformed_jbeam/frame-cfg-example.jbeam index 8149dc11..ebee3b4b 100644 --- a/examples/transformed_jbeam/frame-cfg-example.jbeam +++ b/examples/transformed_jbeam/frame-cfg-example.jbeam @@ -1,439 +1,439 @@ { - "chassis_rails" : { - "information" : { - "authors" : "gittarrgy01", - "name" : "" - }, - "slotType" : "main", - /* - The purpose of this file is prove that moving metadata - along with vertices when moving vertices works as intended. - See issue for #69 explanation on the transformation part of the codebase. - */ - // --Nodes-- - "nodes" : [ - ["id", "posX", "posY", "posZ"], - {"group" : "chassis_rails"}, + "chassis_rails" : { + "information" : { + "authors" : "gittarrgy01", + "name" : "" + }, + "slotType" : "main", + /* + The purpose of this file is prove that moving metadata + along with vertices when moving vertices works as intended. + See issue for #69 explanation on the transformation part of the codebase. + */ + // --Nodes-- + "nodes" : [ + ["id", "posX", "posY", "posZ"], + {"group" : "chassis_rails"}, - // Left side + // Left side - // prefix group rl_fl - ["rl_fl0", 0.523, -2.093, 0.268], - ["rl_fl1", 0.523, -2.098, 0.319], - ["rl_fl2", 0.531, -1.721, 0.289], - ["rl_fl3", 0.531, -1.724, 0.341], - ["rl_fl4", 0.547, -1.350, 0.310], - ["rl_fl5", 0.547, -1.350, 0.364], + // prefix group rl_fl + ["rl_fl0", 0.523, -2.093, 0.268], + ["rl_fl1", 0.523, -2.098, 0.319], + ["rl_fl2", 0.531, -1.721, 0.289], + ["rl_fl3", 0.531, -1.724, 0.341], + ["rl_fl4", 0.547, -1.350, 0.310], + ["rl_fl5", 0.547, -1.350, 0.364], - // prefix group rll - ["rll0", 0.790, -0.919, 0.182], - ["rll1", 0.790, -0.919, 0.233], - ["rll2", 0.415, 0.002, 0.182], - ["rll3", 0.837, 0.002, 0.182], - ["rll4", 0.415, 0.002, 0.233], - ["rll5", 0.837, 0.002, 0.233], - ["rll6", 0.822, 0.791, 0.182], - ["rll7", 0.822, 0.791, 0.233], + // prefix group rll + ["rll0", 0.790, -0.919, 0.182], + ["rll1", 0.790, -0.919, 0.233], + ["rll2", 0.415, 0.002, 0.182], + ["rll3", 0.837, 0.002, 0.182], + ["rll4", 0.415, 0.002, 0.233], + ["rll5", 0.837, 0.002, 0.233], + ["rll6", 0.822, 0.791, 0.182], + ["rll7", 0.822, 0.791, 0.233], - // prefix group rl_l - ["rl_l0", 0.651, 1.152, 0.565], - ["rl_l1", 0.651, 1.121, 0.628], - ["rl_l2", 0.602, 1.514, 0.566], - ["rl_l3", 0.602, 1.532, 0.623], - ["rl_l4", 0.553, 1.654, 0.359], - ["rl_l5", 0.553, 1.679, 0.448], - ["rl_l6", 0.558, 2.284, 0.364], - ["rl_l7", 0.558, 2.284, 0.447], + // prefix group rl_l + ["rl_l0", 0.651, 1.152, 0.565], + ["rl_l1", 0.651, 1.121, 0.628], + ["rl_l2", 0.602, 1.514, 0.566], + ["rl_l3", 0.602, 1.532, 0.623], + ["rl_l4", 0.553, 1.654, 0.359], + ["rl_l5", 0.553, 1.679, 0.448], + ["rl_l6", 0.558, 2.284, 0.364], + ["rl_l7", 0.558, 2.284, 0.447], - // Middle side + // Middle side - // prefix group rl_m - ["rl_m0", 0.053, 1.152, 0.565], - ["rl_m1", 0.053, 1.121, 0.628], - ["rl_m2", 0.053, 2.284, 0.370], - ["rl_m3", 0.053, 2.284, 0.441], + // prefix group rl_m + ["rl_m0", 0.053, 1.152, 0.565], + ["rl_m1", 0.053, 1.121, 0.628], + ["rl_m2", 0.053, 2.284, 0.370], + ["rl_m3", 0.053, 2.284, 0.441], - // prefix group rl_fm - ["rl_fm0", 0.053, -2.090, 0.269], - ["rl_fm1", 0.053, -2.095, 0.319], + // prefix group rl_fm + ["rl_fm0", 0.053, -2.090, 0.269], + ["rl_fm1", 0.053, -2.095, 0.319], - // prefix group rlm - ["rlm0", 0.053, 0.002, 0.182], - ["rlm1", 0.053, 0.002, 0.233], + // prefix group rlm + ["rlm0", 0.053, 0.002, 0.182], + ["rlm1", 0.053, 0.002, 0.233], - // Right side + // Right side - // prefix group rl_r - ["rl_r0", -0.544, 1.152, 0.565], - ["rl_r1", -0.544, 1.121, 0.628], - ["rl_r2", -0.495, 1.514, 0.566], - ["rl_r3", -0.495, 1.532, 0.623], - ["rl_r4", -0.446, 1.654, 0.359], - ["rl_r5", -0.446, 1.679, 0.448], - ["rl_r6", -0.451, 2.284, 0.364], - ["rl_r7", -0.451, 2.284, 0.447], + // prefix group rl_r + ["rl_r0", -0.544, 1.152, 0.565], + ["rl_r1", -0.544, 1.121, 0.628], + ["rl_r2", -0.495, 1.514, 0.566], + ["rl_r3", -0.495, 1.532, 0.623], + ["rl_r4", -0.446, 1.654, 0.359], + ["rl_r5", -0.446, 1.679, 0.448], + ["rl_r6", -0.451, 2.284, 0.364], + ["rl_r7", -0.451, 2.284, 0.447], - // prefix group rl_fr - ["rl_fr0", -0.417, -2.093, 0.268], - ["rl_fr1", -0.417, -2.098, 0.319], - ["rl_fr2", -0.424, -1.721, 0.289], - ["rl_fr3", -0.424, -1.724, 0.341], - ["rl_fr4", -0.440, -1.350, 0.310], - ["rl_fr5", -0.440, -1.350, 0.364], + // prefix group rl_fr + ["rl_fr0", -0.417, -2.093, 0.268], + ["rl_fr1", -0.417, -2.098, 0.319], + ["rl_fr2", -0.424, -1.721, 0.289], + ["rl_fr3", -0.424, -1.724, 0.341], + ["rl_fr4", -0.440, -1.350, 0.310], + ["rl_fr5", -0.440, -1.350, 0.364], - // prefix group rlr - ["rlr0", -0.683, -0.919, 0.182], - ["rlr1", -0.683, -0.919, 0.233], - ["rlr2", -0.730, 0.002, 0.182], - ["rlr3", -0.308, 0.002, 0.182], - ["rlr4", -0.730, 0.002, 0.233], - ["rlr5", -0.308, 0.002, 0.233], - ["rlr6", -0.715, 0.791, 0.182], - ["rlr7", -0.715, 0.791, 0.233], + // prefix group rlr + ["rlr0", -0.683, -0.919, 0.182], + ["rlr1", -0.683, -0.919, 0.233], + ["rlr2", -0.730, 0.002, 0.182], + ["rlr3", -0.308, 0.002, 0.182], + ["rlr4", -0.730, 0.002, 0.233], + ["rlr5", -0.308, 0.002, 0.233], + ["rlr6", -0.715, 0.791, 0.182], + ["rlr7", -0.715, 0.791, 0.233], - // Support nodes - ["rl_fsm", 0.053, -1.314, 0.382], // support for front - ["rl_rsm", 0.053, 1.710, 0.565], // support for rear - ["rlsm", 0.053, -0.024, 0.578], // support - ], - // --Beams-- - "beams" : [ - ["id1:", "id2:"], + // Support nodes + ["rl_fsm", 0.053, -1.314, 0.382], // support for front + ["rl_rsm", 0.053, 1.710, 0.565], // support for rear + ["rlsm", 0.053, -0.024, 0.578], // support + ], + // --Beams-- + "beams" : [ + ["id1:", "id2:"], - // Structural beams - {"beamStrength" : "FLT_MAX", "beamSpring" : "3800000"}, - {"beamDamp" : 130, "deformLimit" : 1.1}, + // Structural beams + {"beamStrength" : "FLT_MAX", "beamSpring" : "3800000"}, + {"beamDamp" : 130, "deformLimit" : 1.1}, - // Front end - {"beamDeform" : 20600, "deformLimit" : 1.1}, - ["rl_fl0", "rl_fm0"], - ["rl_fl1", "rl_fl0"], - ["rl_fl2", "rl_fl0"], - ["rll0", "rl_fl4"], - ["rl_fl2", "rl_fl3"], - ["rl_fl5", "rl_fl4"], - ["rl_fl4", "rl_fl2"], - ["rl_fr2", "rl_fr3"], - ["rlr0", "rl_fr4"], - ["rl_fl3", "rl_fl5"], - ["rl_fl5", "rll1"], - ["rl_fr5", "rlr1"], - ["rl_fr5", "rl_fr4"], - ["rl_fr1", "rl_fr0"], - ["rl_fm1", "rl_fr1"], - ["rl_fm1", "rl_fm0"], - ["rl_fr4", "rl_fr2"], - ["rl_fr3", "rl_fr5"], - ["rl_fl1", "rl_fl3"], - ["rl_fr2", "rl_fr0"], - ["rl_fm1", "rl_fl1"], - ["rl_fr0", "rl_fm0"], - ["rl_fr1", "rl_fr3"], + // Front end + {"beamDeform" : 20600, "deformLimit" : 1.1}, + ["rl_fl0", "rl_fm0"], + ["rl_fl1", "rl_fl0"], + ["rl_fl2", "rl_fl0"], + ["rll0", "rl_fl4"], + ["rl_fl2", "rl_fl3"], + ["rl_fl5", "rl_fl4"], + ["rl_fl4", "rl_fl2"], + ["rl_fr2", "rl_fr3"], + ["rlr0", "rl_fr4"], + ["rl_fl3", "rl_fl5"], + ["rl_fl5", "rll1"], + ["rl_fr5", "rlr1"], + ["rl_fr5", "rl_fr4"], + ["rl_fr1", "rl_fr0"], + ["rl_fm1", "rl_fr1"], + ["rl_fm1", "rl_fm0"], + ["rl_fr4", "rl_fr2"], + ["rl_fr3", "rl_fr5"], + ["rl_fl1", "rl_fl3"], + ["rl_fr2", "rl_fr0"], + ["rl_fm1", "rl_fl1"], + ["rl_fr0", "rl_fm0"], + ["rl_fr1", "rl_fr3"], - // Middle - {"beamDeform" : 27000}, - ["rll1", "rll0"], - ["rll3", "rll6"], - ["rll1", "rll4"], - ["rlr1", "rlr0"], - ["rlr0", "rlr2"], - ["rlr3", "rlr0"], - ["rlr1", "rlr5"], - ["rlr3", "rlm0"], - ["rlm1", "rlm0"], - ["rlm1", "rlr5"], - ["rll5", "rll1"], - ["rll2", "rll0"], - ["rll0", "rll3"], - ["rlr4", "rlr5"], - ["rlr2", "rlr6"], - ["rlr4", "rlr1"], - ["rll2", "rlm0"], - ["rll7", "rll5"], - ["rlr2", "rlr4"], - ["rlr6", "rlr7"], - ["rll6", "rll7"], - ["rlr7", "rlr4"], - ["rll6", "rll2"], - ["rlm1", "rll4"], - ["rlr6", "rlr3"], - ["rll3", "rll5"], - ["rll7", "rll4"], - ["rll3", "rll2"], - ["rll5", "rll4"], - ["rlr7", "rlr5"], - ["rll4", "rll2"], - ["rlr2", "rlr3"], - ["rlr5", "rlr3"], + // Middle + {"beamDeform" : 27000}, + ["rll1", "rll0"], + ["rll3", "rll6"], + ["rll1", "rll4"], + ["rlr1", "rlr0"], + ["rlr0", "rlr2"], + ["rlr3", "rlr0"], + ["rlr1", "rlr5"], + ["rlr3", "rlm0"], + ["rlm1", "rlm0"], + ["rlm1", "rlr5"], + ["rll5", "rll1"], + ["rll2", "rll0"], + ["rll0", "rll3"], + ["rlr4", "rlr5"], + ["rlr2", "rlr6"], + ["rlr4", "rlr1"], + ["rll2", "rlm0"], + ["rll7", "rll5"], + ["rlr2", "rlr4"], + ["rlr6", "rlr7"], + ["rll6", "rll7"], + ["rlr7", "rlr4"], + ["rll6", "rll2"], + ["rlm1", "rll4"], + ["rlr6", "rlr3"], + ["rll3", "rll5"], + ["rll7", "rll4"], + ["rll3", "rll2"], + ["rll5", "rll4"], + ["rlr7", "rlr5"], + ["rll4", "rll2"], + ["rlr2", "rlr3"], + ["rlr5", "rlr3"], - // Rear end - {"beamDeform" : 22000}, - ["rl_l0", "rl_l1"], - ["rl_r0", "rl_r2"], - ["rl_l4", "rl_l5"], - ["rlr7", "rl_r1"], - ["rl_l5", "rl_l3"], - ["rll7", "rl_l1"], - ["rl_l0", "rll6"], - ["rl_l6", "rl_m2"], - ["rl_m3", "rl_l7"], - ["rl_l7", "rl_l5"], - ["rl_l6", "rl_l7"], - ["rl_l3", "rl_l1"], - ["rl_l2", "rl_l4"], - ["rl_l2", "rl_l3"], - ["rl_r2", "rl_r4"], - ["rl_r0", "rl_r1"], - ["rl_r1", "rl_m1"], - ["rl_m0", "rl_m1"], - ["rl_r6", "rl_r7"], - ["rl_m3", "rl_r7"], - ["rl_m2", "rl_m3"], - ["rl_r4", "rl_r6"], - ["rl_r7", "rl_r5"], - ["rl_r3", "rl_r1"], - ["rl_r6", "rl_m2"], - ["rl_l1", "rl_m1"], - ["rl_m0", "rl_l0"], - ["rl_r4", "rl_r5"], - ["rl_r2", "rl_r3"], - ["rl_m0", "rl_r0"], - ["rl_r0", "rlr6"], - ["rl_r5", "rl_r3"], - ["rl_l4", "rl_l6"], - ["rl_l0", "rl_l2"], + // Rear end + {"beamDeform" : 22000}, + ["rl_l0", "rl_l1"], + ["rl_r0", "rl_r2"], + ["rl_l4", "rl_l5"], + ["rlr7", "rl_r1"], + ["rl_l5", "rl_l3"], + ["rll7", "rl_l1"], + ["rl_l0", "rll6"], + ["rl_l6", "rl_m2"], + ["rl_m3", "rl_l7"], + ["rl_l7", "rl_l5"], + ["rl_l6", "rl_l7"], + ["rl_l3", "rl_l1"], + ["rl_l2", "rl_l4"], + ["rl_l2", "rl_l3"], + ["rl_r2", "rl_r4"], + ["rl_r0", "rl_r1"], + ["rl_r1", "rl_m1"], + ["rl_m0", "rl_m1"], + ["rl_r6", "rl_r7"], + ["rl_m3", "rl_r7"], + ["rl_m2", "rl_m3"], + ["rl_r4", "rl_r6"], + ["rl_r7", "rl_r5"], + ["rl_r3", "rl_r1"], + ["rl_r6", "rl_m2"], + ["rl_l1", "rl_m1"], + ["rl_m0", "rl_l0"], + ["rl_r4", "rl_r5"], + ["rl_r2", "rl_r3"], + ["rl_m0", "rl_r0"], + ["rl_r0", "rlr6"], + ["rl_r5", "rl_r3"], + ["rl_l4", "rl_l6"], + ["rl_l0", "rl_l2"], - // Crossing beams + // Crossing beams - // Front end - {"beamDeform" : 16000}, - ["rl_fr0", "rl_fm1"], - ["rl_fl1", "rl_fl2"], - ["rll1", "rl_fl4"], - ["rll0", "rl_fl5"], - ["rl_fl4", "rl_fl3"], - ["rl_fl5", "rl_fl2"], - ["rl_fr1", "rl_fm0"], - ["rl_fr0", "rl_fr3"], - ["rl_fr1", "rl_fr2"], - ["rl_fr4", "rl_fr3"], - ["rl_fl0", "rl_fl3"], - ["rl_fl1", "rl_fm0"], - ["rl_fl0", "rl_fm1"], - ["rl_fr5", "rl_fr2"], - ["rlr0", "rl_fr5"], - ["rlr1", "rl_fr4"], + // Front end + {"beamDeform" : 16000}, + ["rl_fr0", "rl_fm1"], + ["rl_fl1", "rl_fl2"], + ["rll1", "rl_fl4"], + ["rll0", "rl_fl5"], + ["rl_fl4", "rl_fl3"], + ["rl_fl5", "rl_fl2"], + ["rl_fr1", "rl_fm0"], + ["rl_fr0", "rl_fr3"], + ["rl_fr1", "rl_fr2"], + ["rl_fr4", "rl_fr3"], + ["rl_fl0", "rl_fl3"], + ["rl_fl1", "rl_fm0"], + ["rl_fl0", "rl_fm1"], + ["rl_fr5", "rl_fr2"], + ["rlr0", "rl_fr5"], + ["rlr1", "rl_fr4"], - // Middle - {"beamDeform" : 6500}, - ["rll1", "rll3"], - ["rll0", "rll4"], - ["rlr1", "rlr2"], - ["rlr1", "rlr3"], - ["rlr0", "rlr5"], - ["rlr5", "rlm0"], - ["rlr3", "rlm1"], - ["rll7", "rll3"], - ["rll0", "rll5"], - ["rll1", "rll2"], - ["rlr6", "rlr4"], - ["rll6", "rll5"], - ["rll4", "rlm0"], - ["rlr6", "rlr5"], - ["rlr0", "rlr4"], - ["rlr7", "rlr2"], - ["rlr4", "rlr3"], - ["rll6", "rll4"], - ["rlr7", "rlr3"], - ["rll2", "rlm1"], - ["rll3", "rll4"], - ["rlr2", "rlr5"], - ["rll7", "rll2"], - ["rll5", "rll2"], + // Middle + {"beamDeform" : 6500}, + ["rll1", "rll3"], + ["rll0", "rll4"], + ["rlr1", "rlr2"], + ["rlr1", "rlr3"], + ["rlr0", "rlr5"], + ["rlr5", "rlm0"], + ["rlr3", "rlm1"], + ["rll7", "rll3"], + ["rll0", "rll5"], + ["rll1", "rll2"], + ["rlr6", "rlr4"], + ["rll6", "rll5"], + ["rll4", "rlm0"], + ["rlr6", "rlr5"], + ["rlr0", "rlr4"], + ["rlr7", "rlr2"], + ["rlr4", "rlr3"], + ["rll6", "rll4"], + ["rlr7", "rlr3"], + ["rll2", "rlm1"], + ["rll3", "rll4"], + ["rlr2", "rlr5"], + ["rll7", "rll2"], + ["rll5", "rll2"], - // Rear end - {"beamDeform" : 16000}, - ["rl_r7", "rl_r4"], - ["rlr6", "rl_r1"], - ["rl_r1", "rl_r2"], - ["rl_l7", "rl_m2"], - ["rll7", "rl_l0"], - ["rll6", "rl_l1"], - ["rl_l5", "rl_l2"], - ["rl_r6", "rl_r5"], - ["rl_l7", "rl_l4"], - ["rl_l6", "rl_l5"], - ["rl_l0", "rl_l3"], - ["rl_l1", "rl_l2"], - ["rl_l1", "rl_m0"], - ["rlr7", "rl_r0"], - ["rl_r0", "rl_m1"], - ["rl_r1", "rl_m0"], - ["rl_r6", "rl_m3"], - ["rl_r7", "rl_m2"], - ["rl_r4", "rl_r3"], - ["rl_r5", "rl_r2"], - ["rl_r0", "rl_r3"], - ["rl_l0", "rl_m1"], - ["rl_l6", "rl_m3"], - ["rl_l4", "rl_l3"], + // Rear end + {"beamDeform" : 16000}, + ["rl_r7", "rl_r4"], + ["rlr6", "rl_r1"], + ["rl_r1", "rl_r2"], + ["rl_l7", "rl_m2"], + ["rll7", "rl_l0"], + ["rll6", "rl_l1"], + ["rl_l5", "rl_l2"], + ["rl_r6", "rl_r5"], + ["rl_l7", "rl_l4"], + ["rl_l6", "rl_l5"], + ["rl_l0", "rl_l3"], + ["rl_l1", "rl_l2"], + ["rl_l1", "rl_m0"], + ["rlr7", "rl_r0"], + ["rl_r0", "rl_m1"], + ["rl_r1", "rl_m0"], + ["rl_r6", "rl_m3"], + ["rl_r7", "rl_m2"], + ["rl_r4", "rl_r3"], + ["rl_r5", "rl_r2"], + ["rl_r0", "rl_r3"], + ["rl_l0", "rl_m1"], + ["rl_l6", "rl_m3"], + ["rl_l4", "rl_l3"], - // Support beams + // Support beams - // Front end - {"beamDeform" : 19000}, - ["rl_fl2", "rl_fsm"], - ["rl_fr2", "rl_fsm"], - ["rl_f", "rl_fl0"], - ["rl_fl4", "rl_fsm"], - ["rl_fsm", "rl_fr5"], - ["rl_fr1", "rl_fsm"], - ["rl_fl1", "rl_fsm"], - ["rl_fr4", "rl_fsm"], - ["rl_fm0", "rl_fsm"], - ["rl_fsm", "rl_fr0"], - ["rl_fsm", "rl_fl3"], - ["rl_fsm", "rl_fr3"], - ["rl_fsm", "rl_fm1"], - ["rl_fsm", "rl_fl5"], + // Front end + {"beamDeform" : 19000}, + ["rl_fl2", "rl_fsm"], + ["rl_fr2", "rl_fsm"], + ["rl_f", "rl_fl0"], + ["rl_fl4", "rl_fsm"], + ["rl_fsm", "rl_fr5"], + ["rl_fr1", "rl_fsm"], + ["rl_fl1", "rl_fsm"], + ["rl_fr4", "rl_fsm"], + ["rl_fm0", "rl_fsm"], + ["rl_fsm", "rl_fr0"], + ["rl_fsm", "rl_fl3"], + ["rl_fsm", "rl_fr3"], + ["rl_fsm", "rl_fm1"], + ["rl_fsm", "rl_fl5"], - // Middle - {"beamDeform" : 11000}, - ["rlr5", "rlsm"], - ["rlr3", "rlsm"], - ["rlm0", "rlsm"], - ["rll4", "rlsm"], - ["rll3", "rlsm"], - ["rlsm", "rll1"], - ["rlsm", "rll0"], - ["rll7", "rlsm"], - ["rlr7", "rlsm"], - ["rlr2", "rlsm"], - ["rlsm", "rlm1"], - ["rll5", "rlsm"], - ["rll2", "rlsm"], - ["rlsm", "rlr6"], - ["rlr4", "rlsm"], - ["rlsm", "rlr1"], - ["rlsm", "rlr0"], - ["rlsm", "rll6"], + // Middle + {"beamDeform" : 11000}, + ["rlr5", "rlsm"], + ["rlr3", "rlsm"], + ["rlm0", "rlsm"], + ["rll4", "rlsm"], + ["rll3", "rlsm"], + ["rlsm", "rll1"], + ["rlsm", "rll0"], + ["rll7", "rlsm"], + ["rlr7", "rlsm"], + ["rlr2", "rlsm"], + ["rlsm", "rlm1"], + ["rll5", "rlsm"], + ["rll2", "rlsm"], + ["rlsm", "rlr6"], + ["rlr4", "rlsm"], + ["rlsm", "rlr1"], + ["rlsm", "rlr0"], + ["rlsm", "rll6"], - // Rear end - {"beamDeform" : 19000}, - ["rl_rsm", "rl_m2"], - ["rl_rsm", "rl_r7"], - ["rl_r4", "rl_rsm"], - ["rl_rsm", "rl_l7"], - ["rl_rsm", "rl_l3"], - ["rl_rsm", "rl_r5"], - ["rl_l6", "rl_rsm"], - ["rl_m1", "rl_rsm"], - ["rl_rsm", "rl_r3"], - ["rl_l4", "rl_rsm"], - ["rl_r6", "rl_rsm"], - ["rl_m3", "rl_rsm"], - ["rl_l2", "rl_rsm"], - ["rl_rsm", "rl_m0"], - ["rl_r2", "rl_rsm"], - ["rl_r4", "rl_l5"], + // Rear end + {"beamDeform" : 19000}, + ["rl_rsm", "rl_m2"], + ["rl_rsm", "rl_r7"], + ["rl_r4", "rl_rsm"], + ["rl_rsm", "rl_l7"], + ["rl_rsm", "rl_l3"], + ["rl_rsm", "rl_r5"], + ["rl_l6", "rl_rsm"], + ["rl_m1", "rl_rsm"], + ["rl_rsm", "rl_r3"], + ["rl_l4", "rl_rsm"], + ["rl_r6", "rl_rsm"], + ["rl_m3", "rl_rsm"], + ["rl_l2", "rl_rsm"], + ["rl_rsm", "rl_m0"], + ["rl_r2", "rl_rsm"], + ["rl_r4", "rl_l5"], - // Front crush - {"beamDeform" : 8500}, - ["rlr0", "rl_fr2"], - ["rll0", "rl_fl2"] - ], - // --Collision Triangles-- - "triangles" : [ - ["id1:", "id2:", "id3:"], - ["rl_fm0", "rl_fl0", "rl_fm1"], - ["rl_fl1", "rl_fm1", "rl_fl0"], - ["rl_fm0", "rl_fm1", "rl_fr0"], - ["rl_fr1", "rl_fr0", "rl_fm1"], - ["rl_fr0", "rl_fr1", "rl_fr3"], - ["rl_fr0", "rl_fr3", "rl_fr2"], - ["rl_fr3", "rl_fr5", "rl_fr2"], - ["rl_fr4", "rl_fr2", "rl_fr5"], - ["rl_fr4", "rl_fr5", "rlr1"], - ["rlr1", "rlr0", "rl_fr4"], - ["rl_fl0", "rl_fl3", "rl_fl1"], - ["rl_fl0", "rl_fl2", "rl_fl3"], - ["rl_fl4", "rl_fl5", "rl_fl2"], - ["rl_fl3", "rl_fl2", "rl_fl5"], - ["rl_fl4", "rll1", "rl_fl5"], - ["rll1", "rl_fl4", "rll0"], - ["rll0", "rll3", "rll1"], - ["rll5", "rll1", "rll3"], - ["rll6", "rll5", "rll3"], - ["rll7", "rll5", "rll6"], - ["rlr0", "rlr1", "rlr2"], - ["rlr4", "rlr2", "rlr1"], - ["rlr6", "rlr2", "rlr4"], - ["rlr7", "rlr6", "rlr4"], - ["rlr6", "rlr7", "rl_r0"], - ["rl_r0", "rlr7", "rl_r1"], - ["rl_r1", "rl_r2", "rl_r0"], - ["rl_r3", "rl_r2", "rl_r1"], - ["rl_r4", "rl_r2", "rl_r3"], - ["rl_r5", "rl_r4", "rl_r3"], - ["rl_r6", "rl_r4", "rl_r5"], - ["rl_r7", "rl_r6", "rl_r5"], - ["rl_r7", "rl_m2", "rl_r6"], - ["rl_m2", "rl_r7", "rl_m3"], - ["rl_m3", "rl_l7", "rl_m2"], - ["rl_l7", "rl_l6", "rl_m2"], - ["rl_l5", "rl_l4", "rl_l6"], - ["rl_l7", "rl_l5", "rl_l6"], - ["rl_l5", "rl_l3", "rl_l4"], - ["rl_l4", "rl_l3", "rl_l2"], - ["rl_l1", "rl_l0", "rl_l2"], - ["rl_l3", "rl_l1", "rl_l2"], - ["rl_l1", "rl_m1", "rl_l0"], - ["rl_m1", "rl_m0", "rl_l0"], - ["rl_m1", "rl_r0", "rl_m0"], - ["rl_r0", "rl_m1", "rl_r1"], - ["rll6", "rl_l0", "rll7"], - ["rl_l0", "rl_l1", "rll7"], - ["rll1", "rll0", "rll2"], - ["rll1", "rll2", "rll4"], - ["rll4", "rll2", "rll5"], - ["rll5", "rll2", "rll3"], - ["rlr5", "rlr4", "rlr3"], - ["rlr4", "rlr2", "rlr3"], - ["rlr1", "rlr3", "rlr0"], - ["rlr5", "rlr3", "rlr1"], - ["rlm0", "rll2", "rll4"], - ["rlr5", "rlr3", "rlm0"], - ["rlm0", "rlm1", "rlr5"], - ["rlm0", "rll4", "rlm1"], - ["rll6", "rll4", "rll2"], - ["rll6", "rll7", "rll4"], - ["rlr3", "rlr5", "rlr6"], - ["rlr7", "rlr6", "rlr5"] - ], - "flexbodies" : [ - ["mesh", "[group]:", "nonFlexMaterials"], - ["rails", ["chassis_rails"]] - ], - "glowMap" : { - // main lights - "chassis_headlight_L" : {"simpleFunction" : "lowhighbeam_filament", "off" : "chassis_headlight", "on" : "chassis_headlight_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_headlight_R" : {"simpleFunction" : "lowhighbeam_filament", "off" : "chassis_headlight", "on" : "chassis_headlight_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_signal_L" : {"simpleFunction" : "signal_L_filament", "off" : "chassis_signal_amber", "on" : "chassis_signal_amber_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_signal_R" : {"simpleFunction" : "signal_R_filament", "off" : "chassis_signal_amber", "on" : "chassis_signal_amber_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_reverselight" : {"simpleFunction" : "reverselight_filament", "off" : "chassis_reverselight", "on" : "chassis_reverselight_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_brakelight_L" : {"simpleFunction" : "brakelight_filament", "off" : "chassis_taillight", "on" : "chassis_taillight_on", "materialEmissiveScaling" : {"on_max" : 1}}, - "chassis_brakelight_R" : {"simpleFunction" : "brakelight_filament", "off" : "chassis_taillight", "on" : "chassis_taillight_on", "materialEmissiveScaling" : {"on_max" : 1}}, - // gauge lights + // Front crush + {"beamDeform" : 8500}, + ["rlr0", "rl_fr2"], + ["rll0", "rl_fl2"] + ], + // --Collision Triangles-- + "triangles" : [ + ["id1:", "id2:", "id3:"], + ["rl_fm0", "rl_fl0", "rl_fm1"], + ["rl_fl1", "rl_fm1", "rl_fl0"], + ["rl_fm0", "rl_fm1", "rl_fr0"], + ["rl_fr1", "rl_fr0", "rl_fm1"], + ["rl_fr0", "rl_fr1", "rl_fr3"], + ["rl_fr0", "rl_fr3", "rl_fr2"], + ["rl_fr3", "rl_fr5", "rl_fr2"], + ["rl_fr4", "rl_fr2", "rl_fr5"], + ["rl_fr4", "rl_fr5", "rlr1"], + ["rlr1", "rlr0", "rl_fr4"], + ["rl_fl0", "rl_fl3", "rl_fl1"], + ["rl_fl0", "rl_fl2", "rl_fl3"], + ["rl_fl4", "rl_fl5", "rl_fl2"], + ["rl_fl3", "rl_fl2", "rl_fl5"], + ["rl_fl4", "rll1", "rl_fl5"], + ["rll1", "rl_fl4", "rll0"], + ["rll0", "rll3", "rll1"], + ["rll5", "rll1", "rll3"], + ["rll6", "rll5", "rll3"], + ["rll7", "rll5", "rll6"], + ["rlr0", "rlr1", "rlr2"], + ["rlr4", "rlr2", "rlr1"], + ["rlr6", "rlr2", "rlr4"], + ["rlr7", "rlr6", "rlr4"], + ["rlr6", "rlr7", "rl_r0"], + ["rl_r0", "rlr7", "rl_r1"], + ["rl_r1", "rl_r2", "rl_r0"], + ["rl_r3", "rl_r2", "rl_r1"], + ["rl_r4", "rl_r2", "rl_r3"], + ["rl_r5", "rl_r4", "rl_r3"], + ["rl_r6", "rl_r4", "rl_r5"], + ["rl_r7", "rl_r6", "rl_r5"], + ["rl_r7", "rl_m2", "rl_r6"], + ["rl_m2", "rl_r7", "rl_m3"], + ["rl_m3", "rl_l7", "rl_m2"], + ["rl_l7", "rl_l6", "rl_m2"], + ["rl_l5", "rl_l4", "rl_l6"], + ["rl_l7", "rl_l5", "rl_l6"], + ["rl_l5", "rl_l3", "rl_l4"], + ["rl_l4", "rl_l3", "rl_l2"], + ["rl_l1", "rl_l0", "rl_l2"], + ["rl_l3", "rl_l1", "rl_l2"], + ["rl_l1", "rl_m1", "rl_l0"], + ["rl_m1", "rl_m0", "rl_l0"], + ["rl_m1", "rl_r0", "rl_m0"], + ["rl_r0", "rl_m1", "rl_r1"], + ["rll6", "rl_l0", "rll7"], + ["rl_l0", "rl_l1", "rll7"], + ["rll1", "rll0", "rll2"], + ["rll1", "rll2", "rll4"], + ["rll4", "rll2", "rll5"], + ["rll5", "rll2", "rll3"], + ["rlr5", "rlr4", "rlr3"], + ["rlr4", "rlr2", "rlr3"], + ["rlr1", "rlr3", "rlr0"], + ["rlr5", "rlr3", "rlr1"], + ["rlm0", "rll2", "rll4"], + ["rlr5", "rlr3", "rlm0"], + ["rlm0", "rlm1", "rlr5"], + ["rlm0", "rll4", "rlm1"], + ["rll6", "rll4", "rll2"], + ["rll6", "rll7", "rll4"], + ["rlr3", "rlr5", "rlr6"], + ["rlr7", "rlr6", "rlr5"] + ], + "flexbodies" : [ + ["mesh", "[group]:", "nonFlexMaterials"], + ["rails", ["chassis_rails"]] + ], + "glowMap" : { + // main lights + "chassis_headlight_L" : {"simpleFunction" : "lowhighbeam_filament", "off" : "chassis_headlight", "on" : "chassis_headlight_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_headlight_R" : {"simpleFunction" : "lowhighbeam_filament", "off" : "chassis_headlight", "on" : "chassis_headlight_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_signal_L" : {"simpleFunction" : "signal_L_filament", "off" : "chassis_signal_amber", "on" : "chassis_signal_amber_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_signal_R" : {"simpleFunction" : "signal_R_filament", "off" : "chassis_signal_amber", "on" : "chassis_signal_amber_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_reverselight" : {"simpleFunction" : "reverselight_filament", "off" : "chassis_reverselight", "on" : "chassis_reverselight_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_brakelight_L" : {"simpleFunction" : "brakelight_filament", "off" : "chassis_taillight", "on" : "chassis_taillight_on", "materialEmissiveScaling" : {"on_max" : 1}}, + "chassis_brakelight_R" : {"simpleFunction" : "brakelight_filament", "off" : "chassis_taillight", "on" : "chassis_taillight_on", "materialEmissiveScaling" : {"on_max" : 1}}, + // gauge lights - // (turn signals, battery, parking brake, highbeam) - "chassis_gaugelight_highbeam" : {"simpleFunction" : "highbeam", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, - "chassis_gaugelight_signal_L" : {"simpleFunction" : "signal_L", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, - "chassis_gaugelight_signal_R" : {"simpleFunction" : "signal_R", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, - "chassis_gaugelight_battery" : {"simpleFunction" : "battery", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, - "chassis_gaugelight_parkbrake" : {"simpleFunction" : "parkingbrakelight", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, + // (turn signals, battery, parking brake, highbeam) + "chassis_gaugelight_highbeam" : {"simpleFunction" : "highbeam", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, + "chassis_gaugelight_signal_L" : {"simpleFunction" : "signal_L", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, + "chassis_gaugelight_signal_R" : {"simpleFunction" : "signal_R", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, + "chassis_gaugelight_battery" : {"simpleFunction" : "battery", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, + "chassis_gaugelight_parkbrake" : {"simpleFunction" : "parkingbrakelight", "off" : "chassis_gauges", "on" : "chassis_gauges_on"}, - // multi-condition warning light - "chassis_gaugelight_warning" : {"simpleFunction" : {"checkengine" : 1, "battery" : 1, "lowpressure" : 1}, "off" : "chassis_gauges", "on" : "chassis_gauges_on"} + // multi-condition warning light + "chassis_gaugelight_warning" : {"simpleFunction" : {"checkengine" : 1, "battery" : 1, "lowpressure" : 1}, "off" : "chassis_gauges", "on" : "chassis_gauges_on"} + } } - } } diff --git a/examples/transformed_jbeam/suspension-cfg-default.jbeam b/examples/transformed_jbeam/suspension-cfg-default.jbeam index e238da62..24215eeb 100644 --- a/examples/transformed_jbeam/suspension-cfg-default.jbeam +++ b/examples/transformed_jbeam/suspension-cfg-default.jbeam @@ -1,415 +1,415 @@ { - "chassis_rails" : { - "information" : { - "authors" : "gittarrgy01", - "name" : "" - }, - "slotType" : "main", - /* The purpose of this file is prove that moving metadata along with vertices when - moving vertices works as intended. - See issue for #69 explanation on the transformation part of the codebase. */ - // --Nodes-- - "nodes" : [ - ["id", "posX", "posY", "posZ"], - {"group" : "chassis_rails"}, + "chassis_rails" : { + "information" : { + "authors" : "gittarrgy01", + "name" : "" + }, + "slotType" : "main", + /* The purpose of this file is prove that moving metadata along with vertices when + moving vertices works as intended. + See issue for #69 explanation on the transformation part of the codebase. */ + // --Nodes-- + "nodes" : [ + ["id", "posX", "posY", "posZ"], + {"group" : "chassis_rails"}, - // Left side - {"nodeWeight" : 3.5}, - {"selfCollision" : false}, - ["rll0", 0.651, 1.152, 0.565], - ["rll1", 0.651, 1.121, 0.628], - ["rll2", 0.602, 1.514, 0.566], - ["rll3", 0.602, 1.532, 0.623], - ["rll4", 0.553, 1.654, 0.359], - ["rll5", 0.553, 1.679, 0.448], - ["rll6", 0.558, 2.284, 0.364], - ["rll7", 0.558, 2.284, 0.447], - {"selfCollision" : true}, - ["rll8", 0.790, -0.919, 0.182], - ["rll9", 0.790, -0.919, 0.233], - ["rll10", 0.415, 0.002, 0.182], - ["rll11", 0.837, 0.002, 0.182], // ref node left - ["rll12", 0.415, 0.002, 0.233], - ["rll13", 0.837, 0.002, 0.233], - ["rll14", 0.822, 0.791, 0.182], - ["rll15", 0.822, 0.791, 0.233], - {"nodeWeight" : 3.8}, - {"selfCollision" : false}, - ["rll16", 0.523, -2.093, 0.268], - ["rll17", 0.523, -2.098, 0.319], - ["rll18", 0.531, -1.721, 0.289], - ["rll19", 0.531, -1.724, 0.341], - ["rll20", 0.547, -1.350, 0.310], - ["rll21", 0.547, -1.350, 0.364], + // Left side + {"nodeWeight" : 3.5}, + {"selfCollision" : false}, + ["rll0", 0.651, 1.152, 0.565], + ["rll1", 0.651, 1.121, 0.628], + ["rll2", 0.602, 1.514, 0.566], + ["rll3", 0.602, 1.532, 0.623], + ["rll4", 0.553, 1.654, 0.359], + ["rll5", 0.553, 1.679, 0.448], + ["rll6", 0.558, 2.284, 0.364], + ["rll7", 0.558, 2.284, 0.447], + {"selfCollision" : true}, + ["rll8", 0.790, -0.919, 0.182], + ["rll9", 0.790, -0.919, 0.233], + ["rll10", 0.415, 0.002, 0.182], + ["rll11", 0.837, 0.002, 0.182], // ref node left + ["rll12", 0.415, 0.002, 0.233], + ["rll13", 0.837, 0.002, 0.233], + ["rll14", 0.822, 0.791, 0.182], + ["rll15", 0.822, 0.791, 0.233], + {"nodeWeight" : 3.8}, + {"selfCollision" : false}, + ["rll16", 0.523, -2.093, 0.268], + ["rll17", 0.523, -2.098, 0.319], + ["rll18", 0.531, -1.721, 0.289], + ["rll19", 0.531, -1.724, 0.341], + ["rll20", 0.547, -1.350, 0.310], + ["rll21", 0.547, -1.350, 0.364], - // Middle side - {"nodeWeight" : 3.5}, - ["rlm0", 0.053, 1.152, 0.565], - ["rlm1", 0.053, 1.121, 0.628], - ["rlm2", 0.053, 2.284, 0.370], - ["rlm3", 0.053, 2.284, 0.441], - {"selfCollision" : true}, - ["rlm4", 0.053, 0.002, 0.182], - ["rlm5", 0.053, 0.002, 0.233], - {"nodeWeight" : 3.8}, - {"selfCollision" : false}, - ["rlm6", 0.053, -2.090, 0.269], // ref node front - ["rlm7", 0.053, -2.095, 0.319], + // Middle side + {"nodeWeight" : 3.5}, + ["rlm0", 0.053, 1.152, 0.565], + ["rlm1", 0.053, 1.121, 0.628], + ["rlm2", 0.053, 2.284, 0.370], + ["rlm3", 0.053, 2.284, 0.441], + {"selfCollision" : true}, + ["rlm4", 0.053, 0.002, 0.182], + ["rlm5", 0.053, 0.002, 0.233], + {"nodeWeight" : 3.8}, + {"selfCollision" : false}, + ["rlm6", 0.053, -2.090, 0.269], // ref node front + ["rlm7", 0.053, -2.095, 0.319], - // Right side - {"nodeWeight" : 3.5}, - ["rlr0", -0.544, 1.152, 0.565], - ["rlr1", -0.544, 1.121, 0.628], - ["rlr2", -0.495, 1.514, 0.566], - ["rlr3", -0.495, 1.532, 0.623], - ["rlr4", -0.446, 1.654, 0.359], - ["rlr5", -0.446, 1.679, 0.448], - ["rlr6", -0.451, 2.284, 0.364], - ["rlr7", -0.451, 2.284, 0.447], - {"selfCollision" : true}, - ["rlr8", -0.683, -0.919, 0.182], - ["rlr9", -0.683, -0.919, 0.233], - ["rlr10", -0.730, 0.002, 0.182], // ref node right - ["rlr11", -0.308, 0.002, 0.182], - ["rlr12", -0.730, 0.002, 0.233], - ["rlr13", -0.308, 0.002, 0.233], - ["rlr14", -0.715, 0.791, 0.182], - ["rlr15", -0.715, 0.791, 0.233], - {"nodeWeight" : 3.8}, - {"selfCollision" : false}, - ["rlr16", -0.417, -2.093, 0.268], - ["rlr17", -0.417, -2.098, 0.319], - ["rlr18", -0.424, -1.721, 0.289], - ["rlr19", -0.424, -1.724, 0.341], - ["rlr20", -0.440, -1.350, 0.310], - ["rlr21", -0.440, -1.350, 0.364], + // Right side + {"nodeWeight" : 3.5}, + ["rlr0", -0.544, 1.152, 0.565], + ["rlr1", -0.544, 1.121, 0.628], + ["rlr2", -0.495, 1.514, 0.566], + ["rlr3", -0.495, 1.532, 0.623], + ["rlr4", -0.446, 1.654, 0.359], + ["rlr5", -0.446, 1.679, 0.448], + ["rlr6", -0.451, 2.284, 0.364], + ["rlr7", -0.451, 2.284, 0.447], + {"selfCollision" : true}, + ["rlr8", -0.683, -0.919, 0.182], + ["rlr9", -0.683, -0.919, 0.233], + ["rlr10", -0.730, 0.002, 0.182], // ref node right + ["rlr11", -0.308, 0.002, 0.182], + ["rlr12", -0.730, 0.002, 0.233], + ["rlr13", -0.308, 0.002, 0.233], + ["rlr14", -0.715, 0.791, 0.182], + ["rlr15", -0.715, 0.791, 0.233], + {"nodeWeight" : 3.8}, + {"selfCollision" : false}, + ["rlr16", -0.417, -2.093, 0.268], + ["rlr17", -0.417, -2.098, 0.319], + ["rlr18", -0.424, -1.721, 0.289], + ["rlr19", -0.424, -1.724, 0.341], + ["rlr20", -0.440, -1.350, 0.310], + ["rlr21", -0.440, -1.350, 0.364], - // Support nodes - {"nodeWeight" : 3.5}, - ["rlsm", 0.053, 1.710, 0.565], // support - {"selfCollision" : true}, - ["rlsm1", 0.053, -0.024, 0.578], // support - {"nodeWeight" : 3.8}, - {"selfCollision" : false}, - ["rlsm2", 0.053, -1.314, 0.382], // support - ], - // --Beams-- - "beams" : [ - ["id1:", "id2:"], + // Support nodes + {"nodeWeight" : 3.5}, + ["rlsm", 0.053, 1.710, 0.565], // support + {"selfCollision" : true}, + ["rlsm1", 0.053, -0.024, 0.578], // support + {"nodeWeight" : 3.8}, + {"selfCollision" : false}, + ["rlsm2", 0.053, -1.314, 0.382], // support + ], + // --Beams-- + "beams" : [ + ["id1:", "id2:"], - // Structural beams - {"beamStrength" : "FLT_MAX", "beamSpring" : "3800000"}, - {"beamDamp" : 130, "deformLimit" : 1.1}, + // Structural beams + {"beamStrength" : "FLT_MAX", "beamSpring" : "3800000"}, + {"beamDamp" : 130, "deformLimit" : 1.1}, - // Front end - {"beamDeform" : 20600, "deformLimit" : 1.1}, - ["rll16", "rlm6"], - ["rll17", "rll16"], - ["rll18", "rll16"], - ["rll8", "rll20"], - ["rll18", "rll19"], - ["rll21", "rll20"], - ["rll20", "rll18"], - ["rlr18", "rlr19"], - ["rlr8", "rlr20"], - ["rll19", "rll21"], - ["rll21", "rll9"], - ["rlr21", "rlr9"], - ["rlr21", "rlr20"], - ["rlr17", "rlr16"], - ["rlm7", "rlr17"], - ["rlm7", "rlm6"], - ["rlr20", "rlr18"], - ["rlr19", "rlr21"], - ["rll17", "rll19"], - ["rlr18", "rlr16"], - ["rlm7", "rll17"], - ["rlr16", "rlm6"], - ["rlr17", "rlr19"], + // Front end + {"beamDeform" : 20600, "deformLimit" : 1.1}, + ["rll16", "rlm6"], + ["rll17", "rll16"], + ["rll18", "rll16"], + ["rll8", "rll20"], + ["rll18", "rll19"], + ["rll21", "rll20"], + ["rll20", "rll18"], + ["rlr18", "rlr19"], + ["rlr8", "rlr20"], + ["rll19", "rll21"], + ["rll21", "rll9"], + ["rlr21", "rlr9"], + ["rlr21", "rlr20"], + ["rlr17", "rlr16"], + ["rlm7", "rlr17"], + ["rlm7", "rlm6"], + ["rlr20", "rlr18"], + ["rlr19", "rlr21"], + ["rll17", "rll19"], + ["rlr18", "rlr16"], + ["rlm7", "rll17"], + ["rlr16", "rlm6"], + ["rlr17", "rlr19"], - // Middle - {"beamDeform" : 27000}, - ["rll9", "rll8"], - ["rll11", "rll14"], - ["rll9", "rll12"], - ["rlr9", "rlr8"], - ["rlr8", "rlr10"], - ["rlr11", "rlr8"], - ["rlr9", "rlr13"], - ["rlr11", "rlm4"], - ["rlm5", "rlm4"], - ["rlm5", "rlr13"], - ["rll13", "rll9"], - ["rll10", "rll8"], - ["rll8", "rll11"], - ["rlr12", "rlr13"], - ["rlr10", "rlr14"], - ["rlr12", "rlr9"], - ["rll10", "rlm4"], - ["rll15", "rll13"], - ["rlr10", "rlr12"], - ["rlr14", "rlr15"], - ["rll14", "rll15"], - ["rlr15", "rlr12"], - ["rll14", "rll10"], - ["rlm5", "rll12"], - ["rlr14", "rlr11"], - ["rll11", "rll13"], - ["rll15", "rll12"], - ["rll11", "rll10"], - ["rll13", "rll12"], - ["rlr15", "rlr13"], - ["rll12", "rll10"], - ["rlr10", "rlr11"], - ["rlr13", "rlr11"], + // Middle + {"beamDeform" : 27000}, + ["rll9", "rll8"], + ["rll11", "rll14"], + ["rll9", "rll12"], + ["rlr9", "rlr8"], + ["rlr8", "rlr10"], + ["rlr11", "rlr8"], + ["rlr9", "rlr13"], + ["rlr11", "rlm4"], + ["rlm5", "rlm4"], + ["rlm5", "rlr13"], + ["rll13", "rll9"], + ["rll10", "rll8"], + ["rll8", "rll11"], + ["rlr12", "rlr13"], + ["rlr10", "rlr14"], + ["rlr12", "rlr9"], + ["rll10", "rlm4"], + ["rll15", "rll13"], + ["rlr10", "rlr12"], + ["rlr14", "rlr15"], + ["rll14", "rll15"], + ["rlr15", "rlr12"], + ["rll14", "rll10"], + ["rlm5", "rll12"], + ["rlr14", "rlr11"], + ["rll11", "rll13"], + ["rll15", "rll12"], + ["rll11", "rll10"], + ["rll13", "rll12"], + ["rlr15", "rlr13"], + ["rll12", "rll10"], + ["rlr10", "rlr11"], + ["rlr13", "rlr11"], - // Rear end - {"beamDeform" : 22000}, - ["rll0", "rll1"], - ["rlr0", "rlr2"], - ["rll4", "rll5"], - ["rlr15", "rlr1"], - ["rll5", "rll3"], - ["rll15", "rll1"], - ["rll0", "rll14"], - ["rll6", "rlm2"], - ["rlm3", "rll7"], - ["rll7", "rll5"], - ["rll6", "rll7"], - ["rll3", "rll1"], - ["rll2", "rll4"], - ["rll2", "rll3"], - ["rlr2", "rlr4"], - ["rlr0", "rlr1"], - ["rlr1", "rlm1"], - ["rlm0", "rlm1"], - ["rlr6", "rlr7"], - ["rlm3", "rlr7"], - ["rlm2", "rlm3"], - ["rlr4", "rlr6"], - ["rlr7", "rlr5"], - ["rlr3", "rlr1"], - ["rlr6", "rlm2"], - ["rll1", "rlm1"], - ["rlm0", "rll0"], - ["rlr4", "rlr5"], - ["rlr2", "rlr3"], - ["rlm0", "rlr0"], - ["rlr0", "rlr14"], - ["rlr5", "rlr3"], - ["rll4", "rll6"], - ["rll0", "rll2"], + // Rear end + {"beamDeform" : 22000}, + ["rll0", "rll1"], + ["rlr0", "rlr2"], + ["rll4", "rll5"], + ["rlr15", "rlr1"], + ["rll5", "rll3"], + ["rll15", "rll1"], + ["rll0", "rll14"], + ["rll6", "rlm2"], + ["rlm3", "rll7"], + ["rll7", "rll5"], + ["rll6", "rll7"], + ["rll3", "rll1"], + ["rll2", "rll4"], + ["rll2", "rll3"], + ["rlr2", "rlr4"], + ["rlr0", "rlr1"], + ["rlr1", "rlm1"], + ["rlm0", "rlm1"], + ["rlr6", "rlr7"], + ["rlm3", "rlr7"], + ["rlm2", "rlm3"], + ["rlr4", "rlr6"], + ["rlr7", "rlr5"], + ["rlr3", "rlr1"], + ["rlr6", "rlm2"], + ["rll1", "rlm1"], + ["rlm0", "rll0"], + ["rlr4", "rlr5"], + ["rlr2", "rlr3"], + ["rlm0", "rlr0"], + ["rlr0", "rlr14"], + ["rlr5", "rlr3"], + ["rll4", "rll6"], + ["rll0", "rll2"], - // Crossing beams + // Crossing beams - // Front end - {"beamDeform" : 16000}, - ["rlr16", "rlm7"], - ["rll17", "rll18"], - ["rll9", "rll20"], - ["rll8", "rll21"], - ["rll20", "rll19"], - ["rll21", "rll18"], - ["rlr17", "rlm6"], - ["rlr16", "rlr19"], - ["rlr17", "rlr18"], - ["rlr20", "rlr19"], - ["rll16", "rll19"], - ["rll17", "rlm6"], - ["rll16", "rlm7"], - ["rlr21", "rlr18"], - ["rlr8", "rlr21"], - ["rlr9", "rlr20"], + // Front end + {"beamDeform" : 16000}, + ["rlr16", "rlm7"], + ["rll17", "rll18"], + ["rll9", "rll20"], + ["rll8", "rll21"], + ["rll20", "rll19"], + ["rll21", "rll18"], + ["rlr17", "rlm6"], + ["rlr16", "rlr19"], + ["rlr17", "rlr18"], + ["rlr20", "rlr19"], + ["rll16", "rll19"], + ["rll17", "rlm6"], + ["rll16", "rlm7"], + ["rlr21", "rlr18"], + ["rlr8", "rlr21"], + ["rlr9", "rlr20"], - // Middle - {"beamDeform" : 6500}, - ["rll9", "rll11"], - ["rll8", "rll12"], - ["rlr9", "rlr10"], - ["rlr9", "rlr11"], - ["rlr8", "rlr13"], - ["rlr13", "rlm4"], - ["rlr11", "rlm5"], - ["rll15", "rll11"], - ["rll8", "rll13"], - ["rll9", "rll10"], - ["rlr14", "rlr12"], - ["rll14", "rll13"], - ["rll12", "rlm4"], - ["rlr14", "rlr13"], - ["rlr8", "rlr12"], - ["rlr15", "rlr10"], - ["rlr12", "rlr11"], - ["rll14", "rll12"], - ["rlr15", "rlr11"], - ["rll10", "rlm5"], - ["rll11", "rll12"], - ["rlr10", "rlr13"], - ["rll15", "rll10"], - ["rll13", "rll10"], + // Middle + {"beamDeform" : 6500}, + ["rll9", "rll11"], + ["rll8", "rll12"], + ["rlr9", "rlr10"], + ["rlr9", "rlr11"], + ["rlr8", "rlr13"], + ["rlr13", "rlm4"], + ["rlr11", "rlm5"], + ["rll15", "rll11"], + ["rll8", "rll13"], + ["rll9", "rll10"], + ["rlr14", "rlr12"], + ["rll14", "rll13"], + ["rll12", "rlm4"], + ["rlr14", "rlr13"], + ["rlr8", "rlr12"], + ["rlr15", "rlr10"], + ["rlr12", "rlr11"], + ["rll14", "rll12"], + ["rlr15", "rlr11"], + ["rll10", "rlm5"], + ["rll11", "rll12"], + ["rlr10", "rlr13"], + ["rll15", "rll10"], + ["rll13", "rll10"], - // Rear end - {"beamDeform" : 16000}, - ["rlr7", "rlr4"], - ["rlr14", "rlr1"], - ["rlr1", "rlr2"], - ["rll7", "rlm2"], - ["rll15", "rll0"], - ["rll14", "rll1"], - ["rll5", "rll2"], - ["rlr6", "rlr5"], - ["rll7", "rll4"], - ["rll6", "rll5"], - ["rll0", "rll3"], - ["rll1", "rll2"], - ["rll1", "rlm0"], - ["rlr15", "rlr0"], - ["rlr0", "rlm1"], - ["rlr1", "rlm0"], - ["rlr6", "rlm3"], - ["rlr7", "rlm2"], - ["rlr4", "rlr3"], - ["rlr5", "rlr2"], - ["rlr0", "rlr3"], - ["rll0", "rlm1"], - ["rll6", "rlm3"], - ["rll4", "rll3"], + // Rear end + {"beamDeform" : 16000}, + ["rlr7", "rlr4"], + ["rlr14", "rlr1"], + ["rlr1", "rlr2"], + ["rll7", "rlm2"], + ["rll15", "rll0"], + ["rll14", "rll1"], + ["rll5", "rll2"], + ["rlr6", "rlr5"], + ["rll7", "rll4"], + ["rll6", "rll5"], + ["rll0", "rll3"], + ["rll1", "rll2"], + ["rll1", "rlm0"], + ["rlr15", "rlr0"], + ["rlr0", "rlm1"], + ["rlr1", "rlm0"], + ["rlr6", "rlm3"], + ["rlr7", "rlm2"], + ["rlr4", "rlr3"], + ["rlr5", "rlr2"], + ["rlr0", "rlr3"], + ["rll0", "rlm1"], + ["rll6", "rlm3"], + ["rll4", "rll3"], - // Support beams + // Support beams - // Front end - {"beamDeform" : 19000}, - ["rll18", "rlsm2"], - ["rlr18", "rlsm2"], - ["rlsm2", "rll16"], - ["rll20", "rlsm2"], - ["rlsm2", "rlr21"], - ["rlr17", "rlsm2"], - ["rll17", "rlsm2"], - ["rlr20", "rlsm2"], - ["rlm6", "rlsm2"], - ["rlsm2", "rlr16"], - ["rlsm2", "rll19"], - ["rlsm2", "rlr19"], - ["rlsm2", "rlm7"], - ["rlsm2", "rll21"], + // Front end + {"beamDeform" : 19000}, + ["rll18", "rlsm2"], + ["rlr18", "rlsm2"], + ["rlsm2", "rll16"], + ["rll20", "rlsm2"], + ["rlsm2", "rlr21"], + ["rlr17", "rlsm2"], + ["rll17", "rlsm2"], + ["rlr20", "rlsm2"], + ["rlm6", "rlsm2"], + ["rlsm2", "rlr16"], + ["rlsm2", "rll19"], + ["rlsm2", "rlr19"], + ["rlsm2", "rlm7"], + ["rlsm2", "rll21"], - // Middle - {"beamDeform" : 11000}, - ["rlr13", "rlsm1"], - ["rlr11", "rlsm1"], - ["rlm4", "rlsm1"], - ["rll12", "rlsm1"], - ["rll11", "rlsm1"], - ["rlsm1", "rll9"], - ["rlsm1", "rll8"], - ["rll15", "rlsm1"], - ["rlr15", "rlsm1"], - ["rlr10", "rlsm1"], - ["rlsm1", "rlm5"], - ["rll13", "rlsm1"], - ["rll10", "rlsm1"], - ["rlsm1", "rlr14"], - ["rlr12", "rlsm1"], - ["rlsm1", "rlr9"], - ["rlsm1", "rlr8"], - ["rlsm1", "rll14"], + // Middle + {"beamDeform" : 11000}, + ["rlr13", "rlsm1"], + ["rlr11", "rlsm1"], + ["rlm4", "rlsm1"], + ["rll12", "rlsm1"], + ["rll11", "rlsm1"], + ["rlsm1", "rll9"], + ["rlsm1", "rll8"], + ["rll15", "rlsm1"], + ["rlr15", "rlsm1"], + ["rlr10", "rlsm1"], + ["rlsm1", "rlm5"], + ["rll13", "rlsm1"], + ["rll10", "rlsm1"], + ["rlsm1", "rlr14"], + ["rlr12", "rlsm1"], + ["rlsm1", "rlr9"], + ["rlsm1", "rlr8"], + ["rlsm1", "rll14"], - // Rear end - {"beamDeform" : 19000}, - ["rlsm", "rlm2"], - ["rlsm", "rlr7"], - ["rlr4", "rlsm"], - ["rlsm", "rll7"], - ["rlsm", "rll3"], - ["rlsm", "rlr5"], - ["rll6", "rlsm"], - ["rlm1", "rlsm"], - ["rlsm", "rlr3"], - ["rll4", "rlsm"], - ["rlr6", "rlsm"], - ["rlm3", "rlsm"], - ["rll2", "rlsm"], - ["rlsm", "rlm0"], - ["rlr2", "rlsm"], - ["rlsm", "rll5"], + // Rear end + {"beamDeform" : 19000}, + ["rlsm", "rlm2"], + ["rlsm", "rlr7"], + ["rlr4", "rlsm"], + ["rlsm", "rll7"], + ["rlsm", "rll3"], + ["rlsm", "rlr5"], + ["rll6", "rlsm"], + ["rlm1", "rlsm"], + ["rlsm", "rlr3"], + ["rll4", "rlsm"], + ["rlr6", "rlsm"], + ["rlm3", "rlsm"], + ["rll2", "rlsm"], + ["rlsm", "rlm0"], + ["rlr2", "rlsm"], + ["rlsm", "rll5"], - // Front crush - {"beamDeform" : 8500}, - ["rlr8", "rlr18"], - ["rll8", "rll18"] - ], - // --Collision Triangles-- - "triangles" : [ - ["id1:", "id2:", "id3:"], - ["rlm6", "rll16", "rlm7"], - ["rll17", "rlm7", "rll16"], - ["rlm6", "rlm7", "rlr16"], - ["rlr17", "rlr16", "rlm7"], - ["rlr16", "rlr17", "rlr19"], - ["rlr16", "rlr19", "rlr18"], - ["rlr19", "rlr21", "rlr18"], - ["rlr20", "rlr18", "rlr21"], - ["rlr20", "rlr21", "rlr9"], - ["rlr9", "rlr8", "rlr20"], - ["rll16", "rll19", "rll17"], - ["rll16", "rll18", "rll19"], - ["rll20", "rll21", "rll18"], - ["rll19", "rll18", "rll21"], - ["rll20", "rll9", "rll21"], - ["rll9", "rll20", "rll8"], - ["rll8", "rll11", "rll9"], - ["rll13", "rll9", "rll11"], - ["rll14", "rll13", "rll11"], - ["rll15", "rll13", "rll14"], - ["rlr8", "rlr9", "rlr10"], - ["rlr12", "rlr10", "rlr9"], - ["rlr14", "rlr10", "rlr12"], - ["rlr15", "rlr14", "rlr12"], - ["rlr14", "rlr15", "rlr0"], - ["rlr0", "rlr15", "rlr1"], - ["rlr1", "rlr2", "rlr0"], - ["rlr3", "rlr2", "rlr1"], - ["rlr4", "rlr2", "rlr3"], - ["rlr5", "rlr4", "rlr3"], - ["rlr6", "rlr4", "rlr5"], - ["rlr7", "rlr6", "rlr5"], - ["rlr7", "rlm2", "rlr6"], - ["rlm2", "rlr7", "rlm3"], - ["rlm3", "rll7", "rlm2"], - ["rll7", "rll6", "rlm2"], - ["rll5", "rll4", "rll6"], - ["rll7", "rll5", "rll6"], - ["rll5", "rll3", "rll4"], - ["rll4", "rll3", "rll2"], - ["rll1", "rll0", "rll2"], - ["rll3", "rll1", "rll2"], - ["rll1", "rlm1", "rll0"], - ["rlm1", "rlm0", "rll0"], - ["rlm1", "rlr0", "rlm0"], - ["rlr0", "rlm1", "rlr1"], - ["rll14", "rll0", "rll15"], - ["rll0", "rll1", "rll15"], - ["rll9", "rll8", "rll10"], - ["rll9", "rll10", "rll12"], - ["rll12", "rll10", "rll13"], - ["rll13", "rll10", "rll11"], - ["rlr13", "rlr12", "rlr11"], - ["rlr12", "rlr10", "rlr11"], - ["rlr9", "rlr11", "rlr8"], - ["rlr13", "rlr11", "rlr9"], - ["rlm4", "rll10", "rll12"], - ["rlr13", "rlr11", "rlm4"], - ["rlm4", "rlm5", "rlr13"], - ["rlm4", "rll12", "rlm5"], - ["rll14", "rll12", "rll10"], - ["rll14", "rll15", "rll12"], - ["rlr11", "rlr13", "rlr14"], - ["rlr15", "rlr14", "rlr13"] - ], - "flexbodies" : [ - ["mesh", "[group]:", "nonFlexMaterials"], - ["rails", ["chassis_rails"]] - ] - } + // Front crush + {"beamDeform" : 8500}, + ["rlr8", "rlr18"], + ["rll8", "rll18"] + ], + // --Collision Triangles-- + "triangles" : [ + ["id1:", "id2:", "id3:"], + ["rlm6", "rll16", "rlm7"], + ["rll17", "rlm7", "rll16"], + ["rlm6", "rlm7", "rlr16"], + ["rlr17", "rlr16", "rlm7"], + ["rlr16", "rlr17", "rlr19"], + ["rlr16", "rlr19", "rlr18"], + ["rlr19", "rlr21", "rlr18"], + ["rlr20", "rlr18", "rlr21"], + ["rlr20", "rlr21", "rlr9"], + ["rlr9", "rlr8", "rlr20"], + ["rll16", "rll19", "rll17"], + ["rll16", "rll18", "rll19"], + ["rll20", "rll21", "rll18"], + ["rll19", "rll18", "rll21"], + ["rll20", "rll9", "rll21"], + ["rll9", "rll20", "rll8"], + ["rll8", "rll11", "rll9"], + ["rll13", "rll9", "rll11"], + ["rll14", "rll13", "rll11"], + ["rll15", "rll13", "rll14"], + ["rlr8", "rlr9", "rlr10"], + ["rlr12", "rlr10", "rlr9"], + ["rlr14", "rlr10", "rlr12"], + ["rlr15", "rlr14", "rlr12"], + ["rlr14", "rlr15", "rlr0"], + ["rlr0", "rlr15", "rlr1"], + ["rlr1", "rlr2", "rlr0"], + ["rlr3", "rlr2", "rlr1"], + ["rlr4", "rlr2", "rlr3"], + ["rlr5", "rlr4", "rlr3"], + ["rlr6", "rlr4", "rlr5"], + ["rlr7", "rlr6", "rlr5"], + ["rlr7", "rlm2", "rlr6"], + ["rlm2", "rlr7", "rlm3"], + ["rlm3", "rll7", "rlm2"], + ["rll7", "rll6", "rlm2"], + ["rll5", "rll4", "rll6"], + ["rll7", "rll5", "rll6"], + ["rll5", "rll3", "rll4"], + ["rll4", "rll3", "rll2"], + ["rll1", "rll0", "rll2"], + ["rll3", "rll1", "rll2"], + ["rll1", "rlm1", "rll0"], + ["rlm1", "rlm0", "rll0"], + ["rlm1", "rlr0", "rlm0"], + ["rlr0", "rlm1", "rlr1"], + ["rll14", "rll0", "rll15"], + ["rll0", "rll1", "rll15"], + ["rll9", "rll8", "rll10"], + ["rll9", "rll10", "rll12"], + ["rll12", "rll10", "rll13"], + ["rll13", "rll10", "rll11"], + ["rlr13", "rlr12", "rlr11"], + ["rlr12", "rlr10", "rlr11"], + ["rlr9", "rlr11", "rlr8"], + ["rlr13", "rlr11", "rlr9"], + ["rlm4", "rll10", "rll12"], + ["rlr13", "rlr11", "rlm4"], + ["rlm4", "rlm5", "rlr13"], + ["rlm4", "rll12", "rlm5"], + ["rll14", "rll12", "rll10"], + ["rll14", "rll15", "rll12"], + ["rlr11", "rlr13", "rlr14"], + ["rlr15", "rlr14", "rlr13"] + ], + "flexbodies" : [ + ["mesh", "[group]:", "nonFlexMaterials"], + ["rails", ["chassis_rails"]] + ] + } } diff --git a/examples/transformed_jbeam/suspension-cfg-example.jbeam b/examples/transformed_jbeam/suspension-cfg-example.jbeam index e238da62..24215eeb 100644 --- a/examples/transformed_jbeam/suspension-cfg-example.jbeam +++ b/examples/transformed_jbeam/suspension-cfg-example.jbeam @@ -1,415 +1,415 @@ { - "chassis_rails" : { - "information" : { - "authors" : "gittarrgy01", - "name" : "" - }, - "slotType" : "main", - /* The purpose of this file is prove that moving metadata along with vertices when - moving vertices works as intended. - See issue for #69 explanation on the transformation part of the codebase. */ - // --Nodes-- - "nodes" : [ - ["id", "posX", "posY", "posZ"], - {"group" : "chassis_rails"}, + "chassis_rails" : { + "information" : { + "authors" : "gittarrgy01", + "name" : "" + }, + "slotType" : "main", + /* The purpose of this file is prove that moving metadata along with vertices when + moving vertices works as intended. + See issue for #69 explanation on the transformation part of the codebase. */ + // --Nodes-- + "nodes" : [ + ["id", "posX", "posY", "posZ"], + {"group" : "chassis_rails"}, - // Left side - {"nodeWeight" : 3.5}, - {"selfCollision" : false}, - ["rll0", 0.651, 1.152, 0.565], - ["rll1", 0.651, 1.121, 0.628], - ["rll2", 0.602, 1.514, 0.566], - ["rll3", 0.602, 1.532, 0.623], - ["rll4", 0.553, 1.654, 0.359], - ["rll5", 0.553, 1.679, 0.448], - ["rll6", 0.558, 2.284, 0.364], - ["rll7", 0.558, 2.284, 0.447], - {"selfCollision" : true}, - ["rll8", 0.790, -0.919, 0.182], - ["rll9", 0.790, -0.919, 0.233], - ["rll10", 0.415, 0.002, 0.182], - ["rll11", 0.837, 0.002, 0.182], // ref node left - ["rll12", 0.415, 0.002, 0.233], - ["rll13", 0.837, 0.002, 0.233], - ["rll14", 0.822, 0.791, 0.182], - ["rll15", 0.822, 0.791, 0.233], - {"nodeWeight" : 3.8}, - {"selfCollision" : false}, - ["rll16", 0.523, -2.093, 0.268], - ["rll17", 0.523, -2.098, 0.319], - ["rll18", 0.531, -1.721, 0.289], - ["rll19", 0.531, -1.724, 0.341], - ["rll20", 0.547, -1.350, 0.310], - ["rll21", 0.547, -1.350, 0.364], + // Left side + {"nodeWeight" : 3.5}, + {"selfCollision" : false}, + ["rll0", 0.651, 1.152, 0.565], + ["rll1", 0.651, 1.121, 0.628], + ["rll2", 0.602, 1.514, 0.566], + ["rll3", 0.602, 1.532, 0.623], + ["rll4", 0.553, 1.654, 0.359], + ["rll5", 0.553, 1.679, 0.448], + ["rll6", 0.558, 2.284, 0.364], + ["rll7", 0.558, 2.284, 0.447], + {"selfCollision" : true}, + ["rll8", 0.790, -0.919, 0.182], + ["rll9", 0.790, -0.919, 0.233], + ["rll10", 0.415, 0.002, 0.182], + ["rll11", 0.837, 0.002, 0.182], // ref node left + ["rll12", 0.415, 0.002, 0.233], + ["rll13", 0.837, 0.002, 0.233], + ["rll14", 0.822, 0.791, 0.182], + ["rll15", 0.822, 0.791, 0.233], + {"nodeWeight" : 3.8}, + {"selfCollision" : false}, + ["rll16", 0.523, -2.093, 0.268], + ["rll17", 0.523, -2.098, 0.319], + ["rll18", 0.531, -1.721, 0.289], + ["rll19", 0.531, -1.724, 0.341], + ["rll20", 0.547, -1.350, 0.310], + ["rll21", 0.547, -1.350, 0.364], - // Middle side - {"nodeWeight" : 3.5}, - ["rlm0", 0.053, 1.152, 0.565], - ["rlm1", 0.053, 1.121, 0.628], - ["rlm2", 0.053, 2.284, 0.370], - ["rlm3", 0.053, 2.284, 0.441], - {"selfCollision" : true}, - ["rlm4", 0.053, 0.002, 0.182], - ["rlm5", 0.053, 0.002, 0.233], - {"nodeWeight" : 3.8}, - {"selfCollision" : false}, - ["rlm6", 0.053, -2.090, 0.269], // ref node front - ["rlm7", 0.053, -2.095, 0.319], + // Middle side + {"nodeWeight" : 3.5}, + ["rlm0", 0.053, 1.152, 0.565], + ["rlm1", 0.053, 1.121, 0.628], + ["rlm2", 0.053, 2.284, 0.370], + ["rlm3", 0.053, 2.284, 0.441], + {"selfCollision" : true}, + ["rlm4", 0.053, 0.002, 0.182], + ["rlm5", 0.053, 0.002, 0.233], + {"nodeWeight" : 3.8}, + {"selfCollision" : false}, + ["rlm6", 0.053, -2.090, 0.269], // ref node front + ["rlm7", 0.053, -2.095, 0.319], - // Right side - {"nodeWeight" : 3.5}, - ["rlr0", -0.544, 1.152, 0.565], - ["rlr1", -0.544, 1.121, 0.628], - ["rlr2", -0.495, 1.514, 0.566], - ["rlr3", -0.495, 1.532, 0.623], - ["rlr4", -0.446, 1.654, 0.359], - ["rlr5", -0.446, 1.679, 0.448], - ["rlr6", -0.451, 2.284, 0.364], - ["rlr7", -0.451, 2.284, 0.447], - {"selfCollision" : true}, - ["rlr8", -0.683, -0.919, 0.182], - ["rlr9", -0.683, -0.919, 0.233], - ["rlr10", -0.730, 0.002, 0.182], // ref node right - ["rlr11", -0.308, 0.002, 0.182], - ["rlr12", -0.730, 0.002, 0.233], - ["rlr13", -0.308, 0.002, 0.233], - ["rlr14", -0.715, 0.791, 0.182], - ["rlr15", -0.715, 0.791, 0.233], - {"nodeWeight" : 3.8}, - {"selfCollision" : false}, - ["rlr16", -0.417, -2.093, 0.268], - ["rlr17", -0.417, -2.098, 0.319], - ["rlr18", -0.424, -1.721, 0.289], - ["rlr19", -0.424, -1.724, 0.341], - ["rlr20", -0.440, -1.350, 0.310], - ["rlr21", -0.440, -1.350, 0.364], + // Right side + {"nodeWeight" : 3.5}, + ["rlr0", -0.544, 1.152, 0.565], + ["rlr1", -0.544, 1.121, 0.628], + ["rlr2", -0.495, 1.514, 0.566], + ["rlr3", -0.495, 1.532, 0.623], + ["rlr4", -0.446, 1.654, 0.359], + ["rlr5", -0.446, 1.679, 0.448], + ["rlr6", -0.451, 2.284, 0.364], + ["rlr7", -0.451, 2.284, 0.447], + {"selfCollision" : true}, + ["rlr8", -0.683, -0.919, 0.182], + ["rlr9", -0.683, -0.919, 0.233], + ["rlr10", -0.730, 0.002, 0.182], // ref node right + ["rlr11", -0.308, 0.002, 0.182], + ["rlr12", -0.730, 0.002, 0.233], + ["rlr13", -0.308, 0.002, 0.233], + ["rlr14", -0.715, 0.791, 0.182], + ["rlr15", -0.715, 0.791, 0.233], + {"nodeWeight" : 3.8}, + {"selfCollision" : false}, + ["rlr16", -0.417, -2.093, 0.268], + ["rlr17", -0.417, -2.098, 0.319], + ["rlr18", -0.424, -1.721, 0.289], + ["rlr19", -0.424, -1.724, 0.341], + ["rlr20", -0.440, -1.350, 0.310], + ["rlr21", -0.440, -1.350, 0.364], - // Support nodes - {"nodeWeight" : 3.5}, - ["rlsm", 0.053, 1.710, 0.565], // support - {"selfCollision" : true}, - ["rlsm1", 0.053, -0.024, 0.578], // support - {"nodeWeight" : 3.8}, - {"selfCollision" : false}, - ["rlsm2", 0.053, -1.314, 0.382], // support - ], - // --Beams-- - "beams" : [ - ["id1:", "id2:"], + // Support nodes + {"nodeWeight" : 3.5}, + ["rlsm", 0.053, 1.710, 0.565], // support + {"selfCollision" : true}, + ["rlsm1", 0.053, -0.024, 0.578], // support + {"nodeWeight" : 3.8}, + {"selfCollision" : false}, + ["rlsm2", 0.053, -1.314, 0.382], // support + ], + // --Beams-- + "beams" : [ + ["id1:", "id2:"], - // Structural beams - {"beamStrength" : "FLT_MAX", "beamSpring" : "3800000"}, - {"beamDamp" : 130, "deformLimit" : 1.1}, + // Structural beams + {"beamStrength" : "FLT_MAX", "beamSpring" : "3800000"}, + {"beamDamp" : 130, "deformLimit" : 1.1}, - // Front end - {"beamDeform" : 20600, "deformLimit" : 1.1}, - ["rll16", "rlm6"], - ["rll17", "rll16"], - ["rll18", "rll16"], - ["rll8", "rll20"], - ["rll18", "rll19"], - ["rll21", "rll20"], - ["rll20", "rll18"], - ["rlr18", "rlr19"], - ["rlr8", "rlr20"], - ["rll19", "rll21"], - ["rll21", "rll9"], - ["rlr21", "rlr9"], - ["rlr21", "rlr20"], - ["rlr17", "rlr16"], - ["rlm7", "rlr17"], - ["rlm7", "rlm6"], - ["rlr20", "rlr18"], - ["rlr19", "rlr21"], - ["rll17", "rll19"], - ["rlr18", "rlr16"], - ["rlm7", "rll17"], - ["rlr16", "rlm6"], - ["rlr17", "rlr19"], + // Front end + {"beamDeform" : 20600, "deformLimit" : 1.1}, + ["rll16", "rlm6"], + ["rll17", "rll16"], + ["rll18", "rll16"], + ["rll8", "rll20"], + ["rll18", "rll19"], + ["rll21", "rll20"], + ["rll20", "rll18"], + ["rlr18", "rlr19"], + ["rlr8", "rlr20"], + ["rll19", "rll21"], + ["rll21", "rll9"], + ["rlr21", "rlr9"], + ["rlr21", "rlr20"], + ["rlr17", "rlr16"], + ["rlm7", "rlr17"], + ["rlm7", "rlm6"], + ["rlr20", "rlr18"], + ["rlr19", "rlr21"], + ["rll17", "rll19"], + ["rlr18", "rlr16"], + ["rlm7", "rll17"], + ["rlr16", "rlm6"], + ["rlr17", "rlr19"], - // Middle - {"beamDeform" : 27000}, - ["rll9", "rll8"], - ["rll11", "rll14"], - ["rll9", "rll12"], - ["rlr9", "rlr8"], - ["rlr8", "rlr10"], - ["rlr11", "rlr8"], - ["rlr9", "rlr13"], - ["rlr11", "rlm4"], - ["rlm5", "rlm4"], - ["rlm5", "rlr13"], - ["rll13", "rll9"], - ["rll10", "rll8"], - ["rll8", "rll11"], - ["rlr12", "rlr13"], - ["rlr10", "rlr14"], - ["rlr12", "rlr9"], - ["rll10", "rlm4"], - ["rll15", "rll13"], - ["rlr10", "rlr12"], - ["rlr14", "rlr15"], - ["rll14", "rll15"], - ["rlr15", "rlr12"], - ["rll14", "rll10"], - ["rlm5", "rll12"], - ["rlr14", "rlr11"], - ["rll11", "rll13"], - ["rll15", "rll12"], - ["rll11", "rll10"], - ["rll13", "rll12"], - ["rlr15", "rlr13"], - ["rll12", "rll10"], - ["rlr10", "rlr11"], - ["rlr13", "rlr11"], + // Middle + {"beamDeform" : 27000}, + ["rll9", "rll8"], + ["rll11", "rll14"], + ["rll9", "rll12"], + ["rlr9", "rlr8"], + ["rlr8", "rlr10"], + ["rlr11", "rlr8"], + ["rlr9", "rlr13"], + ["rlr11", "rlm4"], + ["rlm5", "rlm4"], + ["rlm5", "rlr13"], + ["rll13", "rll9"], + ["rll10", "rll8"], + ["rll8", "rll11"], + ["rlr12", "rlr13"], + ["rlr10", "rlr14"], + ["rlr12", "rlr9"], + ["rll10", "rlm4"], + ["rll15", "rll13"], + ["rlr10", "rlr12"], + ["rlr14", "rlr15"], + ["rll14", "rll15"], + ["rlr15", "rlr12"], + ["rll14", "rll10"], + ["rlm5", "rll12"], + ["rlr14", "rlr11"], + ["rll11", "rll13"], + ["rll15", "rll12"], + ["rll11", "rll10"], + ["rll13", "rll12"], + ["rlr15", "rlr13"], + ["rll12", "rll10"], + ["rlr10", "rlr11"], + ["rlr13", "rlr11"], - // Rear end - {"beamDeform" : 22000}, - ["rll0", "rll1"], - ["rlr0", "rlr2"], - ["rll4", "rll5"], - ["rlr15", "rlr1"], - ["rll5", "rll3"], - ["rll15", "rll1"], - ["rll0", "rll14"], - ["rll6", "rlm2"], - ["rlm3", "rll7"], - ["rll7", "rll5"], - ["rll6", "rll7"], - ["rll3", "rll1"], - ["rll2", "rll4"], - ["rll2", "rll3"], - ["rlr2", "rlr4"], - ["rlr0", "rlr1"], - ["rlr1", "rlm1"], - ["rlm0", "rlm1"], - ["rlr6", "rlr7"], - ["rlm3", "rlr7"], - ["rlm2", "rlm3"], - ["rlr4", "rlr6"], - ["rlr7", "rlr5"], - ["rlr3", "rlr1"], - ["rlr6", "rlm2"], - ["rll1", "rlm1"], - ["rlm0", "rll0"], - ["rlr4", "rlr5"], - ["rlr2", "rlr3"], - ["rlm0", "rlr0"], - ["rlr0", "rlr14"], - ["rlr5", "rlr3"], - ["rll4", "rll6"], - ["rll0", "rll2"], + // Rear end + {"beamDeform" : 22000}, + ["rll0", "rll1"], + ["rlr0", "rlr2"], + ["rll4", "rll5"], + ["rlr15", "rlr1"], + ["rll5", "rll3"], + ["rll15", "rll1"], + ["rll0", "rll14"], + ["rll6", "rlm2"], + ["rlm3", "rll7"], + ["rll7", "rll5"], + ["rll6", "rll7"], + ["rll3", "rll1"], + ["rll2", "rll4"], + ["rll2", "rll3"], + ["rlr2", "rlr4"], + ["rlr0", "rlr1"], + ["rlr1", "rlm1"], + ["rlm0", "rlm1"], + ["rlr6", "rlr7"], + ["rlm3", "rlr7"], + ["rlm2", "rlm3"], + ["rlr4", "rlr6"], + ["rlr7", "rlr5"], + ["rlr3", "rlr1"], + ["rlr6", "rlm2"], + ["rll1", "rlm1"], + ["rlm0", "rll0"], + ["rlr4", "rlr5"], + ["rlr2", "rlr3"], + ["rlm0", "rlr0"], + ["rlr0", "rlr14"], + ["rlr5", "rlr3"], + ["rll4", "rll6"], + ["rll0", "rll2"], - // Crossing beams + // Crossing beams - // Front end - {"beamDeform" : 16000}, - ["rlr16", "rlm7"], - ["rll17", "rll18"], - ["rll9", "rll20"], - ["rll8", "rll21"], - ["rll20", "rll19"], - ["rll21", "rll18"], - ["rlr17", "rlm6"], - ["rlr16", "rlr19"], - ["rlr17", "rlr18"], - ["rlr20", "rlr19"], - ["rll16", "rll19"], - ["rll17", "rlm6"], - ["rll16", "rlm7"], - ["rlr21", "rlr18"], - ["rlr8", "rlr21"], - ["rlr9", "rlr20"], + // Front end + {"beamDeform" : 16000}, + ["rlr16", "rlm7"], + ["rll17", "rll18"], + ["rll9", "rll20"], + ["rll8", "rll21"], + ["rll20", "rll19"], + ["rll21", "rll18"], + ["rlr17", "rlm6"], + ["rlr16", "rlr19"], + ["rlr17", "rlr18"], + ["rlr20", "rlr19"], + ["rll16", "rll19"], + ["rll17", "rlm6"], + ["rll16", "rlm7"], + ["rlr21", "rlr18"], + ["rlr8", "rlr21"], + ["rlr9", "rlr20"], - // Middle - {"beamDeform" : 6500}, - ["rll9", "rll11"], - ["rll8", "rll12"], - ["rlr9", "rlr10"], - ["rlr9", "rlr11"], - ["rlr8", "rlr13"], - ["rlr13", "rlm4"], - ["rlr11", "rlm5"], - ["rll15", "rll11"], - ["rll8", "rll13"], - ["rll9", "rll10"], - ["rlr14", "rlr12"], - ["rll14", "rll13"], - ["rll12", "rlm4"], - ["rlr14", "rlr13"], - ["rlr8", "rlr12"], - ["rlr15", "rlr10"], - ["rlr12", "rlr11"], - ["rll14", "rll12"], - ["rlr15", "rlr11"], - ["rll10", "rlm5"], - ["rll11", "rll12"], - ["rlr10", "rlr13"], - ["rll15", "rll10"], - ["rll13", "rll10"], + // Middle + {"beamDeform" : 6500}, + ["rll9", "rll11"], + ["rll8", "rll12"], + ["rlr9", "rlr10"], + ["rlr9", "rlr11"], + ["rlr8", "rlr13"], + ["rlr13", "rlm4"], + ["rlr11", "rlm5"], + ["rll15", "rll11"], + ["rll8", "rll13"], + ["rll9", "rll10"], + ["rlr14", "rlr12"], + ["rll14", "rll13"], + ["rll12", "rlm4"], + ["rlr14", "rlr13"], + ["rlr8", "rlr12"], + ["rlr15", "rlr10"], + ["rlr12", "rlr11"], + ["rll14", "rll12"], + ["rlr15", "rlr11"], + ["rll10", "rlm5"], + ["rll11", "rll12"], + ["rlr10", "rlr13"], + ["rll15", "rll10"], + ["rll13", "rll10"], - // Rear end - {"beamDeform" : 16000}, - ["rlr7", "rlr4"], - ["rlr14", "rlr1"], - ["rlr1", "rlr2"], - ["rll7", "rlm2"], - ["rll15", "rll0"], - ["rll14", "rll1"], - ["rll5", "rll2"], - ["rlr6", "rlr5"], - ["rll7", "rll4"], - ["rll6", "rll5"], - ["rll0", "rll3"], - ["rll1", "rll2"], - ["rll1", "rlm0"], - ["rlr15", "rlr0"], - ["rlr0", "rlm1"], - ["rlr1", "rlm0"], - ["rlr6", "rlm3"], - ["rlr7", "rlm2"], - ["rlr4", "rlr3"], - ["rlr5", "rlr2"], - ["rlr0", "rlr3"], - ["rll0", "rlm1"], - ["rll6", "rlm3"], - ["rll4", "rll3"], + // Rear end + {"beamDeform" : 16000}, + ["rlr7", "rlr4"], + ["rlr14", "rlr1"], + ["rlr1", "rlr2"], + ["rll7", "rlm2"], + ["rll15", "rll0"], + ["rll14", "rll1"], + ["rll5", "rll2"], + ["rlr6", "rlr5"], + ["rll7", "rll4"], + ["rll6", "rll5"], + ["rll0", "rll3"], + ["rll1", "rll2"], + ["rll1", "rlm0"], + ["rlr15", "rlr0"], + ["rlr0", "rlm1"], + ["rlr1", "rlm0"], + ["rlr6", "rlm3"], + ["rlr7", "rlm2"], + ["rlr4", "rlr3"], + ["rlr5", "rlr2"], + ["rlr0", "rlr3"], + ["rll0", "rlm1"], + ["rll6", "rlm3"], + ["rll4", "rll3"], - // Support beams + // Support beams - // Front end - {"beamDeform" : 19000}, - ["rll18", "rlsm2"], - ["rlr18", "rlsm2"], - ["rlsm2", "rll16"], - ["rll20", "rlsm2"], - ["rlsm2", "rlr21"], - ["rlr17", "rlsm2"], - ["rll17", "rlsm2"], - ["rlr20", "rlsm2"], - ["rlm6", "rlsm2"], - ["rlsm2", "rlr16"], - ["rlsm2", "rll19"], - ["rlsm2", "rlr19"], - ["rlsm2", "rlm7"], - ["rlsm2", "rll21"], + // Front end + {"beamDeform" : 19000}, + ["rll18", "rlsm2"], + ["rlr18", "rlsm2"], + ["rlsm2", "rll16"], + ["rll20", "rlsm2"], + ["rlsm2", "rlr21"], + ["rlr17", "rlsm2"], + ["rll17", "rlsm2"], + ["rlr20", "rlsm2"], + ["rlm6", "rlsm2"], + ["rlsm2", "rlr16"], + ["rlsm2", "rll19"], + ["rlsm2", "rlr19"], + ["rlsm2", "rlm7"], + ["rlsm2", "rll21"], - // Middle - {"beamDeform" : 11000}, - ["rlr13", "rlsm1"], - ["rlr11", "rlsm1"], - ["rlm4", "rlsm1"], - ["rll12", "rlsm1"], - ["rll11", "rlsm1"], - ["rlsm1", "rll9"], - ["rlsm1", "rll8"], - ["rll15", "rlsm1"], - ["rlr15", "rlsm1"], - ["rlr10", "rlsm1"], - ["rlsm1", "rlm5"], - ["rll13", "rlsm1"], - ["rll10", "rlsm1"], - ["rlsm1", "rlr14"], - ["rlr12", "rlsm1"], - ["rlsm1", "rlr9"], - ["rlsm1", "rlr8"], - ["rlsm1", "rll14"], + // Middle + {"beamDeform" : 11000}, + ["rlr13", "rlsm1"], + ["rlr11", "rlsm1"], + ["rlm4", "rlsm1"], + ["rll12", "rlsm1"], + ["rll11", "rlsm1"], + ["rlsm1", "rll9"], + ["rlsm1", "rll8"], + ["rll15", "rlsm1"], + ["rlr15", "rlsm1"], + ["rlr10", "rlsm1"], + ["rlsm1", "rlm5"], + ["rll13", "rlsm1"], + ["rll10", "rlsm1"], + ["rlsm1", "rlr14"], + ["rlr12", "rlsm1"], + ["rlsm1", "rlr9"], + ["rlsm1", "rlr8"], + ["rlsm1", "rll14"], - // Rear end - {"beamDeform" : 19000}, - ["rlsm", "rlm2"], - ["rlsm", "rlr7"], - ["rlr4", "rlsm"], - ["rlsm", "rll7"], - ["rlsm", "rll3"], - ["rlsm", "rlr5"], - ["rll6", "rlsm"], - ["rlm1", "rlsm"], - ["rlsm", "rlr3"], - ["rll4", "rlsm"], - ["rlr6", "rlsm"], - ["rlm3", "rlsm"], - ["rll2", "rlsm"], - ["rlsm", "rlm0"], - ["rlr2", "rlsm"], - ["rlsm", "rll5"], + // Rear end + {"beamDeform" : 19000}, + ["rlsm", "rlm2"], + ["rlsm", "rlr7"], + ["rlr4", "rlsm"], + ["rlsm", "rll7"], + ["rlsm", "rll3"], + ["rlsm", "rlr5"], + ["rll6", "rlsm"], + ["rlm1", "rlsm"], + ["rlsm", "rlr3"], + ["rll4", "rlsm"], + ["rlr6", "rlsm"], + ["rlm3", "rlsm"], + ["rll2", "rlsm"], + ["rlsm", "rlm0"], + ["rlr2", "rlsm"], + ["rlsm", "rll5"], - // Front crush - {"beamDeform" : 8500}, - ["rlr8", "rlr18"], - ["rll8", "rll18"] - ], - // --Collision Triangles-- - "triangles" : [ - ["id1:", "id2:", "id3:"], - ["rlm6", "rll16", "rlm7"], - ["rll17", "rlm7", "rll16"], - ["rlm6", "rlm7", "rlr16"], - ["rlr17", "rlr16", "rlm7"], - ["rlr16", "rlr17", "rlr19"], - ["rlr16", "rlr19", "rlr18"], - ["rlr19", "rlr21", "rlr18"], - ["rlr20", "rlr18", "rlr21"], - ["rlr20", "rlr21", "rlr9"], - ["rlr9", "rlr8", "rlr20"], - ["rll16", "rll19", "rll17"], - ["rll16", "rll18", "rll19"], - ["rll20", "rll21", "rll18"], - ["rll19", "rll18", "rll21"], - ["rll20", "rll9", "rll21"], - ["rll9", "rll20", "rll8"], - ["rll8", "rll11", "rll9"], - ["rll13", "rll9", "rll11"], - ["rll14", "rll13", "rll11"], - ["rll15", "rll13", "rll14"], - ["rlr8", "rlr9", "rlr10"], - ["rlr12", "rlr10", "rlr9"], - ["rlr14", "rlr10", "rlr12"], - ["rlr15", "rlr14", "rlr12"], - ["rlr14", "rlr15", "rlr0"], - ["rlr0", "rlr15", "rlr1"], - ["rlr1", "rlr2", "rlr0"], - ["rlr3", "rlr2", "rlr1"], - ["rlr4", "rlr2", "rlr3"], - ["rlr5", "rlr4", "rlr3"], - ["rlr6", "rlr4", "rlr5"], - ["rlr7", "rlr6", "rlr5"], - ["rlr7", "rlm2", "rlr6"], - ["rlm2", "rlr7", "rlm3"], - ["rlm3", "rll7", "rlm2"], - ["rll7", "rll6", "rlm2"], - ["rll5", "rll4", "rll6"], - ["rll7", "rll5", "rll6"], - ["rll5", "rll3", "rll4"], - ["rll4", "rll3", "rll2"], - ["rll1", "rll0", "rll2"], - ["rll3", "rll1", "rll2"], - ["rll1", "rlm1", "rll0"], - ["rlm1", "rlm0", "rll0"], - ["rlm1", "rlr0", "rlm0"], - ["rlr0", "rlm1", "rlr1"], - ["rll14", "rll0", "rll15"], - ["rll0", "rll1", "rll15"], - ["rll9", "rll8", "rll10"], - ["rll9", "rll10", "rll12"], - ["rll12", "rll10", "rll13"], - ["rll13", "rll10", "rll11"], - ["rlr13", "rlr12", "rlr11"], - ["rlr12", "rlr10", "rlr11"], - ["rlr9", "rlr11", "rlr8"], - ["rlr13", "rlr11", "rlr9"], - ["rlm4", "rll10", "rll12"], - ["rlr13", "rlr11", "rlm4"], - ["rlm4", "rlm5", "rlr13"], - ["rlm4", "rll12", "rlm5"], - ["rll14", "rll12", "rll10"], - ["rll14", "rll15", "rll12"], - ["rlr11", "rlr13", "rlr14"], - ["rlr15", "rlr14", "rlr13"] - ], - "flexbodies" : [ - ["mesh", "[group]:", "nonFlexMaterials"], - ["rails", ["chassis_rails"]] - ] - } + // Front crush + {"beamDeform" : 8500}, + ["rlr8", "rlr18"], + ["rll8", "rll18"] + ], + // --Collision Triangles-- + "triangles" : [ + ["id1:", "id2:", "id3:"], + ["rlm6", "rll16", "rlm7"], + ["rll17", "rlm7", "rll16"], + ["rlm6", "rlm7", "rlr16"], + ["rlr17", "rlr16", "rlm7"], + ["rlr16", "rlr17", "rlr19"], + ["rlr16", "rlr19", "rlr18"], + ["rlr19", "rlr21", "rlr18"], + ["rlr20", "rlr18", "rlr21"], + ["rlr20", "rlr21", "rlr9"], + ["rlr9", "rlr8", "rlr20"], + ["rll16", "rll19", "rll17"], + ["rll16", "rll18", "rll19"], + ["rll20", "rll21", "rll18"], + ["rll19", "rll18", "rll21"], + ["rll20", "rll9", "rll21"], + ["rll9", "rll20", "rll8"], + ["rll8", "rll11", "rll9"], + ["rll13", "rll9", "rll11"], + ["rll14", "rll13", "rll11"], + ["rll15", "rll13", "rll14"], + ["rlr8", "rlr9", "rlr10"], + ["rlr12", "rlr10", "rlr9"], + ["rlr14", "rlr10", "rlr12"], + ["rlr15", "rlr14", "rlr12"], + ["rlr14", "rlr15", "rlr0"], + ["rlr0", "rlr15", "rlr1"], + ["rlr1", "rlr2", "rlr0"], + ["rlr3", "rlr2", "rlr1"], + ["rlr4", "rlr2", "rlr3"], + ["rlr5", "rlr4", "rlr3"], + ["rlr6", "rlr4", "rlr5"], + ["rlr7", "rlr6", "rlr5"], + ["rlr7", "rlm2", "rlr6"], + ["rlm2", "rlr7", "rlm3"], + ["rlm3", "rll7", "rlm2"], + ["rll7", "rll6", "rlm2"], + ["rll5", "rll4", "rll6"], + ["rll7", "rll5", "rll6"], + ["rll5", "rll3", "rll4"], + ["rll4", "rll3", "rll2"], + ["rll1", "rll0", "rll2"], + ["rll3", "rll1", "rll2"], + ["rll1", "rlm1", "rll0"], + ["rlm1", "rlm0", "rll0"], + ["rlm1", "rlr0", "rlm0"], + ["rlr0", "rlm1", "rlr1"], + ["rll14", "rll0", "rll15"], + ["rll0", "rll1", "rll15"], + ["rll9", "rll8", "rll10"], + ["rll9", "rll10", "rll12"], + ["rll12", "rll10", "rll13"], + ["rll13", "rll10", "rll11"], + ["rlr13", "rlr12", "rlr11"], + ["rlr12", "rlr10", "rlr11"], + ["rlr9", "rlr11", "rlr8"], + ["rlr13", "rlr11", "rlr9"], + ["rlm4", "rll10", "rll12"], + ["rlr13", "rlr11", "rlm4"], + ["rlm4", "rlm5", "rlr13"], + ["rlm4", "rll12", "rlm5"], + ["rll14", "rll12", "rll10"], + ["rll14", "rll15", "rll12"], + ["rlr11", "rlr13", "rlr14"], + ["rlr15", "rlr14", "rlr13"] + ], + "flexbodies" : [ + ["mesh", "[group]:", "nonFlexMaterials"], + ["rails", ["chassis_rails"]] + ] + } } diff --git a/src/JbeamEdit/Formatting.hs b/src/JbeamEdit/Formatting.hs index a2cbd6e8..c22c77cb 100644 --- a/src/JbeamEdit/Formatting.hs +++ b/src/JbeamEdit/Formatting.hs @@ -340,7 +340,7 @@ doFormatNode rs cursor state nodes = . V.toList $ nodes - indentationAmount = fromMaybe 2 (lookupRule Indent prefixProps) + indentationAmount = fromMaybe 4 (lookupRule Indent prefixProps) in if complexChildren then T.unlines diff --git a/test-extra/language-server/data/fender-custom-minimal-jbfl.jbeam b/test-extra/language-server/data/fender-custom-minimal-jbfl.jbeam index d73842aa..f68a8840 100644 --- a/test-extra/language-server/data/fender-custom-minimal-jbfl.jbeam +++ b/test-extra/language-server/data/fender-custom-minimal-jbfl.jbeam @@ -1,306 +1,306 @@ { - "cot_fender" : { - "information" : { - "authors" : "gittarrgy01", - "name" : "Fenders" - }, - "sounds" : { - "impactMetal" : "event:>Destruction>Props>fender_metal", - "impactGeneric" : "event:>Destruction>Props>fender_generic", - "breakGeneric" : "event:>Destruction>Props>fender_break", - "wind" : false, - "scrapeMetal" : false, - "scrapePlastic" : false - }, - "slotType" : "cot_fender", - "nodes" : [ - ["id", "posX", "posY", "posZ" ], - {"nodeWeight" : 0.65}, - {"frictionCoef" : 0.7}, - {"nodeMaterial" : "|NM_METAL"}, - {"collision" : true}, - {"selfCollision" : true}, + "cot_fender" : { + "information" : { + "authors" : "gittarrgy01", + "name" : "Fenders" + }, + "sounds" : { + "impactMetal" : "event:>Destruction>Props>fender_metal", + "impactGeneric" : "event:>Destruction>Props>fender_generic", + "breakGeneric" : "event:>Destruction>Props>fender_break", + "wind" : false, + "scrapeMetal" : false, + "scrapePlastic" : false + }, + "slotType" : "cot_fender", + "nodes" : [ + ["id", "posX", "posY", "posZ" ], + {"nodeWeight" : 0.65}, + {"frictionCoef" : 0.7}, + {"nodeMaterial" : "|NM_METAL"}, + {"collision" : true}, + {"selfCollision" : true}, - // Left side - {"group" : "cot_fender_l"}, - ["bfl0", 0.959, -1.762, 0.576 ], - ["bfl1", 0.855, -1.788, 0.707 ], - ["bfl2", 0.739, -1.845, 0.716 ], - ["bfl3", 0.948, -1.435, 0.730 ], - ["bfl4", 0.756, -1.413, 0.843 ], - ["bfl5", 0.963, -1.024, 0.112 ], - ["bfl6", 0.964, -1.072, 0.507 ], - ["bfl7", 0.778, -1.008, 0.873 ], - ["bfl8", 0.987, -0.743, 0.109 ], - ["bfl9", 0.987, -0.744, 0.494 ], - ["bfl10", 0.812, -0.759, 0.896 ], + // Left side + {"group" : "cot_fender_l"}, + ["bfl0", 0.959, -1.762, 0.576 ], + ["bfl1", 0.855, -1.788, 0.707 ], + ["bfl2", 0.739, -1.845, 0.716 ], + ["bfl3", 0.948, -1.435, 0.730 ], + ["bfl4", 0.756, -1.413, 0.843 ], + ["bfl5", 0.963, -1.024, 0.112 ], + ["bfl6", 0.964, -1.072, 0.507 ], + ["bfl7", 0.778, -1.008, 0.873 ], + ["bfl8", 0.987, -0.743, 0.109 ], + ["bfl9", 0.987, -0.744, 0.494 ], + ["bfl10", 0.812, -0.759, 0.896 ], - // Right side - {"group" : "cot_fender_r"}, - ["bfr0", -0.906, -1.737, 0.578 ], - ["bfr1", -0.807, -1.769, 0.707 ], - ["bfr2", -0.691, -1.829, 0.716 ], - ["bfr3", -0.890, -1.409, 0.729 ], - ["bfr4", -0.700, -1.397, 0.843 ], - ["bfr5", -0.899, -1.005, 0.112 ], - ["bfr6", -0.900, -1.053, 0.508 ], - ["bfr7", -0.715, -0.991, 0.873 ], - ["bfr8", -0.916, -0.742, 0.112 ], - ["bfr9", -0.917, -0.746, 0.494 ], - ["bfr10", -0.734, -0.746, 0.888 ], + // Right side + {"group" : "cot_fender_r"}, + ["bfr0", -0.906, -1.737, 0.578 ], + ["bfr1", -0.807, -1.769, 0.707 ], + ["bfr2", -0.691, -1.829, 0.716 ], + ["bfr3", -0.890, -1.409, 0.729 ], + ["bfr4", -0.700, -1.397, 0.843 ], + ["bfr5", -0.899, -1.005, 0.112 ], + ["bfr6", -0.900, -1.053, 0.508 ], + ["bfr7", -0.715, -0.991, 0.873 ], + ["bfr8", -0.916, -0.742, 0.112 ], + ["bfr9", -0.917, -0.746, 0.494 ], + ["bfr10", -0.734, -0.746, 0.888 ], - // Support nodes - {"collision" : false}, - {"selfCollision" : false}, - {"nodeWeight" : 1.2}, - {"group" : ""}, - ["bfsl", 0.684, -1.079, 0.507 ], - ["bfsr", -0.623, -1.064, 0.507 ] - ], - "beams" : [ - ["id1:", "id2:"], + // Support nodes + {"collision" : false}, + {"selfCollision" : false}, + {"nodeWeight" : 1.2}, + {"group" : ""}, + ["bfsl", 0.684, -1.079, 0.507 ], + ["bfsr", -0.623, -1.064, 0.507 ] + ], + "beams" : [ + ["id1:", "id2:"], - // Structural beams - // beamSpring: 451000, beamDamp: 50 - // beamStrength: FLT_MAX - {"beamType" : "|NORMAL"}, - {"beamSpring" : 451000, "beamDamp" : 50}, - {"beamStrength" : "FLT_MAX"}, - {"deformLimitExpansion" : 1.1}, - {"beamDeform" : 6000}, + // Structural beams + // beamSpring: 451000, beamDamp: 50 + // beamStrength: FLT_MAX + {"beamType" : "|NORMAL"}, + {"beamSpring" : 451000, "beamDamp" : 50}, + {"beamStrength" : "FLT_MAX"}, + {"deformLimitExpansion" : 1.1}, + {"beamDeform" : 6000}, - // Front - ["bfr2", "bfr4"], - ["bfr2", "bfr1"], - ["bfr1", "bfr4"], - ["bfl4", "bfl2"], - ["bfl2", "bfl1"], - ["bfl0", "bfl1"], - ["bfl4", "bfl3"], - ["bfl0", "bfl3"], - ["bfr1", "bfr0"], - ["bfr4", "bfr3"], - ["bfr0", "bfr3"], - ["bfl4", "bfl1"], + // Front + ["bfr2", "bfr4"], + ["bfr2", "bfr1"], + ["bfr1", "bfr4"], + ["bfl4", "bfl2"], + ["bfl2", "bfl1"], + ["bfl0", "bfl1"], + ["bfl4", "bfl3"], + ["bfl0", "bfl3"], + ["bfr1", "bfr0"], + ["bfr4", "bfr3"], + ["bfr0", "bfr3"], + ["bfl4", "bfl1"], - // Middle - {"beamDeform" : 12000}, - ["bfl6", "bfl3"], - ["bfr6", "bfr3"], - ["bfl4", "bfl7"], - ["bfr4", "bfr7"], + // Middle + {"beamDeform" : 12000}, + ["bfl6", "bfl3"], + ["bfr6", "bfr3"], + ["bfl4", "bfl7"], + ["bfr4", "bfr7"], - // Rear - ["bfl7", "bfl10"], - ["bfl5", "bfl6"], - ["bfl7", "bfl6"], - ["bfl5", "bfl8"], - ["bfl6", "bfl9"], - ["bfl8", "bfl9"], - ["bfl10", "bfl9"], - ["bfr7", "bfr10"], - ["bfr6", "bfr5"], - ["bfr6", "bfr7"], - ["bfr5", "bfr8"], - ["bfr6", "bfr9"], - ["bfr8", "bfr9"], - ["bfr10", "bfr9"], + // Rear + ["bfl7", "bfl10"], + ["bfl5", "bfl6"], + ["bfl7", "bfl6"], + ["bfl5", "bfl8"], + ["bfl6", "bfl9"], + ["bfl8", "bfl9"], + ["bfl10", "bfl9"], + ["bfr7", "bfr10"], + ["bfr6", "bfr5"], + ["bfr6", "bfr7"], + ["bfr5", "bfr8"], + ["bfr6", "bfr9"], + ["bfr8", "bfr9"], + ["bfr10", "bfr9"], - // Crossing beams - {"deformLimitExpansion" : ""}, + // Crossing beams + {"deformLimitExpansion" : ""}, - // Front - ["bfl0", "bfl4"], - ["bfl4", "bfl6"], - ["bfl7", "bfl3"], - ["bfr4", "bfr6"], - ["bfr7", "bfr3"], - ["bfl1", "bfl3"], - ["bfr3", "bfr1"], - ["bfr4", "bfr0"], + // Front + ["bfl0", "bfl4"], + ["bfl4", "bfl6"], + ["bfl7", "bfl3"], + ["bfr4", "bfr6"], + ["bfr7", "bfr3"], + ["bfl1", "bfl3"], + ["bfr3", "bfr1"], + ["bfr4", "bfr0"], - // Rear - ["bfl6", "bfl10"], - ["bfl7", "bfl9"], - ["bfl5", "bfl9"], - ["bfl6", "bfl8"], - ["bfr6", "bfr10"], - ["bfr7", "bfr9"], - ["bfr5", "bfr9"], - ["bfr6", "bfr8"], + // Rear + ["bfl6", "bfl10"], + ["bfl7", "bfl9"], + ["bfl5", "bfl9"], + ["bfl6", "bfl8"], + ["bfr6", "bfr10"], + ["bfr7", "bfr9"], + ["bfr5", "bfr9"], + ["bfr6", "bfr8"], - // Support beams - ["bfl2", "bfsl"], - ["bfl6", "bfsl"], - ["bfl5", "bfsl"], - ["bfl3", "bfsl"], - ["bfl0", "bfsl"], - ["bfl1", "bfsl"], - ["bfl4", "bfsl"], - ["bfl7", "bfsl"], - ["bfl8", "bfsl"], - ["bfl9", "bfsl"], - ["bfl10", "bfsl"], - ["bfr2", "bfsr"], - ["bfr6", "bfsr"], - ["bfr5", "bfsr"], - ["bfr3", "bfsr"], - ["bfr0", "bfsr"], - ["bfr1", "bfsr"], - ["bfr4", "bfsr"], - ["bfr7", "bfsr"], - ["bfr8", "bfsr"], - ["bfr9", "bfsr"], - ["bfr10", "bfsr"], + // Support beams + ["bfl2", "bfsl"], + ["bfl6", "bfsl"], + ["bfl5", "bfsl"], + ["bfl3", "bfsl"], + ["bfl0", "bfsl"], + ["bfl1", "bfsl"], + ["bfl4", "bfsl"], + ["bfl7", "bfsl"], + ["bfl8", "bfsl"], + ["bfl9", "bfsl"], + ["bfl10", "bfsl"], + ["bfr2", "bfsr"], + ["bfr6", "bfsr"], + ["bfr5", "bfsr"], + ["bfr3", "bfsr"], + ["bfr0", "bfsr"], + ["bfr1", "bfsr"], + ["bfr4", "bfsr"], + ["bfr7", "bfsr"], + ["bfr8", "bfsr"], + ["bfr9", "bfsr"], + ["bfr10", "bfsr"], - // Front rigid - {"beamSpring" : 350000, "beamDamp" : 115}, - {"beamDeform" : 900}, + // Front rigid + {"beamSpring" : 350000, "beamDamp" : 115}, + {"beamDeform" : 900}, - // Left side - ["bfl3", "bfl9"], - ["bfl4", "bfl10"], + // Left side + ["bfl3", "bfl9"], + ["bfl4", "bfl10"], - // Right side - ["bfr3", "bfr9"], - ["bfr4", "bfr10"], + // Right side + ["bfr3", "bfr9"], + ["bfr4", "bfr10"], - // Attachment beams - {"beamType" : "|NORMAL"}, - {"beamSpring" : 501000, "beamDamp" : 75, "beamStrength" : 20000, "beamDeform" : 1000}, - {"deformLimitExpansion" : ""}, + // Attachment beams + {"beamType" : "|NORMAL"}, + {"beamSpring" : 501000, "beamDamp" : 75, "beamStrength" : 20000, "beamDeform" : 1000}, + {"deformLimitExpansion" : ""}, - // Frame + // Frame - // Left side + // Left side - // Front - {"breakGroup" : "fender_l"}, - {"breakGroupType" : 1}, - ["bfl0", "fr17"], - ["bfl0", "fr9"], - ["bfl1", "fr17"], - ["bfl1", "fr9"], - ["bfl2", "fr17"], - ["bfl2", "fr9"], + // Front + {"breakGroup" : "fender_l"}, + {"breakGroupType" : 1}, + ["bfl0", "fr17"], + ["bfl0", "fr9"], + ["bfl1", "fr17"], + ["bfl1", "fr9"], + ["bfl2", "fr17"], + ["bfl2", "fr9"], - // Middle - {"beamDeform" : 18000}, - {"beamStrength" : 4000}, - {"breakGroupType" : 1}, - ["bfl3", "fr17"], - ["bfl4", "fr17"], - ["bfl4", "fr9"], - {"breakGroupType" : 0}, + // Middle + {"beamDeform" : 18000}, + {"beamStrength" : 4000}, + {"breakGroupType" : 1}, + ["bfl3", "fr17"], + ["bfl4", "fr17"], + ["bfl4", "fr9"], + {"breakGroupType" : 0}, - // Rear - {"beamStrength" : 16000, "beamDeform" : 12000}, - ["bfl5", "fr18"], - ["bfl5", "fr27"], - ["bfl6", "fr17"], - ["bfl6", "fr21"], - ["bfl7", "fr17"], - ["bfl7", "fr29"], - ["bfl8", "fr18"], - ["bfl8", "fr27"], - ["bfl9", "fr28"], - ["bfl9", "fr21"], - ["bfl10", "fr17"], - ["bfl10", "fr29"], + // Rear + {"beamStrength" : 16000, "beamDeform" : 12000}, + ["bfl5", "fr18"], + ["bfl5", "fr27"], + ["bfl6", "fr17"], + ["bfl6", "fr21"], + ["bfl7", "fr17"], + ["bfl7", "fr29"], + ["bfl8", "fr18"], + ["bfl8", "fr27"], + ["bfl9", "fr28"], + ["bfl9", "fr21"], + ["bfl10", "fr17"], + ["bfl10", "fr29"], - // Right side + // Right side - // Front - {"beamStrength" : 20000, "beamDeform" : 1000}, - {"breakGroup" : "fender_r"}, - {"breakGroupType" : 1}, - ["bfl0", "rl_f8"], - ["bfl0", "rl_f6"], - ["bfl1", "rl_f6"], - ["bfl2", "rl_f6"], - ["bfr0", "rl_f9"], - ["bfr0", "rl_f7"], - ["bfr1", "rl_f7"], - ["bfr2", "rl_f7"], + // Front + {"beamStrength" : 20000, "beamDeform" : 1000}, + {"breakGroup" : "fender_r"}, + {"breakGroupType" : 1}, + ["bfl0", "rl_f8"], + ["bfl0", "rl_f6"], + ["bfl1", "rl_f6"], + ["bfl2", "rl_f6"], + ["bfr0", "rl_f9"], + ["bfr0", "rl_f7"], + ["bfr1", "rl_f7"], + ["bfr2", "rl_f7"], - // Middle - {"beamDeform" : 18000}, - {"beamStrength" : 4000}, - {"breakGroupType" : 1}, - ["bfl3", "rl_f10"], - ["bfl3", "rl_f11"], - ["bfl4", "rl_f11"], - ["bfr3", "rl_f12"], - ["bfr3", "rl_f13"], - ["bfr4", "rl_f13"], - {"breakGroupType" : 0}, + // Middle + {"beamDeform" : 18000}, + {"beamStrength" : 4000}, + {"breakGroupType" : 1}, + ["bfl3", "rl_f10"], + ["bfl3", "rl_f11"], + ["bfl4", "rl_f11"], + ["bfr3", "rl_f12"], + ["bfr3", "rl_f13"], + ["bfr4", "rl_f13"], + {"breakGroupType" : 0}, - // Rear - {"beamStrength" : 16000, "beamDeform" : 12000}, - ["bfl5", "rl_f15"], - ["bfl5", "rl_f16"], - ["bfl6", "rl_f15"], - ["bfl6", "rl_f16"], - ["bfl8", "rl_f15"], - ["bfl8", "rl_f16"], - ["bfl9", "rl_f15"], - ["bfl9", "rl_f16"], - ["bfl7", "rl_f16"], - ["bfl10", "rl_f16"], - ["bfr5", "rl_f17"], - ["bfr5", "rl_f18"], - ["bfr6", "rl_f17"], - ["bfr6", "rl_f18"], - ["bfr8", "rl_f17"], - ["bfr8", "rl_f18"], - ["bfr9", "rl_f17"], - ["bfr9", "rl_f18"], - ["bfr7", "rl_f18"], - ["bfr10", "rl_f18"], - {"beamStrength" : 16000, "beamDeform" : "FLT_MAX"}, + // Rear + {"beamStrength" : 16000, "beamDeform" : 12000}, + ["bfl5", "rl_f15"], + ["bfl5", "rl_f16"], + ["bfl6", "rl_f15"], + ["bfl6", "rl_f16"], + ["bfl8", "rl_f15"], + ["bfl8", "rl_f16"], + ["bfl9", "rl_f15"], + ["bfl9", "rl_f16"], + ["bfl7", "rl_f16"], + ["bfl10", "rl_f16"], + ["bfr5", "rl_f17"], + ["bfr5", "rl_f18"], + ["bfr6", "rl_f17"], + ["bfr6", "rl_f18"], + ["bfr8", "rl_f17"], + ["bfr8", "rl_f18"], + ["bfr9", "rl_f17"], + ["bfr9", "rl_f18"], + ["bfr7", "rl_f18"], + ["bfr10", "rl_f18"], + {"beamStrength" : 16000, "beamDeform" : "FLT_MAX"}, - // Body + // Body - // Left side - {"breakGroup" : "fender_l"}, - ["bfl8", "mbl0"], - ["bfl9", "mbl1"], - ["bfl10", "mbl2"], + // Left side + {"breakGroup" : "fender_l"}, + ["bfl8", "mbl0"], + ["bfl9", "mbl1"], + ["bfl10", "mbl2"], - // Right side - {"breakGroup" : "fender_r"}, - ["bfr8", "mbr0"], - ["bfr9", "mbr1"], - ["bfr10", "mbr2"], - {"breakGroup" : "", "breakGroupType" : "", "beamType" : "|NORMAL"} - ], - "triangles" : [ - ["id1:", "id2:", "id3:"], - ["bfl3", "bfl4", "bfl1"], - ["bfl0", "bfl3", "bfl1"], - ["bfl4", "bfl2", "bfl1"], - ["bfl4", "bfl3", "bfl7"], - ["bfl6", "bfl7", "bfl3"], - ["bfl10", "bfl7", "bfl6"], - ["bfl9", "bfl10", "bfl6"], - ["bfl5", "bfl8", "bfl6"], - ["bfl9", "bfl6", "bfl8"], - ["bfr4", "bfr1", "bfr2"], - ["bfr3", "bfr1", "bfr4"], - ["bfr0", "bfr1", "bfr3"], - ["bfr6", "bfr3", "bfr7"], - ["bfr4", "bfr7", "bfr3"], - ["bfr10", "bfr6", "bfr7"], - ["bfr9", "bfr6", "bfr10"], - ["bfr9", "bfr8", "bfr6"], - ["bfr5", "bfr6", "bfr8"] - ], - "flexbodies" : [ - ["mesh", "[group]:", "nonFlexMaterials"], - ["impala_fender_l", ["cot_fender_l"]], - ["impala_fender_inter_l", ["cot_fender_l"]], - ["impala_fender_r", ["cot_fender_r"]], - ["impala_fender_inter_r", ["cot_fender_r"]] - ] - } + // Right side + {"breakGroup" : "fender_r"}, + ["bfr8", "mbr0"], + ["bfr9", "mbr1"], + ["bfr10", "mbr2"], + {"breakGroup" : "", "breakGroupType" : "", "beamType" : "|NORMAL"} + ], + "triangles" : [ + ["id1:", "id2:", "id3:"], + ["bfl3", "bfl4", "bfl1"], + ["bfl0", "bfl3", "bfl1"], + ["bfl4", "bfl2", "bfl1"], + ["bfl4", "bfl3", "bfl7"], + ["bfl6", "bfl7", "bfl3"], + ["bfl10", "bfl7", "bfl6"], + ["bfl9", "bfl10", "bfl6"], + ["bfl5", "bfl8", "bfl6"], + ["bfl9", "bfl6", "bfl8"], + ["bfr4", "bfr1", "bfr2"], + ["bfr3", "bfr1", "bfr4"], + ["bfr0", "bfr1", "bfr3"], + ["bfr6", "bfr3", "bfr7"], + ["bfr4", "bfr7", "bfr3"], + ["bfr10", "bfr6", "bfr7"], + ["bfr9", "bfr6", "bfr10"], + ["bfr9", "bfr8", "bfr6"], + ["bfr5", "bfr6", "bfr8"] + ], + "flexbodies" : [ + ["mesh", "[group]:", "nonFlexMaterials"], + ["impala_fender_l", ["cot_fender_l"]], + ["impala_fender_inter_l", ["cot_fender_l"]], + ["impala_fender_r", ["cot_fender_r"]], + ["impala_fender_inter_r", ["cot_fender_r"]] + ] + } }