Skip to content

Commit c4b74bd

Browse files
committed
rebuild
1 parent 603b10c commit c4b74bd

File tree

158 files changed

+32770
-765
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

158 files changed

+32770
-765
lines changed

docs/404.html

Lines changed: 80 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1126,14 +1126,14 @@
11261126

11271127

11281128
<label class="md-nav__link" for="__nav_7_7" id="__nav_7_7_label" tabindex="0">
1129-
Camera View
1129+
Sparse Volume Grid
11301130
<span class="md-nav__icon md-icon"></span>
11311131
</label>
11321132

11331133
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_7_7_label" aria-expanded="false">
11341134
<label class="md-nav__title" for="__nav_7_7">
11351135
<span class="md-nav__icon md-icon"></span>
1136-
Camera View
1136+
Sparse Volume Grid
11371137
</label>
11381138
<ul class="md-nav__list" data-md-scrollfix>
11391139

@@ -1143,14 +1143,42 @@
11431143

11441144

11451145
<li class="md-nav__item">
1146-
<a href="/structures/camera_view/basics/" class="md-nav__link">
1146+
<a href="/structures/sparse_volume_grid/basics/" class="md-nav__link">
11471147
Basics
11481148
</a>
11491149
</li>
11501150

11511151

11521152

11531153

1154+
1155+
1156+
1157+
1158+
1159+
<li class="md-nav__item">
1160+
<a href="/structures/sparse_volume_grid/scalar_quantities/" class="md-nav__link">
1161+
Scalar Quantities
1162+
</a>
1163+
</li>
1164+
1165+
1166+
1167+
1168+
1169+
1170+
1171+
1172+
1173+
<li class="md-nav__item">
1174+
<a href="/structures/sparse_volume_grid/color_quantities/" class="md-nav__link">
1175+
Color Quantities
1176+
</a>
1177+
</li>
1178+
1179+
1180+
1181+
11541182
</ul>
11551183
</nav>
11561184
</li>
@@ -1174,12 +1202,60 @@
11741202

11751203

11761204
<label class="md-nav__link" for="__nav_7_8" id="__nav_7_8_label" tabindex="0">
1177-
Floating Quantities
1205+
Camera View
11781206
<span class="md-nav__icon md-icon"></span>
11791207
</label>
11801208

11811209
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_7_8_label" aria-expanded="false">
11821210
<label class="md-nav__title" for="__nav_7_8">
1211+
<span class="md-nav__icon md-icon"></span>
1212+
Camera View
1213+
</label>
1214+
<ul class="md-nav__list" data-md-scrollfix>
1215+
1216+
1217+
1218+
1219+
1220+
1221+
<li class="md-nav__item">
1222+
<a href="/structures/camera_view/basics/" class="md-nav__link">
1223+
Basics
1224+
</a>
1225+
</li>
1226+
1227+
1228+
1229+
1230+
</ul>
1231+
</nav>
1232+
</li>
1233+
1234+
1235+
1236+
1237+
1238+
1239+
1240+
1241+
1242+
1243+
<li class="md-nav__item md-nav__item--nested">
1244+
1245+
1246+
1247+
1248+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7_9" >
1249+
1250+
1251+
1252+
<label class="md-nav__link" for="__nav_7_9" id="__nav_7_9_label" tabindex="0">
1253+
Floating Quantities
1254+
<span class="md-nav__icon md-icon"></span>
1255+
</label>
1256+
1257+
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_7_9_label" aria-expanded="false">
1258+
<label class="md-nav__title" for="__nav_7_9">
11831259
<span class="md-nav__icon md-icon"></span>
11841260
Floating Quantities
11851261
</label>

docs/FAQ/index.html

Lines changed: 80 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1246,14 +1246,14 @@
12461246

12471247

12481248
<label class="md-nav__link" for="__nav_7_7" id="__nav_7_7_label" tabindex="0">
1249-
Camera View
1249+
Sparse Volume Grid
12501250
<span class="md-nav__icon md-icon"></span>
12511251
</label>
12521252

