And, if I can’t ask it here, can you suggest a suitable S.O site?
Back when this site was called Programmers, the rule of thumb was that if you did it at a keyboard, you asked at S.O, and if you did it at a whiteboard, you asked here.
This is definitely a whiteboard question, but there are a lot of happy downvoters around these days, so I want to clear the question first.
I want users to generate a floorplan, which I will display in HTML with (Angular)JS which will react appropriately when they click on a room on the floorplan (with different behaviour for each room). Good topic/bad topic?
The problem is that I don’t know how to go about it.
I would strongly prefer the users to produce their own floorplan, but, if I must, I am prepared to produce it or, even, to develop some software to let them produce it.
The tricky part there, I think, is getting the data to recognize what delineated each room. I have a very strong preference that this will work if the browser window is resized, but could just about live with a fixed size image).
I see two possibilities:
1) Find SVG image and some FOSS JS to detect which area was clicked (I do not want to code that myself ;-) This might affect how the floorplan gets drawn, and whether I can use some free FOSS to do so.
2) Either a kludge or a bright idea, I am not sure which. I knock up a floorplan drawing app; drag & drop rooms, staircases, etc and offer a colo(u)r palette for a dozen or so colo(u)rs BUT, each time the user choses a colo(u), I subtly tweak its RGB by one. I doubt that the human eye can distinguish 255 blue from 254 blur (or even 235 blue) – the software can. So, I would not need to know the outlines of the rooms, or have to worry about resizing the screen – just get the colo(u)r of the clicked pixel and that indicates the room.
I would prefer to use as much FOSS as possible, so the question seems like a candidate for Software Recommendations, where I did, indeed, ask it, without much luck.
If I can’t get FOSS, then I have to design & code it myself, so I am hoping that this question might fit here. What say you?