10 || Math.abs($event.touches[0].clientY - touch_y) > 10) {
is_dragging = true;
}
}
"
@touchend="
if (!is_dragging) {
gallery_zoom_0 = !gallery_zoom_0;
zoomed = !zoomed;
}
"
x-show="gallery_zoom_0"
x-cloak>
10 || Math.abs($event.touches[0].clientY - touch_y) > 10) {
is_dragging = true;
}
}
"
@touchend="
if (!is_dragging) {
gallery_zoom_1 = !gallery_zoom_1;
zoomed = !zoomed;
}
"
x-show="gallery_zoom_1"
x-cloak>
10 || Math.abs($event.touches[0].clientY - touch_y) > 10) {
is_dragging = true;
}
}
"
@touchend="
if (!is_dragging) {
gallery_zoom_2 = !gallery_zoom_2;
zoomed = !zoomed;
}
"
x-show="gallery_zoom_2"
x-cloak>
10 || Math.abs($event.touches[0].clientY - touch_y) > 10) {
is_dragging = true;
}
}
"
@touchend="
if (!is_dragging) {
gallery_zoom_3 = !gallery_zoom_3;
zoomed = !zoomed;
}
"
x-show="gallery_zoom_3"
x-cloak>
10 || Math.abs($event.touches[0].clientY - touch_y) > 10) {
is_dragging = true;
}
}
"
@touchend="
if (!is_dragging) {
gallery_zoom_4 = !gallery_zoom_4;
zoomed = !zoomed;
}
"
x-show="gallery_zoom_4"
x-cloak>
10 || Math.abs($event.touches[0].clientY - touch_y) > 10) {
is_dragging = true;
}
}
"
@touchend="
if (!is_dragging) {
gallery_zoom_5 = !gallery_zoom_5;
zoomed = !zoomed;
}
"
x-show="gallery_zoom_5"
x-cloak>
10 || Math.abs($event.touches[0].clientY - touch_y) > 10) {
is_dragging = true;
}
}
"
@touchend="
if (!is_dragging) {
gallery_zoom_6 = !gallery_zoom_6;
zoomed = !zoomed;
}
"
x-show="gallery_zoom_6"
x-cloak>
10 || Math.abs($event.touches[0].clientY - touch_y) > 10) {
is_dragging = true;
}
}
"
@touchend="
if (!is_dragging) {
gallery_zoom_7 = !gallery_zoom_7;
zoomed = !zoomed;
}
"
x-show="gallery_zoom_7"
x-cloak>
10 || Math.abs($event.touches[0].clientY - touch_y) > 10) {
is_dragging = true;
}
}
"
@touchend="
if (!is_dragging) {
gallery_zoom_8 = !gallery_zoom_8;
zoomed = !zoomed;
}
"
x-show="gallery_zoom_8"
x-cloak>
10 || Math.abs($event.touches[0].clientY - touch_y) > 10) {
is_dragging = true;
}
}
"
@touchend="
if (!is_dragging) {
gallery_zoom_9 = !gallery_zoom_9;
zoomed = !zoomed;
}
"
x-show="gallery_zoom_9"
x-cloak>
10 || Math.abs($event.touches[0].clientY - touch_y) > 10) {
is_dragging = true;
}
}
"
@touchend="
if (!is_dragging) {
gallery_zoom_10 = !gallery_zoom_10;
zoomed = !zoomed;
}
"
x-show="gallery_zoom_10"
x-cloak>
10 || Math.abs($event.touches[0].clientY - touch_y) > 10) {
is_dragging = true;
}
}
"
@touchend="
if (!is_dragging) {
gallery_zoom_11 = !gallery_zoom_11;
zoomed = !zoomed;
}
"
x-show="gallery_zoom_11"
x-cloak>
10 || Math.abs($event.touches[0].clientY - touch_y) > 10) {
is_dragging = true;
}
}
"
@touchend="
if (!is_dragging) {
gallery_zoom_12 = !gallery_zoom_12;
zoomed = !zoomed;
}
"
x-show="gallery_zoom_12"
x-cloak>
10 || Math.abs($event.touches[0].clientY - touch_y) > 10) {
is_dragging = true;
}
}
"
@touchend="
if (!is_dragging) {
gallery_zoom_13 = !gallery_zoom_13;
zoomed = !zoomed;
}
"
x-show="gallery_zoom_13"
x-cloak>
10 || Math.abs($event.touches[0].clientY - touch_y) > 10) {
is_dragging = true;
}
}
"
@touchend="
if (!is_dragging) {
gallery_zoom_14 = !gallery_zoom_14;
zoomed = !zoomed;
}
"
x-show="gallery_zoom_14"
x-cloak>
Why It Stands Out
Key Features
- Fully custom sizing — built to your exact room dimensions, down to the inch
- 4 impact screen options: Standard, Preferred, Premium, High-Contrast Gray Premium
- Compatible with standard 1-inch EMT pipe framing (not included)
- Includes black nylon ball containment enclosure, steel corner fittings, and zip ties
- Made to order — assembled and shipped direct from Carl's Place
- Suitable for home golf simulator setups of any size
Under the Hood
Technical Specifications
| Sizing | Made to order, customizable down to the inch — standard package sizes run roughly 7.7ft x 10ft up to 9ft x 12ft screen dimensions, with wider/taller custom builds available on request |
| Frame | Built with standard 1-inch EMT conduit pipe (sourced separately at any hardware store) and steel corner fittings included in the kit |
| Impact Screen Options | Standard, Preferred, Premium, and High-Contrast Gray Premium — increasing durability and image clarity at each tier |
| Containment Netting | Black nylon ball containment enclosure around the top and sides to catch mishits |
| Rear Clearance | A minimum of roughly 8-9in behind the frame is required for the rear fittings; 12in or more is recommended for a comfortable buffer |
| Assembly | Two people, roughly a weekend — cut EMT pipe to the included spec sheet, connect with the supplied fittings, then lace in the screen |
| Fulfillment | Made to order and shipped direct from Carl's Place — allow extra lead time versus stocked items |
Overview
What's In The Box
- Carl's Place impact screen (your choice of material)
- Black nylon ball containment enclosure
- Steel corner fittings
- Zip ties for assembly
- Assembly instructions
Buyer's Guide
Is This Right For You?
✓ An awkward or non-standard room
Because it's built to your exact dimensions, it handles low ceilings, offset garages, and irregular bays that off-the-shelf frames can't
✓ Comfortable with basic DIY
You're happy cutting EMT pipe to spec and spending a weekend on assembly with a drill, level, and step ladder
✓ Budget-conscious builders
You want a full custom-fit enclosure without paying for a pre-fabricated frame you don't need
✗ Zero DIY tolerance
If you want a frame that arrives ready to bolt together with no pipe cutting, look at the Carl's Place Pro or SigPro Pro enclosure instead
✗ Commercial multi-bay facilities
Operators running several bays typically want the faster, standardized install of the SigPro Commercial enclosure
Build Your Setup
What You'll Also Need
1-inch EMT Conduit Pipe
The frame itself is not included — pick up standard 1in EMT conduit at any hardware store and cut to the included spec sheet
Golf Simulator Projector
Short-throw projector to display onto your new impact screen
View →
Launch Monitor
Tracks your ball data and feeds it to your sim software
View →
Hitting Mat & Turf
Protects your floor and simulates the tee or fairway lie
View →