🚀 Auto-deploy: BrainWind atualizado em 26/08/2026 11:43:19

This commit is contained in:
2026-08-26 11:43:19 +00:00
parent b842d6009f
commit f787e8c002
6 changed files with 258 additions and 69 deletions
+19 -12
View File
@@ -1,5 +1,4 @@
import React from 'react';
import { Link } from 'react-router-dom';
import Warehouse3DViewer from '../components/Warehouse3D';
import Heatmap2D from '../components/Heatmap2D';
import LinearLoadsTable from '../components/LinearLoadsTable';
@@ -8,6 +7,7 @@ import FtoolExportCard from '../components/FtoolExportCard';
import { CpiSettingsCard } from '../components/CpiSettingsCard';
import { useGalpaoStore } from '../store/galpaoStore';
import { useWindStore } from '../store/appStore';
import { getWallCpeOfficial as getWallCpe, getRoofCpeOfficial as getRoofCpe } from '../lib/coefficients';
import { Card, CardContent, CardHeader, CardTitle, CardDescription } from '@/components/ui/card';
import { Slider } from '@/components/ui/slider';
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/components/ui/select';
@@ -16,7 +16,7 @@ import { Separator } from '@/components/ui/separator';
import { Tooltip, TooltipContent, TooltipTrigger } from '@/components/ui/tooltip';
import { Tabs, TabsList, TabsTrigger, TabsContent } from '@/components/ui/tabs';
import { Button } from '@/components/ui/button';
import { AlertCircle, Lightbulb, Box, Wind, Columns } from 'lucide-react';
import { AlertCircle, Lightbulb, Box, Wind } from 'lucide-react';
import ExportMenu from '../components/ExportMenu';
import { EducationalManual } from '@/components/EducationalManual';
import { PressureLegend } from '@/components/PressureLegend';
@@ -280,25 +280,17 @@ const GalpaoModule: React.FC = () => {
<TabsList className="h-7 px-1">
<TabsTrigger value="3d" className="text-xs h-6 px-3">Modelo 3D</TabsTrigger>
<TabsTrigger value="heatmap" className="text-xs h-6 px-3">Heatmap 2D</TabsTrigger>
<TabsTrigger value="compare" className="text-xs h-6 px-3">Modo A/B</TabsTrigger>
</TabsList>
</div>
<div className="flex pointer-events-auto ml-1">
<Button asChild size="sm" variant="outline" className="h-7 px-2 text-xs bg-background/80 backdrop-blur-sm border-border shadow-sm">
<Link to="/compare">
<Columns className="w-3.5 h-3.5 mr-1.5" />
Modo A/B
</Link>
</Button>
</div>
<div className="flex flex-wrap gap-2 pointer-events-auto justify-start sm:justify-end ml-auto">
<EducationalManual type="warehouse" params={{ windAngle, cpi }} />
</div>
</div>
<TabsContent value="3d" className="flex-1 m-0 h-full w-full relative">
<div className="absolute top-4 left-4 z-20 flex bg-background/80 backdrop-blur-sm rounded-md p-1 shadow-sm border border-border pointer-events-auto">
<div className="absolute bottom-20 left-4 z-20 flex bg-background/80 backdrop-blur-sm rounded-md p-1 shadow-sm border border-border pointer-events-auto">
<Button
variant={viewMode === 'solid' ? 'secondary' : 'ghost'}
size="sm"
@@ -328,6 +320,21 @@ const GalpaoModule: React.FC = () => {
<TabsContent value="heatmap" className="flex-1 m-0 h-full w-full bg-muted/10 overflow-auto flex items-center justify-center">
<Heatmap2D />
</TabsContent>
<TabsContent value="compare" className="flex-1 m-0 h-full w-full bg-muted/10 overflow-auto p-4 flex flex-col">
<div className="grid grid-cols-1 md:grid-cols-2 gap-4 flex-1">
<Heatmap2D
overrideAngle={0}
overrideWallCpe={getWallCpe(length, width, height, 0)}
overrideRoofCpe={getRoofCpe(length, width, height, roofPitch, 0)}
/>
<Heatmap2D
overrideAngle={90}
overrideWallCpe={getWallCpe(length, width, height, 90)}
overrideRoofCpe={getRoofCpe(length, width, height, roofPitch, 90)}
/>
</div>
</TabsContent>
</Tabs>
</div>