1<!DOCTYPE html> 2 3<html lang="en"> 4 <head> 5 6 <!-- Metadata --> 7 <meta charset="utf-8"/> 8 <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/> 9 <meta name="description" content="website"/> 10 <meta name="author" content="khang nguyen"/> 11 <title>Huibiao Wen | phd [email protected]</title> 12 <link rel="icon" type="image/x-icon" href=""/> 13 14 <!-- Font Awesome icons --> 15
15<script src="https://use.fontawesome.com/releases/v5.15.3/js/all.js"></script>
15 16 17 <!-- Google fonts--> 18 <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"> 19 <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"> 20 <link href="https://fonts.googleapis.com/css?family=Saira+Extra+Condensed:500,700" rel="stylesheet" type="text/css"/> 21 <link href="https://fonts.googleapis.com/css?family=Muli:400,400i,800,800i" rel="stylesheet" type="text/css"/> 22 <link href="https://fonts.googleapis.com/css2?family=Fira+Code&display=swap" rel="stylesheet"> 23 <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css"> 24 <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.3.4/assets/owl.carousel.min.css"> 25 <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.3.4/assets/owl.theme.default.min.css"> 26 27 <!-- Core theme CSS --> 28 <link href="styles/styles.css" rel="stylesheet"/> 29 30 </head> 31 32 <body> 33 34 <!-- Moving particles --> 35 <canvas id="canvas"></canvas> 36 37 <!-- Progress bar on top --> 38 <div class="progress-bar-container"> 39 <div class="progress-bar" id="progressBar"></div> 40 </div> 41 42 <!-- Back to top button --> 43 <a id="back-to-top-button"></a> 44 45 <!-- Toggle dark/light theme button --> 46 <button class="toggle-theme-button" onclick="toggleTheme()">âï¸</button> 47 48 <!-- Assitant icon saying about theme changes --> 49 <div class="popup-icon-container" id="popupIconContainer" draggable="true"> 50 <!-- <div class="icon"><img src="" width="65" height="65"></div> --> 51 <!-- <div class="speech-balloon"></div> --> 52 </div> 53 54 <!-- Dismissal area for assistant icon --> 55 <div class="dismissal-area" id="dismissalArea">✖</div> 56 57 <!-- Navigation bar --> 58 <!-- Fusion of jQuery slidebar (https://codepen.io/BeshoyRomany/pen/qmNPwN) and animated hamburger menu (https://codepen.io/amberweinberg/pen/yeqJgG) --> 59 <nav> 60 <a class="nav-toggle-btn" onclick="toggleNav()"> 61 <span></span> 62 <span></span> 63 <span></span> 64 </a> 65 <ul> 66 <li><p onclick="scrollToTopDiv('html')"><span class="emoji">ð¡</span> <span class="text">home</span></p></li> 67 <li><p onclick="scrollToTopDiv('#updates')"><span class="emoji">ð</span> <span class="text">News</span></p></li> 68 <!-- <li><p onclick="scrollToTopDiv('#education')"><span class="emoji">ð</span> <span class="text">education</span></p></li> --> 69 <li><p onclick="scrollToTopDiv('#research')"><span class="emoji">ð</span> <span class="text">publications</span></p></li> 70 <!-- <li><p onclick="scrollToTopDiv('#outreach')"><span class="emoji">ð§©</span> <span class="text">outreach</span></p></li> --> 71 <!-- <li><p onclick="scrollToTopDiv('#resources')"><span class="emoji">âï¸</span> <span class="text">resources</span></p></li> --> 72 <!-- <li><p onclick="scrollToTopDiv('#gallery')"><span class="emoji">ð¼ï¸</span> <span class="text">gallery</span></p></li> --> 73 </ul> 74 </nav> 75 76 <!-- Content --> 77 <div class="container" style="padding-top: 3rem;"> 78 <!-- About section --> 79 80<div class="row mb-4"> 81 <div class="col-lg-2 col-md-4"> 82 <div class="ring-container"> 83 <div class="ring"> 84 <div class="hollow-ring"> 85 <img class="profile-image" src="assets/img/ericvein.jpg" alt="Huibiao Wen" /> 86 87 </div> 88 </div> 89 </div> 90 <hr /> 91 <div class="social-icons"> 92 <a class="social-icon" href="https://scholar.google.com/citations?user=4j1UjPgAAAAJ&hl=zh-CN&authuser=1" target="_blank" rel="noopener" title="Google Scholar"><i class="fa fa-graduation-cap" style="font-size: 35px; color: #4285f4"></i></a> 93 94 <a class="social-icon" href="https://github.com/huibiaowen" target="_blank" rel="noopener" title="GitHub"><i class="fab fa-github" style="font-size: 35px; color: #171515"></i></a> 95 96 97 </div> 98 <div class="social-icons"> 99 100 <a class="social-icon" href="https://orcid.org/0009-0008-3589-7459" target="_blank" rel="noopener" title="ORCID"><i class="fab fa-orcid" style="font-size: 35px; color: #a6ce39"></i></a> 101 <a class="social-icon" onclick="scrollToTopDiv('#research');" title="Projects"><i class="fa fa-shapes" style="font-size: 35px; color: #e8828c"></i></a> 102 <a class="social-icon" href="https://www.google.com/maps/place/%E5%B1%B1%E4%B8%9C%E5%A4%A7%E5%AD%A6%E9%9D%92%E5%B2%9B%E6%A0%A1%E5%8C%BA/@36.3756037,120.6603558,13.5z/data=!4m6!3m5!1s0x359659f2eee4791f:0x776a63c1f1ddd4a9!8m2!3d36.355258!4d120.690924!16s%2Fg%2F11cnpw3p4n?entry=ttu&g_ep=EgoyMDI2MDQyMi4wIKXMDSoASAFQAw%3D%3D" target="_blank" rel="noopener" title="Location"><i class="fa fa-map-marker-alt" style="font-size: 35px; color: #635050"></i></a> 103 <a class="social-icon" id="contact-card-trigger" title="Contact Info"><i class="fa fa-id-card" style="font-size: 35px; color: #cbbb5f"></i></a> 104 </div> 105 <p></p> 106 </div> 107 108 <!-- Inspired by Thanh Tran -- https://codepen.io/thanhrossi/pen/pvOEzq --> 109 <!-- Re-written, redesigned, and integrated (from HTML (Pug) and CSS (Less) to pure HTML and CSS) --> 110 <div class="contact-card-overlay" id="overlay-bg"> 111 <div class="information_card"> 112 <div id="front_end_card"> 113 <div class="front"> 114 <div class="contact-info-card"> 115 <div class="code-line"><span class="line-number">1</span><span class="code-content"><span class="keyword">class</span> <span class="namespace">ContactInformationCard</span>: </span></div> 116 <div class="code-line"><span class="line-number">2</span><span class="code-content"> <span class="keyword">def</span> <span class="function">__init__</span>(<span class="self">
116self</span>):</span></div> 117 <div class="code-line"><span class="line-number">3</span><span class="code-content"> <span class="self">self</span>.<span class="self">dept</span> = <span class="string">"cg @ sdu"</span> </span></div> 118 <div class="code-line"><span class="line-number">4</span><span class="code-content"> <span class="self">self</span>.<span class="self">lab</span> = <span class="string">"irc"</span> </span></div> 119 <div class="code-line"><span class="line-number">5</span><span class="code-content"> <span class="self">self</span>.<span class="self">email</span> = <span class="string">"[email protected]"</span> </span></div> 120 <div class="code-line"><span class="line-number">6</span><span class="code-content"> <span class="self">self</span>.<span class="self">phone</span> = <span class="string">""</span> </span></div> 121 <div class="code-line"><span class="line-number">7</span><span class="code-content"></span></div> 122 <div class="code-line"><span class="line-number">8</span><span class="code-content"> <span class="keyword">def</span> <span class="function">flipCard</span>(<span class="self">self</span>):</span></div> 123 <div class="code-line"><span class="line-number">9</span><span class="code-content"> <span class="function">print</span>(<span class="string">"tap on the card to flip."</span>)</span></div> 124 <div class="code-line"><span class="line-number">10</span><span class="code-content"></span></div> 125 <div class="code-line"><span class="line-number">11</span><span class="code-content"> <span class="keyword">def</span> <span class="function">closeCard</span>(<span class="self">self</span>):</span></div> 126 <div class="code-line"><span class="line-number">12</span><span class="code-content"> <span class="function">print</span>(<span class="string">"tap outside to close it."</span>)</span></div> 127 </div> 128 </div> 129 <div class="back"> 130 <div class="contact-info-card"> 131 <p class="card-name">Huibiao Wen</p> 132 <a href="" target="_blank" rel="noopener" class="card-website-link" title="Website"></a> 133 </div> 134 </div> 135 136 </div> 137 </div> 138 </div> 139 140 <div class="col-lg-10 col-md-8"> 141 <h2> 142 Huibiao Wen 143 144 <span id="volumeEmoji" role="button"> <svg t="1731378140994" class="icon" viewBox="0 0 3047 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="6506" width="70" height="70"><path d="M315.021292 545.648731s1.882326 20.111549 20.562449 16.797796c0 0 45.705463-37.360244 47.18699-77.540399 0 0 17.907151-126.180288 44.467279-176.208661 0 0 3.184925-30.797151-66.84764-97.022121 0 0-25.250372 7.407635-23.518345 19.274164 1.753498 12.002515 34.261205 27.147013 14.88684 99.927918l-17.177123 152.683158s-1.381327 45.519378-19.56045 62.088145M651.506832 629.702124l-70.454836-79.58734s-36.458445-16.218068-28.785997 19.538978c0 0-35.463603 119.967895-94.560066 152.432659 0 0-8.309434 36.32246 31.019023 11.06493 0 0 104.995169-67.133925 137.259533-62.57483 0 0 41.024697-13.2407 25.522343-40.881555M405.050892 607.314606s15.123026-29.952609-16.654653-21.006191c0 0-67.09814 84.747634-110.978534 92.727839 0 0-72.831005 74.205175-100.464702 86.994975 0 0-57.722293 36.329617-65.430527 49.913859l-8.230705-7.786963s63.827329-150.120904-10.327746-178.78523c0 0-14.622027 7.185763-11.258173 28.399512 0 0-44.868079 163.053847-81.705852 185.455679 0 0 29.415824 45.905863 65.029728 76.974985 0 0 131.97041-59.833648 171.191509-90.337356 0 0 66.275069-62.145402 81.662909-89.220844 0 0 68.343481-88.762787 87.166746-133.337423M2120.723481 236.961504c-19.703592-4.365852-33.803148 24.663487-33.803148 24.663487l-59.132248 31.491393c7.49352-21.90799-67.82101-70.41905-67.821011-70.41905-33.853248-17.492038-41.439811 4.29428
1441-41.439811 4.294281-9.447418 25.765686 18.658651 80.453353 18.658651 80.453353l1.080727 36.837773-123.088405 91.897612c-40.330455-19.875364-0.529628-74.720488-0.529628-74.720488-5.432265-42.921338-33.481077 5.553937-33.481077 5.553937-31.656008 72.430205 3.829067 140.415829 3.829067 140.415829 31.477079 51.803342 82.056551 20.125863 95.726679 10.234703-18.572765 18.193437-67.77091 115.122515-67.77091 115.122515-60.141404 158.931337-213.712048 270.718627-213.712048 270.718627-40.122898 47.974275 26.173642 23.13186 26.173642 23.13186 58.115935-23.396674 214.728361-198.610493 214.728361-198.610493 218.535957-260.390881 204.858672-362.966939 204.858672-362.966939 52.740927-24.427301 114.721715-81.219167 114.721715-81.219167l-39.006385-46.879233M2092.789184 675.407587s42.749567 142.426984 1.646141 179.443686c0 0-26.173642 44.875236 14.357212 29.422981 0 0 58.717135-96.750149 106.197568-131.383525 0 0 19.689278-72.902576-87.138118-110.176934 0 0-56.25508-31.770522-35.062803 32.693792M2867.677863 6.387246l-14.829583 21.564448-66.532726 54.759239s2.139983 50.901543-69.109294 29.845252c0 0-24.327101 0.407957-26.932299 41.396868l-113.032631 106.176096s-36.515702 33.345091-48.160361-39.085113c0 0-12.668129-55.18151-30.303309 21.177962 0 0-3.950738 87.388617 15.674125 101.652787 0 0 68.958995 20.898834 75.071188-39.74357 0 0 98.675419-99.748989 114.807601-116.675613 0 0 58.323492 32.042493 82.349994 20.705591 0 0 24.40583 10.979045-26.102071 61.386746 0 0-167.233614 255.402358-213.819405 258.279527 0 0-20.798634 55.940166-2.054097 87.732159 0 0 55.059839 13.670128 68.250438 0.87317l69.982465-73.897417s11.036302 37.002387-25.035658 105.782453c0 0-1.295441 72.330005 66.661554 35.549489 0 0 79.036241-23.790316 100.042432 32.922821 0 0-138.676646-26.116385-350.026839 153.162686 0 0-9.311432 66.604297 284.510426 150.321304 0 0 117.498683 33.402349 132.299638-102.619l0.679928-107.886651s-15.158812-13.620028 14.929784-21.593076l71.836162 16.869367s19.782321 38.433814 39.707785 0.128829c0 0 72.931204-27.25437-14.600555-68.765752l-131.261854-18.093237s26.824942-78.943198-122.794963-91.876141l41.575796-177.640088s-31.777679-58.230449-111.035791 18.451094c0 0 66.096141-89.864986 104.894969-111.78729 0 0 17.98588-1.409956 24.334259-50.8085 0 0 27.540655-6.155136 59.690505-90.938556 0 0 46.041849 1.17377 90.272942-191.52493 0 0-57.507579-36.537174-91.940555-15.810111z m-32.586435 879.411478c-18.107551 118.021154-188.204019 44.388551-188.204019 44.388551-89.736157-15.402154 45.032693-82.278423 45.032693-82.278423l101.14463-50.708301c88.068545-37.897029 42.026696 88.598173 42.026696 88.598173zM2806.956731 128.015597s-1.996841-13.498356 12.632343-22.187119l35.563803-26.746213s-21.664647 86.644275-48.196146 48.933332M1188.771476 736.057148s-16.046296-49.58463 84.404092-161.808506l-8.509834-45.691149 10.764331-26.280999-24.148173-19.503193s-0.808756-46.857762-49.391388-46.807662c0 0-28.084597-7.035464 28.370883-37.023858l119.023153-71.363792 58.810178-135.727906s16.704753-23.303631-30.804309-39.965442c0 0-3.235025 30.059967-35.349089 45.476435-32.035336 15.430783-78.814369 55.059839-101.559744 80.18854 0 0 48.324975-128.921471 53.320655-158.129738l-7.99452-55.396224s-29.444453-43.100266-33.881877 41.804824l-134.561293 265.830304-84.196534 44.696308s-80.982981-17.978723-45.233093 43.780194l69.510094 55.675352-80.932881 174.777234-25.057129 48.074475 57.972792 41.210783 93.915924-54.143726s12.195758 0.078728 8.209234 19.768007l-27.554969 78.334841s-61.980788 64.178029-85.298734 62.00226c0 0-9.705075 0.0501-41.790511 10.499517 0 0-97.501649 48.181832-8.373847 93.422081 0 0 28.013026 31.205108 58.531049-19.116707l40.144369-65.201499 121.012837 93.006968s26.338256-32.801149 20.004192-92.212526l0.644142-170.168039zM1102.699772 651.023228l-52.576313 32.063965 45.369078-152.425502c14.786641-48.56116 67.441682-70.784064 67.441682-70.784064-1.238184 45.683992-31.741893 125.486046-31.741893 125.486046-13.684442 41.525697-28.492554 65.659555-28.492554 65.659555" fill="#165096" p-id="6507"></path><path d="M1321.242886 797.665765l-83.008451-23.983559s-63.755758 1.903798-12.954414 32.829778c0 0 42.685152 43.26488 56.920694 79.208012 0 0 11.930944 65.380427 57.271393 14.493198l20.326263-40.008384s15.974725-38.534014-38.555485-62.539045" fill="#165096" p-id="6508"></path></svg> </span> 145 </h2> 146 <p></p> 147 My name is Huibiao Wen (温æ±å½ª), I am currently working toward the PhD degree at the <a href="https://irc.cs.sdu.edu.cn">Interdisciplinary Research Center (IRC)</a> affiliated with the <a href="https://www.en.sdu.edu.cn">Shandong University</a>, supervised by <a href="https://irc.cs.sdu.edu.cn/~shiqing/index.html">Prof. Shiqing Xin</a>. I got the M.Eng. degree from <a href="https://zhaosheng.hdu.edu.cn">Hangzhou Dianzi University</a>, under the supervision of <a href="https://faculty.hdu.edu.cn/lxy/dzy/main.htm">Prof. Chongyang Deng</a> and <a href="https://faculty.hdu.edu.cn/lxy/lyj2/main.htm">Prof. Yajuan Li</a>. 148 <p></p> 149 My research interests are Computer Graphics and Geometry Processing 150 <p></p> 151 <div class="codebox"> 152 Email:[email protected], [email protected] 153 <p></p> 154 155 </div> 156 </div> 157</div> 158 159<!-- Updates section --> 160 161<!-- <hr> 162<div class="row" id="News"> 163 <div class="col"> 164 <h2 clss="mb-5">ð News</h2> 165 <p></p> 166 <div class="owl-carousel owl-theme"> 167 168 <div class="news-card"> 169 <img src="" class="w-full rounded-lg"> 170 <div class="news-desc"></div> 171 <div class="news-time"></div> 172</div> 173 174 <div class="news-card"> 175 <img src="" class="w-full rounded-lg"> 176 <div class="news-desc"></div> 177 <div class="news-time"></div> 178</div> 179 180 </div> 181 <p></p> 182 </div> 183</div> --> 184 185<section id="news"> 186 <h2>ðNews</h2> 187 <ul> 188 <li>ð¤ <strong>05/2026</strong> - Two papers accepted to SIGGRAPH 2026; one will appear in ACM Transactions on Graphics (TOG).</li> 189 <li>ð¤ <strong>07/2025</strong> - One paper accepted to CAD/Graphics 2025 and recommended for publication in CSIAM Transactions on Applied Mathematics.</li> 190 <li>ð¤ <strong>05/2025</strong> - Two papers accepted to COMPUTER GRAPHICS INTERNATIONAL 2025 (CGI 2025) and recommended for publication in The Visual Computer.</li> 191 <li>ð¤ <strong>03/2025</strong> - Two papers accepted to SIGGRAPH 2025.</li> 192 <!-- æ·»å æ´å¤æ°é»é¡¹ --> 193 </ul> 194</section> 195<!-- Research section --> 196<hr /> 197 198<div class="row" id="research"> 199 <div class="col"> 200 <h2 class="mb-4">ð publications</h2> 201 <div id="filters-project" class="mb-2"> <!-- åå°åºé¨é´è· --> 202 <button class="filter-button active" data-filter="*">ALL</button> 203 204 </div> 205 <small class="author-notes" style="color: #666; display: block; margin: 4px 0 12px 0;"> <!-- åå°ä¸ä¸é´è· --> 206 <sup>â </sup>Equal contribution. <sup>*</sup>Corresponding author. 207 </small> 208 <div id="projects" class="isotope"> 209 210 211 <div class="project" data-filter=""> 212 <div class="row mb-4"> 213 <div class="col-sm-4"> 214 <img width="100%" height="auto" class="w-full rounded-lg" src="assets/img/PRCage.png" /> 215 </div> 216 <div class="col-sm-8"> 217 218 <b>PR-Cage:Progressive Feasibility Relaxation for Tight Bounding Cage Generation</b> 219 <br /> 220 <i><a href="https://s2026.siggraph.org/" target="_blank" rel="noopener">Siggraph 2026</a></i> 221 <!-- --> 222 223 <br /> 224 225 226 <a href=""> 227 <strong>Huibiao Wen</strong> 228 </a>, 229 230 231 <a href="https://kaikai-qin.github.io/"> 232 Kaikai Qin 233 </a>, 234 235 236 <a href=""> 237 Xinxin Su 238 </a>, 239 240 241 <a href=""> 242 Jingcheng Mei 243 </a>, 244 245 246 <a href="https://ieeexplore.ieee.org/author/37088955375"> 247 Shuangmin Chen 248 </a>, 249 250 251 <a href="https://faculty.hdu.edu.cn/lxy/dzy/main.htm"> 252 Chongyang Deng 253 </a>, 254 255 256 <a href="https://irc.cs.sdu.edu.cn/~chtu/index.html"> 257 Changhe Tu 258 </a>, 259 260 261 <a href="https://irc.cs.sdu.edu.cn/~shiqing/index.html"> 262 Shiqing Xin<sup>*</sup> 263 </a>, 264 265 266 <a href="https://engineering.tamu.edu/cse/profiles/Wang-Wenping.html"> 267 Wenping Wang 268 </a> 269 270 <br /> 271 272 273 274 275 276 277 278 <a href="https://huibiaowen.github.io/PR-Cage/" target="_blank" rel="noopener" class="resource-btn">Project Page</a> 279 280 281 <!-- <div class="abstract-container">
282 <span class="abstract-label"><u><b><i>Abstract</i></b></u>: </span> 283 <div class="abstract-content"> 284 <span class="abstract-preview"></span> 285 <span class="collapse" id=""> 286 287 </span> 288 </div> 289 <span class="see-more-btn"> 290 <a href="#" data-toggle="collapse" onclick="toggleText(this)" id="link-">... See More</a> 291 </span> 292 </div> --> 293 </div> 294 </div> 295</div> 296 297 298<style>.abstract-container { 299 position: relative; 300 max-height: 4.8em; 301 overflow: hidden; 302 margin-top: 8px; 303 line-height: 1.6; 304 padding-left: 0; 305 text-align: justify; /* æ´ä¸ªå®¹å¨åºç¨ä¸¤ç«¯å¯¹é½ */ 306} 307 308.abstract-label { 309 display: inline; 310 white-space: nowrap; 311 font-weight: bold; 312} 313 314.abstract-content { 315 display: inline; /* ä¿æä¸labelå¨åä¸è¡ */ 316} 317 318.abstract-preview, .collapse { 319 /* ç¡®ä¿é¢è§åå±å¼çå 容é½ä¿æä¸è´ç坹齿¹å¼ */ 320 text-align: justify; 321} 322 323.see-more-btn { 324 position: absolute; 325 bottom: 0; 326 right: 0; 327 padding: 0 0 0 10px; 328 background: linear-gradient(to left, var(--bg-color, white) 70%, transparent); 329} 330 331/* 主é¢ç¸å ³æ ·å¼ */ 332:root { 333 --bg-color: white; 334} 335 336.dark-theme .see-more-btn { 337 --bg-color: #333333; 338} 339 340.abstract-container.expanded { 341 max-height: none; 342} 343 344.project img { 345 box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2); 346 border-radius: 8px; 347 transition: box-shadow 0.3s ease; 348 margin-bottom: 5px; 349} 350 351/* ç¡®ä¿å½å®¹å¨å±å¼æ¶ä»ç¶ä¿æä¸¤ç«¯å¯¹é½ */ 352.abstract-container.expanded .abstract-content { 353 display: inline; 354 text-align: justify; 355} 356 357/* ç¡®ä¿"See Less"æé®å¨éå½ä½ç½® */ 358.abstract-container.expanded .see-more-btn { 359 position: static; 360 padding: 0; 361 background: none; 362 margin-left: 5px; 363} 364 365/* æ´ç²¾è´çèµæºæé®æ ·å¼ï¼å¹é ç½ç«æ´ä½è²è° */ 366.resource-btn { 367 display: inline-block; 368 padding: 1px 6px; 369 margin: 2px 2px 2px 0; 370 border-radius: 4px; 371 border: 1px solid #B45F4D; /* å忍ç½ç«ä¸ä½è ååçè¤è² */ 372 color: #B45F4D; 373 text-decoration: none; 374 font-size: 0.85em; 375 transition: all 0.2s ease; 376 background-color: transparent; 377 line-height: 1.2; 378 font-family: inherit; /* 使ç¨ä¸ç½ç«ç¸åçåä½ */ 379} 380 381.resource-btn:hover { 382 background-color: #B45F4D; 383 color: white; 384} 385 386/* ç¶ææ ç¾åºç¡æ ·å¼ */ 387.status-tag { 388 display: inline-block; 389 padding: 2px 8px; 390 border-radius: 3px; 391 color: white; 392 font-weight: normal; 393 font-size: 0.7em; 394 margin-right: 10px; /* å³ä¾§é´è· */ 395 margin-bottom: 3px; /* åºé¨é´è·ï¼ç¡®ä¿ä¸ä¸æ¹å 容æéå½é´é */ 396} 397 398/* é¢å°æ¬æ ·å¼ - çº¢è² */ 399.status-tag.preprint { 400 background-color: #e74c3c; 401} 402 403/* æä½³è®ºæå¥æ ·å¼ - éè² */ 404.status-tag.best-paper { 405 background-color: #f39c12; 406} 407 408/* æä½³è®ºææåæ ·å¼ - èè² */ 409.status-tag.nomination { 410 background-color: #3498db; 411} 412 413 414 415.resource-btn.bibtex-btn { 416 border-color: #4a6da7; /* A different color to distinguish it */ 417 color: #4a6da7; 418} 419 420.resource-btn.bibtex-btn:hover { 421 background-color: #4a6da7; 422 color: white; 423} 424 425.resource-btn.copied { 426 background-color: #28a745 !important; 427 color: white !important; 428 border-color: #28a745 !important; 429} 430</style> 431
432<script> 433document.addEventListener('DOMContentLoaded', function() { 434 window.toggleText = function(element) { 435 const container = element.closest('.abstract-container'); 436 if (element.innerText === '... See More') { 437 element.innerText = 'See Less'; 438 container.classList.add('expanded'); 439 } else { 440 element.innerText = '... See More'; 441 container.classList.remove('expanded'); 442 } 443 } 444}); 445</script>
445 446 447
448<script> 449 function copyBibtex(button) { 450 const bibtex = button.getAttribute('data-bibtex'); 451 navigator.clipboard.writeText(bibtex).then(() => { 452 // Visual feedback that copy was successful 453 const originalText = button.textContent; 454 button.textContent = 'Copied!'; 455 button.classList.add('copied'); 456 457 // Reset button text after 2 seconds 458 setTimeout(() => { 459 button.textContent = originalText; 460 button.classList.remove('copied'); 461 }, 2000); 462 }).catch(err => { 463 console.error('Failed to copy: ', err); 464 }); 465 } 466 </script>
466 467 468 469 <div class="project" data-filter=""> 470 <div class="row mb-4"> 471 <div class="col-sm-4"> 472 <img width="100%" height="auto" class="w-full rounded-lg" src="assets/img/qin26SIG.jpg" /> 473 </div> 474 <div class="col-sm-8"> 475 476 <b>C^0 Generalized Coons Volumes over Arbitrary Polyhedra</b> 477 <br /> 478 <i><a href="https://s2026.siggraph.org/" target="_blank" rel="noopener">Siggraph 2026</a></i> 479 <!-- --> 480 481 <br /> 482 483 484 <a href="https://kaikai-qin.github.io/"> 485 Kaikai Qin<sup>â </sup> 486 </a>, 487 488 489 <a href=""> 490 Zeqi Ge<sup>â </sup> 491 </a>, 492 493 494 <a href="https://www.iit.bme.hu/users/dr-salvi-p%C3%A9ter?language=en"> 495 Péter Salvi 496 </a>, 497 498 499 <a href=""> 500 Chenhao Ying 501 </a>, 502 503 504 <a href=""> 505 <strong>Huibiao Wen</strong> 506 </a>, 507 508 509 <a href=""> 510 Kepeng Xu 511 </a>, 512 513 514 <a href="https://irc.cs.sdu.edu.cn/~shiqing/index.html"> 515 Shiqing Xin 516 </a>, 517 518 519 <a href="https://faculty.hdu.edu.cn/lxy/dzy/main.htm"> 520 Chongyang Deng<sup>*</sup> 521 </a> 522 523 <br /> 524 525 526 527 528 529 530 531 532 <!-- <div class="abstract-container"> 533 <span class="abstract-label"><u><b><i>Abstract</i></b></u>: </span> 534 <div class="abstract-content"> 535 <span class="abstract-preview"></span> 536 <span class="collapse" id=""> 537 538 </span> 539 </div> 540 <span class="see-more-btn"> 541 <a href="#" data-toggle="collapse" onclick="toggleText(this)" id="link-">... See More</a> 542 </span> 543 </div> --> 544 </div> 545 </div> 546</div> 547 548 549<style>.abstract-container { 550 position: relative; 551 max-height: 4.8em; 552 overflow: hidden; 553 margin-top: 8px; 554 line-height: 1.6; 555 padding-left: 0; 556 text-align: justify; /* æ´ä¸ªå®¹å¨åºç¨ä¸¤ç«¯å¯¹é½ */ 557} 558 559.abstract-label { 560 display: inline; 561 white-space: nowrap; 562 font-weight: bold; 563} 564 565.abstract-content { 566 display: inline; /* ä¿æä¸labelå¨åä¸è¡ */ 567} 568 569.abstract-preview, .collapse { 570 /* ç¡®ä¿é¢è§åå±å¼çå 容é½ä¿æä¸è´ç坹齿¹å¼ */ 571 text-align: justify; 572} 573 574.see-more-btn { 575 position: absolute; 576 bottom: 0; 577 right: 0; 578 padding: 0 0 0 10px; 579 background: linear-gradient(to left, var(--bg-color, white) 70%, transparent); 580} 581 582/* 主é¢ç¸å ³æ ·å¼ */ 583:root { 584 --bg-color: white; 585} 586 587.dark-theme .see-more-btn { 588 --bg-color: #333333; 589} 590 591.abstract-container.expanded { 592 max-height: none; 593} 594 595.project img { 596 box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2); 597 border-radius: 8px; 598 transition: box-shadow 0.3s ease; 599 margin-bottom: 5px; 600} 601 602/* ç¡®ä¿å½å®¹å¨å±å¼æ¶ä»ç¶ä¿æä¸¤ç«¯å¯¹é½ */ 603.abstract-container.expanded .abstract-content { 604 display: inline; 605 text-align: justify; 606} 607 608/* ç¡®ä¿"See Less"æé®å¨éå½ä½ç½® */ 609.abstract-container.expanded .see-more-btn { 610 position: static; 611 padding: 0; 612 background: none; 613 margin-left: 5px; 614} 615 616/* æ´ç²¾è´çèµæºæé®æ ·å¼ï¼å¹é ç½ç«æ´ä½è²è° */ 617.resource-btn { 618 display: inline-block; 619 padding: 1px 6px; 620 margin: 2px 2px 2px 0; 621 border-radius: 4px; 622 border: 1px solid #B45F4D; /* å忍ç½ç«ä¸ä½è ååçè¤è² */ 623 color: #B45F4D; 624 text-decoration: none; 625 font-size: 0.85em; 626 transition: all 0.2s ease; 627 background-color: transparent; 628 line-height: 1.2; 629 font-family: inherit; /* 使ç¨ä¸ç½ç«ç¸åçåä½ */ 630} 631 632.resource-btn:hover { 633 background-color: #B45F4D; 634 color: white; 635} 636 637/* ç¶ææ ç¾åºç¡æ ·å¼ */ 638.status-tag { 639 display: inline-block; 640 padding: 2px 8px; 641 border-radius: 3px; 642 color: white; 643 font-weight: normal; 644 font-size: 0.7em; 645 margin-right: 10px; /* å³ä¾§é´è· */ 646 margin-bottom: 3px; /* åºé¨é´è·ï¼ç¡®ä¿ä¸ä¸æ¹å 容æéå½é´é */ 647} 648 649/* é¢å°æ¬æ ·å¼ - çº¢è² */ 650.status-tag.preprint { 651 background-color: #e74c3c; 652} 653 654/* æä½³è®ºæå¥æ ·å¼ - éè² */ 655.status-tag.best-paper { 656 background-color: #f39c12; 657} 658 659/* æä½³è®ºææåæ ·å¼ - èè² */ 660.status-tag.nomination { 661 background-color: #3498db; 662} 663 664 665 666.resource-btn.bibtex-btn { 667 border-color: #4a6da7;
667 /* A different color to distinguish it */ 668 color: #4a6da7; 669} 670 671.resource-btn.bibtex-btn:hover { 672 background-color: #4a6da7; 673 color: white; 674} 675 676.resource-btn.copied { 677 background-color: #28a745 !important; 678 color: white !important; 679 border-color: #28a745 !important; 680} 681</style> 682
683<script> 684document.addEventListener('DOMContentLoaded', function() { 685 window.toggleText = function(element) { 686 const container = element.closest('.abstract-container'); 687 if (element.innerText === '... See More') { 688 element.innerText = 'See Less'; 689 container.classList.add('expanded'); 690 } else { 691 element.innerText = '... See More'; 692 container.classList.remove('expanded'); 693 } 694 } 695}); 696</script>
696 697 698
699<script> 700 function copyBibtex(button) { 701 const bibtex = button.getAttribute('data-bibtex'); 702 navigator.clipboard.writeText(bibtex).then(() => { 703 // Visual feedback that copy was successful 704 const originalText = button.textContent; 705 button.textContent = 'Copied!'; 706 button.classList.add('copied'); 707 708 // Reset button text after 2 seconds 709 setTimeout(() => { 710 button.textContent = originalText; 711 button.classList.remove('copied'); 712 }, 2000); 713 }).catch(err => { 714 console.error('Failed to copy: ', err); 715 }); 716 } 717 </script>
717 718 719 720 <div class="project" data-filter=""> 721 <div class="row mb-4"> 722 <div class="col-sm-4"> 723 <img width="100%" height="auto" class="w-full rounded-lg" src="assets/img/CBS.jpg" /> 724 </div> 725 <div class="col-sm-8"> 726 727 <b>Smooth Bijective Projection of Polygonal Meshes via a Cubic B-Spline Shell</b> 728 <br /> 729 <i><a href="https://cadgraphics2025.sdtbu.edu.cn/" target="_blank" rel="noopener">CAD/Graphics 2025</a></i> 730 <!-- --> 731 732 <br /> 733 734 735 <a href=""> 736 Guilong He<sup>â </sup> 737 </a>, 738 739 740 <a href=""> 741 <strong>Huibiao Wen</strong><sup>â </sup> 742 </a>, 743 744 745 <a href="https://ieeexplore.ieee.org/author/37088955375"> 746 Shuangmin Chen<sup>*</sup> 747 </a>, 748 749 750 <a href="https://irc.cs.sdu.edu.cn/~lulin/index.html"> 751 Lin Lu 752 </a>, 753 754 755 <a href="https://irc.cs.sdu.edu.cn/~shiqing/index.html"> 756 Shiqing Xin 757 </a>, 758 759 760 <a href="https://irc.cs.sdu.edu.cn/~chtu/index.html"> 761 Changhe Tu 762 </a> 763 764 <br /> 765 766 <a href="https://www.global-sci.com/csiam-am/article/view/23860" target="_blank" rel="noopener" class="resource-btn">PDF</a> 767 768 769 <a href="https://github.com/HGL2533/bijectiveImplicitShell" target="_blank" rel="noopener" class="resource-btn">Code</a> 770 771 772 773 774 775 776 777 <!-- <div class="abstract-container"> 778 <span class="abstract-label"><u><b><i>Abstract</i></b></u>: </span> 779 <div class="abstract-content"> 780 <span class="abstract-preview"></span> 781 <span class="collapse" id=""> 782 783 </span> 784 </div> 785 <span class="see-more-btn"> 786 <a href="#" data-toggle="collapse" onclick="toggleText(this)" id="link-">... See More</a> 787 </span> 788 </div> --> 789 </div> 790 </div> 791</div> 792 793 794<style>.abstract-container { 795 position: relative; 796 max-height: 4.8em; 797 overflow: hidden; 798 margin-top: 8px; 799 line-height: 1.6; 800 padding-left: 0; 801 text-align: justify; /* æ´ä¸ªå®¹å¨åºç¨ä¸¤ç«¯å¯¹é½ */ 802} 803 804.abstract-label { 805 display: inline; 806 white-space: nowrap; 807 font-weight: bold; 808} 809 810.abstract-content { 811 display: inline; /* ä¿æä¸labelå¨åä¸è¡ */ 812} 813 814.abstract-preview, .collapse { 815 /* ç¡®ä¿é¢è§åå±å¼çå 容é½ä¿æä¸è´ç坹齿¹å¼ */ 816 text-align: justify; 817} 818 819.see-more-btn { 820 position: absolute; 821 bottom: 0; 822 right: 0; 823 padding: 0 0 0 10px; 824 background: linear-gradient(to left, var(--bg-color, white) 70%, transparent); 825} 826 827/* 主é¢ç¸å ³æ ·å¼ */ 828:root { 829 --bg-color: white; 830} 831 832.dark-theme .see-more-btn { 833 --bg-color: #333333; 834} 835 836.abstract-container.expanded { 837 max-height: none; 838} 839 840.project img { 841 box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2); 842 border-radius: 8px; 843 transition: box-shadow 0.3s ease; 844 margin-bottom: 5px; 845} 846 847/* ç¡®ä¿å½å®¹å¨å±å¼æ¶ä»ç¶ä¿æä¸¤ç«¯å¯¹é½ */ 848.abstract-container.expanded .abstract-content { 849 display: inline; 850 text-align: justify; 851} 852 853/* ç¡®ä¿"See Less"æé®å¨éå½ä½ç½® */ 854.abstract-container.expanded .see-more-btn { 855 position: static; 856 padding: 0; 857 background: none; 858 margin-left: 5px; 859} 860 861/* æ´ç²¾è´çèµæºæé®æ ·å¼ï¼å¹é ç½ç«æ´ä½è²è° */ 862.resource-btn { 863 display: inline-block; 864 padding: 1px 6px; 865 margin: 2px 2px 2px 0; 866 border-radius: 4px; 867 border: 1px solid #B45F4D; /* å忍ç½ç«ä¸ä½è ååçè¤è² */ 868 color: #B45F4D; 869 text-decoration: none; 870 font-size: 0.85em; 871 transition: all 0.2s ease; 872 background-color: transparent; 873 line-height: 1.2; 874 font-family: inherit; /* 使ç¨ä¸ç½ç«ç¸åçåä½ */ 875} 876 877.resource-btn:hover { 878 background-color: #B45F4D; 879 color: white; 880} 881 882/* ç¶ææ ç¾åºç¡æ ·å¼ */ 883.status-tag { 884 display: inline-block; 885 padding: 2px 8px; 886 border-radius: 3px; 887 color: white; 888 font-weight: normal; 889 font-size: 0.7em; 890 margin-right: 10px; /* å³ä¾§é´è· */ 891 margin-bottom: 3px; /* åºé¨é´è·ï¼ç¡®ä¿ä¸ä¸æ¹å 容æéå½é´é */ 892} 893 894/* é¢å°æ¬æ ·å¼ - çº¢è² */ 895.status-tag.preprint { 896 background-color: #e74c3c; 897} 898 899/* æä½³è®ºæå¥æ ·å¼ - éè² */ 900.status-tag.best-paper { 901 background-color: #f39c12; 902} 903 904/* æä½³è®ºææåæ ·å¼ - èè² */ 905.status-tag.nomination { 906 background-color: #3498db; 907} 908 909 910 911.resource-btn.bibtex-btn { 912 border-color: #4a6da7;
912 /* A different color to distinguish it */ 913 color: #4a6da7; 914} 915 916.resource-btn.bibtex-btn:hover { 917 background-color: #4a6da7; 918 color: white; 919} 920 921.resource-btn.copied { 922 background-color: #28a745 !important; 923 color: white !important; 924 border-color: #28a745 !important; 925} 926</style> 927
928<script> 929document.addEventListener('DOMContentLoaded', function() { 930 window.toggleText = function(element) { 931 const container = element.closest('.abstract-container'); 932 if (element.innerText === '... See More') { 933 element.innerText = 'See Less'; 934 container.classList.add('expanded'); 935 } else { 936 element.innerText = '... See More'; 937 container.classList.remove('expanded'); 938 } 939 } 940}); 941</script>
941 942 943
944<script> 945 function copyBibtex(button) { 946 const bibtex = button.getAttribute('data-bibtex'); 947 navigator.clipboard.writeText(bibtex).then(() => { 948 // Visual feedback that copy was successful 949 const originalText = button.textContent; 950 button.textContent = 'Copied!'; 951 button.classList.add('copied'); 952 953 // Reset button text after 2 seconds 954 setTimeout(() => { 955 button.textContent = originalText; 956 button.classList.remove('copied'); 957 }, 2000); 958 }).catch(err => { 959 console.error('Failed to copy: ', err); 960 }); 961 } 962 </script>
962 963 964 965 <div class="project" data-filter=""> 966 <div class="row mb-4"> 967 <div class="col-sm-4"> 968 <img width="100%" height="auto" class="w-full rounded-lg" src="assets/img/ITS.jpg" /> 969 </div> 970 <div class="col-sm-8"> 971 972 <b>ImS:Implicit Shell for the Sandwich-Walled Space Surrounding Polygonal Meshes</b> 973 <br /> 974 <i><a href="https://www.cgs-network.org/cgi25/" target="_blank" rel="noopener">COMPUTER GRAPHICS INTERNATIONAL 2025</a></i> 975 <!-- --> 976 977 <br /> 978 979 980 <a href=""> 981 <strong>Huibiao Wen</strong> 982 </a>, 983 984 985 <a href="https://alan-leo-wong.github.io/"> 986 Lei Wang 987 </a>, 988 989 990 <a href="https://ieeexplore.ieee.org/author/37088955375"> 991 Shuangmin Chen<sup>*</sup> 992 </a>, 993 994 995 <a href="https://irc.cs.sdu.edu.cn/~shiqing/index.html"> 996 Shiqing Xin 997 </a>, 998 999 1000 <a href="https://faculty.hdu.edu.cn/lxy/dzy/main.htm"> 1001 Chongyang Deng 1002 </a>, 1003 1004 1005 <a href="https://personal.ntu.edu.sg/yhe/"> 1006 Ying He 1007 </a>, 1008 1009 1010 <a href="https://engineering.tamu.edu/cse/profiles/Wang-Wenping.html"> 1011 Wenping Wang 1012 </a>, 1013 1014 1015 <a href="https://irc.cs.sdu.edu.cn/~chtu/index.html"> 1016 Changhe Tu 1017 </a> 1018 1019 <br /> 1020 1021 <a href="https://link.springer.com/article/10.1007/s00371-025-04008-2" target="_blank" rel="noopener" class="resource-btn">PDF</a> 1022 1023 1024 1025 1026 1027 1028 1029 1030 <!-- <div class="abstract-container"> 1031 <span class="abstract-label"><u><b><i>Abstract</i></b></u>: </span> 1032 <div class="abstract-content"> 1033 <span class="abstract-preview"></span> 1034 <span class="collapse" id=""> 1035 1036 </span> 1037 </div> 1038 <span class="see-more-btn"> 1039 <a href="#" data-toggle="collapse" onclick="toggleText(this)" id="link-">... See More</a> 1040 </span> 1041 </div> --> 1042 </div> 1043 </div> 1044</div> 1045 1046 1047<style>.abstract-container { 1048 position: relative; 1049 max-height: 4.8em; 1050 overflow: hidden; 1051 margin-top: 8px; 1052 line-height: 1.6; 1053 padding-left: 0; 1054 text-align: justify; /* æ´ä¸ªå®¹å¨åºç¨ä¸¤ç«¯å¯¹é½ */ 1055} 1056 1057.abstract-label { 1058 display: inline; 1059 white-space: nowrap; 1060 font-weight: bold; 1061} 1062 1063.abstract-content { 1064 display: inline; /* ä¿æä¸labelå¨åä¸è¡ */ 1065} 1066 1067.abstract-preview, .collapse { 1068 /* ç¡®ä¿é¢è§åå±å¼çå 容é½ä¿æä¸è´ç坹齿¹å¼ */ 1069 text-align: justify; 1070} 1071 1072.see-more-btn { 1073 position: absolute; 1074 bottom: 0; 1075 right: 0; 1076 padding: 0 0 0 10px; 1077 background: linear-gradient(to left, var(--bg-color, white) 70%, transparent); 1078} 1079 1080/* 主é¢ç¸å ³æ ·å¼ */ 1081:root { 1082 --bg-color: white; 1083} 1084 1085.dark-theme .see-more-btn { 1086 --bg-color: #333333; 1087} 1088 1089.abstract-container.expanded { 1090 max-height: none; 1091} 1092 1093.project img { 1094 box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2); 1095 border-radius: 8px; 1096 transition: box-shadow 0.3s ease; 1097 margin-bottom: 5px; 1098} 1099 1100/* ç¡®ä¿å½å®¹å¨å±å¼æ¶ä»ç¶ä¿æä¸¤ç«¯å¯¹é½ */ 1101.abstract-container.expanded .abstract-content { 1102 display: inline; 1103 text-align: justify; 1104} 1105 1106/* ç¡®ä¿"See Less"æé®å¨éå½ä½ç½® */ 1107.abstract-container.expanded .see-more-btn { 1108 position: static; 1109 padding: 0; 1110 background: none; 1111 margin-left: 5px; 1112} 1113 1114/* æ´ç²¾è´çèµæºæé®æ ·å¼ï¼å¹é ç½ç«æ´ä½è²è° */ 1115.resource-btn { 1116 display: inline-block; 1117 padding: 1px 6px; 1118 margin: 2px 2px 2px 0; 1119 border-radius: 4px; 1120 border: 1px solid #B45F4D; /* å忍ç½ç«ä¸ä½è ååçè¤è² */ 1121 color: #B45F4D; 1122 text-decoration: none; 1123 font-size: 0.85em; 1124 transition: all 0.2s ease; 1125 background-color: transparent; 1126 line-height: 1.2; 1127 font-family: inherit; /* 使ç¨ä¸ç½ç«ç¸åçåä½ */ 1128} 1129 1130.resource-btn:hover { 1131 background-color: #B45F4D; 1132 color: white; 1133} 1134 1135/* ç¶ææ ç¾åºç¡æ ·å¼ */ 1136.status-tag { 1137 display: inline-block; 1138 padding: 2px 8px; 1139 border-radius: 3px; 1140 color: white; 1141 font-weight: normal; 1142 font-size: 0.7em; 1143 margin-right: 10px; /* å³ä¾§é´è· */ 1144 margin-bottom: 3px; /* åºé¨é´è·ï¼ç¡®ä¿ä¸ä¸æ¹å 容æéå½é´é */ 1145} 1146 1147/* é¢å°æ¬æ ·å¼ - çº¢è² */ 1148.status-tag.preprint { 1149 background-color: #e74c3c; 1150} 1151 1152/* æä½³è®ºæå¥æ ·å¼ - éè² */ 1153.status-tag.best-paper { 1154 background-color: #f39c12; 1155} 1156 1157/* æä½³è®ºææåæ ·å¼ - èè² */ 1158.status-tag.nomination { 1159 background-color: #3498db; 1160} 1161 1162 1163 1164.resource-btn.bibtex-btn { 1165 border-color: #4a6da7;
1165 /* A different color to distinguish it */ 1166 color: #4a6da7; 1167} 1168 1169.resource-btn.bibtex-btn:hover { 1170 background-color: #4a6da7; 1171 color: white; 1172} 1173 1174.resource-btn.copied { 1175 background-color: #28a745 !important; 1176 color: white !important; 1177 border-color: #28a745 !important; 1178} 1179</style> 1180
1181<script> 1182document.addEventListener('DOMContentLoaded', function() { 1183 window.toggleText = function(element) { 1184 const container = element.closest('.abstract-container'); 1185 if (element.innerText === '... See More') { 1186 element.innerText = 'See Less'; 1187 container.classList.add('expanded'); 1188 } else { 1189 element.innerText = '... See More'; 1190 container.classList.remove('expanded'); 1191 } 1192 } 1193}); 1194</script>
1194 1195 1196
1197<script> 1198 function copyBibtex(button) { 1199 const bibtex = button.getAttribute('data-bibtex'); 1200 navigator.clipboard.writeText(bibtex).then(() => { 1201 // Visual feedback that copy was successful 1202 const originalText = button.textContent; 1203 button.textContent = 'Copied!'; 1204 button.classList.add('copied'); 1205 1206 // Reset button text after 2 seconds 1207 setTimeout(() => { 1208 button.textContent = originalText; 1209 button.classList.remove('copied'); 1210 }, 2000); 1211 }).catch(err => { 1212 console.error('Failed to copy: ', err); 1213 }); 1214 } 1215 </script>
1215 1216 1217 1218 <div class="project" data-filter=""> 1219 <div class="row mb-4"> 1220 <div class="col-sm-4"> 1221 <img width="100%" height="auto" class="w-full rounded-lg" src="assets/img/Haohao.png" /> 1222 </div> 1223 <div class="col-sm-8"> 1224 1225 <b>RegistrationBooster:Refine Correspondence for Rigid Registration</b> 1226 <br /> 1227 <i><a href="https://www.cgs-network.org/cgi25/" target="_blank" rel="noopener">COMPUTER GRAPHICS INTERNATIONAL 2025</a></i> 1228 <!-- --> 1229 1230 <br /> 1231 1232 1233 <a href=""> 1234 Haohao Gao<sup>â </sup> 1235 </a>, 1236 1237 1238 <a href=""> 1239 Hao Yu<sup>â </sup> 1240 </a>, 1241 1242 1243 <a href="https://scholar.google.com/citations?user=CTDs13EAAAAJ&hl"> 1244 Junjie Gao 1245 </a>, 1246 1247 1248 <a href=""> 1249 <strong>Huibiao Wen</strong> 1250 </a>, 1251 1252 1253 <a href="https://ieeexplore.ieee.org/author/37088955375"> 1254 Shuangmin Chen<sup>*</sup> 1255 </a>, 1256 1257 1258 <a href="https://irc.cs.sdu.edu.cn/~shiqing/index.html"> 1259 Shiqing Xin 1260 </a>, 1261 1262 1263 <a href="https://irc.cs.sdu.edu.cn/~chtu/index.html"> 1264 Changhe Tu 1265 </a> 1266 1267 <br /> 1268 1269 1270 1271 1272 1273 1274 1275 1276 <!-- <div class="abstract-container"> 1277 <span class="abstract-label"><u><b><i>Abstract</i></b></u>: </span> 1278 <div class="abstract-content"> 1279 <span class="abstract-preview"></span> 1280 <span class="collapse" id=""> 1281 1282 </span> 1283 </div> 1284 <span class="see-more-btn"> 1285 <a href="#" data-toggle="collapse" onclick="toggleText(this)" id="link-">... See More</a> 1286 </span> 1287 </div> --> 1288 </div> 1289 </div> 1290</div> 1291 1292 1293<style>.abstract-container { 1294 position: relative; 1295 max-height: 4.8em; 1296 overflow: hidden; 1297 margin-top: 8px; 1298 line-height: 1.6; 1299 padding-left: 0; 1300 text-align: justify; /* æ´ä¸ªå®¹å¨åºç¨ä¸¤ç«¯å¯¹é½ */ 1301} 1302 1303.abstract-label { 1304 display: inline; 1305 white-space: nowrap; 1306 font-weight: bold; 1307} 1308 1309.abstract-content { 1310 display: inline; /* ä¿æä¸labelå¨åä¸è¡ */ 1311} 1312 1313.abstract-preview, .collapse { 1314 /* ç¡®ä¿é¢è§åå±å¼çå 容é½ä¿æä¸è´ç坹齿¹å¼ */ 1315 text-align: justify; 1316} 1317 1318.see-more-btn { 1319 position: absolute; 1320 bottom: 0; 1321 right: 0; 1322 padding: 0 0 0 10px; 1323 background: linear-gradient(to left, var(--bg-color, white) 70%, transparent); 1324} 1325 1326/* 主é¢ç¸å ³æ ·å¼ */ 1327:root { 1328 --bg-color: white; 1329} 1330 1331.dark-theme .see-more-btn { 1332 --bg-color: #333333; 1333} 1334 1335.abstract-container.expanded { 1336 max-height: none; 1337} 1338 1339.project img { 1340 box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2); 1341 border-radius: 8px; 1342 transition: box-shadow 0.3s ease; 1343 margin-bottom: 5px; 1344} 1345 1346/* ç¡®ä¿å½å®¹å¨å±å¼æ¶ä»ç¶ä¿æä¸¤ç«¯å¯¹é½ */ 1347.abstract-container.expanded .abstract-content { 1348 display: inline; 1349 text-align: justify; 1350} 1351 1352/* ç¡®ä¿"See Less"æé®å¨éå½ä½ç½® */ 1353.abstract-container.expanded .see-more-btn { 1354 position: static; 1355 padding: 0; 1356 background: none; 1357 margin-left: 5px; 1358} 1359 1360/* æ´ç²¾è´çèµæºæé®æ ·å¼ï¼å¹é ç½ç«æ´ä½è²è° */ 1361.resource-btn { 1362 display: inline-block; 1363 padding: 1px 6px; 1364 margin: 2px 2px 2px 0; 1365 border-radius: 4px; 1366 border: 1px solid #B45F4D; /* å忍ç½ç«ä¸ä½è ååçè¤è² */ 1367 color: #B45F4D; 1368 text-decoration: none; 1369 font-size: 0.85em; 1370 transition: all 0.2s ease; 1371 background-color: transparent; 1372 line-height: 1.2; 1373 font-family: inherit; /* 使ç¨ä¸ç½ç«ç¸åçåä½ */ 1374} 1375 1376.resource-btn:hover { 1377 background-color: #B45F4D; 1378 color: white; 1379} 1380 1381/* ç¶ææ ç¾åºç¡æ ·å¼ */ 1382.status-tag { 1383 display: inline-block; 1384 padding: 2px 8px; 1385 border-radius: 3px; 1386 color: white; 1387 font-weight: normal; 1388 font-size: 0.7em; 1389 margin-right: 10px; /* å³ä¾§é´è· */ 1390 margin-bottom: 3px; /* åºé¨é´è·ï¼ç¡®ä¿ä¸ä¸æ¹å 容æéå½é´é */ 1391} 1392 1393/* é¢å°æ¬æ ·å¼ - çº¢è² */ 1394.status-tag.preprint { 1395 background-color: #e74c3c; 1396} 1397 1398/* æä½³è®ºæå¥æ ·å¼ - éè² */ 1399.status-tag.best-paper { 1400 background-color: #f39c12; 1401} 1402 1403/* æä½³è®ºææåæ ·å¼ - èè² */ 1404.status-tag.nomination { 1405 background-color: #3498db; 1406} 1407 1408 1409 1410.resource-btn.bibtex-btn { 1411 border-color: #4a6da7;
1411 /* A different color to distinguish it */ 1412 color: #4a6da7; 1413} 1414 1415.resource-btn.bibtex-btn:hover { 1416 background-color: #4a6da7; 1417 color: white; 1418} 1419 1420.resource-btn.copied { 1421 background-color: #28a745 !important; 1422 color: white !important; 1423 border-color: #28a745 !important; 1424} 1425</style> 1426
1427<script> 1428document.addEventListener('DOMContentLoaded', function() { 1429 window.toggleText = function(element) { 1430 const container = element.closest('.abstract-container'); 1431 if (element.innerText === '... See More') { 1432 element.innerText = 'See Less'; 1433 container.classList.add('expanded'); 1434 } else { 1435 element.innerText = '... See More'; 1436 container.classList.remove('expanded'); 1437 } 1438 } 1439}); 1440</script>
1440 1441 1442
1443<script> 1444 function copyBibtex(button) { 1445 const bibtex = button.getAttribute('data-bibtex'); 1446 navigator.clipboard.writeText(bibtex).then(() => { 1447 // Visual feedback that copy was successful 1448 const originalText = button.textContent; 1449 button.textContent = 'Copied!'; 1450 button.classList.add('copied'); 1451 1452 // Reset button text after 2 seconds 1453 setTimeout(() => { 1454 button.textContent = originalText; 1455 button.classList.remove('copied'); 1456 }, 2000); 1457 }).catch(err => { 1458 console.error('Failed to copy: ', err); 1459 }); 1460 } 1461 </script>
1461 1462 1463 1464 <div class="project" data-filter=""> 1465 <div class="row mb-4"> 1466 <div class="col-sm-4"> 1467 <img width="100%" height="auto" class="w-full rounded-lg" src="assets/img/FPMR.png" /> 1468 </div> 1469 <div class="col-sm-8"> 1470 1471 <b>Feature-Preserving Mesh Repair via Restricted Power Diagram</b> 1472 <br /> 1473 <i><a href="https://s2025.siggraph.org/" target="_blank" rel="noopener">Siggraph 2025</a></i> 1474 <!-- --> 1475 1476 <br /> 1477 1478 1479 <a href=""> 1480 <strong>Huibiao Wen</strong> 1481 </a>, 1482 1483 1484 <a href=""> 1485 Guilong He 1486 </a>, 1487 1488 1489 <a href="https://ruixu.me"> 1490 Rui Xu 1491 </a>, 1492 1493 1494 <a href="https://ieeexplore.ieee.org/author/37088955375"> 1495 Shuangmin Chen 1496 </a>, 1497 1498 1499 <a href="https://irc.cs.sdu.edu.cn/~shiqing/index.html"> 1500 Shiqing Xin<sup>*</sup> 1501 </a>, 1502 1503 1504 <a href="https://nia.nbt.edu.cn/yjdw/zhenyushu.htm"> 1505 Zhenyu Shu 1506 </a>, 1507 1508 1509 <a href="https://www.cs.hku.hk/index.php/people/academic-staff/taku"> 1510 Taku Komura 1511 </a>, 1512 1513 1514 <a href="http://www.cad.zju.edu.cn/home/jqfeng"> 1515 Jieqing Feng 1516 </a>, 1517 1518 1519 <a href="https://engineering.tamu.edu/cse/profiles/Wang-Wenping.html"> 1520 Wenping Wang 1521 </a>, 1522 1523 1524 <a href="https://irc.cs.sdu.edu.cn/~chtu/index.html"> 1525 Changhe Tu 1526 </a> 1527 1528 <br /> 1529 1530 1531 1532 1533 1534 1535 1536 <a href="https://huibiaowen.github.io/feature-preserving-mesh-repair-via-restricted-power-diagram/" target="_blank" rel="noopener" class="resource-btn">Project Page</a> 1537 1538 1539 <!-- <div class="abstract-container"> 1540 <span class="abstract-label"><u><b><i>Abstract</i></b></u>: </span> 1541 <div class="abstract-content"> 1542 <span class="abstract-preview"></span> 1543 <span class="collapse" id=""> 1544 1545 </span> 1546 </div> 1547 <span class="see-more-btn"> 1548 <a href="#" data-toggle="collapse" onclick="toggleText(this)" id="link-">... See More</a> 1549 </span> 1550 </div> --> 1551 </div> 1552 </div> 1553</div> 1554 1555 1556<style>.abstract-container { 1557 position: relative; 1558 max-height: 4.8em; 1559 overflow: hidden; 1560 margin-top: 8px; 1561 line-height: 1.6; 1562 padding-left: 0; 1563 text-align: justify; /* æ´ä¸ªå®¹å¨åºç¨ä¸¤ç«¯å¯¹é½ */ 1564} 1565 1566.abstract-label { 1567 display: inline; 1568 white-space: nowrap; 1569 font-weight: bold; 1570} 1571 1572.abstract-content { 1573 display: inline; /* ä¿æä¸labelå¨åä¸è¡ */ 1574} 1575 1576.abstract-preview, .collapse { 1577 /* ç¡®ä¿é¢è§åå±å¼çå 容é½ä¿æä¸è´ç坹齿¹å¼ */ 1578 text-align: justify; 1579} 1580 1581.see-more-btn { 1582 position: absolute; 1583 bottom: 0; 1584 right: 0; 1585 padding: 0 0 0 10px; 1586 background: linear-gradient(to left, var(--bg-color, white) 70%, transparent); 1587} 1588 1589/* 主é¢ç¸å ³æ ·å¼ */ 1590:root { 1591 --bg-color: white; 1592} 1593 1594.dark-theme .see-more-btn { 1595 --bg-color: #333333; 1596} 1597 1598.abstract-container.expanded { 1599 max-height: none; 1600} 1601 1602.project img { 1603 box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2); 1604 border-radius: 8px; 1605 transition: box-shadow 0.3s ease; 1606 margin-bottom: 5px; 1607} 1608 1609/* ç¡®ä¿å½å®¹å¨å±å¼æ¶ä»ç¶ä¿æä¸¤ç«¯å¯¹é½ */ 1610.abstract-container.expanded .abstract-content { 1611 display: inline; 1612 text-align: justify; 1613} 1614 1615/* ç¡®ä¿"See Less"æé®å¨éå½ä½ç½® */ 1616.abstract-container.expanded .see-more-btn { 1617 position: static; 1618 padding: 0; 1619 background: none; 1620 margin-left: 5px; 1621} 1622 1623/* æ´ç²¾è´çèµæºæé®æ ·å¼ï¼å¹é ç½ç«æ´ä½è²è° */ 1624.resource-btn { 1625 display: inline-block; 1626 padding: 1px 6px; 1627 margin: 2px 2px 2px 0; 1628 border-radius: 4px; 1629 border: 1px solid #B45F4D; /* å忍ç½ç«ä¸ä½è ååçè¤è² */ 1630 color: #B45F4D; 1631 text-decoration: none; 1632 font-size: 0.85em; 1633 transition: all 0.2s ease; 1634 background-color: transparent; 1635 line-height: 1.2; 1636 font-family: inherit; /* 使ç¨ä¸ç½ç«ç¸åçåä½ */ 1637} 1638 1639.resource-btn:hover { 1640 background-color: #B45F4D; 1641 color: white; 1642} 1643 1644/* ç¶ææ ç¾åºç¡æ ·å¼ */ 1645.status-tag { 1646 display: inline-block; 1647 padding: 2px 8px; 1648 border-radius: 3px; 1649 color: white; 1650 font-weight: normal; 1651 font-size: 0.7em; 1652 margin-right: 10px; /* å³ä¾§é´è· */ 1653 margin-bottom: 3px; /* åºé¨é´è·ï¼ç¡®ä¿ä¸ä¸æ¹å 容æéå½é´é */ 1654} 1655 1656/* é¢å°æ¬æ ·å¼ - çº¢è² */ 1657.status-tag.preprint { 1658 background-color: #e74c3c; 1659} 1660 1661/* æä½³è®ºæå¥æ ·å¼ - éè² */ 1662.status-tag.best-paper { 1663 background-color: #f39c12; 1664} 1665 1666/* æä½³è®ºææåæ ·å¼ - èè² */ 1667.status-tag.nomination { 1668 background-color: #3498db; 1669} 1670 1671 1672 1673.resource-btn.bibtex-btn { 1674 border-color: #4a6da7;
1674 /* A different color to distinguish it */ 1675 color: #4a6da7; 1676} 1677 1678.resource-btn.bibtex-btn:hover { 1679 background-color: #4a6da7; 1680 color: white; 1681} 1682 1683.resource-btn.copied { 1684 background-color: #28a745 !important; 1685 color: white !important; 1686 border-color: #28a745 !important; 1687} 1688</style> 1689
1690<script> 1691document.addEventListener('DOMContentLoaded', function() { 1692 window.toggleText = function(element) { 1693 const container = element.closest('.abstract-container'); 1694 if (element.innerText === '... See More') { 1695 element.innerText = 'See Less'; 1696 container.classList.add('expanded'); 1697 } else { 1698 element.innerText = '... See More'; 1699 container.classList.remove('expanded'); 1700 } 1701 } 1702}); 1703</script>
1703 1704 1705
1706<script> 1707 function copyBibtex(button) { 1708 const bibtex = button.getAttribute('data-bibtex'); 1709 navigator.clipboard.writeText(bibtex).then(() => { 1710 // Visual feedback that copy was successful 1711 const originalText = button.textContent; 1712 button.textContent = 'Copied!'; 1713 button.classList.add('copied'); 1714 1715 // Reset button text after 2 seconds 1716 setTimeout(() => { 1717 button.textContent = originalText; 1718 button.classList.remove('copied'); 1719 }, 2000); 1720 }).catch(err => { 1721 console.error('Failed to copy: ', err); 1722 }); 1723 } 1724 </script>
1724 1725 1726 1727 <div class="project" data-filter=""> 1728 <div class="row mb-4"> 1729 <div class="col-sm-4"> 1730 <img width="100%" height="auto" class="w-full rounded-lg" src="assets/img/NeurCross.png" /> 1731 </div> 1732 <div class="col-sm-8"> 1733 1734 <b>NeurCross:A Neural Approach to Computing Cross Fields for Quad Mesh Generation</b> 1735 <br /> 1736 <i><a href="https://s2025.siggraph.org/" target="_blank" rel="noopener">Siggraph 2025</a></i> 1737 <!-- --> 1738 1739 <br /> 1740 1741 1742 <a href="https://qiujiedong.github.io/"> 1743 Qiujie Dong 1744 </a>, 1745 1746 1747 <a href=""> 1748 <strong>Huibiao Wen</strong> 1749 </a>, 1750 1751 1752 <a href="https://ruixu.me"> 1753 Rui Xu 1754 </a>, 1755 1756 1757 <a href="https://ieeexplore.ieee.org/author/37088955375"> 1758 Shuangmin Chen 1759 </a>, 1760 1761 1762 <a href="https://jiaranzhou.github.io/"> 1763 Jiaran Zhou 1764 </a>, 1765 1766 1767 <a href="https://irc.cs.sdu.edu.cn/~shiqing/index.html"> 1768 Shiqing Xin<sup>*</sup> 1769 </a>, 1770 1771 1772 <a href="https://irc.cs.sdu.edu.cn/~chtu/index.html"> 1773 Changhe Tu 1774 </a>, 1775 1776 1777 <a href="https://www.cs.hku.hk/index.php/people/academic-staff/taku"> 1778 Taku Komura 1779 </a>, 1780 1781 1782 <a href="https://engineering.tamu.edu/cse/profiles/Wang-Wenping.html"> 1783 Wenping Wang 1784 </a> 1785 1786 <br /> 1787 1788 1789 1790 1791 1792 1793 1794 <a href="https://qiujiedong.github.io/publications/NeurCross/" target="_blank" rel="noopener" class="resource-btn">Project Page</a> 1795 1796 1797 <!-- <div class="abstract-container"> 1798 <span class="abstract-label"><u><b><i>Abstract</i></b></u>: </span> 1799 <div class="abstract-content"> 1800 <span class="abstract-preview"></span> 1801 <span class="collapse" id=""> 1802 1803 </span> 1804 </div> 1805 <span class="see-more-btn"> 1806 <a href="#" data-toggle="collapse" onclick="toggleText(this)" id="link-">... See More</a> 1807 </span> 1808 </div> --> 1809 </div> 1810 </div> 1811</div> 1812 1813 1814<style>.abstract-container { 1815 position: relative; 1816 max-height: 4.8em; 1817 overflow: hidden; 1818 margin-top: 8px; 1819 line-height: 1.6; 1820 padding-left: 0; 1821 text-align: justify; /* æ´ä¸ªå®¹å¨åºç¨ä¸¤ç«¯å¯¹é½ */ 1822} 1823 1824.abstract-label { 1825 display: inline; 1826 white-space: nowrap; 1827 font-weight: bold; 1828} 1829 1830.abstract-content { 1831 display: inline; /* ä¿æä¸labelå¨åä¸è¡ */ 1832} 1833 1834.abstract-preview, .collapse { 1835 /* ç¡®ä¿é¢è§åå±å¼çå 容é½ä¿æä¸è´ç坹齿¹å¼ */ 1836 text-align: justify; 1837} 1838 1839.see-more-btn { 1840 position: absolute; 1841 bottom: 0; 1842 right: 0; 1843 padding: 0 0 0 10px; 1844 background: linear-gradient(to left, var(--bg-color, white) 70%, transparent); 1845} 1846 1847/* 主é¢ç¸å ³æ ·å¼ */ 1848:root { 1849 --bg-color: white; 1850} 1851 1852.dark-theme .see-more-btn { 1853 --bg-color: #333333; 1854} 1855 1856.abstract-container.expanded { 1857 max-height: none; 1858} 1859 1860.project img { 1861 box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2); 1862 border-radius: 8px; 1863 transition: box-shadow 0.3s ease; 1864 margin-bottom: 5px; 1865} 1866 1867/* ç¡®ä¿å½å®¹å¨å±å¼æ¶ä»ç¶ä¿æä¸¤ç«¯å¯¹é½ */ 1868.abstract-container.expanded .abstract-content { 1869 display: inline; 1870 text-align: justify; 1871} 1872 1873/* ç¡®ä¿"See Less"æé®å¨éå½ä½ç½® */ 1874.abstract-container.expanded .see-more-btn { 1875 position: static; 1876 padding: 0; 1877 background: none; 1878 margin-left: 5px; 1879} 1880 1881/* æ´ç²¾è´çèµæºæé®æ ·å¼ï¼å¹é ç½ç«æ´ä½è²è° */ 1882.resource-btn { 1883 display: inline-block; 1884 padding: 1px 6px; 1885 margin: 2px 2px 2px 0; 1886 border-radius: 4px; 1887 border: 1px solid #B45F4D; /* å忍ç½ç«ä¸ä½è ååçè¤è² */ 1888 color: #B45F4D; 1889 text-decoration: none; 1890 font-size: 0.85em; 1891 transition: all 0.2s ease; 1892 background-color: transparent; 1893 line-height: 1.2; 1894 font-family: inherit; /* 使ç¨ä¸ç½ç«ç¸åçåä½ */ 1895} 1896 1897.resource-btn:hover { 1898 background-color: #B45F4D; 1899 color: white; 1900} 1901 1902/* ç¶ææ ç¾åºç¡æ ·å¼ */ 1903.status-tag { 1904 display: inline-block; 1905 padding: 2px 8px; 1906 border-radius: 3px; 1907 color: white; 1908 font-weight: normal; 1909 font-size: 0.7em; 1910 margin-right: 10px; /* å³ä¾§é´è· */ 1911 margin-bottom: 3px; /* åºé¨é´è·ï¼ç¡®ä¿ä¸ä¸æ¹å 容æéå½é´é */ 1912} 1913 1914/* é¢å°æ¬æ ·å¼ - çº¢è² */ 1915.status-tag.preprint { 1916 background-color: #e74c3c; 1917} 1918 1919/* æä½³è®ºæå¥æ ·å¼ - éè² */ 1920.status-tag.best-paper { 1921 background-color: #f39c12; 1922} 1923 1924/* æä½³è®ºææåæ ·å¼ - èè² */ 1925.status-tag.nomination { 1926 background-color: #3498db; 1927} 1928 1929 1930 1931.resource-btn.bibtex-btn { 1932 border-color: #4a6da7;
1932 /* A different color to distinguish it */ 1933 color: #4a6da7; 1934} 1935 1936.resource-btn.bibtex-btn:hover { 1937 background-color: #4a6da7; 1938 color: white; 1939} 1940 1941.resource-btn.copied { 1942 background-color: #28a745 !important; 1943 color: white !important; 1944 border-color: #28a745 !important; 1945} 1946</style> 1947
1948<script> 1949document.addEventListener('DOMContentLoaded', function() { 1950 window.toggleText = function(element) { 1951 const container = element.closest('.abstract-container'); 1952 if (element.innerText === '... See More') { 1953 element.innerText = 'See Less'; 1954 container.classList.add('expanded'); 1955 } else { 1956 element.innerText = '... See More'; 1957 container.classList.remove('expanded'); 1958 } 1959 } 1960}); 1961</script>
1961 1962 1963
1964<script> 1965 function copyBibtex(button) { 1966 const bibtex = button.getAttribute('data-bibtex'); 1967 navigator.clipboard.writeText(bibtex).then(() => { 1968 // Visual feedback that copy was successful 1969 const originalText = button.textContent; 1970 button.textContent = 'Copied!'; 1971 button.classList.add('copied'); 1972 1973 // Reset button text after 2 seconds 1974 setTimeout(() => { 1975 button.textContent = originalText; 1976 button.classList.remove('copied'); 1977 }, 2000); 1978 }).catch(err => { 1979 console.error('Failed to copy: ', err); 1980 }); 1981 } 1982 </script>
1982 1983 1984 </div> 1985 </div> 1986</div> 1987<!-- Footer section --> 1988 1989<div>â</div> 1990<hr /> 1991 1992<footer class="pt-2 my-md-2 pt-md-"> 1993 <div class="row justify-content-center"> 1994 <div class="col-7 col-md text-left align-self-center"> 1995 <p class="h6">© Huibiao Wen, <span id="currentYear"></span></p> 1996 <a href="https://github.com/mkhangg/academic-website" target="_blank" rel="noopener"><b>> web source @github</b></a> 1997 </div> 1998 <div class="col col-md text-right"> 1999 2000 <img class="mr+4" src="" data-canonical-src="" alt="" width="60" /> 2001 2002 </div> 2003 </div> 2004 <p></p> 2005</footer> 2006 2007 2008 </div> 2009 2010 <!-- Bootstrap core JS--> 2011
2011<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
2011 2012
2012<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
2012 2013
2013<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>
2013 2014
2014<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"></script>
2014 2015 2016 <!-- Isotope JS --> 2017
2017<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/isotope.pkgd.min.js"></script>
2017 2018 2019 <!-- OwlCarousel2 JS --> 2020
2020<script src="https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.3.4/owl.carousel.min.js"></script>
2020 2021 2022 <!-- Axios JS --> 2023
2023<script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>
2023 2024 2025 <!-- Third party plugin JS--> 2026
2026<script src="https://cdnjs.cloudflare.com/ajax/libs/animejs/3.2.1/anime.min.js"></script>
2026 2027 2028 <!-- Core theme JS--> 2029
2029<script src="js/scripts.js"></script>
2029 2030 2031 </body> 2032</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.