}
}
+module RearSpeakerAperture(){
+ CaseBase_rhsflip([1]) CaseBase_botflip([1])
+ linextr(-20, 20)
+ mirror([0,1])
+ translate(rearspeaker_pos_bl + bumper)
+ rectfromto(-rearspeaker_gap,
+ rearspeaker_size + rearspeaker_gap);
+}
+
module CaseBase(){
AroundEdges(epp3[1], case_th_bottom, 1)
EdgeProfile();
CaseBase_rhsflip([1])
CaseAperture(noisecancelmic_pos, noisecancelmic_dia, 20);
- // rear speaker
- CaseBase_rhsflip([1]) CaseBase_botflip([1])
- linextr(-20, 20)
- mirror([0,1])
- translate(rearspeaker_pos_bl + bumper)
- rectfromto(-rearspeaker_gap,
- rearspeaker_size + rearspeaker_gap);
+ RearSpeakerAperture();
}
}
camera_pos_br + bumper + [ 5, 5 ]);
}
+module TestSelectRearSpeaker(){
+ CaseBase_rhsflip(1) CaseBase_botflip([1])
+ linextr(-20,20)
+ mirror([0,1,0])
+ translate(rearspeaker_pos_bl + bumper)
+ rectfromto(-(rearspeaker_gap + [40,2]),
+ rearspeaker_size + rearspeaker_gap + [2,2]);
+}
+
module TestCamera(){ ////toplevel
intersection(){
Case();
union(){
TestSelectFrame();
TestSelectCamera();
+ TestSelectRearSpeaker();
}
}
}