removi um negocio e adicionei membrana plasmatica
Signed-off-by: Rodrigo Bertoldo de Sousa Martins <rodrigo@martinsevieira.adv.br>
This commit is contained in:
1 parent
64793922af
commit
2024656074
2 files changed
+32
-11
No files matched your search
@@ -212,17 +212,30 @@ export function CellDiagram3D({ bySlug: bySlugAll }: { bySlug: Map<string, Struc
|
|||||||
)}
|
)}
|
||||||
</Organelle>
|
</Organelle>
|
||||||
|
|
||||||
{/* Membrana plasmática — envoltório translúcido por fora de tudo.
|
{/* Membrana plasmática — um RECORTE da casca (não a esfera
|
||||||
Sem raycast: sendo a casca que ENVOLVE todas as outras
|
inteira) num canto de trás, tipo uma "janela" mostrando
|
||||||
organelas, ela sempre seria o primeiro acerto de qualquer
|
onde ela fica. Uma esfera fechada ao redor de tudo (como
|
||||||
raio de clique, escondendo as organelas de dentro atrás
|
era antes) sempre seria o primeiro acerto de qualquer
|
||||||
dela (o problema que aconteceu com a malha real de FIB-SEM).
|
clique e tampava as organelas de dentro (o mesmo problema
|
||||||
Puramente decorativa aqui; ainda dá pra abrir a descrição
|
que aconteceu com a malha real de FIB-SEM) — esse recorte
|
||||||
dela pela busca. */}
|
deixa ela clicável/selecionável feito as outras organelas,
|
||||||
<mesh raycast={() => null}>
|
sem cobrir o resto da célula. */}
|
||||||
<sphereGeometry args={[0.85, 32, 32]} />
|
<Organelle slug="celula-membrana-plasmatica" bySlug={bySlug} onSelect={selectStructure}>
|
||||||
<meshStandardMaterial color="#93c5fd" transparent opacity={0.12} side={THREE.DoubleSide} depthWrite={false} />
|
{(sel) => (
|
||||||
|
<mesh rotation={[0.3, 2.6, 0]}>
|
||||||
|
<sphereGeometry args={[0.85, 24, 24, 0, Math.PI * 0.75, 0, Math.PI * 0.65]} />
|
||||||
|
<meshStandardMaterial
|
||||||
|
color="#93c5fd"
|
||||||
|
transparent
|
||||||
|
opacity={sel ? 0.4 : 0.22}
|
||||||
|
side={THREE.DoubleSide}
|
||||||
|
depthWrite={false}
|
||||||
|
emissive={sel ? HIGHLIGHT : BLACK}
|
||||||
|
emissiveIntensity={sel ? 0.5 : 0}
|
||||||
|
/>
|
||||||
</mesh>
|
</mesh>
|
||||||
|
)}
|
||||||
|
</Organelle>
|
||||||
|
|
||||||
<CameraControls makeDefault minDistance={0.5} maxDistance={6} />
|
<CameraControls makeDefault minDistance={0.5} maxDistance={6} />
|
||||||
</Canvas>
|
</Canvas>
|
||||||
|
|||||||
@@ -1,8 +1,16 @@
|
|||||||
import { useSystems } from "../hooks/useStructures.js";
|
import { useSystems } from "../hooks/useStructures.js";
|
||||||
import { useAtlasStore } from "../store/useAtlasStore.js";
|
import { useAtlasStore } from "../store/useAtlasStore.js";
|
||||||
|
|
||||||
|
// "Planos e Linhas de Referência" (sistema "referencias") tem sua própria
|
||||||
|
// seção dedicada agora — Planos e Eixos, com boneco + setas + glossário
|
||||||
|
// interativo, bem mais didática que a malha real do Z-Anatomy pra isso.
|
||||||
|
// Escondido aqui (não removido do banco) pra não duplicar/confundir com a
|
||||||
|
// página nova.
|
||||||
|
const HIDDEN_SYSTEM_SLUGS = new Set(["referencias"]);
|
||||||
|
|
||||||
export function LayerToggle() {
|
export function LayerToggle() {
|
||||||
const systems = useSystems();
|
const allSystems = useSystems();
|
||||||
|
const systems = allSystems.filter((sys) => !HIDDEN_SYSTEM_SLUGS.has(sys.slug));
|
||||||
const visibleSystems = useAtlasStore((s) => s.visibleSystems);
|
const visibleSystems = useAtlasStore((s) => s.visibleSystems);
|
||||||
const toggleSystem = useAtlasStore((s) => s.toggleSystem);
|
const toggleSystem = useAtlasStore((s) => s.toggleSystem);
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user