Floor plan rendering


#1

Does anyone know if and how can I add color, texture and 3D shadowing efects to floor plans generated by GoJS? My company wishes to purchase a licence of GoJS to generate floor plans, but we would like to make sure that we can make the plans a little more pleasing for our customers. Hope you guys know how to add that.


#2

Color is easy. What kinds of textures are you asking about? For 3D appearances, what kinds of shadows are you envisioning?


#3

Nothing very specific. I just have to check if it’s possible and more or less how could we do it. Later we’ll get into the details of what we would actually want to do.


#4

Let me try to be more specific. We’d like to add floor textures, and some light effects, like smooth drop shadows for objects, walls or doors… Something like this.


#5

Something like this would be fine: https://jacksonsquareliving.com/wp-content/uploads/2015/06/Jackson-Square-Floor-Plan-A-800.jpg

Better yet if we could do something like this: https://www.google.es/imgres?imgurl=http%3A%2F%2Fwww.ajnara.com%2Fimages%2Flegarden%2F925sq.jpg&imgrefurl=http%3A%2F%2Fwww.ajnara.com%2Fresidential%2Flegarden%2Ffloorplans.asp&docid=2wmehdhyOOKkHM&tbnid=WmGRtsatQRBNaM%3A&vet=10ahUKEwjRy6veivXeAhWNuIsKHQujApoQMwi4AShCMEI..i&w=900&h=800&bih=1007&biw=1920&q=floor%20plan&ved=0ahUKEwjRy6veivXeAhWNuIsKHQujApoQMwi4AShCMEI&iact=mrc&uact=8#h=800&imgdii=K62LnB7_wJR_WM:&vet=10ahUKEwjRy6veivXeAhWNuIsKHQujApoQMwi4AShCMEI..i&w=900


#6

As it is now, Floorplanner has no conception of rooms, just walls. Of course, you could implement what you need yourself, but it will be nontrivial work. What constitutes the boundaries of a room? How does the user define discrete rooms? How does the application know which order walls must be considered when defining a room?

Once these questions are answered, one would have to define a Node template whose geometry is dependent on certain walls. From there, applying a texture is as simple as defining a repeating GoJS Brush (read https://gojs.net/latest/intro/brush.html)

GoJS also natively supports some shadowing via properties like “isShadowed.” You can see a simple example of that on the Nodes here https://gojs.net/latest/samples/doubleTree.html


#7

Thanks for your help, guys!