12531253
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_7_7_label" aria-expanded="false">
12541254
<label class="md-nav__title" for="__nav_7_7">
12551255
<span class="md-nav__icon md-icon"></span>
1256-
Camera View
1256+
Sparse Volume Grid
12571257
</label>
12581258
<ul class="md-nav__list" data-md-scrollfix>
12591259

@@ -1263,14 +1263,42 @@
12631263

12641264

12651265
<li class="md-nav__item">
1266-
<a href="../structures/camera_view/basics/" class="md-nav__link">
1266+
<a href="../structures/sparse_volume_grid/basics/" class="md-nav__link">
12671267
Basics
12681268
</a>
12691269
</li>
12701270

12711271

12721272

12731273

1274+
1275+
1276+
1277+
1278+
1279+
<li class="md-nav__item">
1280+
<a href="../structures/sparse_volume_grid/scalar_quantities/" class="md-nav__link">
1281+
Scalar Quantities
1282+
</a>
1283+
</li>
1284+
1285+
1286+
1287+
1288+
1289+
1290+
1291+
1292+
1293+
<li class="md-nav__item">
1294+
<a href="../structures/sparse_volume_grid/color_quantities/" class="md-nav__link">
1295+
Color Quantities
1296+
</a>
1297+
</li>
1298+
1299+
1300+
1301+
12741302
</ul>
12751303
</nav>
12761304
</li>
@@ -1294,12 +1322,60 @@
12941322

12951323

12961324
<label class="md-nav__link" for="__nav_7_8" id="__nav_7_8_label" tabindex="0">
1297-
Floating Quantities
1325+
Camera View
12981326
<span class="md-nav__icon md-icon"></span>
12991327
</label>
13001328

13011329
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_7_8_label" aria-expanded="false">
13021330
<label class="md-nav__title" for="__nav_7_8">
1331+
<span class="md-nav__icon md-icon"></span>
1332+
Camera View
1333+
</label>
1334+
<ul class="md-nav__list" data-md-scrollfix>
1335+
1336+
1337+
1338+
1339+
1340+
1341+
<li class="md-nav__item">
1342+
<a href="../structures/camera_view/basics/" class="md-nav__link">
1343+
Basics
1344+
</a>
1345+
</li>
1346+
1347+
1348+
1349+
1350+
</ul>
1351+
</nav>
1352+
</li>
1353+
1354+
1355+
1356+
1357+
1358+
1359+
1360+
1361+
1362+
1363+
<li class="md-nav__item md-nav__item--nested">
1364+
1365+
1366+
1367+
1368+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7_9" >
1369+
1370+
1371+
1372+
<label class="md-nav__link" for="__nav_7_9" id="__nav_7_9_label" tabindex="0">
1373+
Floating Quantities
1374+
<span class="md-nav__icon md-icon"></span>
1375+
</label>
1376+
1377+
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_7_9_label" aria-expanded="false">
1378+
<label class="md-nav__title" for="__nav_7_9">
13031379
<span class="md-nav__icon md-icon"></span>
13041380
Floating Quantities
13051381
</label>

docs/about/contributing/index.html

Lines changed: 85 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1204,14 +1204,14 @@
12041204

12051205

12061206
<label class="md-nav__link" for="__nav_7_7" id="__nav_7_7_label" tabindex="0">
1207-
Camera View
1207+
Sparse Volume Grid
12081208
<span class="md-nav__icon md-icon"></span>
12091209
</label>
12101210

12111211
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_7_7_label" aria-expanded="false">
12121212
<label class="md-nav__title" for="__nav_7_7">
12131213
<span class="md-nav__icon md-icon"></span>
1214-
Camera View
1214+
Sparse Volume Grid
12151215
</label>
12161216
<ul class="md-nav__list" data-md-scrollfix>
12171217

@@ -1221,14 +1221,42 @@
12211221

12221222

