What is the anatomy in paranasal sinus CT images?
paranasal sinus CT anatomy coronal axial landmarks
https://pmc.ncbi.nlm.nih.gov/articles/PMC3698895
| Sinus | Location | Drainage |
|---|---|---|
| Maxillary | Body of maxilla; largest sinus | Maxillary ostium → ethmoid infundibulum → hiatus semilunaris → middle meatus |
| Frontal | Frontal bone above orbits | Frontal recess → superior middle meatus |
| Ethmoid (anterior) | Ethmoid labyrinth, medial to orbit | Middle meatus via ethmoid cell ostia |
| Ethmoid (posterior) | Posterior to basal lamella | Superior meatus via sphenoethmoidal recess |
| Sphenoid | Sphenoid body; most posterior | Sphenoethmoidal recess → superior meatus |

| Structure | Why It Matters |
|---|---|
| Lamina papyracea | Thin bony wall between ethmoid cells and orbit; dehiscence → orbital injury |
| Skull base / cribriform plate | Height asymmetry, low-lying plate = risk of intracranial entry |
| Anterior ethmoidal artery | Identified on coronal CT at skull base; injury causes orbital hematoma |
| Posterior ethmoidal artery | Seen at skull base just anterior to the sphenoid sinus |
| Internal carotid artery | May impinge on/dehisce into the sphenoid sinus; check sphenoid septa |
| Optic nerve | Onodi cells (sphenoethmoidal cells) may surround the optic nerve |
| Keros classification | Depth of olfactory fossa: Type I (1-3 mm), Type II (4-7 mm), Type III (8-16 mm) - Type III = high risk of CSF leak |
| Variant | Description |
|---|---|
| Concha bullosa | Pneumatized middle turbinate (~33%) |
| Paradoxical middle turbinate | Lateral surface convex rather than concave |
| Haller cells | Infraorbital ethmoid cells that may narrow the maxillary sinus ostium |
| Onodi cells | Most posterior ethmoid cells extending laterally/superiorly to the sphenoid; may surround the optic nerve and carotid |
| Agger nasi cell enlargement | Most common; may obstruct the frontal recess |
| Uncinate process variations | Medialized, lateralized, or pneumatized |
| Septal deviation | May narrow OMC and middle meatus |
| Sphenoid sinus agenesis | Rare; recognized on CT by absence of pneumatization |
| CT Plane | Best For |
|---|---|
| Coronal | Osteomeatal complex, infundibulum, uncinate process, turbinates, orbital and skull base relationships |
| Axial | Posterior ethmoid cells, sphenoid sinus ostia, sphenoethmoidal recess, carotid/optic relationships |
| Sagittal | Frontal recess, frontal sinus outflow tract, slope of skull base, anteroposterior diameter of frontal recess |

Can you please give me the visualization thing in CT ima-- with the CT images for anatomy of paranasal sinus?
"cdn.orris.care/cdss_images" in /textbooks/9780323612173








