- Changelog
Traccia nuove funzionalità e miglioramenti del visualizzatore file STP
Risolti problemi critici di importazione e misurazione, ottimizzate le prestazioni di caricamento file fino al 95%
2025/09/02
Raggiungimento della stabilità della piattaforma - risolvendo problemi finali di integrazione e ottenendo notevoli guadagni di prestazioni:
Questa versione affronta diversi problemi critici che hanno significativamente impattato l'esperienza utente:
Problema Risolto: Problema di "funziona la prima volta, fallisce successivamente" completamente risolto
window.OV veniva cancellato erroneamente durante la pulizia del componenteProblema Risolto: Marcatori di misurazione non apparivano su modelli 3D
window.OVProblema Risolto: Pulsante del menu Altro non reattivo su dispositivi mobili in modalità schermo intero
Raggiunti significativi migliorimenti nel caricamento dei file:
Risultati: Miglioramento delle prestazioni del 60-95% per tutti i formati di file
| Dimensione File | Prima | Dopo | Miglioramento |
|---|---|---|---|
| 1MB | 840ms | 39ms | 95.4% più rapido |
| 10MB | 1,380ms | 255ms | 81.5% più rapido |
| 100MB | 6,780ms | 2,415ms | 64.4% più rapido |
Questa versione ha rinforzato diversi principi importanti di sviluppo:
window.OV non devono mai essere cancellate nella pulizia dei componentiContesto: Basandosi sui requisiti utente è stata stabilita una barra di strumenti di condivisione fluttuante sul lato sinistro, attraversando un'evoluzione architettonica chiave in tre versioni
Processo di Decisioni di Design:
lg:block)/nascosta mobile - trade-off di designSfide di Implementazione Tecnica:
/* Posizionamento fisso e gestione layer */
.floating-share-bar {
position: fixed;
left: 1rem;
top: 50%;
transform: translateY(-50%);
z-index: 40; /* Design layer critico */
}Decisioni Tecniche Chiave:
scale(1.1)Spinto da Esigenze Utente:
Complessità di Implementazione Tecnica:
// Sfide gestione stato
const [showMoreDialog, setShowMoreDialog] = useState(false);
// Gestione speciale del bottone More
const platforms = [
// ... 7 piattaforme esistenti
{
name: 'More',
isMore: true,
onClick: () => setShowMoreDialog(true)
}
];Sfide di Integrazione:
Processo di Diagnosi Problema:
Sintomo Problema: FloatingShareBar non si mostra nella pagina principale
Analisi Architettonica: FloatingShareBar è stato posizionato dentro ViewerView
Dipendenza Stato: ViewerView si renderizza solo negli stati loading/viewing
Stato Pagina Principale: STPViewer di default è stato upload, mostra UploadView
Causa Radice: FloatingShareBar nel layer componente sbagliatoProblema Architettonico Attuale:
Pagina Principale → HeroSection → HeroStpViewer → STPViewer
├── stato upload → UploadView (senza FloatingShareBar) ❌
├── stato loading → ViewerView (con FloatingShareBar) ✅
└── stato viewing → ViewerView (con FloatingShareBar) ✅Architettura Soluzione:
STPViewer (nuovo layer FloatingShareBar)
├── stato upload → UploadView + FloatingShareBar ✅
├── stato loading → ViewerView + FloatingShareBar ✅
└── stato viewing → ViewerView + FloatingShareBar ✅Modifica Codice Critica:
// src/components/stp-viewer/stp-viewer.tsx
return (
<div className={cn('stp-viewer-container', className)}>
{/* Contenuto principale relativo allo stato */}
{renderContent()}
{/* Barra strumenti fluttuante globale di condivisione */}
<FloatingShareBar file={viewerState.file} />
</div>
);Metodo di Analisi Comparativa: Attraverso comparazione sistematica modalità pagina principale vs. modalità schermo intero scoperte inconsistenze funzionali:
| Funzione | Modalità Pagina Principale | Modalità Schermo Intero | Stato |
|---|---|---|---|
| New File | ✅ | ✅ | Consistente |
| Screenshot | ✅ | ✅ | Consistente |
| Share | ❌ Mancante | ✅ | Inconsistente |
Analisi a Livello Codice:
// viewer-view.tsx:730-766 - Barra strumenti pagina principale
const toolbarButtons: ToolbarButton[] = [
{ id: 'new-file', /* ... */ },
{ id: 'screenshot', /* ... */ },
// ❌ Bottone Share mancante
];
// FullscreenToolbar.tsx:132-139 - Barra strumenti modalità schermo intero
const secondaryTools: ToolbarButton[] = [
{
id: 'share',
label: t('toolbar.share'),
// ✅ Presente ma funzionalità non implementata
},
];Scoperta Profonda di Limitazioni Tecniche:
// ✅ Capacità Reali di React-Share
- Condivisione link: Tutte le piattaforme supportano condivisione URL
- Contenuto testo: Supporta titolo, descrizione e altri parametri testo
- Reindirizzamento piattaforme sociali: Apre pagine ufficiali di condivisione delle piattaforme
- Zero dipendenze esterne: Non necessita caricamento SDK di terze parti
// ❌ Limitazioni Tecniche di React-Share
- Nessun supporto condivisione file locali: Non può condividere direttamente screenshot, documenti
- Nessun supporto upload immagini: Piattaforme mainstream non supportano upload diretti di immagini
- Solo supporta URL immagini pubbliche: Poche piattaforme necessitano link immagine accessibili pubblicamente
- Nessuna funzionalità backend: Non può gestire upload file, generazione link cortiAggiustamento Realistico del Piano di Sviluppo:
Strategia Componenti:
src/components/stp-viewer/
├── shared/
│ └── SimpleShareDialog.tsx # Dialog unificato di condivisione (unico componente)
├── viewer-view.tsx # Aggiungere bottone Share
└── fullscreen/
└── FullscreenToolbar.tsx # Collegare funzionalità reale di condivisionePratica dei Principi di Design:
Problema 1: Logica bottone disabled errata
// Logica errata
{
id: 'share',
disabled: !isViewerReady, // ❌ Condivisione link pagina non deve attendere caricamento modello
}
// Logica corretta
{
id: 'share',
disabled: false, // ✅ Funzionalità condivisione pagina dovrebbe essere sempre disponibile
}Analisi Causa Radice:
isViewerReady è false prima del caricamento modelloProblema 2: Risposta Rapida a Supporto Piattaforme Insufficiente
Prima Fase: Fix Base (15 minuti)
// src/components/stp-viewer/viewer-view.tsx:754
- disabled: !isViewerReady,
+ disabled: false,Seconda Fase: Espansione Piattaforme (20 minuti)
// 6 nuove piattaforme mainstream aggiunte
const newPlatforms = [
'WhatsApp', // Applicazione messaging istantaneo più grande del mondo
'Telegram', // Preferita da gruppi utenti tecnici
'Reddit', // Piattaforma principale condivisione comunità tecnica
'Pinterest', // Condivisione contenuto visuale, adatto per modelli 3D
'Weibo', // Piattaforma sociale principale per utenti cinesi
'Line', // Applicazione comunicazione popolare in regioni asiatiche
];Terza Fase: Ottimizzazione Esperienza (10 minuti)
Importanza dell'Evoluzione Architettonica:
Selezione Tecnica Realistica:
Capacità Sviluppo Risposta Rapida:
Questa storia di sviluppo funzionalità condivisione mostra saggezza completa di sviluppo da evoluzione architettonica a selezione tecnica, da diagnosi problemi a riparazione rapida e accumula preziose esperienze pratiche per il team.
Nessun cambiamento che interrompa la compatibilità. Tutti i migliorimenti sono compatibili con versioni precedenti. Gli utenti sperimenteranno:
Pulizia importante del codice e migliorimenti delle prestazioni mantenendo tempi di caricamento di 18 secondi
2025/08/28
Solidificazione delle basi - ottimizzazione del set completo di funzionalità per stabilità a lungo termine:
Pulizia e ottimizzazione integrale per migliorare manutenibilità e prestazioni:
Navigazione professionale dell'albero del modello con guide operative intelligenti specifiche per dispositivo
2025/08/27
Navigazione gerarchica rivoluzionaria che sblocca capacità di analisi strutturale profondo, trasformando complessi assembly STEP in componenti gestibili e navigabili.
Interfaccia consapevole del dispositivo che fornisce guida operativa contestuale:
useResponsive per rilevamento dispositivoRisolto problema di compressione nomi file lunghi e migliorato layout mobile
2025/08/27
Ottimizzazione dell'esperienza mobile professionale - garantendo che tutte le funzionalità avanzate funzionino perfettamente su dispositivi touch:
Risolto il problema della barra degli strumenti mobile in cui i nomi file lunghi comprimevano i pulsanti degli strumenti:
Conversione universale di file con 17 formati di importazione/10 di esportazione più editing avanzato di materiali
2025/08/26
Supporto rivoluzionario di formati file che stabilisce STP Viewer come il convertitore di file 3D online più completo disponibile.
Formati CAD: STEP, IGES, BREP, OCCT
Formati Maglia: STL, OBJ, OFF, PLY, 3DS
Formati Moderni: GLTF/GLB, FBX, DAE, 3DM
Formati Industriali: IFC, BIM, FCStd, SVG
Capacità professionali di editing e visualizzazione materiali:
Risolti problemi critici di esperienza utente:
Framework rivoluzionario per modalità a schermo intero - trasformando STP Viewer in una piattaforma CAD 3D professionale
2025/08/25
Questo traguardo segna l'inizio della trasformazione di STP Viewer da un semplice visualizzatore di file a una piattaforma di visualizzazione CAD 3D di livello professionale. Abbiamo gettato le basi per l'esperienza di visualizzazione di file STEP online più completa mai creata.
Strategia di Funzionalità Progressive: Progettazione dell'esperienza su due livelli
// Nuova struttura dei componenti
src/components/stp-viewer/
├── fullscreen/ # Strumenti professionali (caricamento pigro)
├── panels/ # Pannelli di navigazione comprimibili
└── hooks/ # Hook personalizzati per integrazione visualizzatore 3D"Semplice di Default, Potente su Scelta"
| Livello di Esperienza | Interfaccia | Caso d'Uso |
|---|---|---|
| Utenti Occasionali | Barra degli strumenti pulita e minimale | Anteprima rapida file, visualizzazione base |
| Professionisti | Suite completa di strumenti CAD | Analisi dettagliata, misurazioni, esportazioni |
Questa base permette la roadmap per:
Questa versione stabilisce STP Viewer come la piattaforma definitiva per file STEP online, stabilendo nuovi standard per:
Le basi sono gettate. Le prossime versioni aggiungeranno:
Benvenuti nel futuro della visualizzazione di file STEP online! 🎊
Strumenti di misurazione di precisione rivoluzionari con misurazioni di distanza, angolo e superfici parallele
2025/08/20
Presentando capacità di misurazione di livello industriale che trasformano STP Viewer in uno strumento di analisi di precisione. Questa versione porta l'accuratezza di misurazione CAD alla visualizzazione 3D basata su browser.
Raffinimenti mirati insieme al sistema di misurazione:
Navigazione 3D rivoluzionaria con 6 punti di vista predefiniti, modalità di proiezione e caricamento del 30% più rapido
2025/08/15
Trasformando la navigazione 3D da un semplice pan-and-zoom a un controllo vista di livello CAD professionale. Questa versione porta una gestione dei punti di vista standard del settore che rivaleggia con applicazioni CAD desktop.
Proiezione Prospettica (Predefinita)
Proiezione Ortografica (Professionale)
Ottimizzazioni significative insieme al nuovo sistema di vista:
Questa versione stabilisce navigazione 3D di livello desktop nel browser, rendendo l'analisi professionale di file STEP accessibile su qualsiasi dispositivo. Le basi sono gettate per strumenti avanzati di misurazione, esportazione e analisi nelle versioni future.
Prima versione del visualizzatore di file STP online con anteprima 3D formato STEP
2025/08/01
Siamo entusiasti di rilasciare la prima versione di STP Viewer con le seguenti funzionalità principali: