BuildCAO, l’architecture d’un noyau de conception assistée par ordinateur en JavaScript pur

L’architecture logicielle de BuildCAO repose sur une volonté de rupture technologique,s’affranchir totalement des dépendances tierces pour construire un écosystème de conception assistée par ordinateur de haute précision au sein d’un environnement web. Ce projet, encore au stade expérimental, démontre la viabilité d’un moteur géométrique complexe orchestré par un noyau en JavaScript pur.

Structure du noyau et moteur géométrique
Le CadKernel est le centre névralgique de l’application. Contrairement aux approches conventionnelles utilisant des bibliothèques de rendu ou de calcul vectoriel, ce noyau est écrit intégralement en JavaScript « vanilla ». Cette approche permet une optimisation fine de la mémoire et une maîtrise totale de la pile mathématique nécessaire à la géométrie euclidienne. Le noyau gère un espace de coordonnées bidimensionnel avec une précision flottante permettant des tracés d’une rigueur industrielle. Le système de coordonnées (COORD: 0.00, 0.00) est couplé à un moteur de zoom dynamique capable de maintenir un rapport d’échelle constant (ZOOM: 1:1.00) tout en recalculant l’affichage des vecteurs.

Algorithmes d’assistance au dessin
L’intelligence du noyau se manifeste par ses fonctions d’aide au tracé :

  • Accrochage magnétique (Snaps) : Le moteur analyse en temps réel la position du curseur pour identifier les points d’extrémité (EXT), les milieux (MIL), les centres (CTR) ou les points de perpendicularité (PERP).
  • Contraintes géométriques : Le mode orthogonal (ORTHO ON) force la linéarité des tracés, tandis que la grille (GRILLE ON) fournit un repère spatial fixe pour le positionnement des entités.

Interface utilisateur et intégration HTML/CSS
L’interface est conçue pour être une abstraction légère au-dessus du noyau JavaScript. Elle utilise une structure HTML sémantique pour diviser l’espace de travail en zones fonctionnelles distinctes.

Segmentation fonctionnelle
L’organisation visuelle permet un accès direct aux primitives et aux outils de manipulation :

  • Primitives de dessin : Le système expose des commandes pour les lignes, angles, cercles, rectangles, arcs et courbes libres.
  • Manipulation et édition : Les outils de modification (⛶ décalage, ⎘ copie, ⟳ rotation, ✂ ajuster) agissent directement sur les structures de données du noyau.
  • Gestion des métadonnées : Un panneau de propriétés dynamiques affiche les caractéristiques de l’objet sélectionné (type, calque, longueur, couleur), permettant une édition granulaire des attributs.

Système de calques
La gestion des calques (layers) est intégrée nativement dans la logique du noyau. Chaque entité est associée à un identifiant de calque (par défaut #0), permettant d’organiser les projets par couches d’information, avec des fonctions d’ajout ou de suppression pour structurer la complexité du dessin.

Gestion des fichiers et interopérabilité
L’un des aspects les plus techniques de BuildCAO réside dans son module de gestion de fichiers, qui permet un accès direct au stockage local de l’ordinateur.

Lecture native sans dépendance
L’explorateur de fichiers (Drive) intègre des parseurs spécifiques permettant la lecture et l’affichage de documents au format PDF et .docx directement dans le navigateur, sans recours à des logiciels tiers ou des serveurs de rendu externes. Cette capacité transforme l’outil en un véritable centre de documentation technique, affichant le nom, le format, la date et la taille des fichiers.

Formats de données et exportation
La pérennité des données est assurée par deux formats distincts :

  • Enregistrement natif (.json) : Le projet utilise une sérialisation en format JSON pour sauvegarder l’intégralité de la base de données du dessin (coordonnées, calques, métadonnées). Ce format est idéal pour la légèreté et la rapidité de chargement sur le web.
  • Exportation industrielle (.dxf) : Pour garantir l’interopérabilité, le noyau est capable de traduire sa structure JSON interne en entités DXF, permettant ainsi de transférer les plans vers d’autres logiciels de CAO professionnels.

Flux de travail et sécurité système
Le système impose un flux de travail rigoureux dès le démarrage via le module d’authentification. Ce module exige un identifiant et un mot de passe avant d’autoriser l’accès aux ressources locales et au moteur de dessin. Une fois la session validée, le message « SYSTÈME PRÊT » indique que le noyau JavaScript a fini d’initialiser les modules de calcul et que le lien avec le stockage local est établi.

Bien que BuildCAO soit encore dans une phase de développement expérimental, sa base technique « pure JS » et son intégration profonde avec le système de fichiers local en font une solution prometteuse pour la CAO web de demain.

Nos logiciels


01

BIM Expert

Interopérabilité BIM

Facilite la communication entre les logiciels Revit, Tekla et vos outils de calcul.

Spécialité : Synchronisation de modèles
Détails du logiciel
02

Parabuild

Construction Métallique

Conception et modélisation 3D haute précision pour la construction métallique.

Spécialité : Dessin & Fabrication
Détails du logiciel
03

Concrete CAD

Béton Armé

Réalisation des plans d’exécution de ferraillage et de coffrage sans compromis.

Spécialité : Plans d’exécution
Détails du logiciel
04

Diamonds

Analyse Structurelle

Validez la sécurité de vos structures Acier, Béton et Bois selon les Eurocodes.

Spécialité : Calculs Eurocodes
Détails du logiciel
05

ConCrete Plus

Poutres Continues

Dimensionnement rapide et précis des poutres continues en béton armé.

Spécialité : Éléments Béton
Détails du logiciel
06

PowerConnect

Assemblages Métalliques

Calculs avancés des assemblages métalliques pour une sécurité optimale.

Spécialité : Connexions Acier
Détails du logiciel

Une question ? Un projet ?

Bénéficiez d’un accompagnement personnalisé pour toute demande concernant les produits ou les prestations de conseil.
L’assurance d’une configuration logicielle optimisée pour répondre à chaque besoin spécifique.

Demande d’information

X

Demande d'information

Ce site nécessite l\'utilisation de cookies pour améliorer votre expérience.