| CT Plane | Best Structures Visualized |
|---|---|
| Coronal | OMC, uncinate process, infundibulum, ethmoid bulla, turbinates, lamina papyracea, cribriform plate height, orbital floor |
| Axial | Sphenoid sinus, posterior ethmoids, sphenoethmoidal recess, carotid/optic relationships, Onodi cells |
| Sagittal | Frontal recess, FSOT hourglass shape, skull base slope, frontoethmoidal cell anatomy |
Create a presentation summarizing paranasal sinus CT anatomy
ls /home/daytona/workspace/ 2>/dev/null && mkdir -p /home/daytona/workspace/pns-…
cd /home/daytona/workspace/pns-ct-anatomy && node /home/daytona/skills/shared/sc…
~/pns-ct-anatomy/build.js
const pptxgen = require("pptxgenjs");
const { execSync } = require("child_process");
// ── Fetch all images ──────────────────────────────────────────────────────────
const imageUrls = [
"https://cdn.orris.care/cdss_images/ca411243aefc4c9ca488b548016840a1422d8bab9dd016fcdbabf7949bed1a9c.png", // Fig38.1 coronal series
"https://cdn.orris.care/cdss_images/07a320dd24823802dd4189dc2c124e246de07eea937a0c24c056fb7f00d46f87.png", // Fig38.2 frontal sinus
"https://cdn.orris.care/cdss_images/345c45bf81b9982ae39c8cc17acf9fb7c8d257b4345d49538d0217c3d85d146c.png", // Fig38.4 frontal recess
"https://cdn.orris.care/cdss_images/0b3570ab8c4696c3c69a413b720f3a6edffd5769be38725455bcd5e7fd04d330.png", // Fig44.1 OMC
"https://cdn.orris.care/cdss_images/98a40c9842d94b1507e30e3753324c18b88d9712c0b5dea5a8983483918ef1eb.png", // Fig44.2 uncinate variants
"https://cdn.orris.care/cdss_images/435ba3e4a13784e05f3b12d0df5092ea6333f80bb619c16e1bfb039b414e77ef.png", // Fig44.9 FSOT diagram
"https://cdn.orris.care/cdss_images/823482d04b9f3f458bd1f31f24a5bda3252a5fd0ab1912297b0ae9c5da931193.png", // Fig44.5 ethmoid cells
];
const imgs = JSON.parse(
execSync(
`node /home/daytona/skills/shared/scripts/fetch_images.js ${imageUrls.map(u => `"${u}"`).join(" ")}`
).toString()
);
// Helpers
const imgData = (idx) => imgs[idx] && !imgs[idx].error ? imgs[idx].base64 : null;
// ── Palette ───────────────────────────────────────────────────────────────────
const DARK_BG = "0A1628"; // deep navy – title/section slides
const MID_BG = "0D2040"; // slightly lighter navy
const LIGHT_BG = "F4F7FC"; // off-white – content slides
const ACCENT1 = "00B4D8"; // cyan blue
const ACCENT2 = "F4A261"; // warm amber
const WHITE = "FFFFFF";
const GRAY_TXT = "334155";
const LABEL_BG = "1A3A5C"; // dark panel for label boxes
// ── Init ──────────────────────────────────────────────────────────────────────
const pres = new pptxgen();
pres.layout = "LAYOUT_16x9";
pres.title = "Paranasal Sinus CT Anatomy";
pres.author = "Orris Medical";
pres.subject = "Radiology / Otolaryngology";
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 1 — Title
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
// Full background
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: DARK_BG } });
// Decorative accent bar
s.addShape(pres.ShapeType.rect, { x: 0, y: 4.7, w: 10, h: 0.07, fill: { color: ACCENT1 } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 4.77, w: 10, h: 0.03, fill: { color: ACCENT2 } });
// Glowing circle accent
s.addShape(pres.ShapeType.ellipse, {
x: 7.5, y: -0.8, w: 4, h: 4,
fill: { type: "solid", color: "0D3060" },
line: { color: ACCENT1, width: 1.5 }
});
s.addShape(pres.ShapeType.ellipse, {
x: 8.2, y: -0.1, w: 2.5, h: 2.5,
fill: { type: "solid", color: "112244" },
line: { color: ACCENT2, width: 1 }
});
// CT scan icon dots
for (let i = 0; i < 5; i++) {
s.addShape(pres.ShapeType.ellipse, {
x: 0.3 + i * 0.3, y: 4.4, w: 0.08, h: 0.08,
fill: { color: ACCENT1 }
});
}
// Specialty tag
s.addShape(pres.ShapeType.rect, {
x: 0.5, y: 0.6, w: 2.8, h: 0.35,
fill: { color: "1A3A5C" },
line: { color: ACCENT1, width: 1 }
});
s.addText("RADIOLOGY · OTOLARYNGOLOGY", {
x: 0.5, y: 0.6, w: 2.8, h: 0.35,
fontSize: 7.5, bold: true, color: ACCENT1,
align: "center", valign: "middle", charSpacing: 2
});
s.addText("Paranasal Sinus", {
x: 0.5, y: 1.15, w: 8.5, h: 1.1,
fontSize: 52, bold: true, color: WHITE,
fontFace: "Calibri", charSpacing: -1
});
s.addText("CT Anatomy", {
x: 0.5, y: 2.1, w: 8.5, h: 0.95,
fontSize: 48, bold: false, color: ACCENT1,
fontFace: "Calibri", charSpacing: -1
});
s.addText("A comprehensive visual guide to the sinuses, osteomeatal complex,\nand key surgical landmarks on computed tomography", {
x: 0.5, y: 3.1, w: 7.5, h: 0.9,
fontSize: 13, color: "8BA8C8", fontFace: "Calibri",
lineSpacingMultiple: 1.3
});
s.addText("Source: Cummings Otolaryngology Head & Neck Surgery · K.J. Lee's Essential Otolaryngology", {
x: 0.5, y: 4.85, w: 9, h: 0.35,
fontSize: 8.5, color: "4A6FA5", italic: true
});
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 2 — Learning Objectives / Outline
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: LIGHT_BG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.72, fill: { color: DARK_BG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0.72, w: 10, h: 0.06, fill: { color: ACCENT1 } });
s.addText("OUTLINE", {
x: 0.4, y: 0.0, w: 9, h: 0.72,
fontSize: 9, bold: true, color: ACCENT1,
charSpacing: 4, valign: "middle"
});
s.addText("What You Will Learn", {
x: 0.4, y: 0.78, w: 9, h: 0.55,
fontSize: 22, bold: true, color: DARK_BG, fontFace: "Calibri"
});
const topics = [
["1", "The Four Paranasal Sinuses", "Maxillary · Frontal · Ethmoid · Sphenoid"],
["2", "CT Imaging Planes & Their Uses", "Coronal · Axial · Sagittal"],
["3", "Lateral Nasal Wall & Turbinates", "Inferior, Middle, Superior; Meati"],
["4", "Osteomeatal Complex (OMC)", "The drainage bottleneck — key on coronal CT"],
["5", "Key Structures (agger nasi, uncinate, bulla)", "Detailed CT anatomy with labeled images"],
["6", "Frontal Sinus Outflow Tract", "Frontal recess, FSOT, hourglass morphology"],
["7", "Ethmoidal Cells & Variants", "Haller cells, Onodi cells, concha bullosa"],
["8", "Surgical Danger Zones", "Skull base, lamina papyracea, carotid, optic nerve"],
];
topics.forEach(([num, title, sub], i) => {
const col = i < 4 ? 0 : 1;
const row = i < 4 ? i : i - 4;
const x = col === 0 ? 0.35 : 5.2;
const y = 1.45 + row * 0.98;
s.addShape(pres.ShapeType.rect, { x, y, w: 4.5, h: 0.82, fill: { color: WHITE }, line: { color: "D0DCE8", width: 0.5 } });
s.addShape(pres.ShapeType.rect, { x, y, w: 0.38, h: 0.82, fill: { color: ACCENT1 } });
s.addText(num, { x, y, w: 0.38, h: 0.82, fontSize: 11, bold: true, color: WHITE, align: "center", valign: "middle" });
s.addText(title, { x: x + 0.46, y: y + 0.06, w: 3.9, h: 0.3, fontSize: 11, bold: true, color: DARK_BG });
s.addText(sub, { x: x + 0.46, y: y + 0.38, w: 3.9, h: 0.3, fontSize: 9, color: "5A7A9A", italic: true });
});
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 3 — The Four Sinuses (overview)
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: LIGHT_BG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.72, fill: { color: DARK_BG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0.72, w: 10, h: 0.06, fill: { color: ACCENT1 } });
s.addText("THE FOUR PARANASAL SINUSES", {
x: 0.4, y: 0.0, w: 9, h: 0.72,
fontSize: 9, bold: true, color: ACCENT1, charSpacing: 3, valign: "middle"
});
s.addText("Anatomy, Location & Drainage Pathways", {
x: 0.35, y: 0.82, w: 9.3, h: 0.5,
fontSize: 20, bold: true, color: DARK_BG, fontFace: "Calibri"
});
const sinuses = [
{
name: "Maxillary Sinus",
color: "1565C0",
accent: "42A5F5",
loc: "Body of the maxilla; largest sinus bilaterally",
drain: "Maxillary ostium → ethmoid infundibulum → hiatus semilunaris → middle meatus",
note: "Most commonly affected in sinusitis; natural ostium on superomedial wall"
},
{
name: "Frontal Sinus",
color: "2E7D32",
accent: "66BB6A",
loc: "Frontal bone above the orbits; paired, often asymmetric",
drain: "Frontal recess → frontal sinus outflow tract → middle meatus (or infundibulum)",
note: "Most complex drainage pathway; absent at birth, pneumatizes by age 6–7"
},
{
name: "Ethmoid Sinuses",
color: "6A1B9A",
accent: "AB47BC",
loc: "Labyrinth of 3–18 air cells medial to the orbits",
drain: "Anterior cells → middle meatus; posterior cells → superior meatus",
note: "Key anatomic divider: basal lamella of middle turbinate separates anterior from posterior"
},
{
name: "Sphenoid Sinus",
color: "BF360C",
accent: "FF7043",
loc: "Body of sphenoid bone; most posterior sinus",
drain: "Ostium (anteromedial wall) → sphenoethmoidal recess → superior meatus",
note: "Intimately related to optic nerve, carotid artery, and cavernous sinus"
}
];
sinuses.forEach((sinus, i) => {
const x = (i % 2) === 0 ? 0.35 : 5.2;
const y = i < 2 ? 1.42 : 3.22;
s.addShape(pres.ShapeType.rect, { x, y, w: 4.45, h: 1.62, fill: { color: WHITE }, line: { color: "D0DCE8", width: 0.5 } });
s.addShape(pres.ShapeType.rect, { x, y, w: 4.45, h: 0.35, fill: { color: sinus.color } });
s.addText(sinus.name.toUpperCase(), {
x: x + 0.12, y, w: 4.2, h: 0.35,
fontSize: 10, bold: true, color: WHITE, valign: "middle", charSpacing: 1
});
s.addText([
{ text: "Location: ", options: { bold: true, color: "334155" } },
{ text: sinus.loc, options: { color: GRAY_TXT } }
], { x: x + 0.12, y: y + 0.38, w: 4.2, h: 0.32, fontSize: 8.5 });
s.addText([
{ text: "Drainage: ", options: { bold: true, color: "334155" } },
{ text: sinus.drain, options: { color: GRAY_TXT } }
], { x: x + 0.12, y: y + 0.7, w: 4.2, h: 0.38, fontSize: 8.5 });
s.addText([
{ text: "★ ", options: { color: sinus.accent, bold: true } },
{ text: sinus.note, options: { color: "5A7A9A", italic: true } }
], { x: x + 0.12, y: y + 1.1, w: 4.2, h: 0.42, fontSize: 8 });
});
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 4 — CT Planes
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: DARK_BG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.3, w: 10, h: 0.325, fill: { color: MID_BG } });
s.addText("CT IMAGING PLANES", {
x: 0.4, y: 0.15, w: 9, h: 0.4,
fontSize: 9, bold: true, color: ACCENT1, charSpacing: 4
});
s.addText("Why All Three Planes Are Essential", {
x: 0.4, y: 0.5, w: 9, h: 0.55,
fontSize: 22, bold: true, color: WHITE, fontFace: "Calibri"
});
const planes = [
{
name: "CORONAL",
color: ACCENT1,
best: "Osteomeatal complex",
structures: [
"Uncinate process & infundibulum",
"Ethmoid bulla & hiatus semilunaris",
"Turbinates (inf., mid., sup.)",
"Lamina papyracea",
"Cribriform plate height (Keros)",
"Orbital floor / Haller cells"
]
},
{
name: "AXIAL",
color: ACCENT2,
best: "Posterior sinuses",
structures: [
"Sphenoid sinus & its ostium",
"Sphenoethmoidal recess",
"Posterior ethmoid cells",
"Onodi cell / optic nerve",
"Internal carotid artery",
"Cavernous sinus relationship"
]
},
{
name: "SAGITTAL",
color: "7EC8E3",
best: "Frontal sinus drainage",
structures: [
"Frontal sinus outflow tract (FSOT)",
"Hourglass of frontal recess",
"Agger nasi cell position",
"Slope of skull base",
"AP diameter of frontal recess",
"Frontoethmoidal cell types"
]
}
];
planes.forEach((plane, i) => {
const x = 0.35 + i * 3.22;
s.addShape(pres.ShapeType.rect, {
x, y: 1.2, w: 3.0, h: 4.0,
fill: { color: "0D2040" },
line: { color: plane.color, width: 1.5 }
});
s.addShape(pres.ShapeType.rect, {
x, y: 1.2, w: 3.0, h: 0.45,
fill: { color: plane.color }
});
s.addText(plane.name, {
x, y: 1.2, w: 3.0, h: 0.45,
fontSize: 13, bold: true, color: DARK_BG,
align: "center", valign: "middle", charSpacing: 3
});
s.addText("Best for:", {
x: x + 0.15, y: 1.72, w: 2.7, h: 0.28,
fontSize: 9, bold: true, color: plane.color, italic: true
});
s.addText(plane.best, {
x: x + 0.15, y: 1.95, w: 2.7, h: 0.32,
fontSize: 11, bold: true, color: WHITE
});
s.addShape(pres.ShapeType.line, {
x: x + 0.15, y: 2.3, w: 2.7, h: 0,
line: { color: plane.color, width: 0.5, dashType: "dash" }
});
plane.structures.forEach((item, j) => {
s.addText([
{ text: "▸ ", options: { color: plane.color, bold: true } },
{ text: item, options: { color: "BDD0E8" } }
], {
x: x + 0.15, y: 2.38 + j * 0.42, w: 2.7, h: 0.38,
fontSize: 9
});
});
});
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 5 — Coronal CT Series (Fig 38.1)
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: "0C1A2E" } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.68, fill: { color: DARK_BG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0.68, w: 10, h: 0.05, fill: { color: ACCENT1 } });
s.addText("CORONAL CT SERIES — ANTERIOR TO POSTERIOR", {
x: 0.4, y: 0.0, w: 9, h: 0.68,
fontSize: 9, bold: true, color: ACCENT1, charSpacing: 3, valign: "middle"
});
// Main image
const img0 = imgData(0);
if (img0) {
s.addImage({ data: img0, x: 0.25, y: 0.82, w: 9.5, h: 3.45 });
}
// Caption box
s.addShape(pres.ShapeType.rect, { x: 0.25, y: 4.32, w: 9.5, h: 1.2, fill: { color: LABEL_BG } });
s.addText([
{ text: "Fig 38.1 ", options: { bold: true, color: ACCENT1 } },
{ text: "Thin-section coronal CT cadaver specimen (A→I, anterior to posterior). ", options: { color: WHITE, bold: true } },
{ text: "Panels A–C: anterior cuts, nasal bones and agger nasi (A). Panel D: frontal sinuses (F) appear. Panels E–F: maxillary sinuses (M) and uncinate process (U) emerge. ", options: { color: "BDD0E8" } },
{ text: "Panels G–I (osteomeatal unit): frontal recess (curved lines), middle meatus (dashed), infundibulum (small arrows), maxillary sinus primary ostium (large arrows), ethmoid bulla (b).", options: { color: "BDD0E8" } },
], {
x: 0.4, y: 4.35, w: 9.2, h: 1.14,
fontSize: 8.5, lineSpacingMultiple: 1.25
});
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 6 — Osteomeatal Complex (OMC) — CT + endoscopy
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: LIGHT_BG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.68, fill: { color: DARK_BG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0.68, w: 10, h: 0.05, fill: { color: ACCENT1 } });
s.addText("OSTEOMEATAL COMPLEX (OMC)", {
x: 0.4, y: 0.0, w: 9, h: 0.68,
fontSize: 9, bold: true, color: ACCENT1, charSpacing: 3, valign: "middle"
});
s.addText("The Drainage Bottleneck of the Anterior Sinuses", {
x: 0.4, y: 0.78, w: 9, h: 0.42,
fontSize: 17, bold: true, color: DARK_BG, fontFace: "Calibri"
});
// Image
const img3 = imgData(3);
if (img3) {
s.addImage({ data: img3, x: 0.25, y: 1.28, w: 5.8, h: 3.6 });
}
// Key points panel
s.addShape(pres.ShapeType.rect, { x: 6.3, y: 1.28, w: 3.45, h: 3.6, fill: { color: WHITE }, line: { color: "D0DCE8", width: 0.5 } });
s.addShape(pres.ShapeType.rect, { x: 6.3, y: 1.28, w: 3.45, h: 0.38, fill: { color: ACCENT1 } });
s.addText("KEY STRUCTURES", {
x: 6.3, y: 1.28, w: 3.45, h: 0.38,
fontSize: 9, bold: true, color: DARK_BG, align: "center", valign: "middle", charSpacing: 2
});
const omcItems = [
["LP", "Lamina papyracea", "Thin bony lateral wall; orbital boundary"],
["BE", "Bulla Ethmoidalis", "Largest anterior ethmoid air cell"],
["U", "Uncinate Process", "Crescent bone shielding maxillary ostium"],
["MT", "Middle Turbinate", "Medial boundary of OMC"],
["HS", "Hiatus Semilunaris", "2D slit → entrance to infundibulum"],
["I", "Infundibulum", "3D funnel: uncinate ↔ lamina papyracea"],
];
omcItems.forEach(([abbr, name, desc], i) => {
const y = 1.72 + i * 0.55;
s.addShape(pres.ShapeType.rect, { x: 6.45, y, w: 0.38, h: 0.38, fill: { color: ACCENT1 } });
s.addText(abbr, { x: 6.45, y, w: 0.38, h: 0.38, fontSize: 8, bold: true, color: DARK_BG, align: "center", valign: "middle" });
s.addText(name, { x: 6.9, y: y + 0.01, w: 2.7, h: 0.2, fontSize: 9, bold: true, color: DARK_BG });
s.addText(desc, { x: 6.9, y: y + 0.2, w: 2.7, h: 0.2, fontSize: 7.5, color: "5A7A9A", italic: true });
});
// Caption
s.addText("Fig 44.1 — Coronal CT (A) with OMC outlined in blue circle; endoscopic views (B, C) showing ball probe passing through hiatus semilunaris into infundibulum. Source: Cummings Otolaryngology", {
x: 0.25, y: 4.98, w: 9.5, h: 0.42,
fontSize: 7.5, color: "5A7A9A", italic: true
});
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 7 — Uncinate Process & Variants
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: LIGHT_BG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.68, fill: { color: DARK_BG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0.68, w: 10, h: 0.05, fill: { color: ACCENT2 } });
s.addText("UNCINATE PROCESS", {
x: 0.4, y: 0.0, w: 9, h: 0.68,
fontSize: 9, bold: true, color: ACCENT2, charSpacing: 3, valign: "middle"
});
s.addText("Superior Attachment Variants — Critical for Frontal Sinus Drainage", {
x: 0.4, y: 0.78, w: 9, h: 0.42,
fontSize: 17, bold: true, color: DARK_BG
});
// Schematic image
const img4 = imgData(4);
if (img4) {
s.addImage({ data: img4, x: 0.3, y: 1.28, w: 9.4, h: 2.6 });
}
// Three variant explanation boxes
const variants = [
{
label: "VARIANT A",
color: ACCENT1,
title: "UP → Lamina Papyracea",
freq: "Most common (~80%)",
effect: "Frontal sinus drains MEDIAL to uncinate → directly into middle meatus"
},
{
label: "VARIANT B",
color: ACCENT2,
title: "UP → Skull Base / Ethmoid Roof",
freq: "Less common (~10%)",
effect: "Frontal sinus drains LATERAL → into the superior infundibulum"
},
{
label: "VARIANT C",
color: "AB47BC",
title: "UP → Middle Turbinate",
freq: "Less common (~10%)",
effect: "Frontal sinus also drains LATERAL → into the superior infundibulum"
}
];
variants.forEach((v, i) => {
const x = 0.3 + i * 3.25;
s.addShape(pres.ShapeType.rect, { x, y: 4.0, w: 3.1, h: 1.42, fill: { color: WHITE }, line: { color: v.color, width: 1.5 } });
s.addShape(pres.ShapeType.rect, { x, y: 4.0, w: 3.1, h: 0.32, fill: { color: v.color } });
s.addText(v.label, { x, y: 4.0, w: 3.1, h: 0.32, fontSize: 9, bold: true, color: WHITE, align: "center", valign: "middle", charSpacing: 2 });
s.addText(v.title, { x: x + 0.1, y: 4.36, w: 2.9, h: 0.3, fontSize: 9, bold: true, color: DARK_BG });
s.addText(v.freq, { x: x + 0.1, y: 4.62, w: 2.9, h: 0.22, fontSize: 8, color: v.color, italic: true, bold: true });
s.addText(v.effect, { x: x + 0.1, y: 4.82, w: 2.9, h: 0.55, fontSize: 8, color: GRAY_TXT });
});
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 8 — Frontal Sinus & Frontal Recess
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: "0C1A2E" } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.68, fill: { color: DARK_BG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0.68, w: 10, h: 0.05, fill: { color: "66BB6A" } });
s.addText("FRONTAL SINUS & FRONTAL RECESS", {
x: 0.4, y: 0.0, w: 9, h: 0.68,
fontSize: 9, bold: true, color: "66BB6A", charSpacing: 3, valign: "middle"
});
// Left: coronal CT of frontal sinuses
const img1 = imgData(1);
if (img1) {
s.addImage({ data: img1, x: 0.25, y: 0.82, w: 4.8, h: 2.7 });
}
s.addShape(pres.ShapeType.rect, { x: 0.25, y: 3.56, w: 4.8, h: 0.32, fill: { color: LABEL_BG } });
s.addText("Fig 38.2 — Coronal CT series: frontal sinuses (F), agger nasi (A), ethmoid bulla (B), concha bullosa (C), frontal recess (arrow)", {
x: 0.3, y: 3.57, w: 4.7, h: 0.3,
fontSize: 7, color: "8BA8C8", italic: true
});
// Right: frontal recess CT
const img2 = imgData(2);
if (img2) {
s.addImage({ data: img2, x: 5.2, y: 0.82, w: 4.55, h: 2.7 });
}
s.addShape(pres.ShapeType.rect, { x: 5.2, y: 3.56, w: 4.55, h: 0.32, fill: { color: LABEL_BG } });
s.addText("Fig 38.4 — Coronal CT + 3D sagittal: frontal recess hourglass (E, F). F = frontal sinus, M = middle meatus, U = uncinate, T = middle turbinate", {
x: 5.25, y: 3.57, w: 4.45, h: 0.3,
fontSize: 7, color: "8BA8C8", italic: true
});
// Bottom key facts
s.addShape(pres.ShapeType.rect, { x: 0.25, y: 3.98, w: 9.5, h: 1.55, fill: { color: "0D2040" }, line: { color: "66BB6A", width: 0.8 } });
const facts = [
["Agger Nasi Cell", "Most anterior ethmoid cell; present in ~98.5%. Its posterior wall forms the anterior boundary of the frontal recess. Enlargement = most common cause of frontal recess obstruction."],
["Frontal Recess", "Narrowest part of FSOT (first \"tight spot\"). Coronal CT shows it as air channel between agger nasi anteriorly and ethmoid bulla posteriorly. Best assessed on sagittal CT."],
["FSOT Shape", "Hourglass: widens in frontal sinus above → narrows at frontal ostium (waist) → widens again in frontal recess → opens into middle meatus. The 3D sagittal CT best demonstrates this."],
];
facts.forEach(([title, text], i) => {
const x = 0.4 + i * 3.22;
s.addText([
{ text: title + "\n", options: { bold: true, color: "66BB6A", breakLine: true } },
{ text: text, options: { color: "BDD0E8" } }
], { x, y: 4.05, w: 3.0, h: 1.4, fontSize: 7.8, lineSpacingMultiple: 1.25 });
if (i < 2) {
s.addShape(pres.ShapeType.line, { x: 0.4 + (i + 1) * 3.22 - 0.1, y: 4.05, w: 0, h: 1.35, line: { color: "66BB6A", width: 0.5, dashType: "dash" } });
}
});
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 9 — Frontal Sinus Outflow Tract diagram
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: LIGHT_BG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.68, fill: { color: DARK_BG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0.68, w: 10, h: 0.05, fill: { color: "66BB6A" } });
s.addText("FRONTAL SINUS OUTFLOW TRACT — ANATOMIC DIAGRAM", {
x: 0.4, y: 0.0, w: 9, h: 0.68,
fontSize: 9, bold: true, color: "66BB6A", charSpacing: 3, valign: "middle"
});
const img5 = imgData(5);
if (img5) {
s.addImage({ data: img5, x: 0.3, y: 0.82, w: 5.0, h: 4.5 });
}
// Right annotation panel
s.addShape(pres.ShapeType.rect, { x: 5.55, y: 0.82, w: 4.2, h: 4.5, fill: { color: WHITE }, line: { color: "D0DCE8", width: 0.5 } });
s.addShape(pres.ShapeType.rect, { x: 5.55, y: 0.82, w: 4.2, h: 0.4, fill: { color: "2E7D32" } });
s.addText("READING THE DIAGRAM", {
x: 5.55, y: 0.82, w: 4.2, h: 0.4,
fontSize: 9, bold: true, color: WHITE, align: "center", valign: "middle", charSpacing: 2
});
const diagramNotes = [
["FS — Frontal Sinus", "The pneumatized space within the frontal bone above the orbit"],
["FSO — Frontal Sinus Ostium", "The waist of the hourglass; narrowest point of the entire outflow tract"],
["FSR — Frontal Sinus Recess", "Inferior portion of the outflow tract (shaded orange in panel A); bounded by ANC anteriorly and BE posteriorly"],
["ANC — Agger Nasi Cell", "Most anterior ethmoid cell; forms the anterior boundary of the frontal recess"],
["NB — Nasal Beak", "Bony spur at the junction of the frontal and ethmoid bones; marks the anteroinferior limit of the frontal recess"],
["BE — Bulla Ethmoidalis", "Posterior boundary of the frontal recess"],
["BL — Bulla Lamella", "Posterior attachment of BE to skull base"],
["SB — Skull Base", "Posterosuperior boundary of the frontal recess"],
];
diagramNotes.forEach(([abbr, desc], i) => {
const y = 1.28 + i * 0.505;
s.addShape(pres.ShapeType.rect, { x: 5.65, y, w: 0.7, h: 0.36, fill: { color: "E8F5E9" }, line: { color: "2E7D32", width: 0.5 } });
s.addText(abbr.split("—")[0].trim(), { x: 5.65, y, w: 0.7, h: 0.36, fontSize: 7, bold: true, color: "2E7D32", align: "center", valign: "middle" });
s.addText(desc, { x: 6.42, y: y + 0.04, w: 3.2, h: 0.36, fontSize: 7.8, color: GRAY_TXT });
});
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 10 — Ethmoidal Cells (Fig 44.5)
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: "0C1A2E" } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.68, fill: { color: DARK_BG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0.68, w: 10, h: 0.05, fill: { color: "AB47BC" } });
s.addText("ETHMOIDAL CELLS — CT WITH ENDOSCOPIC CORRELATION", {
x: 0.4, y: 0.0, w: 9, h: 0.68,
fontSize: 9, bold: true, color: "AB47BC", charSpacing: 2, valign: "middle"
});
const img6 = imgData(6);
if (img6) {
s.addImage({ data: img6, x: 0.25, y: 0.82, w: 9.5, h: 3.5 });
}
// Three column captions
const cellTypes = [
{
label: "A — Agger Nasi Cell (ANC)",
color: ACCENT1,
text: "Most anterior ethmoid cell (98.5%). Located anterior to MT attachment. Large ANC narrows the superior infundibulum and may obstruct the frontal recess. Common cause of iatrogenic frontal sinus obstruction if incompletely removed."
},
{
label: "B — Infraorbital Cell (Haller Cell)",
color: ACCENT2,
text: "Ethmoid cell pneumatizing into the orbital floor above the maxillary ostium. Narrows the inferior infundibulum. Natural maxillary ostium opens at 45° into infundibular floor. Accessory ostia (circular) found in posterior fontanelle."
},
{
label: "C — Onodi Cell (SEC)",
color: "AB47BC",
text: "Posterior ethmoid cell extending LATERAL & SUPERIOR to the sphenoid sinus (which is displaced inferomedially). Critical danger: optic nerve (ON) and internal carotid artery (ICA) lie within its lateral wall → injury risk during FESS."
}
];
cellTypes.forEach((ct, i) => {
const x = 0.25 + i * 3.25;
s.addShape(pres.ShapeType.rect, { x, y: 4.38, w: 3.1, h: 1.2, fill: { color: LABEL_BG }, line: { color: ct.color, width: 1 } });
s.addShape(pres.ShapeType.rect, { x, y: 4.38, w: 3.1, h: 0.3, fill: { color: ct.color } });
s.addText(ct.label, { x: x + 0.08, y: 4.38, w: 3.0, h: 0.3, fontSize: 8.5, bold: true, color: DARK_BG, valign: "middle" });
s.addText(ct.text, { x: x + 0.08, y: 4.7, w: 2.95, h: 0.85, fontSize: 7.5, color: "BDD0E8", lineSpacingMultiple: 1.2 });
});
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 11 — Surgical Danger Zones
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: LIGHT_BG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.68, fill: { color: "BF360C" } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0.68, w: 10, h: 0.05, fill: { color: ACCENT2 } });
s.addText("⚠ SURGICAL DANGER ZONES — PRE-FESS CT CHECKLIST", {
x: 0.4, y: 0.0, w: 9, h: 0.68,
fontSize: 9, bold: true, color: WHITE, charSpacing: 2, valign: "middle"
});
s.addText("Structures That Must Be Identified on CT Before Endoscopic Sinus Surgery", {
x: 0.4, y: 0.78, w: 9, h: 0.4,
fontSize: 16, bold: true, color: DARK_BG
});
const dangers = [
{ structure: "Lamina Papyracea", sinus: "Ethmoid", risk: "Dehiscence → orbital fat herniation, medial rectus injury, blindness", ct: "Coronal", color: "BF360C" },
{ structure: "Skull Base / Cribriform Plate", sinus: "Ethmoid roof", risk: "Penetration → CSF leak, meningitis, intracranial injury. Keros III (deep olfactory fossa) = highest risk", ct: "Coronal", color: "E65100" },
{ structure: "Anterior Ethmoidal Artery", sinus: "Ethmoid", risk: "Transection → retraction into orbit → orbital hematoma → compressive optic neuropathy", ct: "Coronal", color: "F57F17" },
{ structure: "Internal Carotid Artery", sinus: "Sphenoid", risk: "Injury during sphenoid surgery; sphenoid septa may attach directly to carotid canal wall", ct: "Axial", color: "1B5E20" },
{ structure: "Optic Nerve", sinus: "Sphenoid / Onodi cell", risk: "Onodi cells surround the optic canal; injury → permanent visual loss. Seen in ~10–15% of patients", ct: "Axial / Coronal", color: "1A237E" },
{ structure: "Sphenoid Septum Attachments", sinus: "Sphenoid", risk: "Septa may insert directly on the bone over the carotid; fracture = catastrophic hemorrhage", ct: "Axial", color: "4A148C" },
];
dangers.forEach((d, i) => {
const col = i < 3 ? 0 : 1;
const row = i < 3 ? i : i - 3;
const x = col === 0 ? 0.35 : 5.2;
const y = 1.28 + row * 1.38;
s.addShape(pres.ShapeType.rect, { x, y, w: 4.55, h: 1.22, fill: { color: WHITE }, line: { color: d.color, width: 1.5 } });
s.addShape(pres.ShapeType.rect, { x, y, w: 4.55, h: 0.32, fill: { color: d.color } });
s.addText("⚠ " + d.structure, { x: x + 0.1, y, w: 4.35, h: 0.32, fontSize: 9.5, bold: true, color: WHITE, valign: "middle" });
s.addText([
{ text: "Sinus: ", options: { bold: true, color: DARK_BG } },
{ text: d.sinus + " ", options: { color: GRAY_TXT } },
{ text: "Best seen: ", options: { bold: true, color: DARK_BG } },
{ text: d.ct + " CT", options: { color: GRAY_TXT } }
], { x: x + 0.1, y: y + 0.35, w: 4.35, h: 0.25, fontSize: 8 });
s.addText([
{ text: "Risk: ", options: { bold: true, color: d.color } },
{ text: d.risk, options: { color: GRAY_TXT } }
], { x: x + 0.1, y: y + 0.6, w: 4.35, h: 0.56, fontSize: 8, lineSpacingMultiple: 1.2 });
});
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 12 — Anatomic Variants on CT
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: LIGHT_BG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.68, fill: { color: DARK_BG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0.68, w: 10, h: 0.05, fill: { color: ACCENT2 } });
s.addText("ANATOMIC VARIANTS ON CT", {
x: 0.4, y: 0.0, w: 9, h: 0.68,
fontSize: 9, bold: true, color: ACCENT2, charSpacing: 3, valign: "middle"
});
s.addText("Common Variants That Affect Drainage and Surgical Planning", {
x: 0.4, y: 0.78, w: 9, h: 0.42,
fontSize: 17, bold: true, color: DARK_BG
});
const variants = [
{ name: "Concha Bullosa", freq: "~33%", desc: "Pneumatization of the middle turbinate. May narrow the OMC and infundibulum.", impact: "Coronal CT shows air-filled middle turbinate.", color: ACCENT1 },
{ name: "Paradoxical MT", freq: "~5%", desc: "Lateral surface of the middle turbinate is convex instead of concave.", impact: "Narrows the middle meatus; seen on coronal CT.", color: "42A5F5" },
{ name: "Haller Cells", freq: "~20%", desc: "Infraorbital ethmoid cells pneumatizing along the orbital floor above the maxillary ostium.", impact: "Coronal CT: cell at orbital floor bordering maxillary ostium.", color: ACCENT2 },
{ name: "Onodi Cell (SEC)", freq: "10–15%", desc: "Posterior ethmoid cell extending lateral/superior to sphenoid. Contains optic nerve and carotid.", impact: "Axial + coronal CT: posterior cell lateral to sphenoid.", color: "FF7043" },
{ name: "Agger Nasi Enlargement", freq: "~98.5%", desc: "Enlarged agger nasi cell narrows the frontal recess and may obstruct frontal sinus drainage.", impact: "Coronal CT: large cell anterior to middle turbinate.", color: "66BB6A" },
{ name: "Keros Classification", freq: "Varies", desc: "Depth of olfactory fossa: I (1–3 mm), II (4–7 mm), III (8–16 mm). Type III = highest CSF leak risk.", impact: "Coronal CT: measure lateral lamella of cribriform plate.", color: "AB47BC" },
{ name: "Deviated Nasal Septum", freq: "~20–30%", desc: "Significant deviation may narrow the middle meatus and predispose to OMC obstruction.", impact: "Coronal CT: assess contact between septum and turbinate.", color: "78909C" },
{ name: "Sphenoid Septum on Carotid", freq: "~5%", desc: "Sphenoid septum inserts directly on carotid canal wall; fracture = massive hemorrhage.", impact: "Axial CT: trace sphenoid septa carefully to identify this.", color: "EF5350" },
];
variants.forEach((v, i) => {
const col = i % 2 === 0 ? 0 : 1;
const row = Math.floor(i / 2);
const x = col === 0 ? 0.3 : 5.2;
const y = 1.28 + row * 1.05;
s.addShape(pres.ShapeType.rect, { x, y, w: 4.55, h: 0.9, fill: { color: WHITE }, line: { color: "D0DCE8", width: 0.5 } });
s.addShape(pres.ShapeType.rect, { x, y, w: 0.06, h: 0.9, fill: { color: v.color } });
s.addText([
{ text: v.name, options: { bold: true, color: DARK_BG } },
{ text: " (" + v.freq + ")", options: { color: v.color, bold: true } }
], { x: x + 0.16, y: y + 0.05, w: 4.3, h: 0.25, fontSize: 9.5 });
s.addText(v.desc, { x: x + 0.16, y: y + 0.3, w: 4.3, h: 0.3, fontSize: 8, color: GRAY_TXT });
s.addText([
{ text: "CT: ", options: { bold: true, color: v.color } },
{ text: v.impact, options: { color: "5A7A9A" } }
], { x: x + 0.16, y: y + 0.6, w: 4.3, h: 0.25, fontSize: 7.5 });
});
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 13 — Summary Table
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: LIGHT_BG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.68, fill: { color: DARK_BG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0.68, w: 10, h: 0.05, fill: { color: ACCENT1 } });
s.addText("SUMMARY — CT ANATOMY AT A GLANCE", {
x: 0.4, y: 0.0, w: 9, h: 0.68,
fontSize: 9, bold: true, color: ACCENT1, charSpacing: 3, valign: "middle"
});
s.addText("The Three Tight Spots · Drainage Pathways · CT Plane Guide", {
x: 0.4, y: 0.78, w: 9, h: 0.38,
fontSize: 16, bold: true, color: DARK_BG
});
// Three tight spots
s.addShape(pres.ShapeType.rect, { x: 0.3, y: 1.22, w: 9.4, h: 0.32, fill: { color: ACCENT1 } });
s.addText("THE THREE \"TIGHT SPOTS\" FOR MUCOCILIARY CLEARANCE", {
x: 0.3, y: 1.22, w: 9.4, h: 0.32,
fontSize: 9, bold: true, color: DARK_BG, align: "center", valign: "middle", charSpacing: 2
});
const tightSpots = [
{ num: "1", name: "Frontal Recess", color: ACCENT1, desc: "Narrowest part of FSOT. Between agger nasi (anterior) and ethmoid bulla (posterior), inferior to frontal ostium.", plane: "Sagittal + Coronal" },
{ num: "2", name: "Ethmoid Infundibulum", color: ACCENT2, desc: "3D funnel between uncinate process (medial) and lamina papyracea (lateral). Connects maxillary ostium to middle meatus.", plane: "Coronal" },
{ num: "3", name: "Sphenoethmoidal Recess", color: "AB47BC", desc: "Lateral to nasal septum, medial to superior turbinate. Receives sphenoid ostium drainage → superior meatus.", plane: "Axial + Sagittal" },
];
tightSpots.forEach((ts, i) => {
const x = 0.3 + i * 3.18;
s.addShape(pres.ShapeType.rect, { x, y: 1.58, w: 3.08, h: 1.58, fill: { color: WHITE }, line: { color: ts.color, width: 1.5 } });
s.addShape(pres.ShapeType.ellipse, { x: x + 0.05, y: 1.62, w: 0.42, h: 0.42, fill: { color: ts.color } });
s.addText(ts.num, { x: x + 0.05, y: 1.62, w: 0.42, h: 0.42, fontSize: 13, bold: true, color: WHITE, align: "center", valign: "middle" });
s.addText(ts.name, { x: x + 0.55, y: 1.65, w: 2.45, h: 0.35, fontSize: 10.5, bold: true, color: DARK_BG });
s.addText(ts.desc, { x: x + 0.1, y: 2.05, w: 2.9, h: 0.88, fontSize: 8, color: GRAY_TXT, lineSpacingMultiple: 1.2 });
s.addText([
{ text: "Best CT plane: ", options: { bold: true, color: ts.color } },
{ text: ts.plane, options: { color: GRAY_TXT } }
], { x: x + 0.1, y: 2.95, w: 2.9, h: 0.2, fontSize: 7.5 });
});
// Drainage table header
s.addShape(pres.ShapeType.rect, { x: 0.3, y: 3.22, w: 9.4, h: 0.32, fill: { color: DARK_BG } });
s.addText("SINUS DRAINAGE PATHWAYS SUMMARY", {
x: 0.3, y: 3.22, w: 9.4, h: 0.32,
fontSize: 9, bold: true, color: ACCENT1, align: "center", valign: "middle", charSpacing: 2
});
const rows = [
["Frontal", "Frontal recess", "Middle meatus", "Coronal + Sagittal"],
["Maxillary", "Maxillary ostium → infundibulum", "Middle meatus", "Coronal"],
["Anterior Ethmoid", "Cell ostia → infundibulum", "Middle meatus", "Coronal"],
["Posterior Ethmoid", "Cell ostia", "Superior meatus", "Axial + Coronal"],
["Sphenoid", "Sphenoid ostium (anteromedial)", "Sphenoethmoidal recess → superior meatus", "Axial + Sagittal"],
];
const colW = [1.4, 2.5, 2.6, 2.4];
const colX = [0.3, 1.72, 4.24, 6.86];
const headers = ["Sinus", "Drainage Route", "Destination", "Best CT Plane"];
// header row
headers.forEach((h, ci) => {
s.addShape(pres.ShapeType.rect, { x: colX[ci], y: 3.54, w: colW[ci] - 0.04, h: 0.28, fill: { color: "1A3A5C" } });
s.addText(h, { x: colX[ci] + 0.05, y: 3.54, w: colW[ci] - 0.1, h: 0.28, fontSize: 7.5, bold: true, color: WHITE, valign: "middle" });
});
rows.forEach((row, ri) => {
const rowY = 3.82 + ri * 0.32;
const bg = ri % 2 === 0 ? WHITE : "EEF4FB";
row.forEach((cell, ci) => {
s.addShape(pres.ShapeType.rect, { x: colX[ci], y: rowY, w: colW[ci] - 0.04, h: 0.3, fill: { color: bg }, line: { color: "D0DCE8", width: 0.3 } });
s.addText(cell, { x: colX[ci] + 0.06, y: rowY, w: colW[ci] - 0.12, h: 0.3, fontSize: 7.5, color: GRAY_TXT, valign: "middle" });
});
});
}
// ════════════════════════════════════════════════════════════════════════════
// SLIDE 14 — Closing
// ════════════════════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: DARK_BG } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.06, fill: { color: ACCENT1 } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0.06, w: 10, h: 0.03, fill: { color: ACCENT2 } });
// Background accents
s.addShape(pres.ShapeType.ellipse, { x: -1, y: 3.5, w: 4, h: 4, fill: { color: "0D2040" }, line: { color: ACCENT1, width: 1 } });
s.addShape(pres.ShapeType.ellipse, { x: 8, y: -1, w: 3.5, h: 3.5, fill: { color: "0D2040" }, line: { color: ACCENT2, width: 1 } });
s.addText("Key Takeaways", {
x: 0.6, y: 0.6, w: 8.5, h: 0.6,
fontSize: 28, bold: true, color: WHITE, fontFace: "Calibri"
});
s.addShape(pres.ShapeType.line, { x: 0.6, y: 1.25, w: 4.5, h: 0, line: { color: ACCENT1, width: 1.5 } });
const takeaways = [
"CT is the gold standard for PNS evaluation — best for bone detail, OMC, and surgical planning",
"The three tight spots (frontal recess, infundibulum, sphenoethmoidal recess) are the key points to assess",
"The osteomeatal complex is the final common pathway for frontal, maxillary, and anterior ethmoid drainage",
"Always review all three CT planes: coronal (OMC), axial (sphenoid/posterior), sagittal (frontal recess)",
"Identify surgical danger zones before FESS: skull base, lamina papyracea, carotid, optic nerve, Keros type",
"Common variants (concha bullosa, Haller cells, Onodi cells) must be recognized and reported",
];
takeaways.forEach((t, i) => {
s.addText([
{ text: "▸ ", options: { color: ACCENT1, bold: true } },
{ text: t, options: { color: "BDD0E8" } }
], { x: 0.6, y: 1.4 + i * 0.55, w: 8.8, h: 0.5, fontSize: 10.5, lineSpacingMultiple: 1.2 });
});
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.3, w: 10, h: 0.32, fill: { color: "071020" } });
s.addText("Source: Cummings Otolaryngology Head & Neck Surgery (9780323612173) · K.J. Lee's Essential Otolaryngology (9781260122237) · Compiled by Orris Medical", {
x: 0.4, y: 5.32, w: 9.2, h: 0.28,
fontSize: 7, color: "4A6FA5", italic: true
});
}
// ── Write file ────────────────────────────────────────────────────────────────
pres.writeFile({ fileName: "/home/daytona/workspace/pns-ct-anatomy/PNS_CT_Anatomy.pptx" })
.then(() => console.log("✅ Saved: /home/daytona/workspace/pns-ct-anatomy/PNS_CT_Anatomy.pptx"))
.catch(e => { console.error("❌ Error:", e); process.exit(1); });
cd /home/daytona/workspace/pns-ct-anatomy && node build.js 2>&1
cd /home/daytona/workspace/pns-ct-anatomy && mkdir -p imgs && \ curl -s "https…
~/pns-ct-anatomy/build.js
Successfully replaced 1 instance(s) of the string in '/home/daytona/workspace/pns-ct-anatomy/build.js'
cd /home/daytona/workspace/pns-ct-anatomy && node build.js 2>&1
ls -lh /home/daytona/workspace/pns-ct-anatomy/PNS_CT_Anatomy.pptx
PNS CT Anatomy
Presentation · PPTX
| # | Slide | Content |
|---|---|---|
| 1 | Title | Dark navy design with specialty tag and subtitle |
| 2 | Outline | 8 topic cards with numbered index |
| 3 | The Four Sinuses | Maxillary, frontal, ethmoid, sphenoid - location, drainage, clinical notes |
| 4 | CT Planes | Dark slide with 3 columns: Coronal / Axial / Sagittal - what each shows best |
| 5 | Coronal CT Series | Full Fig 38.1 image (A→I cadaveric thin-section coronal CT) with annotated caption |
| 6 | Osteomeatal Complex | Fig 44.1 coronal CT + endoscopy; key structure legend (LP, BE, U, MT, HS, infundibulum) |
| 7 | Uncinate Process Variants | Fig 44.2 schematic; 3 variant boxes (A = LP, B = skull base, C = middle turbinate) |
| 8 | Frontal Sinus & Frontal Recess | Fig 38.2 + Fig 38.4 side by side; 3 key fact panels (agger nasi, frontal recess, FSOT shape) |
| 9 | FSOT Diagram | Fig 44.9 illustration with full annotation of every labeled structure |
| 10 | Ethmoidal Cells | Fig 44.5 CT + endoscopy; 3 columns: ANC, Haller cell, Onodi cell |
| 11 | Surgical Danger Zones | 6 red-coded hazard cards: lamina papyracea, skull base, ethmoidal artery, carotid, optic nerve, sphenoid septum |
| 12 | Anatomic Variants | 8 variant cards with frequency, description, and CT identification |
| 13 | Summary Table | Three tight spots + sinus drainage pathway table |
| 14 | Key Takeaways | Dark closing slide with 6 clinical pearls |
Not able to download
ls -lh /home/daytona/workspace/pns-ct-anatomy/PNS_CT_Anatomy.pptx && file /home/…
cp /home/daytona/workspace/pns-ct-anatomy/PNS_CT_Anatomy.pptx /home/daytona/work…
PNS CT Anatomy
Presentation · PPTX