Note
Go to the end to download the full example code.
Read an IGES file#
IGES (.iges / .igs) is one of the older neutral CAD interchange
formats, still common for legacy mechanical hand-offs and
turbomachinery. pyvista_cad.read_iges wraps pyiges and tessellates analytic
surfaces with geomdl.
This example uses a real centrifugal impeller exported from SolidWorks to IGES (MIT, pyiges) and pushes beyond a load+plot demo by computing surface curvature, the kind of analysis turbomachinery engineers routinely run on imported IGES geometry.
import numpy as np
import pyvista as pv
import pyvista_cad
from pyvista_cad.examples import downloads
Load the real impeller. surfaces=True tessellates every analytic
B-spline surface; lines=False drops the construction wires.
iges = pyvista_cad.read_iges(
downloads.iges_impeller_path(),
bsplines=True,
surfaces=True,
lines=False,
)
iges
Converting entities to vtk: 0%| | 0/4615 [00:00<?, ?it/s]
Converting entities to vtk: 0%| | 2/4615 [00:00<06:19, 12.14it/s]
Converting entities to vtk: 0%| | 17/4615 [00:00<01:06, 69.61it/s]
Converting entities to vtk: 1%| | 32/4615 [00:00<00:48, 94.07it/s]
Converting entities to vtk: 1%| | 47/4615 [00:00<00:42, 106.98it/s]
Converting entities to vtk: 1%|▏ | 62/4615 [00:00<00:39, 114.07it/s]
Converting entities to vtk: 2%|▏ | 77/4615 [00:00<00:38, 118.71it/s]
Converting entities to vtk: 2%|▏ | 92/4615 [00:00<00:37, 121.78it/s]
Converting entities to vtk: 2%|▏ | 107/4615 [00:00<00:36, 123.75it/s]
Converting entities to vtk: 3%|▎ | 122/4615 [00:01<00:35, 124.98it/s]
Converting entities to vtk: 3%|▎ | 137/4615 [00:01<00:35, 125.90it/s]
Converting entities to vtk: 3%|▎ | 152/4615 [00:01<00:35, 126.22it/s]
Converting entities to vtk: 9%|▉ | 435/4615 [00:01<00:05, 722.29it/s]
Converting entities to vtk: 11%|█▏ | 520/4615 [00:01<00:06, 676.84it/s]
Converting entities to vtk: 13%|█▎ | 580/4615 [00:01<00:06, 606.49it/s]
Converting entities to vtk: 14%|█▍ | 635/4615 [00:02<00:09, 441.65it/s]
Converting entities to vtk: 15%|█▌ | 693/4615 [00:02<00:08, 449.35it/s]
Converting entities to vtk: 16%|█▌ | 739/4615 [00:02<00:11, 350.61it/s]
Converting entities to vtk: 17%|█▋ | 777/4615 [00:02<00:15, 240.52it/s]
Converting entities to vtk: 17%|█▋ | 807/4615 [00:03<00:26, 142.53it/s]
Converting entities to vtk: 18%|█▊ | 830/4615 [00:03<00:28, 132.46it/s]
Converting entities to vtk: 18%|█▊ | 849/4615 [00:03<00:27, 136.31it/s]
Converting entities to vtk: 19%|█▉ | 867/4615 [00:03<00:26, 139.27it/s]
Converting entities to vtk: 19%|█▉ | 885/4615 [00:04<00:31, 119.04it/s]
Converting entities to vtk: 20%|█▉ | 900/4615 [00:04<00:30, 120.46it/s]
Converting entities to vtk: 20%|█▉ | 914/4615 [00:04<00:30, 120.22it/s]
Converting entities to vtk: 20%|██ | 928/4615 [00:04<00:30, 120.17it/s]
Converting entities to vtk: 20%|██ | 941/4615 [00:04<00:31, 117.88it/s]
Converting entities to vtk: 21%|██ | 954/4615 [00:04<00:31, 116.13it/s]
Converting entities to vtk: 21%|██ | 966/4615 [00:04<00:32, 112.52it/s]
Converting entities to vtk: 21%|██ | 979/4615 [00:04<00:32, 111.42it/s]
Converting entities to vtk: 22%|██▏ | 993/4615 [00:04<00:31, 113.37it/s]
Converting entities to vtk: 22%|██▏ | 1007/4615 [00:05<00:31, 115.26it/s]
Converting entities to vtk: 22%|██▏ | 1024/4615 [00:05<00:28, 123.86it/s]
Converting entities to vtk: 22%|██▏ | 1038/4615 [00:05<00:29, 122.69it/s]
Converting entities to vtk: 23%|██▎ | 1052/4615 [00:05<00:29, 121.66it/s]
Converting entities to vtk: 23%|██▎ | 1066/4615 [00:05<00:29, 120.88it/s]
Converting entities to vtk: 23%|██▎ | 1080/4615 [00:05<00:29, 120.18it/s]
Converting entities to vtk: 24%|██▎ | 1094/4615 [00:05<00:29, 119.80it/s]
Converting entities to vtk: 24%|██▍ | 1108/4615 [00:05<00:29, 119.58it/s]
Converting entities to vtk: 24%|██▍ | 1122/4615 [00:06<00:29, 119.30it/s]
Converting entities to vtk: 25%|██▍ | 1136/4615 [00:06<00:29, 119.13it/s]
Converting entities to vtk: 25%|██▍ | 1150/4615 [00:06<00:54, 63.45it/s]
Converting entities to vtk: 25%|██▌ | 1164/4615 [00:06<00:46, 73.82it/s]
Converting entities to vtk: 26%|██▌ | 1178/4615 [00:06<00:41, 83.16it/s]
Converting entities to vtk: 26%|██▌ | 1192/4615 [00:06<00:37, 91.39it/s]
Converting entities to vtk: 26%|██▌ | 1208/4615 [00:07<00:33, 102.37it/s]
Converting entities to vtk: 27%|██▋ | 1224/4615 [00:07<00:30, 111.16it/s]
Converting entities to vtk: 28%|██▊ | 1288/4615 [00:07<00:14, 223.99it/s]
Converting entities to vtk: 28%|██▊ | 1312/4615 [00:07<00:15, 216.34it/s]
Converting entities to vtk: 29%|██▉ | 1335/4615 [00:07<00:15, 209.22it/s]
Converting entities to vtk: 29%|██▉ | 1357/4615 [00:07<00:19, 165.03it/s]
Converting entities to vtk: 30%|███ | 1400/4615 [00:07<00:18, 178.30it/s]
Converting entities to vtk: 31%|███ | 1419/4615 [00:08<00:18, 173.56it/s]
Converting entities to vtk: 31%|███▏ | 1444/4615 [00:08<00:17, 182.53it/s]
Converting entities to vtk: 32%|███▏ | 1463/4615 [00:08<00:18, 174.67it/s]
Converting entities to vtk: 32%|███▏ | 1483/4615 [00:08<00:18, 170.51it/s]
Converting entities to vtk: 33%|███▎ | 1510/4615 [00:08<00:18, 168.94it/s]
Converting entities to vtk: 33%|███▎ | 1529/4615 [00:08<00:18, 164.92it/s]
Converting entities to vtk: 33%|███▎ | 1546/4615 [00:08<00:19, 158.23it/s]
Converting entities to vtk: 34%|███▍ | 1573/4615 [00:08<00:17, 176.83it/s]
Converting entities to vtk: 34%|███▍ | 1591/4615 [00:09<00:18, 167.48it/s]
Converting entities to vtk: 35%|███▍ | 1612/4615 [00:09<00:18, 166.79it/s]
Converting entities to vtk: 36%|███▌ | 1639/4615 [00:09<00:17, 166.00it/s]
Converting entities to vtk: 36%|███▌ | 1658/4615 [00:09<00:18, 162.13it/s]
Converting entities to vtk: 36%|███▋ | 1675/4615 [00:09<00:18, 156.32it/s]
Converting entities to vtk: 37%|███▋ | 1702/4615 [00:09<00:16, 175.78it/s]
Converting entities to vtk: 37%|███▋ | 1720/4615 [00:09<00:17, 167.14it/s]
Converting entities to vtk: 38%|███▊ | 1741/4615 [00:10<00:17, 166.37it/s]
Converting entities to vtk: 38%|███▊ | 1768/4615 [00:10<00:17, 166.15it/s]
Converting entities to vtk: 39%|███▊ | 1787/4615 [00:10<00:32, 88.24it/s]
Converting entities to vtk: 39%|███▉ | 1801/4615 [00:10<00:30, 93.29it/s]
Converting entities to vtk: 40%|███▉ | 1831/4615 [00:10<00:22, 123.68it/s]
Converting entities to vtk: 40%|████ | 1848/4615 [00:11<00:21, 126.69it/s]
Converting entities to vtk: 41%|████ | 1870/4615 [00:11<00:19, 137.78it/s]
Converting entities to vtk: 41%|████ | 1897/4615 [00:11<00:18, 145.84it/s]
Converting entities to vtk: 42%|████▏ | 1916/4615 [00:11<00:18, 147.57it/s]
Converting entities to vtk: 42%|████▏ | 1932/4615 [00:11<00:18, 143.63it/s]
Converting entities to vtk: 42%|████▏ | 1960/4615 [00:11<00:15, 167.54it/s]
Converting entities to vtk: 43%|████▎ | 1978/4615 [00:11<00:16, 160.85it/s]
Converting entities to vtk: 43%|████▎ | 1999/4615 [00:11<00:16, 162.04it/s]
Converting entities to vtk: 44%|████▍ | 2026/4615 [00:12<00:15, 162.47it/s]
Converting entities to vtk: 44%|████▍ | 2045/4615 [00:12<00:16, 159.98it/s]
Converting entities to vtk: 45%|████▍ | 2062/4615 [00:12<00:16, 154.03it/s]
Converting entities to vtk: 45%|████▌ | 2089/4615 [00:12<00:14, 173.82it/s]
Converting entities to vtk: 46%|████▌ | 2107/4615 [00:12<00:15, 164.98it/s]
Converting entities to vtk: 46%|████▌ | 2128/4615 [00:12<00:15, 164.71it/s]
Converting entities to vtk: 47%|████▋ | 2155/4615 [00:12<00:14, 164.17it/s]
Converting entities to vtk: 47%|████▋ | 2174/4615 [00:13<00:15, 161.13it/s]
Converting entities to vtk: 47%|████▋ | 2191/4615 [00:13<00:15, 155.14it/s]
Converting entities to vtk: 48%|████▊ | 2218/4615 [00:13<00:13, 174.49it/s]
Converting entities to vtk: 48%|████▊ | 2236/4615 [00:13<00:14, 165.60it/s]
Converting entities to vtk: 49%|████▉ | 2257/4615 [00:13<00:14, 165.39it/s]
Converting entities to vtk: 49%|████▉ | 2284/4615 [00:13<00:14, 164.87it/s]
Converting entities to vtk: 50%|████▉ | 2303/4615 [00:13<00:14, 161.05it/s]
Converting entities to vtk: 50%|█████ | 2320/4615 [00:13<00:14, 154.62it/s]
Converting entities to vtk: 51%|█████ | 2347/4615 [00:14<00:23, 95.74it/s]
Converting entities to vtk: 51%|█████ | 2361/4615 [00:14<00:22, 99.16it/s]
Converting entities to vtk: 52%|█████▏ | 2386/4615 [00:14<00:18, 119.08it/s]
Converting entities to vtk: 52%|█████▏ | 2413/4615 [00:14<00:16, 131.81it/s]
Converting entities to vtk: 53%|█████▎ | 2432/4615 [00:14<00:15, 136.60it/s]
Converting entities to vtk: 53%|█████▎ | 2447/4615 [00:15<00:16, 133.67it/s]
Converting entities to vtk: 54%|█████▎ | 2476/4615 [00:15<00:13, 160.75it/s]
Converting entities to vtk: 54%|█████▍ | 2494/4615 [00:15<00:13, 155.97it/s]
Converting entities to vtk: 54%|█████▍ | 2515/4615 [00:15<00:13, 158.14it/s]
Converting entities to vtk: 55%|█████▌ | 2542/4615 [00:15<00:12, 160.01it/s]
Converting entities to vtk: 55%|█████▌ | 2561/4615 [00:15<00:13, 157.69it/s]
Converting entities to vtk: 56%|█████▌ | 2577/4615 [00:15<00:13, 150.52it/s]
Converting entities to vtk: 56%|█████▋ | 2605/4615 [00:15<00:11, 172.82it/s]
Converting entities to vtk: 57%|█████▋ | 2623/4615 [00:16<00:12, 163.69it/s]
Converting entities to vtk: 57%|█████▋ | 2644/4615 [00:16<00:12, 163.58it/s]
Converting entities to vtk: 58%|█████▊ | 2671/4615 [00:16<00:11, 163.68it/s]
Converting entities to vtk: 58%|█████▊ | 2690/4615 [00:16<00:11, 160.48it/s]
Converting entities to vtk: 59%|█████▊ | 2707/4615 [00:16<00:12, 154.64it/s]
Converting entities to vtk: 59%|█████▉ | 2734/4615 [00:16<00:10, 174.01it/s]
Converting entities to vtk: 60%|█████▉ | 2752/4615 [00:16<00:11, 163.63it/s]
Converting entities to vtk: 60%|██████ | 2773/4615 [00:17<00:11, 163.56it/s]
Converting entities to vtk: 61%|██████ | 2800/4615 [00:17<00:11, 162.89it/s]
Converting entities to vtk: 61%|██████ | 2819/4615 [00:17<00:11, 161.37it/s]
Converting entities to vtk: 61%|██████▏ | 2836/4615 [00:17<00:11, 157.20it/s]
Converting entities to vtk: 62%|██████▏ | 2852/4615 [00:17<00:11, 152.56it/s]
Converting entities to vtk: 62%|██████▏ | 2868/4615 [00:17<00:11, 149.04it/s]
Converting entities to vtk: 62%|██████▏ | 2883/4615 [00:17<00:12, 143.70it/s]
Converting entities to vtk: 63%|██████▎ | 2898/4615 [00:18<00:23, 74.59it/s]
Converting entities to vtk: 63%|██████▎ | 2909/4615 [00:18<00:21, 78.74it/s]
Converting entities to vtk: 63%|██████▎ | 2922/4615 [00:18<00:19, 86.32it/s]
Converting entities to vtk: 64%|██████▎ | 2938/4615 [00:18<00:17, 98.31it/s]
Converting entities to vtk: 64%|██████▍ | 2953/4615 [00:18<00:15, 106.77it/s]
Converting entities to vtk: 64%|██████▍ | 2968/4615 [00:18<00:14, 113.31it/s]
Converting entities to vtk: 65%|██████▍ | 2982/4615 [00:18<00:14, 115.93it/s]
Converting entities to vtk: 65%|██████▍ | 2996/4615 [00:19<00:13, 115.88it/s]
Converting entities to vtk: 65%|██████▌ | 3011/4615 [00:19<00:13, 120.35it/s]
Converting entities to vtk: 66%|██████▌ | 3028/4615 [00:19<00:12, 128.42it/s]
Converting entities to vtk: 66%|██████▌ | 3042/4615 [00:19<00:12, 126.80it/s]
Converting entities to vtk: 66%|██████▌ | 3056/4615 [00:19<00:12, 125.35it/s]
Converting entities to vtk: 67%|██████▋ | 3071/4615 [00:19<00:12, 127.31it/s]
Converting entities to vtk: 67%|██████▋ | 3085/4615 [00:19<00:12, 126.02it/s]
Converting entities to vtk: 67%|██████▋ | 3099/4615 [00:19<00:12, 125.19it/s]
Converting entities to vtk: 67%|██████▋ | 3114/4615 [00:19<00:11, 127.67it/s]
Converting entities to vtk: 68%|██████▊ | 3129/4615 [00:20<00:11, 128.79it/s]
Converting entities to vtk: 68%|██████▊ | 3145/4615 [00:20<00:11, 131.39it/s]
Converting entities to vtk: 68%|██████▊ | 3159/4615 [00:20<00:11, 128.86it/s]
Converting entities to vtk: 69%|██████▉ | 3174/4615 [00:20<00:11, 129.48it/s]
Converting entities to vtk: 69%|██████▉ | 3189/4615 [00:20<00:10, 130.30it/s]
Converting entities to vtk: 69%|██████▉ | 3203/4615 [00:20<00:11, 127.85it/s]
Converting entities to vtk: 70%|██████▉ | 3217/4615 [00:20<00:11, 125.70it/s]
Converting entities to vtk: 70%|███████ | 3232/4615 [00:20<00:10, 128.19it/s]
Converting entities to vtk: 70%|███████ | 3246/4615 [00:20<00:10, 126.69it/s]
Converting entities to vtk: 71%|███████ | 3260/4615 [00:21<00:10, 125.37it/s]
Converting entities to vtk: 71%|███████ | 3275/4615 [00:21<00:10, 127.48it/s]
Converting entities to vtk: 71%|███████▏ | 3290/4615 [00:21<00:10, 129.00it/s]
Converting entities to vtk: 72%|███████▏ | 3304/4615 [00:21<00:19, 66.71it/s]
Converting entities to vtk: 72%|███████▏ | 3318/4615 [00:21<00:16, 77.03it/s]
Converting entities to vtk: 72%|███████▏ | 3333/4615 [00:22<00:14, 88.33it/s]
Converting entities to vtk: 73%|███████▎ | 3348/4615 [00:22<00:12, 98.23it/s]
Converting entities to vtk: 73%|███████▎ | 3362/4615 [00:22<00:12, 104.13it/s]
Converting entities to vtk: 73%|███████▎ | 3376/4615 [00:22<00:11, 108.22it/s]
Converting entities to vtk: 73%|███████▎ | 3391/4615 [00:22<00:10, 115.01it/s]
Converting entities to vtk: 74%|███████▍ | 3405/4615 [00:22<00:10, 117.56it/s]
Converting entities to vtk: 74%|███████▍ | 3419/4615 [00:22<00:10, 119.00it/s]
Converting entities to vtk: 74%|███████▍ | 3434/4615 [00:22<00:09, 123.00it/s]
Converting entities to vtk: 75%|███████▍ | 3449/4615 [00:22<00:09, 125.59it/s]
Converting entities to vtk: 75%|███████▌ | 3463/4615 [00:23<00:09, 124.70it/s]
Converting entities to vtk: 75%|███████▌ | 3477/4615 [00:23<00:09, 124.33it/s]
Converting entities to vtk: 76%|███████▌ | 3492/4615 [00:23<00:08, 126.58it/s]
Converting entities to vtk: 76%|███████▌ | 3507/4615 [00:23<00:08, 128.30it/s]
Converting entities to vtk: 76%|███████▋ | 3521/4615 [00:23<00:08, 126.61it/s]
Converting entities to vtk: 77%|███████▋ | 3535/4615 [00:23<00:08, 124.68it/s]
Converting entities to vtk: 77%|███████▋ | 3550/4615 [00:23<00:08, 126.60it/s]
Converting entities to vtk: 77%|███████▋ | 3564/4615 [00:23<00:08, 125.35it/s]
Converting entities to vtk: 78%|███████▊ | 3578/4615 [00:23<00:08, 124.39it/s]
Converting entities to vtk: 78%|███████▊ | 3593/4615 [00:24<00:08, 126.43it/s]
Converting entities to vtk: 78%|███████▊ | 3608/4615 [00:24<00:07, 126.35it/s]
Converting entities to vtk: 78%|███████▊ | 3622/4615 [00:24<00:07, 124.89it/s]
Converting entities to vtk: 79%|███████▉ | 3636/4615 [00:24<00:07, 124.02it/s]
Converting entities to vtk: 79%|███████▉ | 3651/4615 [00:24<00:07, 126.42it/s]
Converting entities to vtk: 79%|███████▉ | 3666/4615 [00:24<00:07, 128.14it/s]
Converting entities to vtk: 80%|███████▉ | 3682/4615 [00:24<00:07, 130.82it/s]
Converting entities to vtk: 80%|████████ | 3696/4615 [00:25<00:13, 66.84it/s]
Converting entities to vtk: 80%|████████ | 3713/4615 [00:25<00:11, 81.58it/s]
Converting entities to vtk: 81%|████████ | 3727/4615 [00:25<00:09, 90.02it/s]
Converting entities to vtk: 81%|████████ | 3741/4615 [00:25<00:08, 97.42it/s]
Converting entities to vtk: 81%|████████▏ | 3756/4615 [00:25<00:08, 105.78it/s]
Converting entities to vtk: 82%|████████▏ | 3771/4615 [00:25<00:07, 112.44it/s]
Converting entities to vtk: 82%|████████▏ | 3785/4615 [00:25<00:07, 114.94it/s]
Converting entities to vtk: 82%|████████▏ | 3799/4615 [00:26<00:06, 116.73it/s]
Converting entities to vtk: 83%|████████▎ | 3814/4615 [00:26<00:06, 120.84it/s]
Converting entities to vtk: 83%|████████▎ | 3829/4615 [00:26<00:06, 123.90it/s]
Converting entities to vtk: 83%|████████▎ | 3843/4615 [00:26<00:06, 122.75it/s]
Converting entities to vtk: 84%|████████▎ | 3857/4615 [00:26<00:06, 121.73it/s]
Converting entities to vtk: 84%|████████▍ | 3872/4615 [00:26<00:05, 124.39it/s]
Converting entities to vtk: 84%|████████▍ | 3886/4615 [00:26<00:05, 123.32it/s]
Converting entities to vtk: 85%|████████▍ | 3902/4615 [00:26<00:05, 127.42it/s]
Converting entities to vtk: 85%|████████▍ | 3917/4615 [00:26<00:05, 128.52it/s]
Converting entities to vtk: 85%|████████▌ | 3932/4615 [00:27<00:05, 128.96it/s]
Converting entities to vtk: 86%|████████▌ | 3946/4615 [00:27<00:05, 126.54it/s]
Converting entities to vtk: 86%|████████▌ | 3960/4615 [00:27<00:05, 125.02it/s]
Converting entities to vtk: 86%|████████▌ | 3975/4615 [00:27<00:05, 126.65it/s]
Converting entities to vtk: 86%|████████▋ | 3990/4615 [00:27<00:04, 127.95it/s]
Converting entities to vtk: 87%|████████▋ | 4004/4615 [00:27<00:04, 125.66it/s]
Converting entities to vtk: 87%|████████▋ | 4018/4615 [00:27<00:04, 123.53it/s]
Converting entities to vtk: 87%|████████▋ | 4033/4615 [00:27<00:04, 125.45it/s]
Converting entities to vtk: 88%|████████▊ | 4047/4615 [00:27<00:04, 123.78it/s]
Converting entities to vtk: 88%|████████▊ | 4061/4615 [00:28<00:04, 122.50it/s]
Converting entities to vtk: 88%|████████▊ | 4076/4615 [00:28<00:04, 124.95it/s]
Converting entities to vtk: 89%|████████▊ | 4091/4615 [00:28<00:04, 126.45it/s]
Converting entities to vtk: 89%|████████▉ | 4107/4615 [00:28<00:03, 128.31it/s]
Converting entities to vtk: 89%|████████▉ | 4121/4615 [00:28<00:07, 66.50it/s]
Converting entities to vtk: 90%|████████▉ | 4136/4615 [00:29<00:06, 76.26it/s]
Converting entities to vtk: 90%|████████▉ | 4151/4615 [00:29<00:05, 85.45it/s]
Converting entities to vtk: 90%|█████████ | 4165/4615 [00:29<00:04, 92.81it/s]
Converting entities to vtk: 91%|█████████ | 4179/4615 [00:29<00:04, 99.04it/s]
Converting entities to vtk: 91%|█████████ | 4194/4615 [00:29<00:03, 106.97it/s]
Converting entities to vtk: 91%|█████████ | 4208/4615 [00:29<00:03, 110.40it/s]
Converting entities to vtk: 91%|█████████▏| 4222/4615 [00:29<00:03, 113.08it/s]
Converting entities to vtk: 92%|█████████▏| 4237/4615 [00:29<00:03, 118.09it/s]
Converting entities to vtk: 92%|█████████▏| 4252/4615 [00:30<00:02, 121.59it/s]
Converting entities to vtk: 92%|█████████▏| 4266/4615 [00:30<00:02, 121.23it/s]
Converting entities to vtk: 93%|█████████▎| 4280/4615 [00:30<00:02, 121.13it/s]
Converting entities to vtk: 93%|█████████▎| 4295/4615 [00:30<00:02, 123.63it/s]
Converting entities to vtk: 93%|█████████▎| 4310/4615 [00:30<00:02, 125.93it/s]
Converting entities to vtk: 94%|█████████▎| 4324/4615 [00:30<00:02, 124.10it/s]
Converting entities to vtk: 94%|█████████▍| 4338/4615 [00:30<00:02, 122.51it/s]
Converting entities to vtk: 94%|█████████▍| 4353/4615 [00:30<00:02, 125.01it/s]
Converting entities to vtk: 95%|█████████▍| 4367/4615 [00:30<00:02, 123.52it/s]
Converting entities to vtk: 95%|█████████▍| 4381/4615 [00:31<00:01, 122.39it/s]
Converting entities to vtk: 95%|█████████▌| 4396/4615 [00:31<00:01, 124.51it/s]
Converting entities to vtk: 96%|█████████▌| 4411/4615 [00:31<00:01, 126.48it/s]
Converting entities to vtk: 96%|█████████▌| 4425/4615 [00:31<00:01, 124.97it/s]
Converting entities to vtk: 96%|█████████▌| 4439/4615 [00:31<00:01, 120.39it/s]
Converting entities to vtk: 97%|█████████▋| 4454/4615 [00:31<00:01, 123.22it/s]
Converting entities to vtk: 97%|█████████▋| 4469/4615 [00:31<00:01, 125.63it/s]
Converting entities to vtk: 97%|█████████▋| 4483/4615 [00:31<00:01, 124.31it/s]
Converting entities to vtk: 97%|█████████▋| 4497/4615 [00:31<00:00, 122.66it/s]
Converting entities to vtk: 98%|█████████▊| 4512/4615 [00:32<00:01, 65.54it/s]
Converting entities to vtk: 98%|█████████▊| 4526/4615 [00:32<00:01, 75.60it/s]
Converting entities to vtk: 98%|█████████▊| 4540/4615 [00:32<00:00, 84.59it/s]
Converting entities to vtk: 99%|█████████▊| 4555/4615 [00:32<00:00, 94.71it/s]
Converting entities to vtk: 99%|█████████▉| 4570/4615 [00:32<00:00, 103.49it/s]
Converting entities to vtk: 100%|██████████| 4615/4615 [00:32<00:00, 140.16it/s]
Compute mean curvature on the impeller surface. Mean curvature highlights the convex blade ridges and concave hub fillets: the regions a CFD or stress engineer wants to refine first. (Gaussian curvature on a near-developable blade is ~0 almost everywhere and washes out; mean curvature reads far better.)
surface = iges.extract_surface().compute_normals()
surface['mean_curvature'] = surface.curvature(curv_type='mean')
surface
/home/runner/work/pyvista-cad/pyvista-cad/examples/01_readers/read_iges.py:44: PyVistaFutureWarning: The default value of `algorithm` for the filter
`PolyData.extract_surface` will change in the future. It currently defaults to
`'dataset_surface'`, but will change to `None`. Explicitly set the `algorithm` keyword to
silence this warning.
surface = iges.extract_surface().compute_normals()
Render with a diverging colormap centred on zero so flat regions sit
mid-scale and ridges / valleys pop. Symmetric, robust clim from
the 90th percentile of the absolute curvature keeps a few extreme
outliers from flattening the contrast.

Total running time of the script: (0 minutes 38.776 seconds)