4 In 1 Arc Angle Positioning Template

$33.99
$43.99
-$10.00
Style:  Small (10-25R)
Quantity

Description

FEATURES:

  • User-Friendly Design: The router template is designed for ease of use, simplifying the woodworking process. Simply select the desired template size and place it on the wood corner you intend to cut. Ideal for a variety of woodworking tasks such as trimming tables, chairs, photo frames, and wood corners, this tool streamlines the cutting process for both professionals and DIY enthusiasts.
  • Durable Construction: Crafted from high-quality aluminum alloy material, this woodworking tool offers exceptional wear resistance and durability. Its sturdy construction ensures stability when clamping wood board corners, providing reliable support during use. Additionally, it effectively protects your hands from injury caused by Trim Router Bits, ensuring a safe and comfortable woodworking experience.
  • Efficient Cutting Capability: Featuring a half-rounded jig design, this tool enables precise cutting of rounded corners with ease. With the ability to cut corners at will, it facilitates smooth and efficient woodworking operations. Say goodbye to worries about complicated cutting processes, as this tool simplifies your tasks, allowing you to work quickly and efficiently.
  • Versatile Trimming Aid: Each template includes four different arc angles, offering versatility in corner trimming applications. This tool provides the flexibility to achieve various woodworking designs and finishes. Its multifunctional design enhances productivity and creativity in woodworking projects.
  • Wide Range of Applications: Suitable for a variety of woodworking projects, including photo frames, tables, stools, and wooden boards, this corner radius jig is a versatile addition to any woodworking toolkit. Its compatibility with different materials and projects makes it a valuable asset for craftsmen of all levels.

SPECIFICATIONS:

  • Material: Aluminum alloy
  • Product size: 85MM*85MM*92MM / 130MM*130MM*140MM
  • Product weight: 90G / 170G

PACKAGE INCLUDES:

  • 1*4 In 1 Arc Angle Positioning Template

NOTES

Due to manual measurements, please allow slight measurement deviations.
Due to the different display and lighting effects, the actual color of the item may be slightly different from the color displayed in the picture

Customer Reviews

Here are what our customers say.

Write a Review
Customer Reviews
Wow you reached the bottom
Newest
Most liked
Highest ratings
Lowest ratings
×
class SpzCustomFileUpload extends SPZ.BaseElement { constructor(element) { super(element); this.uploadCount_ = 0; this.fileList_ = []; } buildCallback() { this.action = SPZServices.actionServiceForDoc(this.element); this.registerAction('upload', (data) => { this.handleFileUpload_(data.event?.detail?.data || []); }); this.registerAction('delete', (data) => { this.handleFileDelete_(data?.args?.data); }); this.registerAction('preview', (data) => { this.handleFilePreview_(data?.args?.data); }); this.registerAction('limit', (data) => { this.handleFileLimit_(); }); this.registerAction('sizeLimit', (data) => { this.handleFileSizeLimit_(); }); } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } setData_(count, file) { this.uploadCount_ = count; this.fileList_ = file; } handleFileUpload_(data) { data.forEach(i => { if(this.fileList_.some(j => j.url === i.url)) return; this.fileList_.push(i); }) this.uploadCount_++; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileUpload", { count: this.uploadCount_, files: this.fileList_}); if(this.fileList_.length >= 5){ document.querySelector('#review_upload').style.display = 'none'; } if(this.fileList_.length > 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '8px'; } } handleFileDelete_(index) { this.fileList_.splice(index, 1); this.uploadCount_--; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileDelete", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; if(this.fileList_?.length === 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '132px'; } } handleFilePreview_(index) { const finalPreviewData = this.fileList_[index]; const filePreviewModal = document.getElementById('filePreviewModal'); const fullScreenVideo = document.getElementById('fullScreenVideo'); const fullScreenImage = document.getElementById('fullScreenImage'); const previewModalClose = document.getElementById('previewModalClose'); const previewLoading = document.getElementById('previewLoading'); filePreviewModal.style.display = 'block'; previewLoading.style.display = 'flex'; if(finalPreviewData?.type === 'video'){ const media = this.mediaParse_(this.fileList_[index]?.url); fullScreenVideo.addEventListener('canplaythrough', function() { previewLoading.style.display = 'none'; }); fullScreenImage.src = ''; fullScreenImage.style.display = 'none'; fullScreenVideo.style.display = 'block'; fullScreenVideo.src = media.mp4 || ''; } else { fullScreenImage.onload = function() { previewLoading.style.display = 'none'; }; fullScreenVideo.src = ''; fullScreenVideo.style.display = 'none'; fullScreenImage.style.display = 'block'; fullScreenImage.src = finalPreviewData.url; } previewModalClose.addEventListener('click', function() { filePreviewModal.style.display = 'none'; }); } handleFileLimit_() { alert(window.AppReviewsLocale.comment_file_limit || 'please do not upload files more than 5'); this.triggerEvent_("handleFileLimit"); } handleFileSizeLimit_() { alert(window.AppReviewsLocale.comment_file_size_limit || 'File size does not exceed 10M'); } clear(){ this.fileList_ = []; this.uploadCount_ = 0; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleClear", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; } mediaParse_(url) { var result = {}; try { url.replace(/[?&]+([^=&]+)=([^&]*)/gi, function (str, key, value) { try { result[key] = decodeURIComponent(value); } catch (e) { result[key] = value; } }); result.preview_image = url.split('?')[0]; } catch (e) {}; return result; } triggerEvent_(name, data) { const event = SPZUtils.Event.create(this.win, name, data); this.action.trigger(this.element, name, event); } } SPZ.defineElement('spz-custom-file-upload', SpzCustomFileUpload);
The review would not show in product details on storefront since it does not support to.