Comments (4)
Maybe the Floor item could behave in a way similar to Lobbies: It is not drawn behind existing items. But when an item is removed, it is replaced by a floor item of the same dimension. Adjacent floor items are collapsed into one. If an item is built ontop of a floor item, the floor item is split into the part on the left of the item and a part on the right of the item. This would remove the nasty sky color issues, although it is a bit more complex to implement.
Another approach would be to only draw the floor items when they are not covered by an item. This would require a map of what segments of a floor are covered and need not be drawn. I have the feeling though that this will boil down to the former approach being more feasible.
from openskyscraper.
Thanks for your suggestions! Having 1 floor item per floor is a much simpler option and can double up as an easy check for maximum floor width on either end. I hope to continue in this direction unless it becomes more complicated than the alternatives you've mentioned.
Your 2nd point has reminded me of another possible approach I had though about earlier, but not in depth. Perhaps it is time to revisit it and see if it can be expanded upon.
from openskyscraper.
Sounds good :) I won't touch too much of construction-related stuff in my branch then, so that we don't run into any more merging trouble.
from openskyscraper.
Merging new floor code with upstream completed in commit 4f51112
from openskyscraper.
Related Issues (5)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from openskyscraper.