--The BM Breaker V1.0 Beta
5(#z)T --Script to fracture Objects , explode Elements , calculate the mass of each fragment and assign mass to Rigid body mass
]u|FcwWc3 --in Reactor
NblPVxS --help : all is self explanatory , just walk down the script in order or it will break !
@8J*vY =e --known issues: slow , and no fool proof measures yet
]NaH *\q -- Sliders are a hell to manipulate , just use your mouse !
c%G~HOE=B --Usage : create a box ! Cut random then precise , frag and give wight
kxe{HxM$Z --You should know the density of the material you fracture and enter the value in the type-in
xs6!NY --if you want to change the mass after assignning them , just select none and hit weight again
I@N/Y{y# --you will have a RBCollection and A fracture Collection by the End
i|H^&$| --WARNNING: please Stick to real measures !
a)Ht(*/B --Dettacher part was kindly provided by neil blevins from his Object_Dettacher Script --See roll_3
s;<]gaonB_ --Use at your own risk
P<1&kUZL --written by mohab gamal |||
mtawfeek2@yahoo.co.uk|||
?aaYka] siuDg,uqK5 macroScript BM_Breaker
!x-9A category:" cyfer "
+;@R&Y tooltip:"BM Breaker"
+A
6kw%" (
qi_uob [mUC7Kpi rollout roll_1 "random cutter" width:150 height:113 category:1
4}Os>M{k (--start roll_1
eZpi+BRS6 spinner spin1 "No.of loops" pos:[13,6] width:124 height:16 range:[1,100,5] type:#integer
`+(JwQC4 spinner spinx "X" pos:[88,27] width:44 height:16 range:[-360,360,0] type:#integer
0a$hK9BH spinner spiny "Y" pos:[88,47] width:44 height:16 range:[-360,360,0] type:#integer
<UwA5X`0e. spinner spinz "Z" pos:[88,68] width:44 height:16 range:[-360,360,0] type:#integer
SsL>K*t5 button bt1 "do it " pos:[31,88] width:88 height:21
=5p?4/4 J --groupBox grp2 "GroupBox" pos:[6,11] width:169 height:150
rYyEs
I#qo b\"2O4K,) on bt1 pressed do
0j-;4>p (--start bt1 pressed
P4"EvdV7 u $T'#p1
if $ != undefined then
""F'Nzy (--start If
Y4/ !b $.name = "themokaka"
]?2&d[ for i = 1 to spin1.value do
R$40cW3` (
Kd,7x'h`E 3Q(#2tL= A=spinx.value ---random -360 360
-Z%B9ql' B=spiny.value ---random -360 360
K1Wiiw C=spinz.value ---random -360 360
Q2/ZO2 centerpivot $
liq9P,( modpanel.addmodtoselection (SliceModifier ()) ui:on
8MPXrc,9- $.modifiers[#slice].Slice_Type = 1
"# mr?h_ $.modifiers[#slice].Slice_Plane.position = random $.min $.max
h"G#} C] $.modifiers[#slice].Slice_Plane.rotation= eulerangles A B c
QR($KW( modpanel.addmodtoselection (Cap_holes()) ui:on
@dCoh-Q3 addmod xform
jE</a% maxOps.collapsenode $ on
f?1?$Sp/W )
o4CgtqRs )--end If
C.
Hr else messagebox "No MooKa'Ka is selected !"
gUB%6v G\I )--end bt1 pressed
EI*B( )--end roll_1
|A#pG^ X
rVF
% rollout roll_2 "Precise Cutter" width:160 height:328 category:2
kw>W5tNpf: (
!A
)2<<4 button btn_Start "Start" pos:[19,14] width:123 height:16
Yp1;5Bbp slider slideX "X.pos" pos:[15,36] width:34 height:99 range:[-100,100,0] orient:#vertical
Uv~r]P) slider slideY "Y.pos" pos:[66,36] width:30 height:99 range:[-100,100,0] orient:#vertical
:O}= $[ slider slideZ "Z.pos" pos:[117,36] width:27 height:99 range:[-100,100,0] orient:#vertical
0wCJNXm slider slideX_Rot "X.rot" pos:[15,133] width:25 height:99 range:[-100,100,0] orient:#vertical
qcSlY&6+ slider slideY_Rot "Y.rot" pos:[66,133] width:29 height:99 range:[-100,100,0] orient:#vertical
[;`B slider slideZ_Rot "Z.rot" pos:[118,133] width:34 height:99 range:[-100,100,0] orient:#vertical
dBKL_'@@} button btn_Cut "Cut" pos:[19,233] width:123 height:16
N,9W18
@ S:IhJQ4K on btn_Start pressed do
7{%_6b" >YwvM=b"V (--start on btn_start pressed
{k4)f ad\ centerpivot $
1 ]Q;fe modpanel.addmodtoselection (SliceModifier ()) ui:on
uURm6mVt9: subobjectlevel=1
5G!0Yy[' $.modifiers[#slice].Slice_Type = 1
]}t6V]`Q N~rA /B]T )
w;@NYMK) on slideX changed val do
h$p]M^Z7 ($.modifiers[#slice].Slice_Plane.position.x = slidex.value )
kiYHJ\a on slideY changed val do
T_\Nvzb} ($.modifiers[#slice].Slice_Plane.position.y = slidey.value )
,X+LJe$ on slideZ changed val do
{zd07!9y ($.modifiers[#slice].Slice_Plane.position.z = slidez.value )
tu5g> qb on slideX_Rot changed val do
k
P]' ($.modifiers[#slice].Slice_Plane.rotation = eulerangles slideX_Rot.value slideY_Rot.value slideZ_Rot.value )
S2y_5XJ<D on slideY_Rot changed val do
,7HlYPec ($.modifiers[#slice].Slice_Plane.rotation = eulerangles slideX_Rot.value slideY_Rot.value slideZ_Rot.value )
1SAO6Wh on slideZ_Rot changed val do
n["G
ry ($.modifiers[#slice].Slice_Plane.rotation = eulerangles slideX_Rot.value slideY_Rot.value slideZ_Rot.value )
4d x4hBd on btn_Cut pressed do
M `O=rH
} (
,xSNTOJ modpanel.
:@rq+wvP addrollout roll_5 MaR
7sX#6`t )