Explore Gorgeous Hawai‘i Homes in Peter Vincent Architects’ New Book

Design inspiration abounds in “Island Homes: Casual Elegance in Design.”

 

P5 Pva Halepalekaiko Andylandgraf Sha 1490

Photo: Andy Landgraf

 

Releasing this month, Island Homes: Casual Elegance in Design explores 21 residential and commercial projects by acclaimed Honolulu architecture and interior design firm Peter Vincent Architects. The glossy 248-page hardcover also tracks the design journey of founder-managing partner Peter N. Vincent, who shares behind-the-scenes tidbits from the builds.

 


SEE ALSO: New Book Dedicated to Screen Blocks in Hawai‘i


 

"); $spagination = flexSlider.find(".spagination"); SPagination.Init($spagination.get( 0 ), { size: slide_obj.count, // pages size page: 1, // selected page step: 3, // pages before and after current cb: function(p){ flexSlider.flexAnimate(p-1, true); } }); } } } function gtx_gallery_slide_before(slide_obj){ var slide=slide_obj.animatingTo; $active_slide=$all_slides.eq(slide) ; slideshow_ad_loaded = false; var current_html = $active_slide.children(".gtx-ad-container").html(); if (current_html) {$active_slide.children(".gtx-ad-container").html(current_html.trim())} gtx_track_slide( slide_obj ); changeURL(parseInt($active_slide.attr("data-attachment_id"))); //THUMBS SYNC - PAGINATED THUMBNAIL NAVIGATION if($thumbs!=="" && navigation == "paginated_thumbs"){ var right_item=$slider.find(".slides li[data-i="+(slide +1 )+"]").attr("data-i-only-pics") if( right_item!= ""){ $thumbs.find("li.gtx-thumb-img").removeClass("flex-active-slide"); $thumbs.find("li.gtx-thumb-img[data-i="+(slide +1 )+"]").addClass("flex-active-slide"); $page=$thumbs.find(".slides>li").has("li[data-i="+(slide +1 )+"]"); $thumbs.flexAnimate($page.index(), true); } } } function gtx_gallery_slide_after(slide_obj){ var slide=slide_obj.animatingTo; $active_slide=$all_slides.eq(slide) ; if($active_slide.hasClass("gtx-ad-slide")==1){ if ($active_slide.find('iframe').length === 1) { $active_slide.find('iframe')[0].remove(); } $slider.delay(100).queue(function(){ $(this).addClass("gtx-gallery-loading").dequeue(); }); $ad_container=$active_slide.children(".gtx-ad-container").first(); if ($($ad_container).html().length < 1) { addAdInto($ad_container,{slide:slide_obj.animatingTo +1}); } //Force arrows to be shown when on mobile and when the slide is an ad if(mobile_mode){ $slider.find(".flex-direction-nav").show(2000) } } else { //Force arrows to hide when on mobile and when the slide is not an ad if(mobile_mode){ $slider.find(".flex-direction-nav").hide("fast") } } //THUMBS SYNC if($thumbs!=="" && navigation == "thumbnails"){ var right_item=$slider.find(".slides>li[data-i="+(slide +1 )+"]").attr("data-i-only-pics") if( right_item!= ""){ $thumbs.find("li.gtx-thumb-img").removeClass("flex-active-slide"); $thumbs.find("li.gtx-thumb-img").eq(right_item -1 ).addClass("flex-active-slide"); $thumbs.flexAnimate(right_item-1, true); } } if(typeof(googletag) != "undefined" && googletag !== null && googletag.pubads){ // Refresh ads within view var tmp_now=new Date().getTime(); var last_refresh_diff= tmp_now - last_ad_refresh; if(last_refresh_diff > 1000){ reset_ads_and_refresh(); last_ad_refresh=tmp_now; } } //LAZY LOAD range=5; var $slides_to_hanle=$all_slides.slice(slide, slide + range +1); if(slide - range >= 0){ $slides_to_hanle=$.merge($slides_to_hanle, $all_slides.slice(slide - range, slide )); }else{ $slides_to_hanle=$.merge($slides_to_hanle, $all_slides.slice(0, range )); $slides_to_hanle=$.merge($slides_to_hanle, $all_slides.slice(range * -1 )); } if(slide + range >= $all_slides.size()){ //handle first slides $slides_to_hanle= $.merge($slides_to_hanle, $all_slides.slice(0,range)); } $slides_to_hanle.find(".gtx-image-container[data-background]").each(function () { var src = $(this).attr("data-background"); $(this).css("background-image", "url("+src+")").removeAttr("data-background"); }); adjustNavHeight(); if( typeof SPagination !== "undefined" && flexSlider.find(".spagination").length>0 ){ if(SPagination.page != slide+1){ SPagination.page = slide + 1; SPagination.Start(); } } } function reset_ads_and_refresh(){ if(!advanced_ad_refresh){ // if option is not enabled, refresh all ads, minus out of page ads if(ads_to_refresh.length > 0){ googletag.pubads().refresh(ads_to_refresh); } return; } if(ads_to_refresh.length == 0){ return; } var newAds = []; var fullAdsToRefresh = []; for(var i = 0; i < ads_to_refresh.length; i++){ var adSlot = ads_to_refresh[i]; if(!ad_is_in_view(adSlot)){ // do not replace this ad, but store it so it can be refreshed when back in view fullAdsToRefresh.push(adSlot); continue; } if (adSlot.getSizes().length == 1) { //Ad only has one ad slot define, skip and refresh all ads at the end newAds.push(adSlot); continue; } var slotId = adSlot.getSlotElementId(); var slotName = adSlot.getAdUnitPath(); var targeting = adSlot.getTargetingMap(); var slotWidth = adSlot.tn_width; var slotHeight = adSlot.tn_height; var slotX = adSlot.tn_positionX; var slotY = adSlot.tn_positionY; $('#'+slotId).css({minHeight: slotHeight+'px', minWidth: slotWidth+'px'}); var sizeMappingVar = googletag.sizeMapping().addSize([0, 9999999], [slotWidth, slotHeight]).build() googletag.cmd.push(function() { googletag.destroySlots([adSlot]); }) googletag.cmd.push(function() { var newAdSlot = googletag.defineSlot( slotName, [slotWidth, slotHeight], slotId ).defineSizeMapping( sizeMappingVar ).addService( googletag.pubads() ); if(targeting){ for (const [key, value] of Object.entries(targeting)) { newAdSlot.setTargeting(`${key}`, `${value}`); } } newAdSlot.tn_positionX = slotX; newAdSlot.tn_positionY = slotY; newAdSlot.tn_width = slotWidth; newAdSlot.tn_height = slotHeight; newAds.push(newAdSlot); fullAdsToRefresh.push(newAdSlot); }); } //refresh all ads with new defined slots googletag.pubads().refresh(newAds); ads_to_refresh = fullAdsToRefresh; } var ads_to_refresh = []; // set the ads we wish to refresh function set_ads_to_refresh(){ var checkingAdsInVew = false; if (typeof googletag === 'object' && typeof googletag.pubads === 'function'){ googletag.pubads().addEventListener('impressionViewable', function(event) { // Out-of-page ads are not eligible for refresh if(event.slot.getOutOfPage() === true){ return false; } var slotWidth = $('#'+event.slot.getSlotElementId() + ' iframe').width(); var slotHeight = $('#'+event.slot.getSlotElementId() + ' iframe').height(); event.slot.tn_positionX = $('#'+event.slot.getSlotElementId()).offset().left; event.slot.tn_positionY = $('#'+event.slot.getSlotElementId()).offset().top; event.slot.tn_width = slotWidth; event.slot.tn_height = slotHeight; if(ads_to_refresh.indexOf(event.slot) < 0){ ads_to_refresh.push(event.slot) } }); } } function ad_is_in_view(slot){ var wTop = $(window).scrollTop(); return slot.tn_positionY > wTop && slot.tn_positionY < $(window).height() + wTop; } $(window).load(function(){ set_ads_to_refresh(); }) function gtx_gallery_thumbs_set_backwards(){ backward_pos = $thumbs.find(".gtx-thumb-backward").position().left; backward_width = $thumbs.find(".gtx-thumb-backward").width(); backward_right_pos = backward_pos + backward_width; container_width = $thumbs.find(".flex-viewport").width(); fully_visible = backward_right_pos < container_width; partially_visible = (backward_right_pos - container_width) < backward_width/3; if(partially_visible){ $thumbs.find(".flex-next").hide(0); }else{ $thumbs.find(".flex-next").show(); } } function gtx_gallery_thumbs_before(slide_obj){ if(slide_obj.count > 8){ gtx_gallery_thumbs_set_backwards() } } function gtx_gallery_thumbs_after(slide_obj){ if(slide_obj.count > 8){ gtx_gallery_thumbs_set_backwards() } } function gtx_gallery_paginated_thumbs_start(slide_obj){ gtx_gallery_paginated_thumbs_lazy(); if(false && slide_obj.count > 8){ $thumbs.find(".flex-control-nav.flex-control-paging").removeClass("flex-control-paging").addClass("g-pagination"); } if(slide_obj.count > 8){ $thumbs.find(".flex-control-nav.flex-control-paging").hide().after("
"); $pagination = $thumbs.find(".spagination"); SPagination.Init($pagination.get( 0 ), { size: slide_obj.count, // pages size page: 1, // selected page step: 3, // pages before and after current cb: function(p){ $thumbs.flexAnimate(p-1, true); } }); } } function gtx_gallery_paginated_thumbs_before(slide_obj){ var slide=(typeof slide_obj == "object" && slide_obj.animatingTo ? slide_obj.animatingTo : 0); gtx_gallery_paginated_thumbs_lazy(slide_obj); } function gtx_gallery_paginated_thumbs_after(slide_obj){ var slide=(typeof slide_obj == "object" && slide_obj.animatingTo ? slide_obj.animatingTo : 0); //THUMBS SYNC - Go to first slide of this batch if($thumbs!=="" && navigation == "paginated_thumbs"){ var $active_slide=$slider.find(".slides>li.flex-active-slide"); var $active_thumb_page=$thumbs.find(".slides>li.flex-active-slide"); //Check if the current slide is within this thumb batch if(!$active_thumb_page.find("li[data-i="+$active_slide.attr("data-i")+"]").size()){ first_thumb=$active_thumb_page.find("li").first().attr("data-i"); flexSlider.flexAnimate(first_thumb - 1, true); } } if( typeof SPagination !== "undefined" && $thumbs.find(".spagination").length>0 ){ if(SPagination.page != slide+1){ SPagination.page = slide + 1; SPagination.Start(); } } } function gtx_gallery_paginated_thumbs_lazy(slide_obj){ var slide=(typeof slide_obj == "object" && slide_obj.animatingTo ? slide_obj.animatingTo : 0); //LAZY LOAD THUMBS if($all_thumbs!=="" && navigation == "paginated_thumbs"){ range=1; var $slides_to_hanle=$all_thumbs.slice(slide, slide + range + 1); if(slide - range >= 0){ $slides_to_hanle=$.merge($slides_to_hanle, $all_thumbs.slice(slide - range, slide )); }else{ $slides_to_hanle=$.merge($slides_to_hanle, $all_thumbs.slice(0, range )); $slides_to_hanle=$.merge($slides_to_hanle, $all_thumbs.slice(range * -1 )); } if(slide + range >= $all_thumbs.size()){ //handle first slides $slides_to_hanle= $.merge($slides_to_hanle, $all_thumbs.slice(0,range)); } $slides_to_hanle.each(function () { $(this).find("img[lazy-src]").each(function () { var src = $(this).attr("lazy-src"); if(!src) return; $(this).attr("src",src).removeAttr("lazy-src"); $thumbs.find("img[lazy-src=\""+src+"\"]").attr("src",src).removeAttr("lazy-src"); }); }); } } function adjustNavHeight(){ imageHeight = flexSlider.find(".gtx-slide-img.flex-active-slide .gtx-image-container").outerHeight(); if(imageHeight > 0){ flexSlider.find(".flex-prev,.flex-next").css("top",Math.round(imageHeight/2)); } } var nextSlotId = 1; function generateNextSlotName() { var id = nextSlotId++; return "adslot_" + id+"_"+Math.floor( Date.now() / 1000 ); } function addAdInto(selector,options) { try{ gtx_gallery_enable_dfp(); }catch(err) { } var slide=options.slide || -1; var slotName = generateNextSlotName(); var ad_index = 0; // Create a div for the slot var slotDiv = document.createElement('div'); slotDiv.id = slotName; // Id must be the same as slotName $( selector ).append( slotDiv ); try{ ad_index=$( selector ).closest(".gtx-ad-slide").attr("data-i-only-ads"); }catch(err) { } // Define the slot itself, call display() to // register the div and refresh() to fetch ad. googletag.cmd.push(function() { slideshow_ad_loaded = true; adslots[slotName] = googletag.defineSlot('/132916964,21750684002/honolulumagazine.com/architecture-design', [300, 250], slotName) .addService(googletag.pubads()) .setTargeting("placement", "gallery") .setTargeting("slide", slide) .setTargeting("post", '734358') .setTargeting("category", '["architecture-design","books","books-talks","from-the-magazine","homepage-latest-module","homepage-top-stories","style"]') .setTargeting("galleryAdIndex", ad_index); googletag.display(slotName); googletag.sizeMapping().addSize( [0,0], [[300,250]]) googletag.pubads().refresh([adslots[slotName]]); }); } gtx_gallery_syncHash = function(path){ pic = ""; re = /pic\/?([0-9]+)\/?$/i; if(!path && window.location.hash && window.location.hash.match(re)) path = window.location.hash; if(!path && window.location.pathname && window.location.pathname.match(re)) path = window.location.pathname; if(path){ matchslide = path.match(re); if(matchslide && matchslide[1]>0){ pic = parseInt(matchslide[1]); } if(!isNaN(pic) && pic > 0){ slide=get_slide_by_attachment_id(pic); if(slide>0){ avoid_next_pageview = true; flexSlider.flexAnimate(slide - 1, true); } } }else{ gtx_track_slide( ) } } function debounce(func, wait, immediate) { var timeout; return function() { var context = this, args = arguments; var later = function() { timeout = null; if (!immediate) func.apply(context, args); }; var callNow = immediate && !timeout; clearTimeout(timeout); timeout = setTimeout(later, wait); if (callNow) func.apply(context, args); }; }; // delay the url state replacement to avoid overload // RAYOS-271 var efficientlyReplaceState = debounce(function(title, path){ window.history.replaceState({}, title, path); }, 1250) function changeURL(pic){ basepath = window.location.pathname.replace(/\/pic\/?([0-9]+)\/?$/i,"/"); if(isNaN(pic)) return; path = basepath + "pic/"+pic+"/"; title = "Pic "+pic; if (typeof(window.history.replaceState) == "function") { efficientlyReplaceState(title, path) } else { window.location.hash = path; } } function get_slide_by_attachment_id(id){ var slide=$slider.find(".slides li[data-attachment_id="+id+"]").attr("data-i"); return parseInt(slide, 10); } function gtx_track_slide( slide_obj ){ if(slide_obj){ var slide = slide_obj.animatingTo; }else{ var slide = 0; } $active_slide=$all_slides.eq(slide) ; if(!avoid_next_pageview){ try{ var loc = location.pathname + "#slide" + (parseInt(slide) + 1); if (rayos_gtm_gallery_pageviews) { // Add gallery navigation info to dataLayer window.dataLayer = window.dataLayer || []; window.dataLayer.push({ 'event': 'rayos_virtual_pageview', 'location' : loc }); } // Legacy support for GA tracking ga("send", "pageview", loc); if (ga.getByName("gtxcelTracker")) { ga("gtxcelTracker.send", "pageview", loc); } }catch(err){ } } avoid_next_pageview = false; } //Add a callback on ad render googletag.cmd.push(function() { googletag.pubads().addEventListener('slotRenderEnded', function(event) { var slotName=event.slot.getSlotElementId(); if(typeof adslots[slotName] !=="undefined" && !event.isEmpty){ $slider.clearQueue(); $slider.removeClass("gtx-gallery-loading"); } }); }); jQuery("#gtx-gallery-thumbs-734358").flexslider({ animation: "slide", controlNav: false, animationLoop: false, slideshow: false, itemWidth: 100, itemMargin: 5, move: 1, //asNavFor: "#gtx-gallery-slider-734358", prevText: "", nextText: "", after: gtx_gallery_thumbs_after, after: gtx_gallery_thumbs_before }); $thumbs=$("#gtx-gallery-thumbs-734358").data("flexslider"); $thumbs.find("li.gtx-thumb-img").first( ).addClass("flex-active-slide"); $("#gtx-gallery-slider-734358").flexslider({ animation: "slide", pauseOnHover: true, controlNav: false, //animationLoop: false, //slideshow: false, //sync: "#gtx-gallery-thumbs-734358", prevText: "", nextText: "", slideshow: false, init: gtx_gallery_slide_init, start: gtx_gallery_slide_start, before: gtx_gallery_slide_before, after: gtx_gallery_slide_after }); if(mobile_mode){ $slider.find(".flex-direction-nav").hide(); } });

 

Tour a contemporary Diamond Head oasis that bears elements of Hawaiian and Chinese design, a modern Japanese restaurant inspired by machiya, a type of historic Kyoto townhouse, a plantation-style golf course clubhouse and more that showcase the firm’s commitment to sustainability, indoor-outdoor symbiosis and understated luxury.

 

$60, pva.com, @petervincentarchitects