Suite de plugins pour 3DSmax | Maxscript | Pour réalisation de bout de villes, bâtiments, surfaces pour rues, trottoire, gazon etc.
Christophe Pagès | contact@c-pages.fr | c-pages.fr | git
-
Batiment : Objet paramétrique.
Permet de créer des bâtiments à partir d'un shape "contour", façades et toitures.
-
Quartier : Objet paramétrique, n'est pas rendu, organise des Batiments. M Permet de construire et manipuler des quartiers entiers de batiments, en fonction de certaines contraintes (surface du shape, largeur, orientation ...), tel preset de batiment à utiliser ou pas ( 'garage', 'immeuble de bureau', 'pavillon brique normand', ...).
-
Terrain : Objet paramétrique.
Générateur de terrain utilisant d'un coté un ou plusieurs objects servant de relief, et de l'autre un ou plusieurs shapes délimitant des surfaces (ex: création d'une voire, route + trottoires). Voir si il y a moyen d'utiliser base de donnée SIG en ligne pour importer des reliefs.
-
OSM importer : Utilitaire
Permet d'importer depuis OpenStreetMap des cartes, pour utiliser les contours pour nos Batiments.
6 septembre 2018
- Correction du problème de position du batiment à l'assignation de son contour.
- Integration de nouveaux éléments pour toiture ( antenne, cheminets )
- Possiblité de faire des baies arquées( divusion a revoir).
- Première ébauche des concepts de base et de l'interface.
- Il commence à y avoir un debut de fonctionnement.
- Bon bah là y'a presque tout.
- Y'a meme un debut de prise en compte des reliefs.
Passage du plugin en phython pour intégration à Blender par Dindoune Amigo Bruno ! | git | dindoun.lautre.net
Merci à Dindoune Amigo Bruno ! | git | dindoun.lautre.net
- Gérer un noise sur z avec une influence en lien avec la distance par rapport au bords ? ( ex:pour les terrains genre gazons) (un peu façon multiscatter).
- Gérer une distance avec une influence en lien avec la distance par rapport au bord ? (genre effet gonflé).
- Bien gérer les undos (pour les parametres de Terrain et pour objet en reference dans Terrain).
- Créations des trous automatiquement quand superposition avec un Bâtiment. Peut être sous forme d'une option dans les Bâtiments de type 'Perforer les Terrains.', et du coup quand le Terrain annalyse ses contours il y ajoute les surfaces des Bâtiments 'perforants'.
- Faire en sorte que s'ils sont en mode 'Logo' ils ne soit pas visible au rendu.
- Créer une possibilité de désactiver l'auto-update (elle serait alors seulement effectué au rendu ?).
- un bouton ON/OFF pour activer le relief ?
- Pensez à une grille mode Voronoi !?!?
- Un mode empreinte des reliefs ?!? Pour retracer les arêtes des reliefs sur le terrain et ainsi avoir, après projection, un resultat super précis niveaux decoupe du relief.
- Empecher de s'auto selectionner quand on pick un relief !
- si possible ? : quand une surface ne survol pas de relief, faire en sorte que'elle reste plus ou mons a niveau avec la plus proche sur un relief ?
- Faire en sorte de pouvoir piquer des splines type 'rectangle', 'circle' ...
- Pouvoir donner une épaisseur ? peut etre juste les bords façon extrusion ...
- quand un terrain a un ou des modifiers, alors il y a un probleme au rendu en mode Proxy, surement une reference au baseObject Terrain à faire, il ne doit plus voir que c'est un terrain ....
- /!\ PROBLEME RENDU RESEAU qui rend pas !!! /!\ a voir si c'est Batiment ou Terrain !!!
- faire que quand on ajoute une nouvelle spline, si la touche 'alt' est pressée on l'ajoute en #soustraction
- verifer à l'ajout de nouvelle spline qu'elles soient ok : qu'elles ne se croisent pas ni qu'elles aient des points superposer peut-etre, faudra chercher un peu les cas à problème.
- Il y a un probleme avec la creation des points avant geometrie à partir des polys (polygone.creer_pts_pourFace ()).
- Créer un importeur de terrain utilisant model de terrain en ligne ?
- DEM/DTM Data base. ex:https://asterweb.jpl.nasa.gov/gdem.asp
- Surface
- Division de la surface en quadrilataires simples pour :
-
- Répartition des éléments de toitures.
-
- Création de 'sous-surface' pour gérer des différences de niveaux ou de toiture, etc.
-
- Trouver le chemin du faîtage par exemple (en suivant le centre des 'diagonales').
-
- Prise en compte des splines avec shapes 'à trous' : pour creation de patios.
- Alignement sur un terrain
- Division de la surface en quadrilataires simples pour :
- Facades
- Extrusions de la dalle pour débords et du mur.
- Gestion des angles pour continuité des balcons ou des débords.
- Gestion du hasard pour ouverture Fenêtres.
- Ajouter interface aux fenetre, porte et volet pour choisir entre : ouvert, fermer et hasard.
- Intégration des Volets roulants.
- Gestion du hasard pour ouverture Volets.
- creer les autres types de volets (battant, store banne ?)
- creer les autres types de gardes-corps ( Verre, ... ).
- Créer un copier-coller/instancier avec le clique droit pour les composants de façade.
- Passer en multilistBox la sequence de composant de façade pour manipuler plusieurs composants à la fois.
- A voir: création de facade-rideau.
- Création de poteaux (rond ou rectangle) avec facade en retrait (ex: façon galerie couverte en RdC (cf Marseille pouillon).
- Peut être intégrer un composant 'Modele' permettant à l'utilisateur d'intégrer n'importe quel objet à lui à la façade.
- Dans le 'mode édition': intégrer une prévisualisation des composant dans le viewport (ajouter dans chaque fichiers composant une fonction VP).
- Baies : revoir la division des arcs (radial au lieu de linéaire).
- Toitures
- Refaire complètement les toitures à pentes.
- Construction à revoir pour meilleur gestion et pour meilleur controle des géométrie (ex: débords créés géométriquement et non avec l'opération extrude de Max).
- Toitures à x pans (pente de toit pour chaque mur).
- Intégrer les gouttières aux toitures à pans.
- integration des éléments de toitures
-
- locale technique (fonctionne, mais reste in interfacer at à bien gérer le placement)
-
- cheminet
-
- lucarnes
-
- ...
-
- Construction
- Voir si on peut stocker les points et facase de chaque éléments pour ne mettre à jour que les points et faces nécéssaires (ex: mettre à jour seulement le toi sans refaire tout le batiment)
- Optimiser la construction (par exemple en listant et copiant les éléments répétitifs).
- Matériaux
- S'occuper du menu des materiaux.
- Gérer les ids materiaux par composants (ex. pour le mur : on pourrait avoir un id different pour les dalles).
- Interieur
Avec un vitrage transparant on pourrait:
- Création de cloisin interieures (cf. division de la surface)
- Rideaux
- Divers
- Création d'outils de manipulation de Bâtiments en groupe (une version simplifier du générateur de bout de ville):
-
- Appliquer un style à plusieur batiments séléctionnés.
-
- Variations de paramètre de manière aléatoire (pente de toit, variance de materiaux, décallage ouvertures,...
-
- Faire en sorte que s'ils sont en mode 'Logo' ils ne soit pas visible au rendu.
- On pourra peut être cleanner un peu l'interface entre rollouts et reste du plug.
- Continuer le débogage ...
- Création d'outils de manipulation de Bâtiments en groupe (une version simplifier du générateur de bout de ville):
- Revoir algorythme de convertion coordonées en plan.
- a voir aprés tests avec beru : projection en Lambert 93
- changement de centre ? WGS84 -> RGF 93 (cf: http://www.forumsig.org/showthread.php/3239-Conversion-Lat-Long-vers-Lambert-93)
- beru :"ha sinon pour ton histoire de projection de cartes osm, tu peux projeter directement les coordonnées en wgs84 sur un plan régional sans passer par le lambert 93, en UTM30 http://spatialreference.org/ref/epsg/wgs-84-utm-zone-30n/ et si tu dois absolument passer par le rgf93 le mieux c'est de reprojeter en lambert regional cc49 ou cc50 http://spatialreference.org/ref/epsg/3949/"
- Correction du problème avec la position du node qui devait être sur [0,0,0]. Maintenant le node peut etre placer n'importe ou dans la scène.
- Nettoyage du manager de shape : integration du struct de triangulation et booleen.
- Création de la géométrie un peu plus propre.
- Le terrain se construit maintenant même sans relief, il se place alors à la hauteur de l'objet.
- Remise en forme des rollouts.
- On peut maintenant déplacer l'origine de la grille
- Mise en place d'une grille 'monde', donc avec l'option par objet de soit utiliser la grille 'monde', soit la grille 'local'.
- Création de la géométrie ENCORE plus propre, et optimisée.
- et une grosse correction de problème dans la création des suites de points des booléens.
- Problème des 'intersectRay' qui ne fonctionnent qu'avec des editable_polys.
- Problème des projections sur reliefs, les hauteurs semblent differentes en fonction de la position de l'objet, ou un truc du genre..
- On verifie quand il va y avoir beaucoup de faces apres une modif de resolution de la grille. : On demande si on veut passer en mode proxy pour l'affichage et si on veut monter la limite de l'alerte pour le mode 'rendu/pasProxy'.
- correction de quelques petits bugs dans la triangulation.
- Grosse correction des opération boolleenes.
- correction d'autres petits bugs dans la triangulation avec d'autres cas particuliers.
- ca continue a bugger ... (booleen et/ou integration ...)
- Mise en place du dossier '\commun' pour y mettre les structures communes tout les modules.
- Mise en place du rollout "A propos' dans le dossier '\commun', utile pour plusieurs des modules.
- Enfin les operation booleene qui fonctionnent à peu pret, à voir s'il reste quelques bugs ... MERCI BRUNO !
- Terrain : Version basique mais fonctionnelle.
- Inverser le poly resultat, c'est à dire utiliser les contours pour creuser le cadre former par le ou les reliefs. pour pouvoir avec la meme spline creer la route ou l'inverse c'est a dire les trottoires.
- prendre en compte les trous dans les contours (boolean) (tracer une seule face suivant les contours et reliant chaque trou)
- Mise en place de Terrain : Un objet qui utilise sa liste de splines pour créer une 'grille', d'une dimension gérable, qu'il projete sur les reliefs de sa liste.
- Simplification des éléments du batiment, un systeme de constructeur va chercher les fichiers des éléments pour remplir le plug -> souplesse accrue.
- Refonte de l'interface, on passe maintenant dans un 'mode édition' pour modifier le bâtiment.
- Système d'affichage d'information dans le viewport dans le 'mode édition' pour un retour rapide des modifs du batiment.
- Gestion d'un mode proxy (un écouteur créer le modéle complet avant le rendu et repasse en proxy aprés).
- Un groupe peut être créé dans une séquence de façade pour répétition d'un 'motif'.
- Les composants peuvent être instanciés.
- Corrections toitures à 2 pans.