12231223
<li class="md-nav__item">
1224-
<a href="../../structures/camera_view/basics/" class="md-nav__link">
1224+
<a href="../../structures/sparse_volume_grid/basics/" class="md-nav__link">
12251225
Basics
12261226
</a>
12271227
</li>
12281228

12291229

12301230

12311231

1232+
1233+
1234+
1235+
1236+
1237+
<li class="md-nav__item">
1238+
<a href="../../structures/sparse_volume_grid/scalar_quantities/" class="md-nav__link">
1239+
Scalar Quantities
1240+
</a>
1241+
</li>
1242+
1243+
1244+
1245+
1246+
1247+
1248+
1249+
1250+
1251+
<li class="md-nav__item">
1252+
<a href="../../structures/sparse_volume_grid/color_quantities/" class="md-nav__link">
1253+
Color Quantities
1254+
</a>
1255+
</li>
1256+
1257+
1258+
1259+
12321260
</ul>
12331261
</nav>
12341262
</li>
@@ -1252,12 +1280,60 @@
12521280

12531281

12541282
<label class="md-nav__link" for="__nav_7_8" id="__nav_7_8_label" tabindex="0">
1255-
Floating Quantities
1283+
Camera View
12561284
<span class="md-nav__icon md-icon"></span>
12571285
</label>
12581286

