Give short answer for this question to revise for the exam
The system of deep and superficial veins of the extremities, their relation to the fascia. Ways of spreading purulent streaks and hematomas in the interfascial cellular spaces of the limbs.
| Feature | Superficial System | Deep System |
|---|---|---|
| Location | Above (superficial to) the deep fascia, in subcutaneous tissue | Below (deep to) the deep fascia, within muscular compartments |
| Function | Drains skin and subcutaneous tissue | Drains muscles and bones; carries the bulk (~85-90%) of venous return |
| Valves | Present, but fewer | More numerous bicuspid valves |
| Named main veins (lower limb) | GSV, SSV | Femoral, popliteal, anterior/posterior tibial, peroneal |
| Named main veins (upper limb) | Cephalic, basilic, median cubital | Brachial, radial, ulnar, axillary |
Skin
└── Subcutaneous fat (superficial veins here)
└── Saphenous fascia (thin layer investing GSV/SSV)
└── Deep fascia (fascia lata / brachial fascia)
└── Intermuscular septa (divide into compartments)
└── Individual muscle fasciae
└── Periosteum
| Structure | Key Anatomical Point |
|---|---|
| GSV | Longest vein; lies in saphenous envelope between saphenous fascia and deep fascia; joins femoral vein at SFJ |
| SSV | Posterior calf; pierces popliteal fascia to join popliteal vein |
| Perforating veins | Pierce deep fascia; valves direct flow superficial → deep |
| Calf muscle pump | Contracts → 200-300 mmHg → drives blood from deep veins centrally |
| Interfascial spaces | Follow neurovascular bundles; no natural barriers |
| Purulent streak spread | Tracks along least resistance: perivascular sheaths, under deep fascia, between muscle compartments |
| Hand abscess | Palmar spaces → lumbrical canals → dorsum; bursae → Parona's space → forearm |
| Plantar abscess | Plantar spaces → deep posterior compartment of leg |
give very short answer with appropriate diagram and generate as small pdf for the following question The system of deep and superficial veins of the extremities, their relation to the fascia. Ways of spreading purulent streaks and hematomas in the interfascial cellular spaces of the limbs.
ls -la /tmp/workspace/ 2>/dev/null || mkdir -p /tmp/workspace && echo "created"
mkdir -p /tmp/workspace/veins-pdf && cat > /tmp/workspace/veins-pdf/generate.py << 'PYEOF' from reportlab.lib.pagesizes import A4 from reportlab.lib import colors from reportlab.lib.units import cm, mm from reportlab.platypus import (SimpleDocTemplate, Paragraph, Spacer, Table, TableStyle, HRFlowable, KeepTogether) from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle from reportlab.lib.enums import TA_CENTER, TA_LEFT, TA_JUSTIFY from reportlab.graphics.shapes import Drawing, Rect, Line, String, Circle, Polygon from reportlab.graphics import renderPDF from reportlab.platypus import Flowable import io # ── colour palette ────────────────────────────────────────────────────────── DARK_BLUE = colors.HexColor('#1a3a5c') MID_BLUE = colors.HexColor('#2e6da4') LIGHT_BLUE = colors.HexColor('#d0e8f8') VEIN_DEEP = colors.HexColor('#1a5276') # dark for deep veins VEIN_SUPER = colors.HexColor('#5dade2') # lighter for superficial FASCIA_COL = colors.HexColor('#f0b27a') # orange-ish fascia line PUS_COL = colors.HexColor('#c0392b') # red for infection spread HEMA_COL = colors.HexColor('#7d3c98') # purple for hematoma SKIN_COL = colors.HexColor('#fde8d8') MUSCLE_COL = colors.HexColor('#f9e4b7') HEADING_BG = colors.HexColor('#1a3a5c') TABLE_HEAD = colors.HexColor('#2e6da4') TABLE_ALT = colors.HexColor('#eaf4fb') # ── document ──────────────────────────────────────────────────────────────── OUTPUT = '/tmp/workspace/veins-pdf/Veins_Fascia_Exam_Notes.pdf' doc = SimpleDocTemplate(OUTPUT, pagesize=A4, leftMargin=1.5*cm, rightMargin=1.5*cm, topMargin=1.5*cm, bottomMargin=1.5*cm) styles = getSampleStyleSheet() def make_style(name, parent='Normal', **kw): s = ParagraphStyle(name, parent=styles[parent], **kw) return s title_s = make_style('MyTitle', fontSize=15, textColor=colors.white, alignment=TA_CENTER, fontName='Helvetica-Bold', spaceAfter=4, leading=18) h1_s = make_style('H1', fontSize=11, textColor=colors.white, fontName='Helvetica-Bold', spaceAfter=2, leading=14, alignment=TA_CENTER) body_s = make_style('Body', fontSize=8.5, leading=12, spaceAfter=3, textColor=colors.HexColor('#1a1a1a')) bullet_s = make_style('Bullet', fontSize=8.2, leading=11.5, leftIndent=10, spaceAfter=2, textColor=colors.HexColor('#1a1a1a'), bulletIndent=3) note_s = make_style('Note', fontSize=7.5, leading=10, textColor=colors.HexColor('#555555'), fontName='Helvetica-Oblique') cap_s = make_style('Cap', fontSize=7.5, alignment=TA_CENTER, textColor=colors.HexColor('#444444'), fontName='Helvetica-Oblique', spaceAfter=4) # ── helper: coloured heading box ──────────────────────────────────────────── def heading_box(text, bg=HEADING_BG): t = Table([[Paragraph(text, h1_s)]], colWidths=[17.5*cm]) t.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,-1), bg), ('ROUNDEDCORNERS', [4, 4, 4, 4]), ('TOPPADDING', (0,0), (-1,-1), 5), ('BOTTOMPADDING', (0,0), (-1,-1), 5), ('LEFTPADDING', (0,0), (-1,-1), 8), ])) return t # ════════════════════════════════════════════════════════════════════════════ # DIAGRAM 1 – Cross-section of limb showing fascial layers + veins # ════════════════════════════════════════════════════════════════════════════ class LimbCrossSectionDiagram(Flowable): def __init__(self, w=480, h=200): super().__init__() self.width = w self.height = h def draw(self): c = self.canv cx, cy = self.width/2, self.height/2 # ── skin (outer ellipse) ── c.setFillColor(SKIN_COL) c.setStrokeColor(colors.HexColor('#c0a090')) c.setLineWidth(2) c.ellipse(cx-220, cy-85, cx+220, cy+85, fill=1) # ── subcutaneous fat layer ── c.setFillColor(colors.HexColor('#fdf3ec')) c.setStrokeColor(colors.transparent) c.ellipse(cx-200, cy-68, cx+200, cy+68, fill=1) # ── deep fascia label line ── c.setStrokeColor(FASCIA_COL) c.setLineWidth(2.5) c.ellipse(cx-185, cy-57, cx+185, cy+57, fill=0) # ── muscle (inner ellipse) ── c.setFillColor(MUSCLE_COL) c.setStrokeColor(colors.HexColor('#d4ac6e')) c.setLineWidth(1) c.ellipse(cx-183, cy-55, cx+183, cy+55, fill=1) # ── bone (central circle) ── c.setFillColor(colors.HexColor('#eae4d8')) c.setStrokeColor(colors.HexColor('#b0a898')) c.setLineWidth(1) c.circle(cx, cy, 28, fill=1) c.setFont('Helvetica-Bold', 7) c.setFillColor(colors.HexColor('#777')) c.drawCentredString(cx, cy-3, 'Bone') # ── deep veins (paired, flanking bone) ── for xoff in [-50, 50]: c.setFillColor(VEIN_DEEP) c.setStrokeColor(colors.HexColor('#0a2a4a')) c.setLineWidth(0.5) c.circle(cx+xoff, cy, 9, fill=1) # labels deep veins c.setFont('Helvetica-Bold', 6.5) c.setFillColor(colors.white) c.drawCentredString(cx-50, cy-2.5, 'DV') c.drawCentredString(cx+50, cy-2.5, 'DV') # ── superficial veins (in subcutaneous layer) ── for (sx, sy) in [(cx-160, cy+30), (cx+160, cy-30), (cx-140, cy-40), (cx+130, cy+40)]: c.setFillColor(VEIN_SUPER) c.setStrokeColor(colors.HexColor('#1a6090')) c.setLineWidth(0.5) c.circle(sx, sy, 7, fill=1) c.setFont('Helvetica', 6) c.setFillColor(colors.HexColor('#1a3a5c')) c.drawCentredString(cx-160, cy+30-2, 'SV') c.drawCentredString(cx+160, cy-30-2, 'SV') # ── perforating vein (dotted line through fascia) ── c.setStrokeColor(colors.HexColor('#e74c3c')) c.setLineWidth(1.2) c.setDash([3, 3]) c.line(cx-160, cy+30, cx-55, cy+8) c.setDash([]) # arrowhead c.setFillColor(colors.HexColor('#e74c3c')) c.setStrokeColor(colors.HexColor('#e74c3c')) c.setLineWidth(0.5) # ── LABELS ── label_data = [ (cx, cy+95, 'Skin', colors.HexColor('#7a5c4a')), (cx+210, cy+10, 'Subcutaneous fat\n(superficial veins here)', colors.HexColor('#5a4030')), (cx+200, cy-45, 'Deep fascia', FASCIA_COL), (cx-205, cy-10, 'Muscle\ncompartment', colors.HexColor('#8a6a20')), (cx-50, cy+62, 'Deep veins (DV)\naccompany arteries', VEIN_DEEP), (cx-165, cy+50, 'Superficial veins\n(SV) above fascia', VEIN_SUPER), (cx-115, cy+18, 'Perforator\n(pierces fascia)', colors.HexColor('#c0392b')), ] for (lx, ly, txt, col) in label_data: c.setFont('Helvetica', 6.2) c.setFillColor(col) for i, line in enumerate(txt.split('\n')): c.drawCentredString(lx, ly - i*8, line) # Title c.setFont('Helvetica-Bold', 8) c.setFillColor(DARK_BLUE) c.drawCentredString(cx, 5, 'Fig 1. Cross-section of a limb: fascial layers and venous systems') # ════════════════════════════════════════════════════════════════════════════ # DIAGRAM 2 – Spread of pus/hematoma in interfascial spaces # ════════════════════════════════════════════════════════════════════════════ class SpreadDiagram(Flowable): def __init__(self, w=480, h=210): super().__init__() self.width = w self.height = h def draw(self): c = self.canv W, H = self.width, self.height # background c.setFillColor(colors.HexColor('#f8f8f8')) c.setStrokeColor(colors.transparent) c.rect(0, 0, W, H, fill=1, stroke=0) def draw_limb_section(ox, oy, label, spread_type, spread_col): """Draw a simplified longitudinal limb section with spread.""" lw, lh = 140, 160 # Outer limb outline (skin) c.setFillColor(SKIN_COL) c.setStrokeColor(colors.HexColor('#c0a090')) c.setLineWidth(1.5) c.roundRect(ox, oy, lw, lh, 18, fill=1) # Deep fascia (inner box) c.setFillColor(MUSCLE_COL) c.setStrokeColor(FASCIA_COL) c.setLineWidth(2) c.roundRect(ox+14, oy+12, lw-28, lh-24, 10, fill=1) # Intermuscular septum (vertical divider) c.setStrokeColor(colors.HexColor('#d4a060')) c.setLineWidth(1.2) cx_local = ox + lw//2 c.line(cx_local, oy+12, cx_local, oy+lh-12) # Deep vein c.setFillColor(VEIN_DEEP) c.setStrokeColor(colors.white) c.setLineWidth(0.5) c.circle(cx_local-18, oy+lh//2, 7, fill=1) # Superficial vein (between skin and fascia) c.setFillColor(VEIN_SUPER) c.setStrokeColor(colors.white) c.circle(ox+8, oy+lh//2+20, 5, fill=1) # SPREAD visualisation c.setFillColor(spread_col) c.setStrokeColor(spread_col) if spread_type == 'contained': # Hematoma contained within compartment c.setFillColor(colors.Color( HEMA_COL.red, HEMA_COL.green, HEMA_COL.blue, alpha=0.45)) c.ellipse(cx_local-35, oy+lh//2-20, cx_local+5, oy+lh//2+20, fill=1, stroke=0) c.setFont('Helvetica', 5.5) c.setFillColor(HEMA_COL) c.drawCentredString(cx_local-15, oy+lh//2-28, 'Hematoma') c.drawCentredString(cx_local-15, oy+lh//2-37, '(contained)') elif spread_type == 'pus_up': # Pus tracking proximally along neurovascular sheath c.setStrokeColor(PUS_COL) c.setLineWidth(3) c.setDash([4, 2]) # track along neurovascular bundle upward c.line(cx_local-18, oy+lh//2, cx_local-18, oy+lh-10) c.setDash([]) # Arrow up c.setFillColor(PUS_COL) c.setLineWidth(0) arrow_x = cx_local-18 arrow_y = oy+lh-5 c.polygon([arrow_x-5, arrow_y-8, arrow_x+5, arrow_y-8, arrow_x, arrow_y], fill=1) c.setFont('Helvetica', 5.5) c.setFillColor(PUS_COL) c.drawCentredString(cx_local-18, oy+lh//2-10, '⬆ Pus tracks') c.drawCentredString(cx_local-18, oy+lh//2-19, 'proximally') elif spread_type == 'pus_cross': # Pus crossing septum (when fascia breaks down) c.setStrokeColor(PUS_COL) c.setLineWidth(2) c.setDash([3, 2]) c.line(cx_local-30, oy+lh//2, cx_local+30, oy+lh//2) c.setDash([]) c.setFont('Helvetica', 5.5) c.setFillColor(PUS_COL) c.drawCentredString(cx_local, oy+lh//2+8, 'Crosses septum') # source blob c.setFillColor(colors.Color(PUS_COL.red, PUS_COL.green, PUS_COL.blue, alpha=0.4)) c.circle(cx_local-30, oy+lh//2, 10, fill=1, stroke=0) # Label c.setFont('Helvetica-Bold', 7) c.setFillColor(DARK_BLUE) c.drawCentredString(ox + lw/2, oy - 10, label) # Draw three panels draw_limb_section(20, 25, 'Hematoma\ncontained by fascia', 'contained', HEMA_COL) draw_limb_section(175, 25, 'Pus tracks along\nneurovascular sheath', 'pus_up', PUS_COL) draw_limb_section(330, 25, 'Pus crosses\nintermuscular septum', 'pus_cross', PUS_COL) # Legend legend_y = 8 items = [ (FASCIA_COL, 'Deep fascia'), (VEIN_DEEP, 'Deep vein'), (VEIN_SUPER, 'Superficial vein'), (HEMA_COL, 'Hematoma'), (PUS_COL, 'Purulent spread'), ] lx = 10 for col, lbl in items: c.setFillColor(col) c.rect(lx, legend_y, 9, 9, fill=1, stroke=0) c.setFont('Helvetica', 6) c.setFillColor(colors.HexColor('#333')) c.drawString(lx+11, legend_y+1.5, lbl) lx += 80 # Caption c.setFont('Helvetica-Bold', 7.5) c.setFillColor(DARK_BLUE) c.drawCentredString(W/2, H-8, 'Fig 2. Mechanisms of spread of purulent streaks and hematomas in interfascial spaces') # ════════════════════════════════════════════════════════════════════════════ # BUILD CONTENT # ════════════════════════════════════════════════════════════════════════════ story = [] # ── TITLE ──────────────────────────────────────────────────────────────────── title_table = Table([[Paragraph( 'Deep & Superficial Veins of the Extremities<br/>Fascial Relations & Spread of Purulent Streaks / Hematomas', title_s)]], colWidths=[17.5*cm]) title_table.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,-1), HEADING_BG), ('TOPPADDING', (0,0), (-1,-1), 8), ('BOTTOMPADDING', (0,0), (-1,-1), 8), ('ROUNDEDCORNERS', [5,5,5,5]), ])) story.append(title_table) story.append(Spacer(1, 6)) # ── SECTION 1: Venous systems ──────────────────────────────────────────────── story.append(heading_box('1. TWO-SYSTEM VENOUS ANATOMY')) story.append(Spacer(1, 4)) sys_data = [ ['Feature', 'Superficial System', 'Deep System'], ['Location', 'Above deep fascia\n(subcutaneous)', 'Below deep fascia\n(in compartments)'], ['% venous return', '~10-15%', '~85-90%'], ['Main veins\n(lower limb)', 'GSV, SSV', 'Femoral, popliteal,\ntibial, peroneal'], ['Main veins\n(upper limb)', 'Cephalic, basilic,\nmedian cubital', 'Brachial, radial,\nulnar, axillary'], ['Connection', 'Perforating veins pierce deep fascia\n(valves: superficial → deep)', ''], ] sys_table = Table(sys_data, colWidths=[4*cm, 6.5*cm, 6.5*cm]) sys_table.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,0), TABLE_HEAD), ('TEXTCOLOR', (0,0), (-1,0), colors.white), ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'), ('FONTSIZE', (0,0), (-1,-1), 8), ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.white, TABLE_ALT]), ('GRID', (0,0), (-1,-1), 0.4, colors.HexColor('#b0c4d8')), ('ALIGN', (0,0), (-1,-1), 'CENTER'), ('VALIGN', (0,0), (-1,-1), 'MIDDLE'), ('TOPPADDING', (0,0), (-1,-1), 4), ('BOTTOMPADDING',(0,0), (-1,-1), 4), ('SPAN', (1,5), (2,5)), ])) story.append(sys_table) story.append(Spacer(1, 5)) # ── DIAGRAM 1 ──────────────────────────────────────────────────────────────── story.append(LimbCrossSectionDiagram(480, 200)) story.append(Spacer(1, 5)) # ── SECTION 2: Key named veins ─────────────────────────────────────────────── story.append(heading_box('2. KEY NAMED VEINS & FASCIAL RELATIONS')) story.append(Spacer(1, 4)) vein_data = [ ['Vein', 'Course', 'Fascial Relation', 'Termination'], ['GSV\n(Great Saphenous)', 'Medial malleolus →\nmedial calf → medial thigh', 'Deep to saphenous fascia,\nsuperficial to deep fascia\n(in saphenous "envelope")', 'Pierces cribriform fascia →\nCommon femoral vein (SFJ)'], ['SSV\n(Small Saphenous)', 'Lateral malleolus →\nposterior midline calf', 'Between heads of\ngastrocnemius;\npierces popliteal fascia', 'Popliteal vein (SPJ)\n(highly variable)'], ['Cephalic vein', 'Radial side of forearm →\nlateral bicipital groove →\ndeltopectoral groove', 'Superficial throughout;\npierces clavipectoral fascia', 'Axillary vein'], ['Basilic vein', 'Medial forearm →\nmedial upper arm', 'Superficial distally;\npierces brachial fascia at mid-arm', 'Joins brachial veins →\nAxillary vein'], ] vein_table = Table(vein_data, colWidths=[3.2*cm, 4.5*cm, 5.0*cm, 4.8*cm]) vein_table.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,0), TABLE_HEAD), ('TEXTCOLOR', (0,0), (-1,0), colors.white), ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'), ('FONTSIZE', (0,0), (-1,-1), 7.5), ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.white, TABLE_ALT]), ('GRID', (0,0), (-1,-1), 0.4, colors.HexColor('#b0c4d8')), ('ALIGN', (0,0), (-1,-1), 'CENTER'), ('VALIGN', (0,0), (-1,-1), 'MIDDLE'), ('TOPPADDING', (0,0), (-1,-1), 4), ('BOTTOMPADDING',(0,0), (-1,-1), 4), ])) story.append(vein_table) story.append(Spacer(1, 5)) # ── SECTION 3: Fascial concept ─────────────────────────────────────────────── story.append(heading_box('3. RELATION TO FASCIA – KEY CONCEPT')) story.append(Spacer(1, 4)) fascia_bullets = [ '<b>Superficial veins</b> lie in the subcutaneous fat <b>above</b> the deep fascia.', '<b>Deep veins</b> run with arteries as venae comitantes <b>within</b> fascial compartments.', '<b>Perforating veins</b> pierce the deep fascia; their valves normally direct flow <i>superficial → deep</i>.', '<b>Saphenous fascia</b>: a distinct thin fascia that invests the GSV/SSV, creating the "saphenous envelope."', '<b>Calf muscle pump</b>: muscle contraction → 200-300 mmHg → drives blood from deep veins toward heart; rapid flow at perforators draws blood from superficial system.', '<b>Venous valve incompetence</b> reverses flow (deep → superficial) → varicose veins, venous hypertension.', ] for b in fascia_bullets: story.append(Paragraph(f'• {b}', bullet_s)) story.append(Spacer(1, 5)) # ── SECTION 4: Interfascial spaces + spread ────────────────────────────────── story.append(heading_box('4. SPREAD OF PURULENT STREAKS & HEMATOMAS')) story.append(Spacer(1, 4)) story.append(Paragraph( '<b>Key principle:</b> Pus and blood follow the path of <b>least resistance</b> ' 'through loose areolar (cellular) tissue in interfascial spaces. ' 'The deep fascia acts as a barrier that <i>confines and channels</i> spread.', body_s)) story.append(Spacer(1, 3)) # ── DIAGRAM 2 ──────────────────────────────────────────────────────────────── story.append(SpreadDiagram(480, 210)) story.append(Spacer(1, 5)) spread_data = [ ['Region', 'Primary Space', 'Spread Pathway', 'Clinical Danger'], ['Thigh\n(anterior)', 'Quadriceps\ncompartment', 'Proximally → iliopsoas space\n→ retroperitoneum', 'Retroperitoneal abscess'], ['Thigh\n(posterior)', 'Hamstring\ncompartment', 'Along sciatic nerve →\ngluteal region → pelvis', 'Pelvic abscess'], ['Calf\n(deep post.)', 'Deep posterior\n(tibialis post., FDL)', 'Along posterior tibial vessels →\npopliteal fossa proximally', 'Ascending cellulitis/abscess'], ['Plantar\n(foot)', 'Plantar\nspaces', 'Via flexor tendons →\ndeep posterior compartment\nof leg (ascending)', 'Leg compartment\ninfection'], ['Hand\n(palm)', 'Midpalmar &\nthenar spaces', 'Lumbrical canals → dorsum;\nRadial/ulnar bursae →\nParona\'s space (forearm)', 'Horseshoe abscess;\nforearm spread'], ['Forearm', 'Parona\'s space\n(flexor comp.)', 'Proximally along flexor\ncompartment → cubital fossa\n→ upper arm', 'Ascending forearm abscess'], ] spread_table = Table(spread_data, colWidths=[2.8*cm, 3.2*cm, 5.8*cm, 5.2*cm]) spread_table.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,0), colors.HexColor('#7d3c98')), ('TEXTCOLOR', (0,0), (-1,0), colors.white), ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'), ('FONTSIZE', (0,0), (-1,-1), 7.5), ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.white, colors.HexColor('#f5eafb')]), ('GRID', (0,0), (-1,-1), 0.4, colors.HexColor('#c0a0d0')), ('ALIGN', (0,0), (-1,-1), 'CENTER'), ('VALIGN', (0,0), (-1,-1), 'MIDDLE'), ('TOPPADDING', (0,0), (-1,-1), 4), ('BOTTOMPADDING',(0,0), (-1,-1), 4), ])) story.append(spread_table) story.append(Spacer(1, 5)) # ── SECTION 5: Quick exam bullets ──────────────────────────────────────────── story.append(heading_box('5. EXAM QUICK-RECALL', bg=colors.HexColor('#1e6e3f'))) story.append(Spacer(1, 4)) qr_data = [ ['Point', 'Key Fact'], ['GSV', 'Longest vein in body; lies in saphenous envelope; joins CFV at SFJ (~2.5 cm below pubic tubercle)'], ['SSV', 'Joins popliteal vein (SPJ); variable termination; pierces popliteal fascia'], ['Perforators', 'Cockett perforators on medial calf; flow: superficial → deep (normal)'], ['Calf pump', '200-300 mmHg on contraction; drives central flow; requires competent valves'], ['Fascial compartments', 'Deep fascia confines spread; intermuscular septa channel it proximally/distally'], ['Horseshoe abscess', 'Radial + ulnar bursae communicate at wrist in 80% → pus from thumb or little finger fills both'], ['Parona\'s space', 'Between FDP and pronator quadratus; receives spread from palmar bursae; gateway to forearm'], ['Psoas sheath', 'Retroperitoneal; conducts spread from spinal/tuberculous abscess to groin/thigh'], ] qr_table = Table(qr_data, colWidths=[4.0*cm, 13.5*cm]) qr_table.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,0), colors.HexColor('#1e6e3f')), ('TEXTCOLOR', (0,0), (-1,0), colors.white), ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'), ('FONTNAME', (0,1), (0,-1), 'Helvetica-Bold'), ('FONTSIZE', (0,0), (-1,-1), 7.5), ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.white, colors.HexColor('#eaf7ef')]), ('GRID', (0,0), (-1,-1), 0.4, colors.HexColor('#70b88a')), ('ALIGN', (0,0), (0,-1), 'CENTER'), ('ALIGN', (1,0), (1,-1), 'LEFT'), ('VALIGN', (0,0), (-1,-1), 'MIDDLE'), ('TOPPADDING', (0,0), (-1,-1), 4), ('BOTTOMPADDING',(0,0), (-1,-1), 4), ('LEFTPADDING', (1,1), (1,-1), 6), ])) story.append(qr_table) story.append(Spacer(1, 4)) story.append(Paragraph( 'Source: Bailey & Love\'s Surgery 28th Ed. | Imaging Anatomy Vol. 3', note_s)) # ── BUILD ──────────────────────────────────────────────────────────────────── doc.build(story) print('PDF generated:', OUTPUT) PYEOF python3 /tmp/workspace/veins-pdf/generate.py
~/veins-pdf/generate.py
Successfully replaced 1 instance(s) of the string in '/tmp/workspace/veins-pdf/generate.py'
python3 /tmp/workspace/veins-pdf/generate.py
| Superficial | Deep | |
|---|---|---|
| Location | Above deep fascia, in subcutaneous fat | Below deep fascia, within compartments |
| Return | ~10-15% | ~85-90% |
| Lower limb | GSV, SSV | Femoral, popliteal, tibial, peroneal |
| Upper limb | Cephalic, basilic | Brachial, radial, ulnar, axillary |
| Region | Pathway |
|---|---|
| Thigh (anterior) | → iliopsoas space → retroperitoneum |
| Calf (deep posterior) | Along posterior tibial vessels → popliteal fossa |
| Plantar foot | Via flexor tendons → deep posterior calf compartment |
| Hand (palm) | Lumbrical canals → dorsum; bursae → Parona's space → forearm |
| Psoas sheath | Conducts spinal abscess down to groin/thigh |
Veins Fascia Exam Notes
PDF Document · PDF