I have added a proper infobox to the wiki page https://wiki.osarch.org/index.php?title=Topologic
Still, I can't find a good concise description of the project - not even on the website. Maybe someone could look into that.
I have added a proper infobox to the wiki page https://wiki.osarch.org/index.php?title=Topologic
Still, I can't find a good concise description of the project - not even on the website. Maybe someone could look into that.
@duncan said:
I have added a proper infobox to the wiki page https://wiki.osarch.org/index.php?title=Topologic
Still, I can't find a good concise description of the project - not even on the website. Maybe someone could look into that.
Thank you. I added a few words. I will keep updating.
From what I learnt from topologic I understand most of what is written in that introductory page. However, if users are to be attracted to the project and use it, there should be other ways for them to understand what it is. The best way is probably to understand what they can do with it.
Many of us are architects. For me, as an architect, the thing I like the most with Topologic is the possibility to develop a schematic design as 3D cells and use topologic's abilities to automate the process of adding complexity based in a ruleset we create.
I'd love to have a simple example there, or a stepped tutorial, on how to feed topological with a schematic design made of adjoined cells and tag all inner walls, exterior walls, roof slabs, interior slabs and ground slabs as IFC objects.
Then
Add 40cm thickness to all outer walls;
Add 20cm thickness to all inner walls;
Add a 50cm slab to all roof;
Add a 30 cm slab to all floors.
Then I'd love to see how to tag openings on the schematic design and see how to convert these openings to the walls and slabs.
With this we can already do so much with Topologic between testing our schematic designs against energy analysis tools as well as have a base model we could start refine either with direct modelling or, as we advanced, with topologic itself or Sverchok/BlenderBIM.
I think such a pragmatic example or something along this lines could really allow us to take the first steps and that is what I intend to do as soon as I have some time.
Does this make any sense?
@JQL: Makes a lot of sense. And we have the exact same goal. The main issue is that I do not have the 'glue' software that converts Topologic entities to IFC. @brunopostle has done that. His approach is domain-specific or style-specific, but also rule-specific in that he has invented the language (shape grammar) of how a conceptual model should be translated into a BIM model. But his software layer can be learned from to add a more general translator from Topologic to IFC. Using the existing Topologic nodes, it is quie straightforward to 'thicken' the CellComplex as you have described. The end result will also have full semantic information that will help the next node to assign the correct IFC attributes. But someone has to do all this software development and it is not trivial. So, if you like, I can create a tutorial that thickens the CellComplex, adds all the windows and doors and assigns all the dictionaries. The model will then be ready for conversion to IFC. At this point, you can bake the geometry and use BlenderBIM to manually convert to IFC. So, if you like me to proceed, I need a few more pieces of information:
Is it correct that outer walls will be thickened to the interior of the CellComplex?
Is it correct that inner walls will be thickened centered on the face of the CellComplex?
Is it correct that ground floors and roof slabs will be thickened to the interior of the CellComplex?
Is it correct that any interior dividing slabs will be thickned centered on the face of the CellComplex?
What should one do about intersections? Leave as is for now?
Would you want the outer walls to be made of several entities (per room outer wall) or merged into one entity per facade?
Answering the above is basically creating a shape grammar :)
Honestly, I'm not into BIM at all at this moment. It's far from being a requirement at this point for most my clients and projects. Everything else is what I really want to try out so, if you're available for that tutorial, I'd be thrilled to help out along the way, the best I can.
Answers:
Yes
Yes
and 4. I believe all should be thickened down so all slabs would work as levels. The roof is to the bottom/interior of the cell complex, all floor slab faces would represent their floor level and, therefore thickened down and the ground floor slab would thicken down outside of the cell complex. Hope this makes sense.
Maybe we should see as it is being developed. Overlapping is not good, but at this point it might be wise to avoid thinking about that. Maybe this has to do with some extra hierarchy of wall types that we could only figure out later on a project.
Maybe a mix. It should probably be a layered wall composed of inner wall, which is similar to all other inner walls and a whole entity for external façade. I'll attach a drawing in a moment.
PS the drawing above has given me some clues on how to deal with walls and their layers by configuring a core that is related with the cell face and finishes that are related to the cell/room properties
@JQL said:
I'd love to have a simple example there, or a stepped tutorial, on how to feed topological with a schematic design made of adjoined cells and tag all inner walls, exterior walls, roof slabs, interior slabs and ground slabs as IFC objects.
Then
- Add 40cm thickness to all outer walls;
@topologic said:
- Is it correct that outer walls will be thickened to the interior of the CellComplex?
This discussion looks interesting :) Is this what Homemaker is doing behind the scene?
In fact, I am thinking the other way. In FreeCAD, I can do a Sketch with 'single-line' floor plan, and this could build all walls of the full floor plan with a click, and also generate 'CellComplex' from this sketch. I am thinking if Topologic could provide information to help e.g. identifying which walls are external for FreeCAD to calculate the wall area including deduction of the window area, identifying and calculating escape distance to nearest exit / staircase etc.
ok. Here is the first step. I just released a new version of topologicsverchok at https://github.com/wassimj/topologicsverchok (Look on the right for Releases and choose the newest one by date to download). In this release, I added a new node called CellComplex.Decompose. It takes as input a CellComplex and outputs: outer walls, inner walls, roofs, (ground) floors, and slabs. These can be piped into Cell.ByThickenedFace, but I am reading above that more intelligence in thickening the faces is needed. Will give it a thought.
Hi everyone,
A while ago, I tried the workflow that @JQL suggested in a previous post. The basic shapes are two schematic floor plans and a shell. The dimensions and shapes are not from o a real project, it was just for testing purpose. I used Topologic to find interior edges and Sverchok to extrude them. I also used Topologic boolean nodes to get the intersections. It's not perfect, and I think there is an easier way to do it. But it was I nice way to learn and see what I can do with Topologic.
I would love to see this new tutorial and see how I can improve this.
Here is the next step. Thickening the faces per the instructions of @JQL
The third step would then be to boolean the cells in a logical manner. In the images below, the exterior walls and the ground floor slab stay as is, I then subtract the outer wall from the roof slabs, the inner walls, and the inner slabs. I then subtract the inner slabs from the inner walls. We can optionally remove co-planar faces (Topologic's method is slow, but we can use decimate in Blender).
Amazing advances @topologic and @JQL .
If I may interject here, and regarding the particular development by @brunopostle, my process regarding this very same objective (turn a topological space complex into "built architecture") was built on non-open-source BIM software and therefore I had to cope with its strengths and weaknesses.
Strength: I could refrain from implying constructive concepts in topologic. Space and topology remained space related and "pure".
Weakness: I had to "extract" the base geometry to feed the BIM elements generator. It is clumsy in that i.e. these softwares want "lines and height" to create a wall element, whereas we humans know a wall should be created with just a surface.
But this weakness allowed, as said before, the spatial knowledge of the model to remain space related, and the construction knowledge to be added in a separate "operational layer" that made everything "freer".
Doesn't the IFC addon in Blender enable this kind of geometry-based creation? If so, the creation rules would be transparent and out of the black box...
@arquitextonica 100% agreed. The above is really just a proof-of-concept, but building the spatial structures through IFC and maintaining the full semantic graph is the correct way to proceed. It just requires some serious thought and programming.
I haven´t gotten too deep in the semantic graph of IFC, but I´m afraid it is more a tree (am I wrong?) than a network and that if we transform the network graph of topologic into a tree graph on IFC a lot of information would be lost.
I don’t know enough about IFC to comment. But yes if it is strictly a hierarchy then we will lose a lot of information. Below is the dual graph of the final resolved CellComplex. You can see the complexity of the relationships and all of them can be queried and reflected on.
(Note: The central node from which many edges radiate is the exterior wall which ends up being a single Cell so represented by a single Vertex).
This new node is amazing!
This is really great Wassim!
I think BlenderBIM could take objects from topologic and, still in svershok, assign them IFC properties, right?
We could, therefore, create a whole geometric workflow that is automated by a set of topologic rules and then finish it off to send to another BIM package.
I understand that this is what homemaker is doing, but it’s ruleset is extensive and somewhat rigid, in the sense that it’s complying with a certain way of thinking. Having topological at a root level approach would allow any of us to create our own set of rules to generate building elements automatically. We could then decide which parts to model with this rule set and which parts to model directly or with other software and combine all conceptual processes more loosely.
If this was streamlined enough, I could see topologic being able to develop the main conceptual stages until the project is stable enough for detailing. In blender it would have the added advantage of being integrated with a highly flexible presentation tool, so it’s the right environment.
@arquitextonica said:
I haven´t gotten too deep in the semantic graph of IFC, but I´m afraid it is more a tree (am I wrong?) than a network and that if we transform the network graph of topologic into a tree graph on IFC a lot of information would be lost.
For what I understand it is a tree, but for topologic it doesn’t really matter, if you have geometry that is aware of its own relations with each other, you can present it in any way you wish, you can comply with any graph semantic right?
So, with topological, you can organize geometry by floors, buildings, zones, or anything else you wish for any purpose. From a conceptual model, you could generate any kind of export you need or any kind of report on the model.
@bruno_perdigao that model is really interesting. It would be nice to have your 2D plans being clipped to the outer shell bounds. That way one could control better stuff like areas or floor layout.
@JQL said:
For what I understand it is a tree, but for topologic it doesn’t really matter, if you have geometry that is aware of its own relations with each other, you can present it in any way you wish, you can comply with any graph semantic right?
So, with topological, you can organize geometry by floors, buildings, zones, or anything else you wish for any purpose. From a conceptual model, you could generate any kind of export you need or any kind of report on the model.
I agree that topologic can send the needed information to IFC, but the return trip is not guaranteed to be lossless. But yes, this is consistent with our original vision of Topologic as a driver model that has the lightest possible ‘weight’ and the largest possible amount of information. This ends up being Topologic = Space x Information. (Not an addition, but a multiplication). This model can then drive other models.
@JQL said:
in the sense that it’s complying with a certain way of thinking. Having topological at a root level approach would allow any of us to create our own set of rules to generate building elements automatically. We could then decide which parts to model with this rule set and which parts to model directly or with other software and combine all conceptual processes more loosely.
If this was streamlined enough, I could see topologic being able to develop the main conceptual stages until the project is stable enough for detailing. In blender it would have the added advantage of being integrated with a highly flexible presentation tool, so it’s the right environment.
You described my doctorate research...
@topologic said:
Topologic = Space x Information.
Coined some time ago... space to the power of information multiplied by control...
Hi Wassim @topologic ,
I was watching your tutorial about Custom Properties and I couldn't find the node that you mention: Topology.TransferCustomProperties
. I installed the latest version from today. Is this node available in this version? I found a DictionaryByCustomPropeties
but it doesn't seem to work the same way.
@bruno_perdigao said:
Hi Wassim @topologic ,
I was watching your tutorial about Custom Properties and I couldn't find the node that you mention:
Topology.TransferCustomProperties
. I installed the latest version from today. Is this node available in this version? I found aDictionaryByCustomPropeties
but it doesn't seem to work the same way.
Ah you caught that! Yes I changed the design so now you get the dictionary created from the custom properties and you can assign them to the topology (or any other topology). Feedback welcome on GitHub if not working well for you.
Ok, I was able to transfer, but the array from the Color property came like this:
Maybe the problem is related to the way I created the custom properties?
Oh I probably didn’t accommodate the Color custom attribute correctly. Will look at it tomorrow
@topologic said:
Oh I probably didn’t accommodate the Color custom attribute correctly. Will look at it tomorrow
Thanks!
Login or Register to reply.