modelo 3d citologia

This commit is contained in:
Rodrigo Bertoldo de Sousa Martins committed 2026-09-11 15:29:03 -03:00
1 parent 65a4fdea9e
commit 369638bf98
15 files changed
+308 -56

No files matched your search

@@ -5,9 +5,9 @@ import { MICROSCOPY_CREDITS } from "../data/microscopyCredits.js";
import type { Structure } from "../lib/api.js";
// Generalização do SkinDiagram.tsx pra sistemas sem malha 3D que precisam
// de MAIS de uma imagem (citologia/histologia têm uma fotomicrografia real
// por célula/tecido, ao contrário do tegumentar, que é uma imagem só) — ver
// a decisão de usar fotos reais em vez de geometria procedural em
// de MAIS de uma imagem (histologia tem uma fotomicrografia real por
// tecido, ao contrário do tegumentar, que é uma imagem só) — ver a decisão
// de usar fotos reais em vez de geometria procedural em
// data-pipeline/seed/build-manifest-microscopy.mjs.
export function MicroscopyDiagram({
bySlug,
+3 -2
View File
@@ -8,8 +8,9 @@ import type { Structure } from "../../lib/api.js";
// Sistemas apresentados como diagrama 2D (fotomicrografia real com
// hotspots) em vez de malha 3D — ver SkinDiagram.tsx e
// MicroscopyDiagram.tsx.
const NON_3D_SYSTEMS = new Set(["tegumentar", "citologia", "histologia"]);
// MicroscopyDiagram.tsx. Citologia usa malha 3D real (ver
// build-manifest-cell.mjs), então não entra aqui.
const NON_3D_SYSTEMS = new Set(["tegumentar", "histologia"]);
// Normais de referência em anatomia: sagital separa esq./dir., coronal
// (= frontal) separa ant./post., transversal separa sup./inf.
-2
View File
@@ -4,8 +4,6 @@
// completa (com link de origem) em
// data-pipeline/seed/build-manifest-microscopy.mjs.
export const MICROSCOPY_CREDITS: Record<string, string> = {
"/citologia/nucleo-celular-met.png":
"Micrografia eletrônica de transmissão real. Domínio público (Wikimedia Commons).",
"/histologia/epitelio-simples-colunar.jpg":
"Mucosa gástrica normal, H&E. Nephron, CC BY-SA 3.0 (Wikimedia Commons).",
"/histologia/epitelio-estratificado-pavimentoso.jpg":
+6 -11
View File
@@ -1,16 +1,11 @@
// Posição (em % da largura/altura de CADA imagem) de cada marcador
// clicável dos sistemas "citologia" e "histologia" — mesmo esquema do
// tegumentar (ver skinHotspots.ts), mas aqui um sistema pode ter VÁRIAS
// imagens (uma por lâmina/tecido), então a imagem de cada estrutura é o
// próprio structure.modelFile (ver data-pipeline/seed/build-manifest-microscopy.mjs)
// — este arquivo só guarda x/y dentro daquela imagem.
// clicável do sistema "histologia" — mesmo esquema do tegumentar (ver
// skinHotspots.ts), mas aqui o sistema tem VÁRIAS imagens (uma por lâmina/
// tecido), então a imagem de cada estrutura é o próprio structure.modelFile
// (ver data-pipeline/seed/build-manifest-microscopy.mjs) — este arquivo só
// guarda x/y dentro daquela imagem. Citologia (a célula) não usa mais isso
// — virou um modelo 3D real, ver build-manifest-cell.mjs.
export const MICROSCOPY_HOTSPOTS: Record<string, { x: number; y: number }> = {
// Citologia — /citologia/nucleo-celular-met.png
"nucleo-citologia": { x: 46, y: 52 },
"envoltorio-nuclear": { x: 70, y: 48 },
cromatina: { x: 42, y: 60 },
"citoplasma-citologia": { x: 14, y: 18 },
// Histologia — /histologia/epitelio-simples-colunar.jpg
"epitelio-superficie-gastrico": { x: 28, y: 9 },
"fovéola-gastrica": { x: 47, y: 16 },
-1
View File
@@ -73,7 +73,6 @@ export default function AtlasPage() {
<Scene bySlug={bySlug} />
<QuickRegionNav />
<SkinDiagram bySlug={bySlug} />
<MicroscopyDiagram bySlug={bySlug} systemSlug="citologia" title="Citologia (A Célula)" />
<MicroscopyDiagram bySlug={bySlug} systemSlug="histologia" title="Histologia (Tecidos)" />
<button