12591287
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_7_8_label" aria-expanded="false">
12601288
<label class="md-nav__title" for="__nav_7_8">
1289+
<span class="md-nav__icon md-icon"></span>
1290+
Camera View
1291+
</label>
1292+
<ul class="md-nav__list" data-md-scrollfix>
1293+
1294+
1295+
1296+
1297+
1298+
1299+
<li class="md-nav__item">
1300+
<a href="../../structures/camera_view/basics/" class="md-nav__link">
1301+
Basics
1302+
</a>
1303+
</li>
1304+
1305+
1306+
1307+
1308+
</ul>
1309+
</nav>
1310+
</li>
1311+
1312+
1313+
1314+
1315+
1316+
1317+
1318+
1319+
1320+
1321+
<li class="md-nav__item md-nav__item--nested">
1322+
1323+
1324+
1325+
1326+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7_9" >
1327+
1328+
1329+
1330+
<label class="md-nav__link" for="__nav_7_9" id="__nav_7_9_label" tabindex="0">
1331+
Floating Quantities
1332+
<span class="md-nav__icon md-icon"></span>
1333+
</label>
1334+
1335+
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_7_9_label" aria-expanded="false">
1336+
<label class="md-nav__title" for="__nav_7_9">
12611337
<span class="md-nav__icon md-icon"></span>
12621338
Floating Quantities
12631339
</label>
@@ -1758,20 +1834,20 @@ <h3 id="documentation">Documentation<a class="headerlink" href="#documentation"
17581834
</code></pre></div>
17591835
<p>If you include these built docs changes in your PR, the webpage will automatically update when it is merged. Otherwise the maintainers (usually @nmwsharp) will need to run this command and commit the update after accepting your PR.</p>
17601836
<h3 id="python-bindings">Python bindings<a class="headerlink" href="#python-bindings" title="Permanent link">&para;</a></h3>
1761-
<p>Python bindings for Polyscope are stored in their own <a href="https://github.com/nmwsharp/polyscope-py">separate repository</a>. We use <a href="https://pybind11.readthedocs.io/">pybind11</a> to generate bindings. These bindings are kept as thin wrappers as much as possible, just doing a minimal translation between the C++ interface and typical Python calling conventions.</p>
1762-
<p>The bindings are actually managed internally as two separate Python packages: <code>polyscope_bindings</code> (which contains the raw bindings generated by our pybind11 code), and the higher-level <code>polyscope</code> (which contains the actual, nice user-facing Python functions). The separation is because there is no way to write additional Python code in the pybind11-generated package, but we often want to do some translation and error checking on the Python side before invoking the bindings. As such, adding a binding generally means writing code in two places:</p>
1837+
<p>Python bindings for Polyscope are stored in their own <a href="https://github.com/nmwsharp/polyscope-py">separate repository</a>. We use <a href="https://nanobind.readthedocs.io/en/latest/index.html">nanobind</a> to generate bindings. These bindings are kept as thin wrappers as much as possible, just doing a minimal translation between the C++ interface and typical Python calling conventions.</p>
1838+
<p>The bindings are actually managed internally as two separate Python packages: <code>polyscope_bindings</code> (which contains the raw bindings generated by our nanobind code), and the higher-level <code>polyscope</code> (which contains the actual, nice user-facing Python functions). The separation is because there is no way to write additional Python code in the nanobind-generated package, but we often want to do some translation and error checking on the Python side before invoking the bindings. As such, adding a binding generally means writing code in two places:</p>
17631839
<ol>
1764-
<li>Add a new pybind11 C++ binding, like those <a href="https://github.com/nmwsharp/polyscope-py/tree/master/src/cpp">here</a></li>
1840+
<li>Add a new nanobind C++ binding, like those <a href="https://github.com/nmwsharp/polyscope-py/tree/master/src/cpp">here</a></li>
17651841
<li>Add a new Python wrapper function which calls the generated binding, like the ones <a href="https://github.com/nmwsharp/polyscope-py/tree/master/src/polyscope">here</a></li>
17661842
</ol>
1767-
<p>Note that a few stylistic conventions between Python and C++. In particular, we do not expose classes for quantities, but set options via optional keyword arguments when the quantity is added. The pybind11 C++ bindings take Eigen arrays as arguments, because pybind11 performs automatic translation between Eigen/numpy.</p>
1843+
<p>Note that a few stylistic conventions between Python and C++. In particular, we do not expose classes for quantities, but set options via optional keyword arguments when the quantity is added. The nanobind C++ bindings take Eigen arrays as arguments, because nanobind performs automatic translation between Eigen/numpy.</p>
17681844
<p>Python binding unit tests are stored in <code>/test/polyscope_test.py</code>. As with C++, these are mainly just simple &ldquo;smoke tests&rdquo; which call the functions with dummy data and ensure no errors are thrown. All new bindings functions need a test! To build and test the bindings, first compile the bindings from the <code>polyscope-py</code> root directory like
17691845
<div class="highlight"><pre><span></span><code>mkdir<span class="w"> </span>build
17701846
<span class="nb">cd</span><span class="w"> </span>build
17711847
cmake<span class="w"> </span>..
17721848
make<span class="w"> </span>-j8
17731849
</code></pre></div>
1774-
the run <code>python polyscope_test.py</code>. As you write code, these bindings must be recompiled to reflect any changes to the pybind11 C++. When testing, make sure there is not another copy of Polyscope for Python installed in your system, which might unintentionally be used instead of the development version! Also, the adjacent <code>demo_app.py</code> can be used for simple testing.</p>
1850+
the run <code>python polyscope_test.py</code>. As you write code, these bindings must be recompiled to reflect any changes to the nanobind C++. When testing, make sure there is not another copy of Polyscope for Python installed in your system, which might unintentionally be used instead of the development version! Also, the adjacent <code>demo_app.py</code> can be used for simple testing.</p>
17751851
<p>Don&rsquo;t forget, the Python bindings have a parallel set of docs in the <code>/py</code> <a href="https://github.com/nmwsharp/polyscope-docs/tree/master/docs/py">directory</a>. Updates to Python should be reflected there.</p>
17761852
<p>When all your tests are passing, create a pull request! As with C++, submitting a pull request to the Python bindings will trigger a cloud build and some automated checks.</p>
17771853
<p>Actually deploying a new Python version to <code>pip</code> and <code>conda</code> package managers is a somewhat significant process, so we typically group together updates before cutting a new version. Ping @nmwsharp to get a new version deployed. Major and minor versions of the Python library are kept in-sync with the C++ library versions, whereas patch versions (<code>1.2.4</code> &ndash;&gt; <code>1.2.5</code>) are used for new updates to the Python bindings only.</p>

0 commit comments

Comments
 (0)