Virtual Room Designer

To begin, select one of our room design styles or upload your own room. This is the perfect place to free your inner interior designer and learn how to design a room!

Our Room Gallery
Upload, Point and click
$.Dcspg.LoadSearch("searchdiv"); $("#regdialog").dialog( { autoOpen : false } ); if(isRegistered) { $("#reg").hide(); $("#workbooklink").show(); } else { $("#workbooklink").hide(); $("#reg").show(); }; $('#responsive-menu-button').sidr({ name: 'sidr-main', source: '#navigation' }); $(".flexy-menu").flexymenu({ type: "vertical", align: "left", speed: 500 }); $.Dcspg.LoadForm('newsletter',136); if ($('#topofpage').css('display') != 'none') { $('html, body').animate( { scrollTop: $('#topofpage').offset().top }, 'slow'); }; var path = window.location.pathname; $('a[href*="'+ path +'"]').parents('li').addClass('active'); jQuery('.flexy-menu').find('li').click(function(){ jQuery(this).closest('li').addClass('active'); }); function SetupReCaptcha(form) { $(form).find('.dcspg-form-submit input').attr('onclick', 'CheckReCaptcha(this);');   $(form).find('.dcspg-form-submit input').before('
');   $(form).find('.dcspg-form-submit .g-recaptcha').before('
'); let el = $(form).find('.dcspg-form-submit .g-recaptcha'); // If reCAPTCHA is still loading, grecaptcha will be undefined.   grecaptcha.ready(function(){     grecaptcha.render(el.get(0), {       sitekey: '6LctqAsUAAAAAK3jaxOkexQ-5vz4zpy0oMlFhWOv'     });   }); }; function CheckReCaptcha(el) { let form = $(el).parents('form'); var formId = form.find('#formId').val();     var recaptcha = $('#form' + formId).find('#g-recaptcha-response').val();     if (recaptcha === "") {       event.preventDefault();       alert('Please select "I\'m not a robot" to proceed');     }else if (recaptcha !== "") { $.Dcspg.SubmitForm(this,formId);     }   }; $.Dcspg.LoadForm = function (divid, formId, submitText, callback = SetupReCaptcha) { var form = $("#" + divid); $.Dcspg.AjaxRequest(baseUrl + "Form", "Load", { formId: formId, divid: divid, url: document.URL, submitText: submitText }, function (data, status, error) { form.html(data); if (callback !== undefined) callback(form); }); };